diff --git a/build/custom/creature.min.js b/build/custom/creature.min.js index 78c880dca..5c8aebdfb 100644 --- a/build/custom/creature.min.js +++ b/build/custom/creature.min.js @@ -1,4 +1,4 @@ -/* Phaser v2.19.1 Creature Build - http://phaser.io - @photonstorm - (c) 2016 Photon Storm Ltd. */ +/* Phaser v2.19.2 Creature Build - http://phaser.io - @photonstorm - (c) 2016 Photon Storm Ltd. */ !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var a=e();for(var r in a)("object"==typeof exports?exports:t)[r]=a[r]}}(this,function(){return function(a){var r={};function n(t){if(r[t])return r[t].exports;var e=r[t]={exports:{},id:t,loaded:!1};return a[t].call(e.exports,e,e.exports,n),e.loaded=!0,e.exports}return n.m=a,n.c=r,n.p="",n(0)}([function(t,e,a){e.glMatrix=a(1),e.mat2=a(2),e.mat2d=a(3),e.mat3=a(4),e.mat4=a(5),e.quat=a(6),e.vec2=a(9),e.vec3=a(7),e.vec4=a(8)},function(t,e){var a={EPSILON:1e-6};a.ARRAY_TYPE="undefined"!=typeof Float32Array?Float32Array:Array,a.RANDOM=Math.random,a.ENABLE_SIMD=!1,a.SIMD_AVAILABLE=a.ARRAY_TYPE===this.Float32Array&&"SIMD"in this,a.USE_SIMD=a.ENABLE_SIMD&&a.SIMD_AVAILABLE,a.setMatrixArrayType=function(t){a.ARRAY_TYPE=t};var r=Math.PI/180;a.toRadian=function(t){return t*r},a.equals=function(t,e){return Math.abs(t-e)<=a.EPSILON*Math.max(1,Math.abs(t),Math.abs(e))},t.exports=a},function(t,e,a){var c=a(1),r={create:function(){var t=new c.ARRAY_TYPE(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},clone:function(t){var e=new c.ARRAY_TYPE(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},identity:function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},fromValues:function(t,e,a,r){var n=new c.ARRAY_TYPE(4);return n[0]=t,n[1]=e,n[2]=a,n[3]=r,n},set:function(t,e,a,r,n){return t[0]=e,t[1]=a,t[2]=r,t[3]=n,t},transpose:function(t,e){if(t===e){var a=e[1];t[1]=e[2],t[2]=a}else t[0]=e[0],t[1]=e[2],t[2]=e[1],t[3]=e[3];return t},invert:function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=a*i-n*r;return s?(s=1/s,t[0]=i*s,t[1]=-r*s,t[2]=-n*s,t[3]=a*s,t):null},adjoint:function(t,e){var a=e[0];return t[0]=e[3],t[1]=-e[1],t[2]=-e[2],t[3]=a,t},determinant:function(t){return t[0]*t[3]-t[2]*t[1]},multiply:function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=a[0],l=a[1],u=a[2],c=a[3];return t[0]=r*o+i*l,t[1]=n*o+s*l,t[2]=r*u+i*c,t[3]=n*u+s*c,t}};r.mul=r.multiply,r.rotate=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=Math.sin(a),l=Math.cos(a);return t[0]=r*l+i*o,t[1]=n*l+s*o,t[2]=r*-o+i*l,t[3]=n*-o+s*l,t},r.scale=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=a[0],l=a[1];return t[0]=r*o,t[1]=n*o,t[2]=i*l,t[3]=s*l,t},r.fromRotation=function(t,e){var a=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=a,t[2]=-a,t[3]=r,t},r.fromScaling=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=e[1],t},r.str=function(t){return"mat2("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"},r.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2))},r.LDU=function(t,e,a,r){return t[2]=r[2]/r[0],a[0]=r[0],a[1]=r[1],a[3]=r[3]-t[2]*a[1],[t,e,a]},r.add=function(t,e,a){return t[0]=e[0]+a[0],t[1]=e[1]+a[1],t[2]=e[2]+a[2],t[3]=e[3]+a[3],t},r.subtract=function(t,e,a){return t[0]=e[0]-a[0],t[1]=e[1]-a[1],t[2]=e[2]-a[2],t[3]=e[3]-a[3],t},r.sub=r.subtract,r.exactEquals=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]},r.equals=function(t,e){var a=t[0],r=t[1],n=t[2],i=t[3],s=e[0],o=e[1],l=e[2],u=e[3];return Math.abs(a-s)<=c.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(r-o)<=c.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(n-l)<=c.EPSILON*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(i-u)<=c.EPSILON*Math.max(1,Math.abs(i),Math.abs(u))},r.multiplyScalar=function(t,e,a){return t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t[3]=e[3]*a,t},r.multiplyScalarAndAdd=function(t,e,a,r){return t[0]=e[0]+a[0]*r,t[1]=e[1]+a[1]*r,t[2]=e[2]+a[2]*r,t[3]=e[3]+a[3]*r,t},t.exports=r},function(t,e,a){var p=a(1),r={create:function(){var t=new p.ARRAY_TYPE(6);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},clone:function(t){var e=new p.ARRAY_TYPE(6);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t},identity:function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},fromValues:function(t,e,a,r,n,i){var s=new p.ARRAY_TYPE(6);return s[0]=t,s[1]=e,s[2]=a,s[3]=r,s[4]=n,s[5]=i,s},set:function(t,e,a,r,n,i,s){return t[0]=e,t[1]=a,t[2]=r,t[3]=n,t[4]=i,t[5]=s,t},invert:function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=e[4],o=e[5],l=a*i-r*n;return l?(l=1/l,t[0]=i*l,t[1]=-r*l,t[2]=-n*l,t[3]=a*l,t[4]=(n*o-i*s)*l,t[5]=(r*s-a*o)*l,t):null},determinant:function(t){return t[0]*t[3]-t[1]*t[2]},multiply:function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=a[0],c=a[1],h=a[2],_=a[3],d=a[4],p=a[5];return t[0]=r*u+i*c,t[1]=n*u+s*c,t[2]=r*h+i*_,t[3]=n*h+s*_,t[4]=r*d+i*p+o,t[5]=n*d+s*p+l,t}};r.mul=r.multiply,r.rotate=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=Math.sin(a),c=Math.cos(a);return t[0]=r*c+i*u,t[1]=n*c+s*u,t[2]=r*-u+i*c,t[3]=n*-u+s*c,t[4]=o,t[5]=l,t},r.scale=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=a[0],c=a[1];return t[0]=r*u,t[1]=n*u,t[2]=i*c,t[3]=s*c,t[4]=o,t[5]=l,t},r.translate=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=a[0],c=a[1];return t[0]=r,t[1]=n,t[2]=i,t[3]=s,t[4]=r*u+i*c+o,t[5]=n*u+s*c+l,t},r.fromRotation=function(t,e){var a=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=a,t[2]=-a,t[3]=r,t[4]=0,t[5]=0,t},r.fromScaling=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=e[1],t[4]=0,t[5]=0,t},r.fromTranslation=function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=e[0],t[5]=e[1],t},r.str=function(t){return"mat2d("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+")"},r.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2)+Math.pow(t[4],2)+Math.pow(t[5],2)+1)},r.add=function(t,e,a){return t[0]=e[0]+a[0],t[1]=e[1]+a[1],t[2]=e[2]+a[2],t[3]=e[3]+a[3],t[4]=e[4]+a[4],t[5]=e[5]+a[5],t},r.subtract=function(t,e,a){return t[0]=e[0]-a[0],t[1]=e[1]-a[1],t[2]=e[2]-a[2],t[3]=e[3]-a[3],t[4]=e[4]-a[4],t[5]=e[5]-a[5],t},r.sub=r.subtract,r.multiplyScalar=function(t,e,a){return t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t[3]=e[3]*a,t[4]=e[4]*a,t[5]=e[5]*a,t},r.multiplyScalarAndAdd=function(t,e,a,r){return t[0]=e[0]+a[0]*r,t[1]=e[1]+a[1]*r,t[2]=e[2]+a[2]*r,t[3]=e[3]+a[3]*r,t[4]=e[4]+a[4]*r,t[5]=e[5]+a[5]*r,t},r.exactEquals=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]},r.equals=function(t,e){var a=t[0],r=t[1],n=t[2],i=t[3],s=t[4],o=t[5],l=e[0],u=e[1],c=e[2],h=e[3],_=e[4],d=e[5];return Math.abs(a-l)<=p.EPSILON*Math.max(1,Math.abs(a),Math.abs(l))&&Math.abs(r-u)<=p.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(n-c)<=p.EPSILON*Math.max(1,Math.abs(n),Math.abs(c))&&Math.abs(i-h)<=p.EPSILON*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(s-_)<=p.EPSILON*Math.max(1,Math.abs(s),Math.abs(_))&&Math.abs(o-d)<=p.EPSILON*Math.max(1,Math.abs(o),Math.abs(d))},t.exports=r},function(t,e,a){var y=a(1),r={create:function(){var t=new y.ARRAY_TYPE(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},fromMat4:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[4],t[4]=e[5],t[5]=e[6],t[6]=e[8],t[7]=e[9],t[8]=e[10],t},clone:function(t){var e=new y.ARRAY_TYPE(9);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},fromValues:function(t,e,a,r,n,i,s,o,l){var u=new y.ARRAY_TYPE(9);return u[0]=t,u[1]=e,u[2]=a,u[3]=r,u[4]=n,u[5]=i,u[6]=s,u[7]=o,u[8]=l,u},set:function(t,e,a,r,n,i,s,o,l,u){return t[0]=e,t[1]=a,t[2]=r,t[3]=n,t[4]=i,t[5]=s,t[6]=o,t[7]=l,t[8]=u,t},identity:function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},transpose:function(t,e){if(t===e){var a=e[1],r=e[2],n=e[5];t[1]=e[3],t[2]=e[6],t[3]=a,t[5]=e[7],t[6]=r,t[7]=n}else t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8];return t},invert:function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=e[4],o=e[5],l=e[6],u=e[7],c=e[8],h=c*s-o*u,_=-c*i+o*l,d=u*i-s*l,p=a*h+r*_+n*d;return p?(p=1/p,t[0]=h*p,t[1]=(-c*r+n*u)*p,t[2]=(o*r-n*s)*p,t[3]=_*p,t[4]=(c*a-n*l)*p,t[5]=(-o*a+n*i)*p,t[6]=d*p,t[7]=(-u*a+r*l)*p,t[8]=(s*a-r*i)*p,t):null},adjoint:function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=e[4],o=e[5],l=e[6],u=e[7],c=e[8];return t[0]=s*c-o*u,t[1]=n*u-r*c,t[2]=r*o-n*s,t[3]=o*l-i*c,t[4]=a*c-n*l,t[5]=n*i-a*o,t[6]=i*u-s*l,t[7]=r*l-a*u,t[8]=a*s-r*i,t},determinant:function(t){var e=t[0],a=t[1],r=t[2],n=t[3],i=t[4],s=t[5],o=t[6],l=t[7],u=t[8];return e*(u*i-s*l)+a*(-u*n+s*o)+r*(l*n-i*o)},multiply:function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],_=a[0],d=a[1],p=a[2],m=a[3],M=a[4],f=a[5],v=a[6],g=a[7],y=a[8];return t[0]=_*r+d*s+p*u,t[1]=_*n+d*o+p*c,t[2]=_*i+d*l+p*h,t[3]=m*r+M*s+f*u,t[4]=m*n+M*o+f*c,t[5]=m*i+M*l+f*h,t[6]=v*r+g*s+y*u,t[7]=v*n+g*o+y*c,t[8]=v*i+g*l+y*h,t}};r.mul=r.multiply,r.translate=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],_=a[0],d=a[1];return t[0]=r,t[1]=n,t[2]=i,t[3]=s,t[4]=o,t[5]=l,t[6]=_*r+d*s+u,t[7]=_*n+d*o+c,t[8]=_*i+d*l+h,t},r.rotate=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],_=Math.sin(a),d=Math.cos(a);return t[0]=d*r+_*s,t[1]=d*n+_*o,t[2]=d*i+_*l,t[3]=d*s-_*r,t[4]=d*o-_*n,t[5]=d*l-_*i,t[6]=u,t[7]=c,t[8]=h,t},r.scale=function(t,e,a){var r=a[0],n=a[1];return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=n*e[3],t[4]=n*e[4],t[5]=n*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},r.fromTranslation=function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=e[0],t[7]=e[1],t[8]=1,t},r.fromRotation=function(t,e){var a=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=a,t[2]=0,t[3]=-a,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},r.fromScaling=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=e[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},r.fromMat2d=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=0,t[3]=e[2],t[4]=e[3],t[5]=0,t[6]=e[4],t[7]=e[5],t[8]=1,t},r.fromQuat=function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=a+a,o=r+r,l=n+n,u=a*s,c=r*s,h=r*o,_=n*s,d=n*o,p=n*l,m=i*s,M=i*o,f=i*l;return t[0]=1-h-p,t[3]=c-f,t[6]=_+M,t[1]=c+f,t[4]=1-u-p,t[7]=d-m,t[2]=_-M,t[5]=d+m,t[8]=1-u-h,t},r.normalFromMat4=function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=e[4],o=e[5],l=e[6],u=e[7],c=e[8],h=e[9],_=e[10],d=e[11],p=e[12],m=e[13],M=e[14],f=e[15],v=a*o-r*s,g=a*l-n*s,y=a*u-i*s,S=r*l-n*o,I=r*u-i*o,D=n*u-i*l,x=c*m-h*p,b=c*M-_*p,F=c*f-d*p,C=h*M-_*m,R=h*f-d*m,w=_*f-d*M,U=v*w-g*R+y*C+S*F-I*b+D*x;return U?(U=1/U,t[0]=(o*w-l*R+u*C)*U,t[1]=(l*F-s*w-u*b)*U,t[2]=(s*R-o*F+u*x)*U,t[3]=(n*R-r*w-i*C)*U,t[4]=(a*w-n*F+i*b)*U,t[5]=(r*F-a*R-i*x)*U,t[6]=(m*D-M*I+f*S)*U,t[7]=(M*y-p*D-f*g)*U,t[8]=(p*I-m*y+f*v)*U,t):null},r.str=function(t){return"mat3("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+")"},r.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2)+Math.pow(t[4],2)+Math.pow(t[5],2)+Math.pow(t[6],2)+Math.pow(t[7],2)+Math.pow(t[8],2))},r.add=function(t,e,a){return t[0]=e[0]+a[0],t[1]=e[1]+a[1],t[2]=e[2]+a[2],t[3]=e[3]+a[3],t[4]=e[4]+a[4],t[5]=e[5]+a[5],t[6]=e[6]+a[6],t[7]=e[7]+a[7],t[8]=e[8]+a[8],t},r.subtract=function(t,e,a){return t[0]=e[0]-a[0],t[1]=e[1]-a[1],t[2]=e[2]-a[2],t[3]=e[3]-a[3],t[4]=e[4]-a[4],t[5]=e[5]-a[5],t[6]=e[6]-a[6],t[7]=e[7]-a[7],t[8]=e[8]-a[8],t},r.sub=r.subtract,r.multiplyScalar=function(t,e,a){return t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t[3]=e[3]*a,t[4]=e[4]*a,t[5]=e[5]*a,t[6]=e[6]*a,t[7]=e[7]*a,t[8]=e[8]*a,t},r.multiplyScalarAndAdd=function(t,e,a,r){return t[0]=e[0]+a[0]*r,t[1]=e[1]+a[1]*r,t[2]=e[2]+a[2]*r,t[3]=e[3]+a[3]*r,t[4]=e[4]+a[4]*r,t[5]=e[5]+a[5]*r,t[6]=e[6]+a[6]*r,t[7]=e[7]+a[7]*r,t[8]=e[8]+a[8]*r,t},r.exactEquals=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]&&t[6]===e[6]&&t[7]===e[7]&&t[8]===e[8]},r.equals=function(t,e){var a=t[0],r=t[1],n=t[2],i=t[3],s=t[4],o=t[5],l=t[6],u=t[7],c=t[8],h=e[0],_=e[1],d=e[2],p=e[3],m=e[4],M=e[5],f=t[6],v=e[7],g=e[8];return Math.abs(a-h)<=y.EPSILON*Math.max(1,Math.abs(a),Math.abs(h))&&Math.abs(r-_)<=y.EPSILON*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(n-d)<=y.EPSILON*Math.max(1,Math.abs(n),Math.abs(d))&&Math.abs(i-p)<=y.EPSILON*Math.max(1,Math.abs(i),Math.abs(p))&&Math.abs(s-m)<=y.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(o-M)<=y.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))&&Math.abs(l-f)<=y.EPSILON*Math.max(1,Math.abs(l),Math.abs(f))&&Math.abs(u-v)<=y.EPSILON*Math.max(1,Math.abs(u),Math.abs(v))&&Math.abs(c-g)<=y.EPSILON*Math.max(1,Math.abs(c),Math.abs(g))},t.exports=r},function(t,e,a){var E=a(1),D={scalar:{},SIMD:{},create:function(){var t=new E.ARRAY_TYPE(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},clone:function(t){var e=new E.ARRAY_TYPE(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},fromValues:function(t,e,a,r,n,i,s,o,l,u,c,h,_,d,p,m){var M=new E.ARRAY_TYPE(16);return M[0]=t,M[1]=e,M[2]=a,M[3]=r,M[4]=n,M[5]=i,M[6]=s,M[7]=o,M[8]=l,M[9]=u,M[10]=c,M[11]=h,M[12]=_,M[13]=d,M[14]=p,M[15]=m,M},set:function(t,e,a,r,n,i,s,o,l,u,c,h,_,d,p,m,M){return t[0]=e,t[1]=a,t[2]=r,t[3]=n,t[4]=i,t[5]=s,t[6]=o,t[7]=l,t[8]=u,t[9]=c,t[10]=h,t[11]=_,t[12]=d,t[13]=p,t[14]=m,t[15]=M,t},identity:function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}};D.scalar.transpose=function(t,e){if(t===e){var a=e[1],r=e[2],n=e[3],i=e[6],s=e[7],o=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=a,t[6]=e[9],t[7]=e[13],t[8]=r,t[9]=i,t[11]=e[14],t[12]=n,t[13]=s,t[14]=o}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t},D.SIMD.transpose=function(t,e){var a,r,n,i,s,o,l,u,c,h;return a=SIMD.Float32x4.load(e,0),r=SIMD.Float32x4.load(e,4),n=SIMD.Float32x4.load(e,8),i=SIMD.Float32x4.load(e,12),s=SIMD.Float32x4.shuffle(a,r,0,1,4,5),o=SIMD.Float32x4.shuffle(n,i,0,1,4,5),l=SIMD.Float32x4.shuffle(s,o,0,2,4,6),u=SIMD.Float32x4.shuffle(s,o,1,3,5,7),SIMD.Float32x4.store(t,0,l),SIMD.Float32x4.store(t,4,u),s=SIMD.Float32x4.shuffle(a,r,2,3,6,7),o=SIMD.Float32x4.shuffle(n,i,2,3,6,7),c=SIMD.Float32x4.shuffle(s,o,0,2,4,6),h=SIMD.Float32x4.shuffle(s,o,1,3,5,7),SIMD.Float32x4.store(t,8,c),SIMD.Float32x4.store(t,12,h),t},D.transpose=E.USE_SIMD?D.SIMD.transpose:D.scalar.transpose,D.scalar.invert=function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=e[4],o=e[5],l=e[6],u=e[7],c=e[8],h=e[9],_=e[10],d=e[11],p=e[12],m=e[13],M=e[14],f=e[15],v=a*o-r*s,g=a*l-n*s,y=a*u-i*s,S=r*l-n*o,I=r*u-i*o,D=n*u-i*l,x=c*m-h*p,b=c*M-_*p,F=c*f-d*p,C=h*M-_*m,R=h*f-d*m,w=_*f-d*M,U=v*w-g*R+y*C+S*F-I*b+D*x;return U?(U=1/U,t[0]=(o*w-l*R+u*C)*U,t[1]=(n*R-r*w-i*C)*U,t[2]=(m*D-M*I+f*S)*U,t[3]=(_*I-h*D-d*S)*U,t[4]=(l*F-s*w-u*b)*U,t[5]=(a*w-n*F+i*b)*U,t[6]=(M*y-p*D-f*g)*U,t[7]=(c*D-_*y+d*g)*U,t[8]=(s*R-o*F+u*x)*U,t[9]=(r*F-a*R-i*x)*U,t[10]=(p*I-m*y+f*v)*U,t[11]=(h*y-c*I-d*v)*U,t[12]=(o*b-s*C-l*x)*U,t[13]=(a*C-r*b+n*x)*U,t[14]=(m*g-p*S-M*v)*U,t[15]=(c*S-h*g+_*v)*U,t):null},D.SIMD.invert=function(t,e){var a,r,n,i,s,o,l,u,c,h,_=SIMD.Float32x4.load(e,0),d=SIMD.Float32x4.load(e,4),p=SIMD.Float32x4.load(e,8),m=SIMD.Float32x4.load(e,12);return s=SIMD.Float32x4.shuffle(_,d,0,1,4,5),r=SIMD.Float32x4.shuffle(p,m,0,1,4,5),a=SIMD.Float32x4.shuffle(s,r,0,2,4,6),r=SIMD.Float32x4.shuffle(r,s,1,3,5,7),s=SIMD.Float32x4.shuffle(_,d,2,3,6,7),i=SIMD.Float32x4.shuffle(p,m,2,3,6,7),n=SIMD.Float32x4.shuffle(s,i,0,2,4,6),i=SIMD.Float32x4.shuffle(i,s,1,3,5,7),s=SIMD.Float32x4.mul(n,i),s=SIMD.Float32x4.swizzle(s,1,0,3,2),o=SIMD.Float32x4.mul(r,s),l=SIMD.Float32x4.mul(a,s),s=SIMD.Float32x4.swizzle(s,2,3,0,1),o=SIMD.Float32x4.sub(SIMD.Float32x4.mul(r,s),o),l=SIMD.Float32x4.sub(SIMD.Float32x4.mul(a,s),l),l=SIMD.Float32x4.swizzle(l,2,3,0,1),s=SIMD.Float32x4.mul(r,n),s=SIMD.Float32x4.swizzle(s,1,0,3,2),o=SIMD.Float32x4.add(SIMD.Float32x4.mul(i,s),o),c=SIMD.Float32x4.mul(a,s),s=SIMD.Float32x4.swizzle(s,2,3,0,1),o=SIMD.Float32x4.sub(o,SIMD.Float32x4.mul(i,s)),c=SIMD.Float32x4.sub(SIMD.Float32x4.mul(a,s),c),c=SIMD.Float32x4.swizzle(c,2,3,0,1),s=SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(r,2,3,0,1),i),s=SIMD.Float32x4.swizzle(s,1,0,3,2),n=SIMD.Float32x4.swizzle(n,2,3,0,1),o=SIMD.Float32x4.add(SIMD.Float32x4.mul(n,s),o),u=SIMD.Float32x4.mul(a,s),s=SIMD.Float32x4.swizzle(s,2,3,0,1),o=SIMD.Float32x4.sub(o,SIMD.Float32x4.mul(n,s)),u=SIMD.Float32x4.sub(SIMD.Float32x4.mul(a,s),u),u=SIMD.Float32x4.swizzle(u,2,3,0,1),s=SIMD.Float32x4.mul(a,r),s=SIMD.Float32x4.swizzle(s,1,0,3,2),u=SIMD.Float32x4.add(SIMD.Float32x4.mul(i,s),u),c=SIMD.Float32x4.sub(SIMD.Float32x4.mul(n,s),c),s=SIMD.Float32x4.swizzle(s,2,3,0,1),u=SIMD.Float32x4.sub(SIMD.Float32x4.mul(i,s),u),c=SIMD.Float32x4.sub(c,SIMD.Float32x4.mul(n,s)),s=SIMD.Float32x4.mul(a,i),s=SIMD.Float32x4.swizzle(s,1,0,3,2),l=SIMD.Float32x4.sub(l,SIMD.Float32x4.mul(n,s)),u=SIMD.Float32x4.add(SIMD.Float32x4.mul(r,s),u),s=SIMD.Float32x4.swizzle(s,2,3,0,1),l=SIMD.Float32x4.add(SIMD.Float32x4.mul(n,s),l),u=SIMD.Float32x4.sub(u,SIMD.Float32x4.mul(r,s)),s=SIMD.Float32x4.mul(a,n),s=SIMD.Float32x4.swizzle(s,1,0,3,2),l=SIMD.Float32x4.add(SIMD.Float32x4.mul(i,s),l),c=SIMD.Float32x4.sub(c,SIMD.Float32x4.mul(r,s)),s=SIMD.Float32x4.swizzle(s,2,3,0,1),l=SIMD.Float32x4.sub(l,SIMD.Float32x4.mul(i,s)),c=SIMD.Float32x4.add(SIMD.Float32x4.mul(r,s),c),h=SIMD.Float32x4.mul(a,o),h=SIMD.Float32x4.add(SIMD.Float32x4.swizzle(h,2,3,0,1),h),h=SIMD.Float32x4.add(SIMD.Float32x4.swizzle(h,1,0,3,2),h),s=SIMD.Float32x4.reciprocalApproximation(h),h=SIMD.Float32x4.sub(SIMD.Float32x4.add(s,s),SIMD.Float32x4.mul(h,SIMD.Float32x4.mul(s,s))),(h=SIMD.Float32x4.swizzle(h,0,0,0,0))?(SIMD.Float32x4.store(t,0,SIMD.Float32x4.mul(h,o)),SIMD.Float32x4.store(t,4,SIMD.Float32x4.mul(h,l)),SIMD.Float32x4.store(t,8,SIMD.Float32x4.mul(h,u)),SIMD.Float32x4.store(t,12,SIMD.Float32x4.mul(h,c)),t):null},D.invert=E.USE_SIMD?D.SIMD.invert:D.scalar.invert,D.scalar.adjoint=function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=e[4],o=e[5],l=e[6],u=e[7],c=e[8],h=e[9],_=e[10],d=e[11],p=e[12],m=e[13],M=e[14],f=e[15];return t[0]=o*(_*f-d*M)-h*(l*f-u*M)+m*(l*d-u*_),t[1]=-(r*(_*f-d*M)-h*(n*f-i*M)+m*(n*d-i*_)),t[2]=r*(l*f-u*M)-o*(n*f-i*M)+m*(n*u-i*l),t[3]=-(r*(l*d-u*_)-o*(n*d-i*_)+h*(n*u-i*l)),t[4]=-(s*(_*f-d*M)-c*(l*f-u*M)+p*(l*d-u*_)),t[5]=a*(_*f-d*M)-c*(n*f-i*M)+p*(n*d-i*_),t[6]=-(a*(l*f-u*M)-s*(n*f-i*M)+p*(n*u-i*l)),t[7]=a*(l*d-u*_)-s*(n*d-i*_)+c*(n*u-i*l),t[8]=s*(h*f-d*m)-c*(o*f-u*m)+p*(o*d-u*h),t[9]=-(a*(h*f-d*m)-c*(r*f-i*m)+p*(r*d-i*h)),t[10]=a*(o*f-u*m)-s*(r*f-i*m)+p*(r*u-i*o),t[11]=-(a*(o*d-u*h)-s*(r*d-i*h)+c*(r*u-i*o)),t[12]=-(s*(h*M-_*m)-c*(o*M-l*m)+p*(o*_-l*h)),t[13]=a*(h*M-_*m)-c*(r*M-n*m)+p*(r*_-n*h),t[14]=-(a*(o*M-l*m)-s*(r*M-n*m)+p*(r*l-n*o)),t[15]=a*(o*_-l*h)-s*(r*_-n*h)+c*(r*l-n*o),t},D.SIMD.adjoint=function(t,e){var a,r,n,i,s,o,l,u,c,h,_,d,p;return a=SIMD.Float32x4.load(e,0),r=SIMD.Float32x4.load(e,4),n=SIMD.Float32x4.load(e,8),i=SIMD.Float32x4.load(e,12),c=SIMD.Float32x4.shuffle(a,r,0,1,4,5),o=SIMD.Float32x4.shuffle(n,i,0,1,4,5),s=SIMD.Float32x4.shuffle(c,o,0,2,4,6),o=SIMD.Float32x4.shuffle(o,c,1,3,5,7),c=SIMD.Float32x4.shuffle(a,r,2,3,6,7),u=SIMD.Float32x4.shuffle(n,i,2,3,6,7),l=SIMD.Float32x4.shuffle(c,u,0,2,4,6),u=SIMD.Float32x4.shuffle(u,c,1,3,5,7),c=SIMD.Float32x4.mul(l,u),c=SIMD.Float32x4.swizzle(c,1,0,3,2),h=SIMD.Float32x4.mul(o,c),_=SIMD.Float32x4.mul(s,c),c=SIMD.Float32x4.swizzle(c,2,3,0,1),h=SIMD.Float32x4.sub(SIMD.Float32x4.mul(o,c),h),_=SIMD.Float32x4.sub(SIMD.Float32x4.mul(s,c),_),_=SIMD.Float32x4.swizzle(_,2,3,0,1),c=SIMD.Float32x4.mul(o,l),c=SIMD.Float32x4.swizzle(c,1,0,3,2),h=SIMD.Float32x4.add(SIMD.Float32x4.mul(u,c),h),p=SIMD.Float32x4.mul(s,c),c=SIMD.Float32x4.swizzle(c,2,3,0,1),h=SIMD.Float32x4.sub(h,SIMD.Float32x4.mul(u,c)),p=SIMD.Float32x4.sub(SIMD.Float32x4.mul(s,c),p),p=SIMD.Float32x4.swizzle(p,2,3,0,1),c=SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(o,2,3,0,1),u),c=SIMD.Float32x4.swizzle(c,1,0,3,2),l=SIMD.Float32x4.swizzle(l,2,3,0,1),h=SIMD.Float32x4.add(SIMD.Float32x4.mul(l,c),h),d=SIMD.Float32x4.mul(s,c),c=SIMD.Float32x4.swizzle(c,2,3,0,1),h=SIMD.Float32x4.sub(h,SIMD.Float32x4.mul(l,c)),d=SIMD.Float32x4.sub(SIMD.Float32x4.mul(s,c),d),d=SIMD.Float32x4.swizzle(d,2,3,0,1),c=SIMD.Float32x4.mul(s,o),c=SIMD.Float32x4.swizzle(c,1,0,3,2),d=SIMD.Float32x4.add(SIMD.Float32x4.mul(u,c),d),p=SIMD.Float32x4.sub(SIMD.Float32x4.mul(l,c),p),c=SIMD.Float32x4.swizzle(c,2,3,0,1),d=SIMD.Float32x4.sub(SIMD.Float32x4.mul(u,c),d),p=SIMD.Float32x4.sub(p,SIMD.Float32x4.mul(l,c)),c=SIMD.Float32x4.mul(s,u),c=SIMD.Float32x4.swizzle(c,1,0,3,2),_=SIMD.Float32x4.sub(_,SIMD.Float32x4.mul(l,c)),d=SIMD.Float32x4.add(SIMD.Float32x4.mul(o,c),d),c=SIMD.Float32x4.swizzle(c,2,3,0,1),_=SIMD.Float32x4.add(SIMD.Float32x4.mul(l,c),_),d=SIMD.Float32x4.sub(d,SIMD.Float32x4.mul(o,c)),c=SIMD.Float32x4.mul(s,l),c=SIMD.Float32x4.swizzle(c,1,0,3,2),_=SIMD.Float32x4.add(SIMD.Float32x4.mul(u,c),_),p=SIMD.Float32x4.sub(p,SIMD.Float32x4.mul(o,c)),c=SIMD.Float32x4.swizzle(c,2,3,0,1),_=SIMD.Float32x4.sub(_,SIMD.Float32x4.mul(u,c)),p=SIMD.Float32x4.add(SIMD.Float32x4.mul(o,c),p),SIMD.Float32x4.store(t,0,h),SIMD.Float32x4.store(t,4,_),SIMD.Float32x4.store(t,8,d),SIMD.Float32x4.store(t,12,p),t},D.adjoint=E.USE_SIMD?D.SIMD.adjoint:D.scalar.adjoint,D.determinant=function(t){var e=t[0],a=t[1],r=t[2],n=t[3],i=t[4],s=t[5],o=t[6],l=t[7],u=t[8],c=t[9],h=t[10],_=t[11],d=t[12],p=t[13],m=t[14],M=t[15];return(e*s-a*i)*(h*M-_*m)-(e*o-r*i)*(c*M-_*p)+(e*l-n*i)*(c*m-h*p)+(a*o-r*s)*(u*M-_*d)-(a*l-n*s)*(u*m-h*d)+(r*l-n*o)*(u*p-c*d)},D.SIMD.multiply=function(t,e,a){var r=SIMD.Float32x4.load(e,0),n=SIMD.Float32x4.load(e,4),i=SIMD.Float32x4.load(e,8),s=SIMD.Float32x4.load(e,12),o=SIMD.Float32x4.load(a,0),l=SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(o,0,0,0,0),r),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(o,1,1,1,1),n),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(o,2,2,2,2),i),SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(o,3,3,3,3),s))));SIMD.Float32x4.store(t,0,l);var u=SIMD.Float32x4.load(a,4),c=SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(u,0,0,0,0),r),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(u,1,1,1,1),n),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(u,2,2,2,2),i),SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(u,3,3,3,3),s))));SIMD.Float32x4.store(t,4,c);var h=SIMD.Float32x4.load(a,8),_=SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(h,0,0,0,0),r),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(h,1,1,1,1),n),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(h,2,2,2,2),i),SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(h,3,3,3,3),s))));SIMD.Float32x4.store(t,8,_);var d=SIMD.Float32x4.load(a,12),p=SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(d,0,0,0,0),r),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(d,1,1,1,1),n),SIMD.Float32x4.add(SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(d,2,2,2,2),i),SIMD.Float32x4.mul(SIMD.Float32x4.swizzle(d,3,3,3,3),s))));return SIMD.Float32x4.store(t,12,p),t},D.scalar.multiply=function(t,e,a){var r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],_=e[9],d=e[10],p=e[11],m=e[12],M=e[13],f=e[14],v=e[15],g=a[0],y=a[1],S=a[2],I=a[3];return t[0]=g*r+y*o+S*h+I*m,t[1]=g*n+y*l+S*_+I*M,t[2]=g*i+y*u+S*d+I*f,t[3]=g*s+y*c+S*p+I*v,g=a[4],y=a[5],S=a[6],I=a[7],t[4]=g*r+y*o+S*h+I*m,t[5]=g*n+y*l+S*_+I*M,t[6]=g*i+y*u+S*d+I*f,t[7]=g*s+y*c+S*p+I*v,g=a[8],y=a[9],S=a[10],I=a[11],t[8]=g*r+y*o+S*h+I*m,t[9]=g*n+y*l+S*_+I*M,t[10]=g*i+y*u+S*d+I*f,t[11]=g*s+y*c+S*p+I*v,g=a[12],y=a[13],S=a[14],I=a[15],t[12]=g*r+y*o+S*h+I*m,t[13]=g*n+y*l+S*_+I*M,t[14]=g*i+y*u+S*d+I*f,t[15]=g*s+y*c+S*p+I*v,t},D.multiply=E.USE_SIMD?D.SIMD.multiply:D.scalar.multiply,D.mul=D.multiply,D.scalar.translate=function(t,e,a){var r,n,i,s,o,l,u,c,h,_,d,p,m=a[0],M=a[1],f=a[2];return e===t?(t[12]=e[0]*m+e[4]*M+e[8]*f+e[12],t[13]=e[1]*m+e[5]*M+e[9]*f+e[13],t[14]=e[2]*m+e[6]*M+e[10]*f+e[14],t[15]=e[3]*m+e[7]*M+e[11]*f+e[15]):(r=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],_=e[9],d=e[10],p=e[11],t[0]=r,t[1]=n,t[2]=i,t[3]=s,t[4]=o,t[5]=l,t[6]=u,t[7]=c,t[8]=h,t[9]=_,t[10]=d,t[11]=p,t[12]=r*m+o*M+h*f+e[12],t[13]=n*m+l*M+_*f+e[13],t[14]=i*m+u*M+d*f+e[14],t[15]=s*m+c*M+p*f+e[15]),t},D.SIMD.translate=function(t,e,a){var r=SIMD.Float32x4.load(e,0),n=SIMD.Float32x4.load(e,4),i=SIMD.Float32x4.load(e,8),s=SIMD.Float32x4.load(e,12),o=SIMD.Float32x4(a[0],a[1],a[2],0);e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11]),r=SIMD.Float32x4.mul(r,SIMD.Float32x4.swizzle(o,0,0,0,0)),n=SIMD.Float32x4.mul(n,SIMD.Float32x4.swizzle(o,1,1,1,1)),i=SIMD.Float32x4.mul(i,SIMD.Float32x4.swizzle(o,2,2,2,2));var l=SIMD.Float32x4.add(r,SIMD.Float32x4.add(n,SIMD.Float32x4.add(i,s)));return SIMD.Float32x4.store(t,12,l),t},D.translate=E.USE_SIMD?D.SIMD.translate:D.scalar.translate,D.scalar.scale=function(t,e,a){var r=a[0],n=a[1],i=a[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*n,t[5]=e[5]*n,t[6]=e[6]*n,t[7]=e[7]*n,t[8]=e[8]*i,t[9]=e[9]*i,t[10]=e[10]*i,t[11]=e[11]*i,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},D.SIMD.scale=function(t,e,a){var r,n,i,s=SIMD.Float32x4(a[0],a[1],a[2],0);return r=SIMD.Float32x4.load(e,0),SIMD.Float32x4.store(t,0,SIMD.Float32x4.mul(r,SIMD.Float32x4.swizzle(s,0,0,0,0))),n=SIMD.Float32x4.load(e,4),SIMD.Float32x4.store(t,4,SIMD.Float32x4.mul(n,SIMD.Float32x4.swizzle(s,1,1,1,1))),i=SIMD.Float32x4.load(e,8),SIMD.Float32x4.store(t,8,SIMD.Float32x4.mul(i,SIMD.Float32x4.swizzle(s,2,2,2,2))),t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},D.scale=E.USE_SIMD?D.SIMD.scale:D.scalar.scale,D.rotate=function(t,e,a,r){var n,i,s,o,l,u,c,h,_,d,p,m,M,f,v,g,y,S,I,D,x,b,F,C,R=r[0],w=r[1],U=r[2],P=Math.sqrt(R*R+w*w+U*U);return Math.abs(P)e[5]&e[0]>e[10]?(r=2*Math.sqrt(1+e[0]-e[5]-e[10]),t[3]=(e[6]-e[9])/r,t[0]=.25*r,t[1]=(e[1]+e[4])/r,t[2]=(e[8]+e[2])/r):e[5]>e[10]?(r=2*Math.sqrt(1+e[5]-e[0]-e[10]),t[3]=(e[8]-e[2])/r,t[0]=(e[1]+e[4])/r,t[1]=.25*r,t[2]=(e[6]+e[9])/r):(r=2*Math.sqrt(1+e[10]-e[0]-e[5]),t[3]=(e[1]-e[4])/r,t[0]=(e[8]+e[2])/r,t[1]=(e[6]+e[9])/r,t[2]=.25*r),t},D.fromRotationTranslationScale=function(t,e,a,r){var n=e[0],i=e[1],s=e[2],o=e[3],l=n+n,u=i+i,c=s+s,h=n*l,_=n*u,d=n*c,p=i*u,m=i*c,M=s*c,f=o*l,v=o*u,g=o*c,y=r[0],S=r[1],I=r[2];return t[0]=(1-(p+M))*y,t[1]=(_+g)*y,t[2]=(d-v)*y,t[3]=0,t[4]=(_-g)*S,t[5]=(1-(h+M))*S,t[6]=(m+f)*S,t[7]=0,t[8]=(d+v)*I,t[9]=(m-f)*I,t[10]=(1-(h+p))*I,t[11]=0,t[12]=a[0],t[13]=a[1],t[14]=a[2],t[15]=1,t},D.fromRotationTranslationScaleOrigin=function(t,e,a,r,n){var i=e[0],s=e[1],o=e[2],l=e[3],u=i+i,c=s+s,h=o+o,_=i*u,d=i*c,p=i*h,m=s*c,M=s*h,f=o*h,v=l*u,g=l*c,y=l*h,S=r[0],I=r[1],D=r[2],x=n[0],b=n[1],F=n[2];return t[0]=(1-(m+f))*S,t[1]=(d+y)*S,t[2]=(p-g)*S,t[3]=0,t[4]=(d-y)*I,t[5]=(1-(_+f))*I,t[6]=(M+v)*I,t[7]=0,t[8]=(p+g)*D,t[9]=(M-v)*D,t[10]=(1-(_+m))*D,t[11]=0,t[12]=a[0]+x-(t[0]*x+t[4]*b+t[8]*F),t[13]=a[1]+b-(t[1]*x+t[5]*b+t[9]*F),t[14]=a[2]+F-(t[2]*x+t[6]*b+t[10]*F),t[15]=1,t},D.fromQuat=function(t,e){var a=e[0],r=e[1],n=e[2],i=e[3],s=a+a,o=r+r,l=n+n,u=a*s,c=r*s,h=r*o,_=n*s,d=n*o,p=n*l,m=i*s,M=i*o,f=i*l;return t[0]=1-h-p,t[1]=c+f,t[2]=_-M,t[3]=0,t[4]=c-f,t[5]=1-u-p,t[6]=d+m,t[7]=0,t[8]=_+M,t[9]=d-m,t[10]=1-u-h,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},D.frustum=function(t,e,a,r,n,i,s){var o=1/(a-e),l=1/(n-r),u=1/(i-s);return t[0]=2*i*o,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*i*l,t[6]=0,t[7]=0,t[8]=(a+e)*o,t[9]=(n+r)*l,t[10]=(s+i)*u,t[11]=-1,t[12]=0,t[13]=0,t[14]=s*i*2*u,t[15]=0,t},D.perspective=function(t,e,a,r,n){var i=1/Math.tan(e/2),s=1/(r-n);return t[0]=i/a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=i,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(n+r)*s,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*n*r*s,t[15]=0,t},D.perspectiveFromFieldOfView=function(t,e,a,r){var n=Math.tan(e.upDegrees*Math.PI/180),i=Math.tan(e.downDegrees*Math.PI/180),s=Math.tan(e.leftDegrees*Math.PI/180),o=Math.tan(e.rightDegrees*Math.PI/180),l=2/(s+o),u=2/(n+i);return t[0]=l,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=u,t[6]=0,t[7]=0,t[8]=-(s-o)*l*.5,t[9]=(n-i)*u*.5,t[10]=r/(a-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*a/(a-r),t[15]=0,t},D.ortho=function(t,e,a,r,n,i,s){var o=1/(e-a),l=1/(r-n),u=1/(i-s);return t[0]=-2*o,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*u,t[11]=0,t[12]=(e+a)*o,t[13]=(n+r)*l,t[14]=(s+i)*u,t[15]=1,t},D.lookAt=function(t,e,a,r){var n,i,s,o,l,u,c,h,_,d,p=e[0],m=e[1],M=e[2],f=r[0],v=r[1],g=r[2],y=a[0],S=a[1],I=a[2];return Math.abs(p-y)e[0]&&(n=1),e[8]>e[3*n+n]&&(n=2);var i=(n+1)%3,s=(n+2)%3;a=Math.sqrt(e[3*n+n]-e[3*i+i]-e[3*s+s]+1),t[n]=.5*a,a=.5/a,t[3]=(e[3*i+s]-e[3*s+i])*a,t[i]=(e[3*i+n]+e[3*n+i])*a,t[s]=(e[3*s+n]+e[3*n+s])*a}return t},d.str=function(t){return"quat("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"},d.exactEquals=_.exactEquals,d.equals=_.equals,t.exports=d},function(t,e,a){var l,u=a(1),i={};i.create=function(){var t=new u.ARRAY_TYPE(3);return t[0]=0,t[1]=0,t[2]=0,t},i.clone=function(t){var e=new u.ARRAY_TYPE(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},i.fromValues=function(t,e,a){var r=new u.ARRAY_TYPE(3);return r[0]=t,r[1]=e,r[2]=a,r},i.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},i.set=function(t,e,a,r){return t[0]=e,t[1]=a,t[2]=r,t},i.add=function(t,e,a){return t[0]=e[0]+a[0],t[1]=e[1]+a[1],t[2]=e[2]+a[2],t},i.subtract=function(t,e,a){return t[0]=e[0]-a[0],t[1]=e[1]-a[1],t[2]=e[2]-a[2],t},i.sub=i.subtract,i.multiply=function(t,e,a){return t[0]=e[0]*a[0],t[1]=e[1]*a[1],t[2]=e[2]*a[2],t},i.mul=i.multiply,i.divide=function(t,e,a){return t[0]=e[0]/a[0],t[1]=e[1]/a[1],t[2]=e[2]/a[2],t},i.div=i.divide,i.ceil=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t},i.floor=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t},i.min=function(t,e,a){return t[0]=Math.min(e[0],a[0]),t[1]=Math.min(e[1],a[1]),t[2]=Math.min(e[2],a[2]),t},i.max=function(t,e,a){return t[0]=Math.max(e[0],a[0]),t[1]=Math.max(e[1],a[1]),t[2]=Math.max(e[2],a[2]),t},i.round=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t},i.scale=function(t,e,a){return t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t},i.scaleAndAdd=function(t,e,a,r){return t[0]=e[0]+a[0]*r,t[1]=e[1]+a[1]*r,t[2]=e[2]+a[2]*r,t},i.distance=function(t,e){var a=e[0]-t[0],r=e[1]-t[1],n=e[2]-t[2];return Math.sqrt(a*a+r*r+n*n)},i.dist=i.distance,i.squaredDistance=function(t,e){var a=e[0]-t[0],r=e[1]-t[1],n=e[2]-t[2];return a*a+r*r+n*n},i.sqrDist=i.squaredDistance,i.length=function(t){var e=t[0],a=t[1],r=t[2];return Math.sqrt(e*e+a*a+r*r)},i.len=i.length,i.squaredLength=function(t){var e=t[0],a=t[1],r=t[2];return e*e+a*a+r*r},i.sqrLen=i.squaredLength,i.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t},i.inverse=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t},i.normalize=function(t,e){var a=e[0],r=e[1],n=e[2],i=a*a+r*r+n*n;return 0i&&(e[0]=i),e[1]>s&&(e[1]=s),a[0]=this.frame&&(this.triggered=!0))},CreatureGameController.prototype.BuildFrameCallbacks=function(t){if(null!=this.meta_asset)for(var e in this.meta_asset.anim_events_map){var a=this.meta_asset.anim_events_map[e];for(var r in a){var n=a[r],i=new CreatureFrameCallback;i.animClipName=e,i.name=n,i.frame=Number(r),i.callback=t(animClipName,name),this.event_callbacks.push(i)}}},CreatureGameController.prototype.AddFrameCallback=function(t,e,a,r){var n=new CreatureFrameCallback;n.animClipName=t,n.name=e,n.frame=a,n.callback=r,this.event_callbacks.push(n)},CreatureGameController.prototype.ResetFrameCallbacks=function(){for(var t in this.event_callbacks){this.event_callbacks[t].resetCallback()}},CreatureGameController.prototype.ProcessCallbacks=function(t){var e=t.getActualRuntime();eanim_end_time?this.should_loop?ret_time=anim_start_time:ret_time=anim_end_time:ret_timea?this.should_loop?this.run_time=e:this.run_time=a:this.run_timet.vertices.length)throw new Error("lol2");if(e<0)throw new Error("lol3");for(var i=e;ie[t][0])&&(t=o);B.left(this.at(t-1),this.at(t),this.at(t+1))||this.reverse()},q.prototype.reverse=function(){for(var t=[],e=0,o=this.vertices.length;e!==o;e++)t.push(this.vertices.pop());this.vertices=t},q.prototype.isReflex=function(t){return B.right(this.at(t-1),this.at(t),this.at(t+1))};var c=[],h=[];function P(t,e,o,i,n){n=n||0;var s=e[1]-t[1],a=t[0]-e[0],r=s*t[0]+a*t[1],c=i[1]-o[1],h=o[0]-i[0],l=c*o[0]+h*o[1],p=s*h-c*a;return u.eq(p,0,n)?[0,0]:[(h*r-a*l)/p,(s*l-c*r)/p]}q.prototype.canSee=function(t,e){var o,i,n=c,s=h;if(B.leftOn(this.at(t+1),this.at(t),this.at(e))&&B.rightOn(this.at(t-1),this.at(t),this.at(e)))return!1;i=B.sqdist(this.at(t),this.at(e));for(var a=0;a!==this.vertices.length;++a)if((a+1)%this.vertices.length!==t&&a!==t&&B.leftOn(this.at(t),this.at(e),this.at(a+1))&&B.rightOn(this.at(t),this.at(e),this.at(a))&&(n[0]=this.at(t),n[1]=this.at(e),s[0]=this.at(a),s[1]=this.at(a+1),o=r.lineInt(n,s),B.sqdist(this.at(t),o) (http://steffe.se)",keywords:["p2.js","p2","physics","engine","2d"],main:"./src/p2.js",engines:{node:"*"},repository:{type:"git",url:"https://github.com/schteppe/p2.js.git"},bugs:{url:"https://github.com/schteppe/p2.js/issues"},licenses:[{type:"MIT"}],devDependencies:{grunt:"^0.4.5","grunt-contrib-jshint":"^0.11.2","grunt-contrib-nodeunit":"^0.4.1","grunt-contrib-uglify":"~0.4.0","grunt-contrib-watch":"~0.5.0","grunt-browserify":"~2.0.1","grunt-contrib-concat":"^0.4.0"},dependencies:{"poly-decomp":"0.1.1"}}},{}],7:[function(t,e,o){var d=t("../math/vec2");t("../utils/Utils");function i(t){this.lowerBound=d.create(),t&&t.lowerBound&&d.copy(this.lowerBound,t.lowerBound),this.upperBound=d.create(),t&&t.upperBound&&d.copy(this.upperBound,t.upperBound)}e.exports=i;var f=d.create();i.prototype.setFromPoints=function(t,e,o,i){var n=this.lowerBound,s=this.upperBound;"number"!=typeof o&&(o=0),0!==o?d.rotate(n,t[0],o):d.copy(n,t[0]),d.copy(s,n);for(var a=Math.cos(o),r=Math.sin(o),c=1;cs[u]&&(s[u]=h[u]),h[u]o&&(this.lowerBound[e]=o);var i=t.upperBound[e];this.upperBound[e]Math.pow(u,2))return 0;if(c)return!0;var d=this.createContactEquation(t,n,e,s);return D(d.normalA,a,o),_.normalize(d.normalA,d.normalA),_.scale(d.contactPointA,d.normalA,h),_.scale(d.contactPointB,d.normalA,-l),W(d.contactPointA,d.contactPointA,o),D(d.contactPointA,d.contactPointA,t.position),W(d.contactPointB,d.contactPointB,a),D(d.contactPointB,d.contactPointB,n.position),this.contactEquations.push(d),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(d)),1},$.prototype[h.PLANE|h.CONVEX]=$.prototype[h.PLANE|h.BOX]=$.prototype.planeConvex=function(t,e,o,i,n,s,a,r,c){var h=X,l=z,p=Y,u=0;_.rotate(l,P,i);for(var d=0;d!==s.vertices.length;d++){var f=s.vertices[d];if(_.rotate(h,f,r),W(h,h,a),D(p,h,o),j(p,l)<=0){if(c)return!0;u++;var v=this.createContactEquation(t,n,e,s);D(p,h,o),_.copy(v.normalA,l);var y=j(p,v.normalA);_.scale(p,v.normalA,y),D(v.contactPointB,h,n.position),D(v.contactPointA,h,p),D(v.contactPointA,v.contactPointA,t.position),this.contactEquations.push(v),this.enableFrictionReduction||this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(v))}}return this.enableFrictionReduction&&this.enableFriction&&u&&this.frictionEquations.push(this.createFrictionFromAverage(u)),u},$.prototype[h.PARTICLE|h.PLANE]=$.prototype.particlePlane=function(t,e,o,i,n,s,a,r,c){var h=X,l=z;r=r||0,D(h,o,a),_.rotate(l,P,r);var p=j(h,l);if(0Math.pow(e.radius,2))return 0;if(c)return!0;var l=this.createContactEquation(t,n,e,s);return _.copy(l.normalA,h),_.normalize(l.normalA,l.normalA),_.scale(l.contactPointA,l.normalA,e.radius),W(l.contactPointA,l.contactPointA,o),D(l.contactPointA,l.contactPointA,t.position),D(l.contactPointB,a,n.position),this.contactEquations.push(l),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(l)),1};var w=new r({radius:1}),S=_.create(),C=_.create();_.create();$.prototype[h.PLANE|h.CAPSULE]=$.prototype.planeCapsule=function(t,e,o,i,n,s,a,r,c){var h,l=S,p=C,u=w;_.set(l,-s.length/2,0),_.rotate(l,l,r),W(l,l,a),_.set(p,s.length/2,0),_.rotate(p,p,r),W(p,p,a),u.radius=s.radius,this.enableFrictionReduction&&(h=this.enableFriction,this.enableFriction=!1);var d=this.circlePlane(n,u,l,0,t,e,o,i,c),f=this.circlePlane(n,u,p,0,t,e,o,i,c);if(this.enableFrictionReduction&&(this.enableFriction=h),c)return d||f;var v=d+f;return this.enableFrictionReduction&&v&&this.frictionEquations.push(this.createFrictionFromAverage(v)),v},$.prototype[h.CIRCLE|h.PLANE]=$.prototype.circlePlane=function(t,e,o,i,n,s,a,r,c){var h=t,l=e,p=o,u=n,d=a,f=r;f=f||0;var v=X,y=z,m=Y;D(v,p,d),_.rotate(y,P,f);var g=j(y,v);if(g>l.radius)return 0;if(c)return!0;var A=this.createContactEquation(u,h,s,e);return _.copy(A.normalA,y),_.scale(A.contactPointB,A.normalA,-l.radius),W(A.contactPointB,A.contactPointB,p),D(A.contactPointB,A.contactPointB,h.position),_.scale(m,A.normalA,g),D(A.contactPointA,v,m),W(A.contactPointA,A.contactPointA,d),D(A.contactPointA,A.contactPointA,u.position),this.contactEquations.push(A),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(A)),1},$.prototype[h.CONVEX]=$.prototype[h.CONVEX|h.BOX]=$.prototype[h.BOX]=$.prototype.convexConvex=function(t,e,o,i,n,s,a,r,c,h){var l=X,p=z,u=Y,d=K,f=H,v=Z,y=J,m=Q,g=0;h="number"==typeof h?h:0;if(!$.findSeparatingAxis(e,o,i,s,a,r,l))return 0;D(y,a,o),0v[0]&&(E=f,b=v,!0),c=(B=E[0]-b[1])<=0,(null===r||rv[0]&&(E=f,b=v,!0),c=(B=E[0]-b[1])<=0,(null===r||r=l.length&&(b=l.length-1);for(var E=l[A],B=l[b],q=A;qE&&(E=l[q]);if(o[1]-h>E)return!c&&0;var P=!1;for(q=A;q=m[0]&&d[0]=h.length&&(y=h.length-1);for(var m=h[v],g=h[y],A=v;Am&&(m=h[A]);if(t.aabb.lowerBound[1]>m)return!c&&0;var b=0;for(A=v;Ae.boundingRadius*e.boundingRadius||(this._currentBody=n,(this._currentShape=e).raycast(t,this,i,o),this._currentBody=this._currentShape=null)},a.prototype.getAABB=function(t){var e=this.to,o=this.from;c.set(t.lowerBound,Math.min(e[0],o[0]),Math.min(e[1],o[1])),c.set(t.upperBound,Math.max(e[0],o[0]),Math.max(e[1],o[1]))};c.create();a.prototype.reportIntersection=function(t,e,o,i){this.from,this.to;var n=this._currentShape,s=this._currentBody;if(!(this.skipBackfaces&&0this.upperLimit&&(s.maxForce=0,s.minForce=-this.maxForce,this.distance=this.upperLimit,r=!0),this.lowerLimitEnabled&&this.position>1;if(e<3)return[];for(var o=[],i=[],n=0;n3*s)break}return o.push(i[0],i[1],i[2]),o},_PointInTriangle:function(t,e,o,i,n,s,a,r){var c=a-o,h=r-i,l=n-o,p=s-i,u=t-o,d=e-i,f=c*c+h*h,v=c*l+h*p,y=c*u+h*d,m=l*l+p*p,g=l*u+p*d,A=1/(f*m-v*v),b=(m*y-v*g)*A,E=(f*g-v*y)*A;return 0<=b&&0<=E&&b+E<1},_convex:function(t,e,o,i,n,s){return 0<=(e-i)*(n-o)+(o-t)*(s-i)}};e.exports=g},{}],30:[function(t,e,o){var a=e.exports={},i=t("../utils/Utils");a.crossLength=function(t,e){return t[0]*e[1]-t[1]*e[0]},a.crossVZ=function(t,e,o){return a.rotate(t,e,-Math.PI/2),a.scale(t,t,o),t},a.crossZV=function(t,e,o){return a.rotate(t,o,Math.PI/2),a.scale(t,t,e),t},a.rotate=function(t,e,o){if(0!==o){var i=Math.cos(o),n=Math.sin(o),s=e[0],a=e[1];t[0]=i*s-n*a,t[1]=n*s+i*a}else t[0]=e[0],t[1]=e[1]},a.rotate90cw=function(t,e){var o=e[0],i=e[1];t[0]=i,t[1]=-o},a.toLocalFrame=function(t,e,o,i){a.copy(t,e),a.sub(t,t,o),a.rotate(t,t,-i)},a.toGlobalFrame=function(t,e,o,i){a.copy(t,e),a.rotate(t,t,i),a.add(t,t,o)},a.vectorToLocalFrame=function(t,e,o){a.rotate(t,e,-o)},a.vectorToGlobalFrame=function(t,e,o){a.rotate(t,e,o)},a.centroid=function(t,e,o,i){return a.add(t,e,o),a.add(t,t,i),a.scale(t,t,1/3),t},a.create=function(){var t=new i.ARRAY_TYPE(2);return t[0]=0,t[1]=0,t},a.clone=function(t){var e=new i.ARRAY_TYPE(2);return e[0]=t[0],e[1]=t[1],e},a.fromValues=function(t,e){var o=new i.ARRAY_TYPE(2);return o[0]=t,o[1]=e,o},a.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t},a.set=function(t,e,o){return t[0]=e,t[1]=o,t},a.add=function(t,e,o){return t[0]=e[0]+o[0],t[1]=e[1]+o[1],t},a.subtract=function(t,e,o){return t[0]=e[0]-o[0],t[1]=e[1]-o[1],t},a.sub=a.subtract,a.multiply=function(t,e,o){return t[0]=e[0]*o[0],t[1]=e[1]*o[1],t},a.mul=a.multiply,a.divide=function(t,e,o){return t[0]=e[0]/o[0],t[1]=e[1]/o[1],t},a.div=a.divide,a.scale=function(t,e,o){return t[0]=e[0]*o,t[1]=e[1]*o,t},a.distance=function(t,e){var o=e[0]-t[0],i=e[1]-t[1];return Math.sqrt(o*o+i*i)},a.dist=a.distance,a.squaredDistance=function(t,e){var o=e[0]-t[0],i=e[1]-t[1];return o*o+i*i},a.sqrDist=a.squaredDistance,a.length=function(t){var e=t[0],o=t[1];return Math.sqrt(e*e+o*o)},a.len=a.length,a.squaredLength=function(t){var e=t[0],o=t[1];return e*e+o*o},a.sqrLen=a.squaredLength,a.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t},a.normalize=function(t,e){var o=e[0],i=e[1],n=o*o+i*i;return 0this.sleepTimeLimit&&(e?this.wantsToSleep=!0:this.sleep())}},r.prototype.overlaps=function(t){return this.world.overlapKeeper.bodiesAreOverlapping(this,t)};var q=p.create(),P=p.create();r.prototype.integrate=function(t){var e=this.invMass,o=this.force,i=this.position,n=this.velocity;p.copy(this.previousPosition,this.position),this.previousAngle=this.angle,this.fixedRotation||(this.angularVelocity+=this.angularForce*this.invInertia*t),p.scale(q,o,t*e),p.multiply(q,this.massMultiplier,q),p.add(n,q,n),this.integrateToTimeOfImpact(t)||(p.scale(P,n,t),p.add(i,i,P),this.fixedRotation||(this.angle+=this.angularVelocity*t)),this.aabbNeedsUpdate=!0};var w=new i,S=new n({mode:n.ALL}),C=p.create(),L=p.create(),x=p.create(),F=p.create();r.prototype.integrateToTimeOfImpact=function(t){if(this.ccdSpeedThreshold<0||p.squaredLength(this.velocity)d&&(B.sub(r,a,c),B.normalize(r,r),e.reportIntersection(t,f,r,-1),t.shouldStop(e)))return}else{var g=Math.sqrt(f),A=1/(2*v),b=(-y-g)*A,E=(-y+g)*A;if(0<=b&&b<=1&&(B.lerp(a,n,s,b),B.squaredDistance(a,o)>d&&(B.sub(r,a,c),B.normalize(r,r),e.reportIntersection(t,b,r,-1),t.shouldStop(e))))return;if(0<=E&&E<=1&&(B.lerp(a,n,s,E),B.squaredDistance(a,o)>d&&(B.sub(r,a,c),B.normalize(r,r),e.reportIntersection(t,E,r,-1),t.shouldStop(e))))return}}}},{"../math/vec2":30,"./Shape":45}],39:[function(t,e,o){var i=t("./Shape"),m=t("../math/vec2");function n(t){"number"==typeof t&&(t={radius:t},console.warn("The Circle constructor signature has changed. Please use the following format: new Circle({ radius: 1 })")),t=t||{},this.radius=t.radius||1,t.type=i.CIRCLE,i.call(this,t)}(((e.exports=n).prototype=new i).constructor=n).prototype.computeMomentOfInertia=function(t){var e=this.radius;return t*e*e/2},n.prototype.updateBoundingRadius=function(){this.boundingRadius=this.radius},n.prototype.updateArea=function(){this.area=Math.PI*this.radius*this.radius},n.prototype.computeAABB=function(t,e,o){var i=this.radius;m.set(t.upperBound,i,i),m.set(t.lowerBound,-i,-i),e&&(m.add(t.lowerBound,t.lowerBound,e),m.add(t.upperBound,t.upperBound,e))};var g=m.create(),A=m.create();n.prototype.raycast=function(t,e,o,i){var n=e.from,s=e.to,a=this.radius,r=Math.pow(s[0]-n[0],2)+Math.pow(s[1]-n[1],2),c=2*((s[0]-n[0])*(n[0]-o[0])+(s[1]-n[1])*(n[1]-o[1])),h=Math.pow(n[0]-o[0],2)+Math.pow(n[1]-o[1],2)-Math.pow(a,2),l=Math.pow(c,2)-4*r*h,p=g,u=A;if(!(l<0))if(0===l)m.lerp(p,n,s,l),m.sub(u,p,o),m.normalize(u,u),e.reportIntersection(t,l,u,-1);else{var d=Math.sqrt(l),f=1/(2*r),v=(-c-d)*f,y=(-c+d)*f;if(0<=v&&v<=1&&(m.lerp(p,n,s,v),m.sub(u,p,o),m.normalize(u,u),e.reportIntersection(t,v,u,-1),t.shouldStop(e)))return;0<=y&&y<=1&&(m.lerp(p,n,s,y),m.sub(u,p,o),m.normalize(u,u),e.reportIntersection(t,y,u,-1))}}},{"../math/vec2":30,"./Shape":45}],40:[function(t,e,o){var c=t("./Shape"),d=t("../math/vec2"),r=t("../math/polyk");t("poly-decomp");function u(t){Array.isArray(t)&&(t={vertices:t,axes:arguments[1]},console.warn("The Convex constructor signature has changed. Please use the following format: new Convex({ vertices: [...], ... })")),t=t||{},this.vertices=[];for(var e=void 0!==t.vertices?t.vertices:[],o=0;ot;)e.pop();for(;e.length=t&&i=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},k.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},k.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},k.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},k.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},k.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},k.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=k.compileProgram(t,this.vertexSrc||k.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],k.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,k._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},k.PixiFastShader.prototype.constructor=k.PixiFastShader,k.PixiFastShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},k.StripShader.prototype.constructor=k.StripShader,k.StripShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,l,u,c=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-c*p.width)+i.crop.width,l=(u=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-c),h=i.frame.width*-c,l=i.frame.height*(1-d),u=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,g=i.baseTexture.resolution,m=i.baseTexture.textureIndex,y=r.a/g,v=r.b/g,x=r.c/g,b=r.d/g,_=r.tx,T=r.ty,w=i.crop.height;if(i.rotated){var C=r.a,S=r.b,P=r.c,A=r.d,E=h,M=a;_=r.c*w+_,T=r.d*w+T,y=6123233995736766e-32*C-P,v=6123233995736766e-32*S-A,x=C+6123233995736766e-32*P,b=S+6123233995736766e-32*A,i._updateUvsInverted(),a=l,h=u,l=M,u=E}var R=this.colors,L=this.positions,O=t.tint,I=(O>>16)+(65280&O)+((255&O)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(L[f++]=y*h+x*u+_|0,L[f++]=b*u+v*h+T|0,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*u+_|0,L[f++]=b*u+v*a+T|0,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_|0,L[f++]=b*l+v*a+T|0,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_|0,L[f++]=b*l+v*h+T|0):(L[f++]=y*h+x*u+_,L[f++]=b*u+v*h+T,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*u+_,L[f++]=b*u+v*a+T,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_,L[f++]=b*l+v*a+T,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_,L[f++]=b*l+v*h+T),L[f++]=o.x3,L[f++]=o.y3,R[f++]=I,L[f++]=m,this.sprites[this.currentBatchSize++]=t}},k.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(k._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;k.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),k.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new k.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),l=t.tilePosition.y/(a*t.tileScaleOffset.y),u=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),c=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-l,r.x1=1*u-h,r.y1=0-l,r.x2=1*u-h,r.y2=1*c-l,r.x3=0-h,r.y3=1*c-l;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,g=this.colors,m=t.width,y=t.height,v=t.anchor.x,x=t.anchor.y,b=m*(1-v),_=m*-v,T=y*(1-x),w=y*-x,C=this.currentBatchSize*this.vertexSize,S=e.baseTexture.resolution,P=t.worldTransform,A=P.a/S,E=P.b/S,M=P.c/S,R=P.d/S,L=P.tx,O=P.ty;f[C++]=A*_+M*w+L,f[C++]=R*w+E*_+O,f[C++]=r.x0,f[C++]=r.y0,g[C++]=p,f[C++]=i,f[C++]=A*b+M*w+L,f[C++]=R*w+E*b+O,f[C++]=r.x1,f[C++]=r.y1,g[C++]=p,f[C++]=i,f[C++]=A*b+M*T+L,f[C++]=R*T+E*b+O,f[C++]=r.x2,f[C++]=r.y2,g[C++]=p,f[C++]=i,f[C++]=A*_+M*T+L,f[C++]=R*T+E*_+O,f[C++]=r.x3,f[C++]=r.y3,g[C++]=p,f[C++]=i,this.sprites[this.currentBatchSize++]=t},k.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),k._enableMultiTextureToggle&&n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,l=0,u=null,c=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,g=0,m=this.currentBatchSize;g=this.size&&this.flush()}},k.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},k.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},k.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},k.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},k.WebGLFilterManager.prototype.constructor=k.WebGLFilterManager,k.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},k.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},k.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new k.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new k.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},k.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!k.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},k.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},k.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},k.Texture.fromCanvas=function(t,e){var i=k.BaseTexture.fromCanvas(t,e);return new k.Texture(i)},k.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=k),exports.PIXI=k):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=k):t.PIXI=k,k}).call(this),function(){var r,t=this,X=X||{VERSION:"2.19.1",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=r;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,l),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",u="Down",c="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(u,i,this.input.pointerDown()),this.setStateFrame(c,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(l,n,r),this.setStateSound(u,i,s),this.setStateSound(c,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(u),this.playStateSound(u),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(c),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(c)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,l,u,c,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof u&&(this._anchor.x=u),"number"==typeof c&&(this._anchor.y=c),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,u=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,c=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,u,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=c;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,l=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,u=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,l=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=u.width),n+=t.lineHeight*i,e=e.substr(u.text.length+1)}while(!1===u.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,r,o,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var u=0;ue.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0o.right)break;if(o.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomo.bottom)break;if(o.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,r)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>o.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(o.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,u,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,r){if(0!==t.length&&0!==e.length)for(var o=0;ou)&&(c.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,r=Math.atan2(n,s),o=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-o*Math.cos(r),t.y+=.001*t.velocity.y*this.game.time.delta-o*Math.sin(r)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+o*Math.cos(r),e.y+=.001*e.velocity.y*this.game.time.delta+o*Math.sin(r)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,r){this.game=t,this.key=e;var o=X.TilemapParser.parse(this.game,e,i,s,n,r);null!==o&&(this.width=o.width,this.height=o.height,this.tileWidth=o.tileWidth,this.tileHeight=o.tileHeight,this.orientation=o.orientation,this.format=o.format,this.version=o.version,this.properties=o.properties,this.widthInPixels=o.widthInPixels,this.heightInPixels=o.heightInPixels,this.layers=o.layers,this.tilesets=o.tilesets,this.imagecollections=o.imagecollections,this.tiles=o.tiles,this.objects=o.objects,this.objectsMap=o.objectsMap,this.collideIndexes=[],this.collision=o.collision,this.images=o.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,r){return void 0===r&&(r=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,r)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,r,o){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,o,i,s,n,r,{});l.setImage(a),this.tilesets.push(l);for(var u=this.tilesets.length-1,c=n,d=n,p=0,f=0,g=0,m=o;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var r=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),r},createBlankLayer:function(t,e,i,s,n,r){if(void 0===r&&(r=this.game.world),null===this.getLayerIndex(t)){for(var o,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(c=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,c,d)).name=t,r.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var r=e;r>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var u,c,d,p=0,f=[],g=[],m=0;for(o=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,r){var o;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===r&&(r=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var r=0;r=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(c.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);c.data.bodyDirty&&(this._data.customBody&&c.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),c.body.collideWorldBounds=this.bulletCollideWorldBounds,c.data.bodyDirty=!1),c.body.velocity.set(l,u),c.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(c,this,r),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},k.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},k.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},k.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},k.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},k.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},k.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=k.compileProgram(t,this.vertexSrc||k.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],k.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,k._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},k.PixiFastShader.prototype.constructor=k.PixiFastShader,k.PixiFastShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},k.StripShader.prototype.constructor=k.StripShader,k.StripShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,l,u,c=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-c*p.width)+i.crop.width,l=(u=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-c),h=i.frame.width*-c,l=i.frame.height*(1-d),u=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,g=i.baseTexture.resolution,m=i.baseTexture.textureIndex,y=r.a/g,v=r.b/g,x=r.c/g,b=r.d/g,_=r.tx,T=r.ty,w=i.crop.height;if(i.rotated){var C=r.a,S=r.b,P=r.c,A=r.d,E=h,M=a;_=r.c*w+_,T=r.d*w+T,y=6123233995736766e-32*C-P,v=6123233995736766e-32*S-A,x=C+6123233995736766e-32*P,b=S+6123233995736766e-32*A,i._updateUvsInverted(),a=l,h=u,l=M,u=E}var R=this.colors,L=this.positions,O=t.tint,I=(O>>16)+(65280&O)+((255&O)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(L[f++]=y*h+x*u+_|0,L[f++]=b*u+v*h+T|0,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*u+_|0,L[f++]=b*u+v*a+T|0,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_|0,L[f++]=b*l+v*a+T|0,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_|0,L[f++]=b*l+v*h+T|0):(L[f++]=y*h+x*u+_,L[f++]=b*u+v*h+T,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*u+_,L[f++]=b*u+v*a+T,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_,L[f++]=b*l+v*a+T,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_,L[f++]=b*l+v*h+T),L[f++]=o.x3,L[f++]=o.y3,R[f++]=I,L[f++]=m,this.sprites[this.currentBatchSize++]=t}},k.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(k._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;k.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),k.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new k.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),l=t.tilePosition.y/(a*t.tileScaleOffset.y),u=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),c=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-l,r.x1=1*u-h,r.y1=0-l,r.x2=1*u-h,r.y2=1*c-l,r.x3=0-h,r.y3=1*c-l;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,g=this.colors,m=t.width,y=t.height,v=t.anchor.x,x=t.anchor.y,b=m*(1-v),_=m*-v,T=y*(1-x),w=y*-x,C=this.currentBatchSize*this.vertexSize,S=e.baseTexture.resolution,P=t.worldTransform,A=P.a/S,E=P.b/S,M=P.c/S,R=P.d/S,L=P.tx,O=P.ty;f[C++]=A*_+M*w+L,f[C++]=R*w+E*_+O,f[C++]=r.x0,f[C++]=r.y0,g[C++]=p,f[C++]=i,f[C++]=A*b+M*w+L,f[C++]=R*w+E*b+O,f[C++]=r.x1,f[C++]=r.y1,g[C++]=p,f[C++]=i,f[C++]=A*b+M*T+L,f[C++]=R*T+E*b+O,f[C++]=r.x2,f[C++]=r.y2,g[C++]=p,f[C++]=i,f[C++]=A*_+M*T+L,f[C++]=R*T+E*_+O,f[C++]=r.x3,f[C++]=r.y3,g[C++]=p,f[C++]=i,this.sprites[this.currentBatchSize++]=t},k.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,l=0,u=null,c=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,g=0,m=this.currentBatchSize;g=this.size&&this.flush()}},k.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},k.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},k.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},k.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},k.WebGLFilterManager.prototype.constructor=k.WebGLFilterManager,k.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},k.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},k.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new k.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new k.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},k.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!k.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},k.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},k.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},k.Texture.fromCanvas=function(t,e){var i=k.BaseTexture.fromCanvas(t,e);return new k.Texture(i)},k.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=k),exports.PIXI=k):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=k):t.PIXI=k,k}).call(this),function(){var r,t=this,X=X||{VERSION:"2.19.2",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=r;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,l),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",u="Down",c="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(u,i,this.input.pointerDown()),this.setStateFrame(c,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(l,n,r),this.setStateSound(u,i,s),this.setStateSound(c,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(u),this.playStateSound(u),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(c),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(c)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,l,u,c,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof u&&(this._anchor.x=u),"number"==typeof c&&(this._anchor.y=c),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,u=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,c=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,u,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=c;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,l=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,u=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,l=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=u.width),n+=t.lineHeight*i,e=e.substr(u.text.length+1)}while(!1===u.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,r,o,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var u=0;ue.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0o.right)break;if(o.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomo.bottom)break;if(o.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,r)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>o.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(o.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,u,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,r){if(0!==t.length&&0!==e.length)for(var o=0;ou)&&(c.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,r=Math.atan2(n,s),o=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-o*Math.cos(r),t.y+=.001*t.velocity.y*this.game.time.delta-o*Math.sin(r)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+o*Math.cos(r),e.y+=.001*e.velocity.y*this.game.time.delta+o*Math.sin(r)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,r){this.game=t,this.key=e;var o=X.TilemapParser.parse(this.game,e,i,s,n,r);null!==o&&(this.width=o.width,this.height=o.height,this.tileWidth=o.tileWidth,this.tileHeight=o.tileHeight,this.orientation=o.orientation,this.format=o.format,this.version=o.version,this.properties=o.properties,this.widthInPixels=o.widthInPixels,this.heightInPixels=o.heightInPixels,this.layers=o.layers,this.tilesets=o.tilesets,this.imagecollections=o.imagecollections,this.tiles=o.tiles,this.objects=o.objects,this.objectsMap=o.objectsMap,this.collideIndexes=[],this.collision=o.collision,this.images=o.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,r){return void 0===r&&(r=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,r)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,r,o){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,o,i,s,n,r,{});l.setImage(a),this.tilesets.push(l);for(var u=this.tilesets.length-1,c=n,d=n,p=0,f=0,g=0,m=o;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var r=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),r},createBlankLayer:function(t,e,i,s,n,r){if(void 0===r&&(r=this.game.world),null===this.getLayerIndex(t)){for(var o,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(c=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,c,d)).name=t,r.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var r=e;r>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var u,c,d,p=0,f=[],g=[],m=0;for(o=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,r){var o;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===r&&(r=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var r=0;r=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(c.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);c.data.bodyDirty&&(this._data.customBody&&c.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),c.body.collideWorldBounds=this.bulletCollideWorldBounds,c.data.bodyDirty=!1),c.body.velocity.set(l,u),c.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(c,this,r),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=r;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,l),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",c="Down",u="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(c,i,this.input.pointerDown()),this.setStateFrame(u,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(l,n,r),this.setStateSound(c,i,s),this.setStateSound(u,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(c),this.playStateSound(c),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(u),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(u)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,l,c,u,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof c&&(this._anchor.x=c),"number"==typeof u&&(this._anchor.y=u),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,c=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,u=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,c,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,l=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,c=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,l=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=c.width),n+=t.lineHeight*i,e=e.substr(c.text.length+1)}while(!1===c.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,r,o,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var c=0;ce.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0o.right)break;if(o.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomo.bottom)break;if(o.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,r)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>o.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(o.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,c,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,r){if(0!==t.length&&0!==e.length)for(var o=0;oc)&&(u.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,r=Math.atan2(n,s),o=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-o*Math.cos(r),t.y+=.001*t.velocity.y*this.game.time.delta-o*Math.sin(r)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+o*Math.cos(r),e.y+=.001*e.velocity.y*this.game.time.delta+o*Math.sin(r)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,r){this.game=t,this.key=e;var o=X.TilemapParser.parse(this.game,e,i,s,n,r);null!==o&&(this.width=o.width,this.height=o.height,this.tileWidth=o.tileWidth,this.tileHeight=o.tileHeight,this.orientation=o.orientation,this.format=o.format,this.version=o.version,this.properties=o.properties,this.widthInPixels=o.widthInPixels,this.heightInPixels=o.heightInPixels,this.layers=o.layers,this.tilesets=o.tilesets,this.imagecollections=o.imagecollections,this.tiles=o.tiles,this.objects=o.objects,this.objectsMap=o.objectsMap,this.collideIndexes=[],this.collision=o.collision,this.images=o.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,r){return void 0===r&&(r=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,r)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,r,o){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,o,i,s,n,r,{});l.setImage(a),this.tilesets.push(l);for(var c=this.tilesets.length-1,u=n,d=n,p=0,f=0,g=0,m=o;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var r=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),r},createBlankLayer:function(t,e,i,s,n,r){if(void 0===r&&(r=this.game.world),null===this.getLayerIndex(t)){for(var o,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(u=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,u,d)).name=t,r.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var r=e;r>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var c,u,d,p=0,f=[],g=[],m=0;for(o=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,r){var o;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===r&&(r=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var r=0;r=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(u.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);u.data.bodyDirty&&(this._data.customBody&&u.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),u.body.collideWorldBounds=this.bulletCollideWorldBounds,u.data.bodyDirty=!1),u.body.velocity.set(l,c),u.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(u,this,r),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},PIXI.CreatureShader=function(t){this._UID=X._UID++,this.gl=t,this.program=null,this.fragmentSrc=["//CreatureShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","varying vec4 vColor;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"],this.vertexSrc=["//CreatureShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","attribute vec4 aColor;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform float alpha;","uniform vec3 tint;","varying vec2 vTextureCoord;","varying float vTextureIndex;","varying vec4 vColor;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = vec4(tint[0], tint[1], tint[2], 1.0) * aColor.a * alpha;","}"],this.init()},PIXI.CreatureShader.prototype.constructor=PIXI.CreatureShader,PIXI.CreatureShader.prototype.init=function(){var t=this.gl,e=PIXI.compileProgram(t,this.vertexSrc,this.fragmentSrc);t.useProgram(e),this.uSampler=PIXI._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),this.projectionVector=t.getUniformLocation(e,"projectionVector"),this.offsetVector=t.getUniformLocation(e,"offsetVector"),this.colorAttribute=t.getAttribLocation(e,"aColor"),this.aTextureIndex=t.getAttribLocation(e,"aTextureIndex"),this.aVertexPosition=t.getAttribLocation(e,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(e,"aTextureCoord"),this.attributes=[this.aVertexPosition,this.aTextureCoord,this.colorAttribute],this.translationMatrix=t.getUniformLocation(e,"translationMatrix"),this.alpha=t.getUniformLocation(e,"alpha"),this.tintColor=t.getUniformLocation(e,"tint"),this.program=e},PIXI.CreatureShader.prototype.destroy=function(){this.gl.deleteProgram(this.program),this.uniforms=null,this.gl=null,this.attribute=null},X.Creature=function(t,e,i,s,n,r,o){if(this.game=t,void 0===r&&(r="default"),void 0===o&&(o=!1),this.type=X.CREATURE,t.cache.checkJSONKey(n)){var a=t.cache.getJSON(n,!0);if(this._creature=new Creature(a,o),this.animation=new CreatureAnimation(a,r,o),this.manager=new CreatureManager(this._creature),this.timeDelta=.05,"string"==typeof s)var h=new PIXI.Texture(t.cache.getBaseTexture(s));else h=s;this.texture=h,PIXI.DisplayObjectContainer.call(this),this.dirty=!0,this.blendMode=PIXI.blendModes.NORMAL,this.creatureBoundsMin=new X.Point,this.creatureBoundsMax=new X.Point;var l=this.manager.target_creature;this.vertices=new Float32Array(2*l.total_num_pts),this.uvs=new Float32Array(2*l.total_num_pts),this.indices=new Uint16Array(l.global_indices.length);for(var c=0;c>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=r;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,l),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",c="Down",u="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(c,i,this.input.pointerDown()),this.setStateFrame(u,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(l,n,r),this.setStateSound(c,i,s),this.setStateSound(u,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(c),this.playStateSound(c),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(u),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(u)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,l,c,u,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof c&&(this._anchor.x=c),"number"==typeof u&&(this._anchor.y=u),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,c=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,u=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,c,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,l=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,c=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,l=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=c.width),n+=t.lineHeight*i,e=e.substr(c.text.length+1)}while(!1===c.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,r,o,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var c=0;ce.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0o.right)break;if(o.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomo.bottom)break;if(o.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,r)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>o.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(o.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,c,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,r){if(0!==t.length&&0!==e.length)for(var o=0;oc)&&(u.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,r=Math.atan2(n,s),o=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-o*Math.cos(r),t.y+=.001*t.velocity.y*this.game.time.delta-o*Math.sin(r)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+o*Math.cos(r),e.y+=.001*e.velocity.y*this.game.time.delta+o*Math.sin(r)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,r){this.game=t,this.key=e;var o=X.TilemapParser.parse(this.game,e,i,s,n,r);null!==o&&(this.width=o.width,this.height=o.height,this.tileWidth=o.tileWidth,this.tileHeight=o.tileHeight,this.orientation=o.orientation,this.format=o.format,this.version=o.version,this.properties=o.properties,this.widthInPixels=o.widthInPixels,this.heightInPixels=o.heightInPixels,this.layers=o.layers,this.tilesets=o.tilesets,this.imagecollections=o.imagecollections,this.tiles=o.tiles,this.objects=o.objects,this.objectsMap=o.objectsMap,this.collideIndexes=[],this.collision=o.collision,this.images=o.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,r){return void 0===r&&(r=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,r)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,r,o){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,o,i,s,n,r,{});l.setImage(a),this.tilesets.push(l);for(var c=this.tilesets.length-1,u=n,d=n,p=0,f=0,g=0,m=o;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var r=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),r},createBlankLayer:function(t,e,i,s,n,r){if(void 0===r&&(r=this.game.world),null===this.getLayerIndex(t)){for(var o,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(u=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,u,d)).name=t,r.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var r=e;r>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var c,u,d,p=0,f=[],g=[],m=0;for(o=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,r){var o;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===r&&(r=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var r=0;r=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(u.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);u.data.bodyDirty&&(this._data.customBody&&u.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),u.body.collideWorldBounds=this.bulletCollideWorldBounds,u.data.bodyDirty=!1),u.body.velocity.set(l,c),u.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(u,this,r),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},PIXI.CreatureShader=function(t){this._UID=X._UID++,this.gl=t,this.program=null,this.fragmentSrc=["//CreatureShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","varying vec4 vColor;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"],this.vertexSrc=["//CreatureShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","attribute vec4 aColor;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform float alpha;","uniform vec3 tint;","varying vec2 vTextureCoord;","varying float vTextureIndex;","varying vec4 vColor;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = vec4(tint[0], tint[1], tint[2], 1.0) * aColor.a * alpha;","}"],this.init()},PIXI.CreatureShader.prototype.constructor=PIXI.CreatureShader,PIXI.CreatureShader.prototype.init=function(){var t=this.gl,e=PIXI.compileProgram(t,this.vertexSrc,this.fragmentSrc);t.useProgram(e),this.uSampler=PIXI._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),this.projectionVector=t.getUniformLocation(e,"projectionVector"),this.offsetVector=t.getUniformLocation(e,"offsetVector"),this.colorAttribute=t.getAttribLocation(e,"aColor"),this.aTextureIndex=t.getAttribLocation(e,"aTextureIndex"),this.aVertexPosition=t.getAttribLocation(e,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(e,"aTextureCoord"),this.attributes=[this.aVertexPosition,this.aTextureCoord,this.colorAttribute],this.translationMatrix=t.getUniformLocation(e,"translationMatrix"),this.alpha=t.getUniformLocation(e,"alpha"),this.tintColor=t.getUniformLocation(e,"tint"),this.program=e},PIXI.CreatureShader.prototype.destroy=function(){this.gl.deleteProgram(this.program),this.uniforms=null,this.gl=null,this.attribute=null},X.Creature=function(t,e,i,s,n,r,o){if(this.game=t,void 0===r&&(r="default"),void 0===o&&(o=!1),this.type=X.CREATURE,t.cache.checkJSONKey(n)){var a=t.cache.getJSON(n,!0);if(this._creature=new Creature(a,o),this.animation=new CreatureAnimation(a,r,o),this.manager=new CreatureManager(this._creature),this.timeDelta=.05,"string"==typeof s)var h=new PIXI.Texture(t.cache.getBaseTexture(s));else h=s;this.texture=h,PIXI.DisplayObjectContainer.call(this),this.dirty=!0,this.blendMode=PIXI.blendModes.NORMAL,this.creatureBoundsMin=new X.Point,this.creatureBoundsMax=new X.Point;var l=this.manager.target_creature;this.vertices=new Float32Array(2*l.total_num_pts),this.uvs=new Float32Array(2*l.total_num_pts),this.indices=new Uint16Array(l.global_indices.length);for(var c=0;c=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},D.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},D.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},D.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},D.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},D.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},D.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=D.compileProgram(t,this.vertexSrc||D.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],D.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,D._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},D.PixiFastShader.prototype.constructor=D.PixiFastShader,D.PixiFastShader.prototype.init=function(){var t=this.gl,e=D.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=D._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),D._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},D.StripShader.prototype.constructor=D.StripShader,D.StripShader.prototype.init=function(){var t=this.gl,e=D.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=D._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),D._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,u,l,c=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-c*p.width)+i.crop.width,u=(l=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-c),h=i.frame.width*-c,u=i.frame.height*(1-d),l=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,m=i.baseTexture.resolution,g=i.baseTexture.textureIndex,v=r.a/m,y=r.b/m,x=r.c/m,b=r.d/m,_=r.tx,T=r.ty,w=i.crop.height;if(i.rotated){var S=r.a,C=r.b,P=r.c,E=r.d,M=h,A=a;_=r.c*w+_,T=r.d*w+T,v=6123233995736766e-32*S-P,y=6123233995736766e-32*C-E,x=S+6123233995736766e-32*P,b=C+6123233995736766e-32*E,i._updateUvsInverted(),a=u,h=l,u=A,l=M}var R=this.colors,O=this.positions,L=t.tint,I=(L>>16)+(65280&L)+((255&L)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(O[f++]=v*h+x*l+_|0,O[f++]=b*l+y*h+T|0,O[f++]=o.x0,O[f++]=o.y0,R[f++]=I,O[f++]=g,O[f++]=v*a+x*l+_|0,O[f++]=b*l+y*a+T|0,O[f++]=o.x1,O[f++]=o.y1,R[f++]=I,O[f++]=g,O[f++]=v*a+x*u+_|0,O[f++]=b*u+y*a+T|0,O[f++]=o.x2,O[f++]=o.y2,R[f++]=I,O[f++]=g,O[f++]=v*h+x*u+_|0,O[f++]=b*u+y*h+T|0):(O[f++]=v*h+x*l+_,O[f++]=b*l+y*h+T,O[f++]=o.x0,O[f++]=o.y0,R[f++]=I,O[f++]=g,O[f++]=v*a+x*l+_,O[f++]=b*l+y*a+T,O[f++]=o.x1,O[f++]=o.y1,R[f++]=I,O[f++]=g,O[f++]=v*a+x*u+_,O[f++]=b*u+y*a+T,O[f++]=o.x2,O[f++]=o.y2,R[f++]=I,O[f++]=g,O[f++]=v*h+x*u+_,O[f++]=b*u+y*h+T),O[f++]=o.x3,O[f++]=o.y3,R[f++]=I,O[f++]=g,this.sprites[this.currentBatchSize++]=t}},D.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(D._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;D.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),D.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new D.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),u=t.tilePosition.y/(a*t.tileScaleOffset.y),l=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),c=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-u,r.x1=1*l-h,r.y1=0-u,r.x2=1*l-h,r.y2=1*c-u,r.x3=0-h,r.y3=1*c-u;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,m=this.colors,g=t.width,v=t.height,y=t.anchor.x,x=t.anchor.y,b=g*(1-y),_=g*-y,T=v*(1-x),w=v*-x,S=this.currentBatchSize*this.vertexSize,C=e.baseTexture.resolution,P=t.worldTransform,E=P.a/C,M=P.b/C,A=P.c/C,R=P.d/C,O=P.tx,L=P.ty;f[S++]=E*_+A*w+O,f[S++]=R*w+M*_+L,f[S++]=r.x0,f[S++]=r.y0,m[S++]=p,f[S++]=i,f[S++]=E*b+A*w+O,f[S++]=R*w+M*b+L,f[S++]=r.x1,f[S++]=r.y1,m[S++]=p,f[S++]=i,f[S++]=E*b+A*T+O,f[S++]=R*T+M*b+L,f[S++]=r.x2,f[S++]=r.y2,m[S++]=p,f[S++]=i,f[S++]=E*_+A*T+O,f[S++]=R*T+M*_+L,f[S++]=r.x3,f[S++]=r.y3,m[S++]=p,f[S++]=i,this.sprites[this.currentBatchSize++]=t},D.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),D._enableMultiTextureToggle&&n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,u=0,l=null,c=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,m=0,g=this.currentBatchSize;m=this.size&&this.flush()}},D.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},D.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},D.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},D.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},D.WebGLFilterManager.prototype.constructor=D.WebGLFilterManager,D.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},D.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},D.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new D.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new D.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},D.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!D.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},D.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new D.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},D.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new D.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},D.Texture.fromCanvas=function(t,e){var i=D.BaseTexture.fromCanvas(t,e);return new D.Texture(i)},D.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=D),exports.PIXI=D):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=D):t.PIXI=D,D}).call(this),function(){var r,t=this,w=w||{VERSION:"2.19.1",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(w.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(w.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},w.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},w.Circle.intersects=function(t,e){return w.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},w.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new w.Point),!0===i&&(e=w.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},w.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new w.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return w.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return w.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return w.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?w.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?w.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return w.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(w.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(w.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(w.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(w.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(w.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(w.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(w.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(w.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(w.Rectangle.prototype,"topLeft",{get:function(){return new w.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(w.Rectangle.prototype,"topRight",{get:function(){return new w.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(w.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),w.Rectangle.prototype.constructor=w.Rectangle,w.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},w.Rectangle.inflatePoint=function(t,e){return w.Rectangle.inflate(t,e.x,e.y)},w.Rectangle.size=function(t,e){return null==e?e=new w.Point(t.width,t.height):e.setTo(t.width,t.height),e},w.Rectangle.clone=function(t,e){return null==e?e=new w.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},w.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new w.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},w.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},w.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},w.Camera.prototype.constructor=w.Camera,Object.defineProperty(w.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(w.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(w.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(w.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(w.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(w.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(w.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(w.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(w.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),w.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},w.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},w.State.prototype.constructor=w.State,w.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new w.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},w.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof w.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},w.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},w.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,u=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new w.Rectangle(0,0,i,s),a=t*i,h=e*s,u=r;uthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},w.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},w.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},w.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},w.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},w.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},w.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},w.Group.prototype.getByName=function(t){return this.getFirst("name",t)},w.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof w.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},w.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},w.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},w.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===w.Group.RETURN_TOTAL)return 0;if(i===w.Group.RETURN_ALL)return[]}var o=0;if(i===w.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},w.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},w.Group.prototype.shuffle=function(){w.ArrayUtils.shuffle(this.children),this.updateZ()},w.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(w.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,w.Group.RETURN_TOTAL)}}),Object.defineProperty(w.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(w.Group.prototype,"angle",{get:function(){return w.Math.radToDeg(this.rotation)},set:function(t){this.rotation=w.Math.degToRad(t)}}),Object.defineProperty(w.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(w.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(w.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(w.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(w.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(w.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),w.World=function(t){w.Group.call(this,t,null,"__world",!1),this.bounds=new w.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},w.World.prototype=Object.create(w.Group.prototype),w.World.prototype.constructor=w.World,w.World.prototype.boot=function(){this.camera=new w.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},w.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},w.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},w.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},w.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(w.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=w.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+w.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new w.Pointer(this.game,t,w.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},w.DeviceButton.prototype.constructor=w.DeviceButton,Object.defineProperty(w.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),w.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=w.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||w.PointerMode.CURSOR|w.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new w.DeviceButton(this,w.Pointer.LEFT_BUTTON),this.middleButton=new w.DeviceButton(this,w.Pointer.MIDDLE_BUTTON),this.rightButton=new w.DeviceButton(this,w.Pointer.RIGHT_BUTTON),this.backButton=new w.DeviceButton(this,w.Pointer.BACK_BUTTON),this.forwardButton=new w.DeviceButton(this,w.Pointer.FORWARD_BUTTON),this.eraserButton=new w.DeviceButton(this,w.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new w.Point,this.positionDown=new w.Point,this.positionUp=new w.Point,this.circle=new w.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},w.Pointer.NO_BUTTON=0,w.Pointer.LEFT_BUTTON=1,w.Pointer.RIGHT_BUTTON=2,w.Pointer.MIDDLE_BUTTON=4,w.Pointer.BACK_BUTTON=8,w.Pointer.FORWARD_BUTTON=16,w.Pointer.ERASER_BUTTON=32,w.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case w.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case w.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case w.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case w.Mouse.BACK_BUTTON:this.backButton.start(e);break;case w.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case w.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case w.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case w.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case w.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case w.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(w.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(w.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(w.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(w.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(w.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(w.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===w.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===w.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===w.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===w.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===w.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===w.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===w.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===w.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===w.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=w.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},w.InputHandler.prototype.constructor=w.InputHandler,w.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new w.Signal,this.onError=new w.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},w.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},w.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},w.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},w.PointerLock.prototype.exit=function(){document.exitPointerLock()},w.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},w.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},w.Component=function(){},w.Component.Angle=function(){},w.Component.Angle.prototype={angle:{get:function(){return w.Math.wrapAngle(w.Math.radToDeg(this.rotation))},set:function(t){this.rotation=w.Math.degToRad(w.Math.wrapAngle(t))}}},w.Component.Animation=function(){},w.Component.Animation.prototype={play:function(t,e,i,s){if(this.animations)return this.animations.play(t,e,i,s)}},w.Component.AutoCull=function(){},w.Component.AutoCull.prototype={autoCull:!1,inCamera:{get:function(){return this.autoCull||this.checkWorldBounds||(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y),this.game.world.camera.view.intersects(this._bounds)}}},w.Component.Bounds=function(){},w.Component.Bounds.prototype={offsetX:{get:function(){return this.anchor.x*this.width}},offsetY:{get:function(){return this.anchor.y*this.height}},centerX:{get:function(){return this.x-this.offsetX+.5*this.width},set:function(t){this.x=t+this.offsetX-.5*this.width}},centerY:{get:function(){return this.y-this.offsetY+.5*this.height},set:function(t){this.y=t+this.offsetY-.5*this.height}},left:{get:function(){return this.x-this.offsetX},set:function(t){this.x=t+this.offsetX}},right:{get:function(){return this.x+this.width-this.offsetX},set:function(t){this.x=t-this.width+this.offsetX}},top:{get:function(){return this.y-this.offsetY},set:function(t){this.y=t+this.offsetY}},bottom:{get:function(){return this.y+this.height-this.offsetY},set:function(t){this.y=t-this.height+this.offsetY}},alignIn:function(t,e,i,s){switch(void 0===i&&(i=0),void 0===s&&(s=0),e){default:case w.TOP_LEFT:this.left=t.left-i,this.top=t.top-s;break;case w.TOP_CENTER:this.centerX=t.centerX+i,this.top=t.top-s;break;case w.TOP_RIGHT:this.right=t.right+i,this.top=t.top-s;break;case w.LEFT_CENTER:this.left=t.left-i,this.centerY=t.centerY+s;break;case w.CENTER:this.centerX=t.centerX+i,this.centerY=t.centerY+s;break;case w.RIGHT_CENTER:this.right=t.right+i,this.centerY=t.centerY+s;break;case w.BOTTOM_LEFT:this.left=t.left-i,this.bottom=t.bottom+s;break;case w.BOTTOM_CENTER:this.centerX=t.centerX+i,this.bottom=t.bottom+s;break;case w.BOTTOM_RIGHT:this.right=t.right+i,this.bottom=t.bottom+s}return this},alignTo:function(t,e,i,s){switch(void 0===i&&(i=0),void 0===s&&(s=0),e){default:case w.TOP_LEFT:this.left=t.left-i,this.bottom=t.top-s;break;case w.TOP_CENTER:this.centerX=t.centerX+i,this.bottom=t.top-s;break;case w.TOP_RIGHT:this.right=t.right+i,this.bottom=t.top-s;break;case w.LEFT_TOP:this.right=t.left-i,this.top=t.top-s;break;case w.LEFT_CENTER:this.right=t.left-i,this.centerY=t.centerY+s;break;case w.LEFT_BOTTOM:this.right=t.left-i,this.bottom=t.bottom+s;break;case w.RIGHT_TOP:this.left=t.right+i,this.top=t.top-s;break;case w.RIGHT_CENTER:this.left=t.right+i,this.centerY=t.centerY+s;break;case w.RIGHT_BOTTOM:this.left=t.right+i,this.bottom=t.bottom+s;break;case w.BOTTOM_LEFT:this.left=t.left-i,this.top=t.bottom+s;break;case w.BOTTOM_CENTER:this.centerX=t.centerX+i,this.top=t.bottom+s;break;case w.BOTTOM_RIGHT:this.right=t.right+i,this.top=t.bottom+s}return this}},w.Group.prototype.alignIn=w.Component.Bounds.prototype.alignIn,w.Group.prototype.alignTo=w.Component.Bounds.prototype.alignTo,w.Component.BringToTop=function(){},w.Component.BringToTop.prototype.bringToTop=function(){return this.parent&&this.parent.bringChildToTop&&this.parent.bringChildToTop(this),this},w.Component.BringToTop.prototype.sendToBack=function(){return this.parent&&this.parent.sendChildToBack&&this.parent.sendChildToBack(this),this},w.Component.BringToTop.prototype.moveUp=function(){return this.parent&&this.parent.moveUp(this),this},w.Component.BringToTop.prototype.moveDown=function(){return this.parent&&this.parent.moveDown(this),this},w.Component.Core=function(){},w.Component.Core.install=function(t){w.Utils.mixinPrototype(this,w.Component.Core.prototype),this.components={};for(var e=0;ethis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},w.Component.InCamera=function(){},w.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},w.Component.InputEnabled=function(){},w.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new w.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},w.Component.InWorld=function(){},w.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},w.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},w.Component.LifeSpan=function(){},w.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new w.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new w.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},w.Component.Smoothed=function(){},w.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},w.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},w.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(w.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new w.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new w.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new w.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new w.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new w.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new w.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new w.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new w.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new w.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,u){return void 0===u&&(u=this.world),u.add(new w.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new w.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new w.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new w.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new w.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new w.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new w.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new w.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new w.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new w.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},w.GameObjectFactory.prototype.constructor=w.GameObjectFactory,w.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},w.GameObjectCreator.prototype={image:function(t,e,i,s){return new w.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new w.Sprite(this.game,t,e,i,s)},tween:function(t){return new w.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new w.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new w.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new w.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new w.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new w.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new w.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new w.Graphics(this.game,t,e)},emitter:function(t,e,i){return new w.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new w.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new w.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new w.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new w.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new w.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new w.Filter[t](this.game)).init.apply(t,e),t}},w.GameObjectCreator.prototype.constructor=w.GameObjectCreator,w.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=w.SPRITE,this.physicsType=w.SPRITE,PIXI.Sprite.call(this,w.Cache.DEFAULT),w.Component.Core.init.call(this,t,e,i,s,n)},w.Sprite.prototype=Object.create(PIXI.Sprite.prototype),w.Sprite.prototype.constructor=w.Sprite,w.Component.Core.install.call(w.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),w.Sprite.prototype.preUpdatePhysics=w.Component.PhysicsBody.preUpdate,w.Sprite.prototype.preUpdateLifeSpan=w.Component.LifeSpan.preUpdate,w.Sprite.prototype.preUpdateInWorld=w.Component.InWorld.preUpdate,w.Sprite.prototype.preUpdateCore=w.Component.Core.preUpdate,w.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},w.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=w.IMAGE,PIXI.Sprite.call(this,w.Cache.DEFAULT),w.Component.Core.init.call(this,t,e,i,s,n)},w.Image.prototype=Object.create(PIXI.Sprite.prototype),w.Image.prototype.constructor=w.Image,w.Component.Core.install.call(w.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),w.Image.prototype.preUpdateLifeSpan=w.Component.LifeSpan.preUpdate,w.Image.prototype.preUpdateInWorld=w.Component.InWorld.preUpdate,w.Image.prototype.preUpdateCore=w.Component.Core.preUpdate,w.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},w.Button=function(t,e,i,s,n,r,o,a,h,u){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,w.Image.call(this,t,e,i,s,a),this.type=w.BUTTON,this.physicsType=w.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new w.Signal,this.onInputOut=new w.Signal,this.onInputDown=new w.Signal,this.onInputUp=new w.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=w.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,u),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},w.Button.prototype=Object.create(w.Image.prototype),w.Button.prototype.constructor=w.Button;var h="Over",u="Out",l="Down",c="Up";w.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},w.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},w.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},w.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(u,e,!this.input.pointerOver()),this.setStateFrame(l,i,this.input.pointerDown()),this.setStateFrame(c,s,this.input.pointerUp())},w.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof w.Sound||e instanceof w.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},w.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},w.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(u,n,r),this.setStateSound(l,i,s),this.setStateSound(c,o,a)},w.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},w.Button.prototype.setOutSound=function(t,e){this.setStateSound(u,t,e)},w.Button.prototype.setDownSound=function(t,e){this.setStateSound(l,t,e)},w.Button.prototype.setUpSound=function(t,e){this.setStateSound(c,t,e)},w.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},w.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(u),this.playStateSound(u),this.onInputOut&&this.onInputOut.dispatch(this,e)},w.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputDown&&this.onInputDown.dispatch(this,e)},w.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(c),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(u):this.changeStateFrame(c)||(i?this.changeStateFrame(h):this.changeStateFrame(u)))},w.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),w.Group.call(this,t,e,i,s),this.type=w.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},w.SpriteBatch.prototype=Object.create(w.Group.prototype),w.SpriteBatch.prototype.constructor=w.SpriteBatch,w.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},w.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=w.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},w.RandomDataGenerator.prototype.constructor=w.RandomDataGenerator,w.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},w.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new w.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new w.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new w.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new w.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof w.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},w.QuadTree.prototype.constructor=w.QuadTree,w.TweenManager=function(){},w.TweenManager.prototype.update=function(){},w.TweenManager.prototype.removeAll=function(){},w.TweenManager.prototype.removeFrom=function(){},w.TweenManager.prototype.destroy=function(){},w.TweenManager.prototype.constructor=w.TweenManager,w.Time=function(t){this.game=t,this.time=0,this.now=0,this.elapsed=0,this.elapsedMS=0,this.delta=0,this.deltaTotal=0,this.deltaMax=200,this.desiredFpsMult=1/60,this._desiredFps=60,this.suggestedFps=this.desiredFps,this.slowMotion=1,this.advancedTiming=!1,this.frames=0,this.updates=0,this.renders=0,this.fps=0,this.ups=0,this.rps=0,this.fpsMin=1e3,this.fpsMax=0,this.msMin=1e3,this.msMax=0,this.pauseDuration=0,this.timeToCall=0,this.timeExpected=0,this.events=new w.Timer(this.game,!1),this._frameCount=0,this._elapsedAccumulator=0,this._started=0,this._timeLastSecond=0,this._pauseStarted=0,this._timers=[]},w.Time.prototype={boot:function(){this._started=Date.now(),this.time=Date.now(),this.events.start(),this.timeExpected=this.time},add:function(t){return this._timers.push(t),t},create:function(t){void 0===t&&(t=!0);var e=new w.Timer(this.game,t);return this._timers.push(e),e},removeAll:function(){for(var t=0;t=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(w.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(w.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),w.Time.prototype.constructor=w.Time,w.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new w.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},w.Timer.MINUTE=6e4,w.Timer.SECOND=1e3,w.Timer.HALF=500,w.Timer.QUARTER=250,w.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new w.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(w.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(w.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(w.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),w.Timer.prototype.constructor=w.Timer,w.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},w.TimerEvent.prototype.constructor=w.TimerEvent,w.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},w.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new w.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},w.AnimationManager.prototype.constructor=w.AnimationManager,Object.defineProperty(w.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(w.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(w.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(w.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(w.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(w.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),w.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new w.Signal,this.onUpdate=null,this.onComplete=new w.Signal,this.onLoop=new w.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},w.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},w.Animation.prototype.constructor=w.Animation,Object.defineProperty(w.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(w.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(w.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(w.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(w.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new w.FrameData,e=0;e tag")}},w.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new w.Signal,this._cacheMap=[],this._cacheMap[w.Cache.CANVAS]=this._cache.canvas,this._cacheMap[w.Cache.IMAGE]=this._cache.image,this._cacheMap[w.Cache.TEXTURE]=this._cache.texture,this._cacheMap[w.Cache.SOUND]=this._cache.sound,this._cacheMap[w.Cache.TEXT]=this._cache.text,this._cacheMap[w.Cache.PHYSICS]=this._cache.physics,this._cacheMap[w.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[w.Cache.BINARY]=this._cache.binary,this._cacheMap[w.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[w.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[w.Cache.JSON]=this._cache.json,this._cacheMap[w.Cache.XML]=this._cache.xml,this._cacheMap[w.Cache.VIDEO]=this._cache.video,this._cacheMap[w.Cache.SHADER]=this._cache.shader,this._cacheMap[w.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[w.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new w.Signal,this._addImages()},w.Cache.CANVAS=1,w.Cache.IMAGE=2,w.Cache.TEXTURE=3,w.Cache.SOUND=4,w.Cache.TEXT=5,w.Cache.PHYSICS=6,w.Cache.TILEMAP=7,w.Cache.BINARY=8,w.Cache.BITMAPDATA=9,w.Cache.BITMAPFONT=10,w.Cache.JSON=11,w.Cache.XML=12,w.Cache.VIDEO=13,w.Cache.SHADER=14,w.Cache.RENDER_TEXTURE=15,w.Cache.DATA=16,w.Cache.DEFAULT=null,w.Cache.DEFAULT_KEY="__default",w.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",w.Cache.MISSING=null,w.Cache.MISSING_KEY="__missing",w.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",w.Cache.READY_TIMEOUT=1e3,w.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in w.LoaderParser?w.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new w.Frame(0,0,0,n.width,n.height,t),frameData:new w.FrameData,fileFormat:i};return r.frameData.addFrame(new w.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new w.Frame(0,0,0,i.width,i.height,t),frameData:new w.FrameData};return s.frameData.addFrame(new w.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?w.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(w.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(w.Cache.DEFAULT_KEY,w.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,w.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(w.Cache.MISSING_KEY,w.Cache.MISSING_SRC,function(t){w.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new w.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?w.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):w.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,u={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),u.font=w.LoaderParser.jsonBitmapFont(h,u.base,r,o,a,this.game.resolution)):(h=this.getXML(s),u.font=w.LoaderParser.xmlBitmapFont(h,u.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=u}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new w.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var u={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:w.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=u,this._resolveURL(e,u)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===w.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=w.AnimationParser.XMLData(this.game,s,t):n===w.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=w.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=w.AnimationParser.JSONData(this.game,s,t):r.frameData=w.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,w.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,w.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(w.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(w.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(w.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(w.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(w.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(w.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(w.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(w.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(w.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(w.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(w.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(w.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(w.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(w.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(w.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(w.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,w.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,w.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",w.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,w.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,w.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,w.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,w.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,w.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,w.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,w.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,w.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,w.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,w.Cache.JSON,"getJSON","data");return i?e?w.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,w.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,w.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,w.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,w.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,w.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=w.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=w.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.xthis.width}}),Object.defineProperty(w.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}});var s=function(){};return w.Utils.Debug=s,w.Utils.Debug.prototype={isDisabled:!0,boot:s,destroy:s,preUpdate:s,reset:s,start:s,stop:s,line:s,soundInfo:s,cameraInfo:s,timer:s,pointer:s,spriteInputInfo:s,key:s,inputInfo:s,spriteBounds:s,ropeSegments:s,spriteInfo:s,spriteCoords:s,lineInfo:s,pixel:s,geom:s,rectangle:s,text:s,quadTree:s,body:s,bodyInfo:s,box2dWorld:s,box2dBody:s},w.Utils.Debug.prototype.constructor=w.Utils.Debug,w.DOM={getOffset:function(t,e){e=e||new w.Point;var i=t.getBoundingClientRect(),s=w.DOM.scrollY,n=w.DOM.scrollX,r=document.documentElement.clientTop,o=document.documentElement.clientLeft;return e.x=i.left+n-o,e.y=i.top+s-r,e},getBounds:function(t,e){return void 0===e&&(e=0),!(!(t=t&&!t.nodeType?t[0]:t)||1!==t.nodeType)&&this.calibrate(t.getBoundingClientRect(),e)},calibrate:function(t,e){e=+e||0;var i={width:0,height:0,left:0,right:0,top:0,bottom:0};return i.width=(i.right=t.right+e)-(i.left=t.left-e),i.height=(i.bottom=t.bottom+e)-(i.top=t.top-e),i},getAspectRatio:function(t){var e=(t=null==t?this.visualBounds:1===t.nodeType?this.getBounds(t):t).width,i=t.height;return"function"==typeof e&&(e=e.call(t)),"function"==typeof i&&(i=i.call(t)),e/i},inLayoutViewport:function(t,e){var i=this.getBounds(t,e);return!!i&&0<=i.bottom&&0<=i.right&&i.top<=this.layoutBounds.width&&i.left<=this.layoutBounds.height},getScreenOrientation:function(t){var e=window.screen,i=e.orientation||e.mozOrientation||e.msOrientation;if(i&&"string"==typeof i.type)return i.type;if("string"==typeof i)return i;var s="portrait-primary",n="landscape-primary";if("screen"===t)return e.height>e.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new w.Rectangle,layoutBounds:new w.Rectangle,documentBounds:new w.Rectangle},w.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(w.DOM,"scrollX",{get:e}),Object.defineProperty(w.DOM,"scrollY",{get:i}),Object.defineProperty(w.DOM.visualBounds,"x",{get:e}),Object.defineProperty(w.DOM.visualBounds,"y",{get:i}),Object.defineProperty(w.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(w.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(w.DOM.visualBounds,"width",{get:s}),Object.defineProperty(w.DOM.visualBounds,"height",{get:n}),Object.defineProperty(w.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(w.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(w.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(w.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(w.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=w.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),w.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&w.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&w.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=w.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=w.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var m=p.h;p.h=d.h,d.h=m,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=w.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return w.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return w.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return w.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?w.Color.blendLinearBurn(t,2*e):w.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?w.Color.blendColorBurn(t,2*e):w.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?w.Color.blendDarken(t,2*e):w.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return w.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return w.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},w.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},w.Physics.ARCADE=0,w.Physics.P2JS=1,w.Physics.NINJA=2,w.Physics.BOX2D=3,w.Physics.CHIPMUNK=4,w.Physics.MATTERJS=5,w.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!w.Physics.hasOwnProperty("Arcade")||(this.arcade=new w.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&w.Physics.hasOwnProperty("Ninja")&&(this.ninja=new w.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&w.Physics.hasOwnProperty("P2")&&(this.p2=new w.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&w.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new w.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&w.Physics.hasOwnProperty("Matter")&&(this.matter=new w.Physics.Matter(this.game,this.config))},startSystem:function(t){t===w.Physics.ARCADE?this.arcade=new w.Physics.Arcade(this.game):t===w.Physics.P2JS?null===this.p2?this.p2=new w.Physics.P2(this.game,this.config):this.p2.reset():t===w.Physics.NINJA?this.ninja=new w.Physics.Ninja(this.game):t===w.Physics.BOX2D?null===this.box2d?this.box2d=new w.Physics.Box2D(this.game,this.config):this.box2d.reset():t===w.Physics.MATTERJS&&(null===this.matter?this.matter=new w.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=w.Physics.ARCADE),void 0===i&&(i=!1),e===w.Physics.ARCADE?this.arcade.enable(t):e===w.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===w.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===w.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===w.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},w.Physics.prototype.constructor=w.Physics,w.Particles=function(t){this.game=t,this.emitters={},this.ID=0},w.Particles.prototype={add:function(t){return this.emitters[t.id]=t},remove:function(t){delete this.emitters[t.id]}},w.Particles.prototype.constructor=w.Particles,void 0===PIXI.blendModes&&(PIXI.blendModes=w.blendModes),void 0===PIXI.scaleModes&&(PIXI.scaleModes=w.scaleModes),void 0===PIXI.Texture.emptyTexture&&(PIXI.Texture.emptyTexture=new PIXI.Texture(new PIXI.BaseTexture)),void 0===PIXI.DisplayObject._tempMatrix&&(PIXI.DisplayObject._tempMatrix=new w.Matrix),PIXI.TextureSilentFail=!0,PIXI.canUseNewCanvasBlendModes=function(){return w.Device.canUseMultiply},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=w),exports.Phaser=w):"undefined"!=typeof define&&define.amd?define("Phaser",t.Phaser=w):t.Phaser=w,w}.call(this); +(function(){var t=this,D=D||{};D.DisplayObject=function(){this.position=new D.Point(0,0),this.scale=new D.Point(1,1),this.pivot=new D.Point(0,0),this.rotation=0,this.alpha=1,this.visible=!0,this.hitArea=null,this.renderable=!1,this.parent=null,this.worldAlpha=1,this.worldTransform=new Phaser.Matrix,this.worldPosition=new D.Point(0,0),this.worldScale=new D.Point(1,1),this.worldRotation=0,this.filterArea=null,this._sr=0,this._cr=1,this._bounds=new D.Rectangle(0,0,0,0),this._currentBounds=null,this._mask=null,this._cacheAsBitmap=!1,this._cacheIsDirty=!1},D.DisplayObject.prototype={constructor:D.DisplayObject,destroy:function(){if(this.children){for(var t=this.children.length;t--;)this.children[t].destroy();this.children=[]}this.hitArea=null,this.parent=null,this.worldTransform=null,this.filterArea=null,this.renderable=!1,this._bounds=null,this._currentBounds=null,this._mask=null,this._destroyCachedSprite(),this._destroyTintedTexture()},updateTransform:function(t){if(!t&&!this.parent&&!this.game)return this;var e=this.parent;t?e=t:this.parent||(e=this.game.world);var i,s,n,r,o,a,h=e.worldTransform,u=this.worldTransform;this.rotation%Phaser.Math.PI2?(this.rotation!==this.rotationCache&&(this.rotationCache=this.rotation,this._sr=Math.sin(this.rotation),this._cr=Math.cos(this.rotation)),i=this._cr*this.scale.x,s=this._sr*this.scale.x,n=-this._sr*this.scale.y,r=this._cr*this.scale.y,o=this.position.x,a=this.position.y,(this.pivot.x||this.pivot.y)&&(o-=this.pivot.x*i+this.pivot.y*n,a-=this.pivot.x*s+this.pivot.y*r),u.a=i*h.a+s*h.c,u.b=i*h.b+s*h.d,u.c=n*h.a+r*h.c,u.d=n*h.b+r*h.d):(i=this.scale.x,n=s=0,r=this.scale.y,o=this.position.x-this.pivot.x*i,a=this.position.y-this.pivot.y*r,u.a=i*h.a,u.b=i*h.b,u.c=r*h.c,u.d=r*h.d),u.tx=o*h.a+a*h.c+h.tx,u.ty=o*h.b+a*h.d+h.ty,i=u.a,s=u.b,n=u.c;var l=i*(r=u.d)-s*n;if(i||s){var c=Math.sqrt(i*i+s*s);this.worldRotation=0=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},D.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},D.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},D.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},D.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},D.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},D.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=D.compileProgram(t,this.vertexSrc||D.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],D.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,D._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},D.PixiFastShader.prototype.constructor=D.PixiFastShader,D.PixiFastShader.prototype.init=function(){var t=this.gl,e=D.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=D._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),D._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},D.StripShader.prototype.constructor=D.StripShader,D.StripShader.prototype.init=function(){var t=this.gl,e=D.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=D._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),D._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,u,l,c=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-c*p.width)+i.crop.width,u=(l=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-c),h=i.frame.width*-c,u=i.frame.height*(1-d),l=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,m=i.baseTexture.resolution,g=i.baseTexture.textureIndex,v=r.a/m,y=r.b/m,x=r.c/m,b=r.d/m,_=r.tx,T=r.ty,w=i.crop.height;if(i.rotated){var S=r.a,C=r.b,P=r.c,E=r.d,M=h,A=a;_=r.c*w+_,T=r.d*w+T,v=6123233995736766e-32*S-P,y=6123233995736766e-32*C-E,x=S+6123233995736766e-32*P,b=C+6123233995736766e-32*E,i._updateUvsInverted(),a=u,h=l,u=A,l=M}var R=this.colors,O=this.positions,L=t.tint,I=(L>>16)+(65280&L)+((255&L)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(O[f++]=v*h+x*l+_|0,O[f++]=b*l+y*h+T|0,O[f++]=o.x0,O[f++]=o.y0,R[f++]=I,O[f++]=g,O[f++]=v*a+x*l+_|0,O[f++]=b*l+y*a+T|0,O[f++]=o.x1,O[f++]=o.y1,R[f++]=I,O[f++]=g,O[f++]=v*a+x*u+_|0,O[f++]=b*u+y*a+T|0,O[f++]=o.x2,O[f++]=o.y2,R[f++]=I,O[f++]=g,O[f++]=v*h+x*u+_|0,O[f++]=b*u+y*h+T|0):(O[f++]=v*h+x*l+_,O[f++]=b*l+y*h+T,O[f++]=o.x0,O[f++]=o.y0,R[f++]=I,O[f++]=g,O[f++]=v*a+x*l+_,O[f++]=b*l+y*a+T,O[f++]=o.x1,O[f++]=o.y1,R[f++]=I,O[f++]=g,O[f++]=v*a+x*u+_,O[f++]=b*u+y*a+T,O[f++]=o.x2,O[f++]=o.y2,R[f++]=I,O[f++]=g,O[f++]=v*h+x*u+_,O[f++]=b*u+y*h+T),O[f++]=o.x3,O[f++]=o.y3,R[f++]=I,O[f++]=g,this.sprites[this.currentBatchSize++]=t}},D.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(D._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;D.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),D.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new D.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),u=t.tilePosition.y/(a*t.tileScaleOffset.y),l=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),c=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-u,r.x1=1*l-h,r.y1=0-u,r.x2=1*l-h,r.y2=1*c-u,r.x3=0-h,r.y3=1*c-u;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,m=this.colors,g=t.width,v=t.height,y=t.anchor.x,x=t.anchor.y,b=g*(1-y),_=g*-y,T=v*(1-x),w=v*-x,S=this.currentBatchSize*this.vertexSize,C=e.baseTexture.resolution,P=t.worldTransform,E=P.a/C,M=P.b/C,A=P.c/C,R=P.d/C,O=P.tx,L=P.ty;f[S++]=E*_+A*w+O,f[S++]=R*w+M*_+L,f[S++]=r.x0,f[S++]=r.y0,m[S++]=p,f[S++]=i,f[S++]=E*b+A*w+O,f[S++]=R*w+M*b+L,f[S++]=r.x1,f[S++]=r.y1,m[S++]=p,f[S++]=i,f[S++]=E*b+A*T+O,f[S++]=R*T+M*b+L,f[S++]=r.x2,f[S++]=r.y2,m[S++]=p,f[S++]=i,f[S++]=E*_+A*T+O,f[S++]=R*T+M*_+L,f[S++]=r.x3,f[S++]=r.y3,m[S++]=p,f[S++]=i,this.sprites[this.currentBatchSize++]=t},D.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,u=0,l=null,c=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,m=0,g=this.currentBatchSize;m=this.size&&this.flush()}},D.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},D.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},D.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},D.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},D.WebGLFilterManager.prototype.constructor=D.WebGLFilterManager,D.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},D.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},D.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new D.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new D.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},D.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!D.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},D.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new D.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},D.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new D.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},D.Texture.fromCanvas=function(t,e){var i=D.BaseTexture.fromCanvas(t,e);return new D.Texture(i)},D.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=D),exports.PIXI=D):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=D):t.PIXI=D,D}).call(this),function(){var r,t=this,w=w||{VERSION:"2.19.2",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(w.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(w.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},w.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},w.Circle.intersects=function(t,e){return w.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},w.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new w.Point),!0===i&&(e=w.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},w.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new w.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return w.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return w.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return w.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?w.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?w.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return w.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(w.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(w.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(w.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(w.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(w.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(w.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(w.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(w.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(w.Rectangle.prototype,"topLeft",{get:function(){return new w.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(w.Rectangle.prototype,"topRight",{get:function(){return new w.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(w.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),w.Rectangle.prototype.constructor=w.Rectangle,w.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},w.Rectangle.inflatePoint=function(t,e){return w.Rectangle.inflate(t,e.x,e.y)},w.Rectangle.size=function(t,e){return null==e?e=new w.Point(t.width,t.height):e.setTo(t.width,t.height),e},w.Rectangle.clone=function(t,e){return null==e?e=new w.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},w.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new w.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},w.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},w.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},w.Camera.prototype.constructor=w.Camera,Object.defineProperty(w.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(w.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(w.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(w.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(w.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(w.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(w.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(w.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(w.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),w.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},w.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},w.State.prototype.constructor=w.State,w.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new w.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},w.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof w.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},w.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},w.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,u=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new w.Rectangle(0,0,i,s),a=t*i,h=e*s,u=r;uthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},w.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},w.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},w.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},w.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},w.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},w.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},w.Group.prototype.getByName=function(t){return this.getFirst("name",t)},w.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof w.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},w.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},w.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},w.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===w.Group.RETURN_TOTAL)return 0;if(i===w.Group.RETURN_ALL)return[]}var o=0;if(i===w.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},w.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},w.Group.prototype.shuffle=function(){w.ArrayUtils.shuffle(this.children),this.updateZ()},w.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(w.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,w.Group.RETURN_TOTAL)}}),Object.defineProperty(w.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(w.Group.prototype,"angle",{get:function(){return w.Math.radToDeg(this.rotation)},set:function(t){this.rotation=w.Math.degToRad(t)}}),Object.defineProperty(w.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(w.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(w.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(w.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(w.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(w.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),w.World=function(t){w.Group.call(this,t,null,"__world",!1),this.bounds=new w.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},w.World.prototype=Object.create(w.Group.prototype),w.World.prototype.constructor=w.World,w.World.prototype.boot=function(){this.camera=new w.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},w.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},w.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},w.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},w.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(w.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=w.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+w.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new w.Pointer(this.game,t,w.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},w.DeviceButton.prototype.constructor=w.DeviceButton,Object.defineProperty(w.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),w.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=w.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||w.PointerMode.CURSOR|w.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new w.DeviceButton(this,w.Pointer.LEFT_BUTTON),this.middleButton=new w.DeviceButton(this,w.Pointer.MIDDLE_BUTTON),this.rightButton=new w.DeviceButton(this,w.Pointer.RIGHT_BUTTON),this.backButton=new w.DeviceButton(this,w.Pointer.BACK_BUTTON),this.forwardButton=new w.DeviceButton(this,w.Pointer.FORWARD_BUTTON),this.eraserButton=new w.DeviceButton(this,w.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new w.Point,this.positionDown=new w.Point,this.positionUp=new w.Point,this.circle=new w.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},w.Pointer.NO_BUTTON=0,w.Pointer.LEFT_BUTTON=1,w.Pointer.RIGHT_BUTTON=2,w.Pointer.MIDDLE_BUTTON=4,w.Pointer.BACK_BUTTON=8,w.Pointer.FORWARD_BUTTON=16,w.Pointer.ERASER_BUTTON=32,w.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case w.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case w.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case w.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case w.Mouse.BACK_BUTTON:this.backButton.start(e);break;case w.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case w.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case w.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case w.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case w.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case w.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(w.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(w.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(w.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(w.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(w.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(w.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===w.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===w.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===w.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===w.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===w.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===w.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===w.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===w.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===w.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=w.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},w.InputHandler.prototype.constructor=w.InputHandler,w.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new w.Signal,this.onError=new w.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},w.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},w.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},w.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},w.PointerLock.prototype.exit=function(){document.exitPointerLock()},w.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},w.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},w.Component=function(){},w.Component.Angle=function(){},w.Component.Angle.prototype={angle:{get:function(){return w.Math.wrapAngle(w.Math.radToDeg(this.rotation))},set:function(t){this.rotation=w.Math.degToRad(w.Math.wrapAngle(t))}}},w.Component.Animation=function(){},w.Component.Animation.prototype={play:function(t,e,i,s){if(this.animations)return this.animations.play(t,e,i,s)}},w.Component.AutoCull=function(){},w.Component.AutoCull.prototype={autoCull:!1,inCamera:{get:function(){return this.autoCull||this.checkWorldBounds||(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y),this.game.world.camera.view.intersects(this._bounds)}}},w.Component.Bounds=function(){},w.Component.Bounds.prototype={offsetX:{get:function(){return this.anchor.x*this.width}},offsetY:{get:function(){return this.anchor.y*this.height}},centerX:{get:function(){return this.x-this.offsetX+.5*this.width},set:function(t){this.x=t+this.offsetX-.5*this.width}},centerY:{get:function(){return this.y-this.offsetY+.5*this.height},set:function(t){this.y=t+this.offsetY-.5*this.height}},left:{get:function(){return this.x-this.offsetX},set:function(t){this.x=t+this.offsetX}},right:{get:function(){return this.x+this.width-this.offsetX},set:function(t){this.x=t-this.width+this.offsetX}},top:{get:function(){return this.y-this.offsetY},set:function(t){this.y=t+this.offsetY}},bottom:{get:function(){return this.y+this.height-this.offsetY},set:function(t){this.y=t-this.height+this.offsetY}},alignIn:function(t,e,i,s){switch(void 0===i&&(i=0),void 0===s&&(s=0),e){default:case w.TOP_LEFT:this.left=t.left-i,this.top=t.top-s;break;case w.TOP_CENTER:this.centerX=t.centerX+i,this.top=t.top-s;break;case w.TOP_RIGHT:this.right=t.right+i,this.top=t.top-s;break;case w.LEFT_CENTER:this.left=t.left-i,this.centerY=t.centerY+s;break;case w.CENTER:this.centerX=t.centerX+i,this.centerY=t.centerY+s;break;case w.RIGHT_CENTER:this.right=t.right+i,this.centerY=t.centerY+s;break;case w.BOTTOM_LEFT:this.left=t.left-i,this.bottom=t.bottom+s;break;case w.BOTTOM_CENTER:this.centerX=t.centerX+i,this.bottom=t.bottom+s;break;case w.BOTTOM_RIGHT:this.right=t.right+i,this.bottom=t.bottom+s}return this},alignTo:function(t,e,i,s){switch(void 0===i&&(i=0),void 0===s&&(s=0),e){default:case w.TOP_LEFT:this.left=t.left-i,this.bottom=t.top-s;break;case w.TOP_CENTER:this.centerX=t.centerX+i,this.bottom=t.top-s;break;case w.TOP_RIGHT:this.right=t.right+i,this.bottom=t.top-s;break;case w.LEFT_TOP:this.right=t.left-i,this.top=t.top-s;break;case w.LEFT_CENTER:this.right=t.left-i,this.centerY=t.centerY+s;break;case w.LEFT_BOTTOM:this.right=t.left-i,this.bottom=t.bottom+s;break;case w.RIGHT_TOP:this.left=t.right+i,this.top=t.top-s;break;case w.RIGHT_CENTER:this.left=t.right+i,this.centerY=t.centerY+s;break;case w.RIGHT_BOTTOM:this.left=t.right+i,this.bottom=t.bottom+s;break;case w.BOTTOM_LEFT:this.left=t.left-i,this.top=t.bottom+s;break;case w.BOTTOM_CENTER:this.centerX=t.centerX+i,this.top=t.bottom+s;break;case w.BOTTOM_RIGHT:this.right=t.right+i,this.top=t.bottom+s}return this}},w.Group.prototype.alignIn=w.Component.Bounds.prototype.alignIn,w.Group.prototype.alignTo=w.Component.Bounds.prototype.alignTo,w.Component.BringToTop=function(){},w.Component.BringToTop.prototype.bringToTop=function(){return this.parent&&this.parent.bringChildToTop&&this.parent.bringChildToTop(this),this},w.Component.BringToTop.prototype.sendToBack=function(){return this.parent&&this.parent.sendChildToBack&&this.parent.sendChildToBack(this),this},w.Component.BringToTop.prototype.moveUp=function(){return this.parent&&this.parent.moveUp(this),this},w.Component.BringToTop.prototype.moveDown=function(){return this.parent&&this.parent.moveDown(this),this},w.Component.Core=function(){},w.Component.Core.install=function(t){w.Utils.mixinPrototype(this,w.Component.Core.prototype),this.components={};for(var e=0;ethis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},w.Component.InCamera=function(){},w.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},w.Component.InputEnabled=function(){},w.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new w.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},w.Component.InWorld=function(){},w.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},w.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},w.Component.LifeSpan=function(){},w.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new w.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new w.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},w.Component.Smoothed=function(){},w.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},w.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},w.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(w.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new w.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new w.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new w.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new w.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new w.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new w.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new w.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new w.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new w.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,u){return void 0===u&&(u=this.world),u.add(new w.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new w.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new w.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new w.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new w.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new w.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new w.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new w.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new w.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new w.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},w.GameObjectFactory.prototype.constructor=w.GameObjectFactory,w.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},w.GameObjectCreator.prototype={image:function(t,e,i,s){return new w.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new w.Sprite(this.game,t,e,i,s)},tween:function(t){return new w.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new w.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new w.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new w.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new w.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new w.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new w.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new w.Graphics(this.game,t,e)},emitter:function(t,e,i){return new w.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new w.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new w.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new w.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new w.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new w.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new w.Filter[t](this.game)).init.apply(t,e),t}},w.GameObjectCreator.prototype.constructor=w.GameObjectCreator,w.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=w.SPRITE,this.physicsType=w.SPRITE,PIXI.Sprite.call(this,w.Cache.DEFAULT),w.Component.Core.init.call(this,t,e,i,s,n)},w.Sprite.prototype=Object.create(PIXI.Sprite.prototype),w.Sprite.prototype.constructor=w.Sprite,w.Component.Core.install.call(w.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),w.Sprite.prototype.preUpdatePhysics=w.Component.PhysicsBody.preUpdate,w.Sprite.prototype.preUpdateLifeSpan=w.Component.LifeSpan.preUpdate,w.Sprite.prototype.preUpdateInWorld=w.Component.InWorld.preUpdate,w.Sprite.prototype.preUpdateCore=w.Component.Core.preUpdate,w.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},w.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=w.IMAGE,PIXI.Sprite.call(this,w.Cache.DEFAULT),w.Component.Core.init.call(this,t,e,i,s,n)},w.Image.prototype=Object.create(PIXI.Sprite.prototype),w.Image.prototype.constructor=w.Image,w.Component.Core.install.call(w.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),w.Image.prototype.preUpdateLifeSpan=w.Component.LifeSpan.preUpdate,w.Image.prototype.preUpdateInWorld=w.Component.InWorld.preUpdate,w.Image.prototype.preUpdateCore=w.Component.Core.preUpdate,w.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},w.Button=function(t,e,i,s,n,r,o,a,h,u){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,w.Image.call(this,t,e,i,s,a),this.type=w.BUTTON,this.physicsType=w.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new w.Signal,this.onInputOut=new w.Signal,this.onInputDown=new w.Signal,this.onInputUp=new w.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=w.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,u),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},w.Button.prototype=Object.create(w.Image.prototype),w.Button.prototype.constructor=w.Button;var h="Over",u="Out",l="Down",c="Up";w.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},w.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},w.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},w.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(u,e,!this.input.pointerOver()),this.setStateFrame(l,i,this.input.pointerDown()),this.setStateFrame(c,s,this.input.pointerUp())},w.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof w.Sound||e instanceof w.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},w.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},w.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(u,n,r),this.setStateSound(l,i,s),this.setStateSound(c,o,a)},w.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},w.Button.prototype.setOutSound=function(t,e){this.setStateSound(u,t,e)},w.Button.prototype.setDownSound=function(t,e){this.setStateSound(l,t,e)},w.Button.prototype.setUpSound=function(t,e){this.setStateSound(c,t,e)},w.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},w.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(u),this.playStateSound(u),this.onInputOut&&this.onInputOut.dispatch(this,e)},w.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputDown&&this.onInputDown.dispatch(this,e)},w.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(c),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(u):this.changeStateFrame(c)||(i?this.changeStateFrame(h):this.changeStateFrame(u)))},w.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),w.Group.call(this,t,e,i,s),this.type=w.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},w.SpriteBatch.prototype=Object.create(w.Group.prototype),w.SpriteBatch.prototype.constructor=w.SpriteBatch,w.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},w.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=w.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},w.RandomDataGenerator.prototype.constructor=w.RandomDataGenerator,w.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},w.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new w.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new w.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new w.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new w.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof w.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},w.QuadTree.prototype.constructor=w.QuadTree,w.TweenManager=function(){},w.TweenManager.prototype.update=function(){},w.TweenManager.prototype.removeAll=function(){},w.TweenManager.prototype.removeFrom=function(){},w.TweenManager.prototype.destroy=function(){},w.TweenManager.prototype.constructor=w.TweenManager,w.Time=function(t){this.game=t,this.time=0,this.now=0,this.elapsed=0,this.elapsedMS=0,this.delta=0,this.deltaTotal=0,this.deltaMax=200,this.desiredFpsMult=1/60,this._desiredFps=60,this.suggestedFps=this.desiredFps,this.slowMotion=1,this.advancedTiming=!1,this.frames=0,this.updates=0,this.renders=0,this.fps=0,this.ups=0,this.rps=0,this.fpsMin=1e3,this.fpsMax=0,this.msMin=1e3,this.msMax=0,this.pauseDuration=0,this.timeToCall=0,this.timeExpected=0,this.events=new w.Timer(this.game,!1),this._frameCount=0,this._elapsedAccumulator=0,this._started=0,this._timeLastSecond=0,this._pauseStarted=0,this._timers=[]},w.Time.prototype={boot:function(){this._started=Date.now(),this.time=Date.now(),this.events.start(),this.timeExpected=this.time},add:function(t){return this._timers.push(t),t},create:function(t){void 0===t&&(t=!0);var e=new w.Timer(this.game,t);return this._timers.push(e),e},removeAll:function(){for(var t=0;t=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(w.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(w.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),w.Time.prototype.constructor=w.Time,w.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new w.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},w.Timer.MINUTE=6e4,w.Timer.SECOND=1e3,w.Timer.HALF=500,w.Timer.QUARTER=250,w.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new w.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(w.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(w.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(w.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),w.Timer.prototype.constructor=w.Timer,w.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},w.TimerEvent.prototype.constructor=w.TimerEvent,w.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},w.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new w.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},w.AnimationManager.prototype.constructor=w.AnimationManager,Object.defineProperty(w.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(w.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(w.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(w.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(w.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(w.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),w.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new w.Signal,this.onUpdate=null,this.onComplete=new w.Signal,this.onLoop=new w.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},w.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},w.Animation.prototype.constructor=w.Animation,Object.defineProperty(w.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(w.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(w.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(w.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(w.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new w.FrameData,e=0;e tag")}},w.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new w.Signal,this._cacheMap=[],this._cacheMap[w.Cache.CANVAS]=this._cache.canvas,this._cacheMap[w.Cache.IMAGE]=this._cache.image,this._cacheMap[w.Cache.TEXTURE]=this._cache.texture,this._cacheMap[w.Cache.SOUND]=this._cache.sound,this._cacheMap[w.Cache.TEXT]=this._cache.text,this._cacheMap[w.Cache.PHYSICS]=this._cache.physics,this._cacheMap[w.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[w.Cache.BINARY]=this._cache.binary,this._cacheMap[w.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[w.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[w.Cache.JSON]=this._cache.json,this._cacheMap[w.Cache.XML]=this._cache.xml,this._cacheMap[w.Cache.VIDEO]=this._cache.video,this._cacheMap[w.Cache.SHADER]=this._cache.shader,this._cacheMap[w.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[w.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new w.Signal,this._addImages()},w.Cache.CANVAS=1,w.Cache.IMAGE=2,w.Cache.TEXTURE=3,w.Cache.SOUND=4,w.Cache.TEXT=5,w.Cache.PHYSICS=6,w.Cache.TILEMAP=7,w.Cache.BINARY=8,w.Cache.BITMAPDATA=9,w.Cache.BITMAPFONT=10,w.Cache.JSON=11,w.Cache.XML=12,w.Cache.VIDEO=13,w.Cache.SHADER=14,w.Cache.RENDER_TEXTURE=15,w.Cache.DATA=16,w.Cache.DEFAULT=null,w.Cache.DEFAULT_KEY="__default",w.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",w.Cache.MISSING=null,w.Cache.MISSING_KEY="__missing",w.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",w.Cache.READY_TIMEOUT=1e3,w.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in w.LoaderParser?w.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new w.Frame(0,0,0,n.width,n.height,t),frameData:new w.FrameData,fileFormat:i};return r.frameData.addFrame(new w.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new w.Frame(0,0,0,i.width,i.height,t),frameData:new w.FrameData};return s.frameData.addFrame(new w.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?w.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(w.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(w.Cache.DEFAULT_KEY,w.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,w.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(w.Cache.MISSING_KEY,w.Cache.MISSING_SRC,function(t){w.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new w.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?w.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):w.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,u={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),u.font=w.LoaderParser.jsonBitmapFont(h,u.base,r,o,a,this.game.resolution)):(h=this.getXML(s),u.font=w.LoaderParser.xmlBitmapFont(h,u.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=u}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new w.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var u={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:w.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=u,this._resolveURL(e,u)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===w.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=w.AnimationParser.XMLData(this.game,s,t):n===w.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=w.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=w.AnimationParser.JSONData(this.game,s,t):r.frameData=w.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,w.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,w.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(w.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(w.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(w.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(w.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(w.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(w.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(w.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(w.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(w.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(w.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(w.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(w.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(w.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(w.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(w.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(w.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,w.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,w.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",w.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,w.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,w.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,w.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,w.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,w.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,w.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,w.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,w.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,w.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,w.Cache.JSON,"getJSON","data");return i?e?w.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,w.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,w.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,w.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,w.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,w.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=w.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=w.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=w.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.xthis.width}}),Object.defineProperty(w.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}});var s=function(){};return w.Utils.Debug=s,w.Utils.Debug.prototype={isDisabled:!0,boot:s,destroy:s,preUpdate:s,reset:s,start:s,stop:s,line:s,soundInfo:s,cameraInfo:s,timer:s,pointer:s,spriteInputInfo:s,key:s,inputInfo:s,spriteBounds:s,ropeSegments:s,spriteInfo:s,spriteCoords:s,lineInfo:s,pixel:s,geom:s,rectangle:s,text:s,quadTree:s,body:s,bodyInfo:s,box2dWorld:s,box2dBody:s},w.Utils.Debug.prototype.constructor=w.Utils.Debug,w.DOM={getOffset:function(t,e){e=e||new w.Point;var i=t.getBoundingClientRect(),s=w.DOM.scrollY,n=w.DOM.scrollX,r=document.documentElement.clientTop,o=document.documentElement.clientLeft;return e.x=i.left+n-o,e.y=i.top+s-r,e},getBounds:function(t,e){return void 0===e&&(e=0),!(!(t=t&&!t.nodeType?t[0]:t)||1!==t.nodeType)&&this.calibrate(t.getBoundingClientRect(),e)},calibrate:function(t,e){e=+e||0;var i={width:0,height:0,left:0,right:0,top:0,bottom:0};return i.width=(i.right=t.right+e)-(i.left=t.left-e),i.height=(i.bottom=t.bottom+e)-(i.top=t.top-e),i},getAspectRatio:function(t){var e=(t=null==t?this.visualBounds:1===t.nodeType?this.getBounds(t):t).width,i=t.height;return"function"==typeof e&&(e=e.call(t)),"function"==typeof i&&(i=i.call(t)),e/i},inLayoutViewport:function(t,e){var i=this.getBounds(t,e);return!!i&&0<=i.bottom&&0<=i.right&&i.top<=this.layoutBounds.width&&i.left<=this.layoutBounds.height},getScreenOrientation:function(t){var e=window.screen,i=e.orientation||e.mozOrientation||e.msOrientation;if(i&&"string"==typeof i.type)return i.type;if("string"==typeof i)return i;var s="portrait-primary",n="landscape-primary";if("screen"===t)return e.height>e.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new w.Rectangle,layoutBounds:new w.Rectangle,documentBounds:new w.Rectangle},w.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(w.DOM,"scrollX",{get:e}),Object.defineProperty(w.DOM,"scrollY",{get:i}),Object.defineProperty(w.DOM.visualBounds,"x",{get:e}),Object.defineProperty(w.DOM.visualBounds,"y",{get:i}),Object.defineProperty(w.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(w.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(w.DOM.visualBounds,"width",{get:s}),Object.defineProperty(w.DOM.visualBounds,"height",{get:n}),Object.defineProperty(w.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(w.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(w.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(w.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(w.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=w.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),w.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&w.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&w.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=w.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=w.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var m=p.h;p.h=d.h,d.h=m,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=w.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return w.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return w.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return w.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?w.Color.blendLinearBurn(t,2*e):w.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?w.Color.blendColorBurn(t,2*e):w.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?w.Color.blendDarken(t,2*e):w.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return w.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return w.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},w.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},w.Physics.ARCADE=0,w.Physics.P2JS=1,w.Physics.NINJA=2,w.Physics.BOX2D=3,w.Physics.CHIPMUNK=4,w.Physics.MATTERJS=5,w.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!w.Physics.hasOwnProperty("Arcade")||(this.arcade=new w.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&w.Physics.hasOwnProperty("Ninja")&&(this.ninja=new w.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&w.Physics.hasOwnProperty("P2")&&(this.p2=new w.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&w.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new w.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&w.Physics.hasOwnProperty("Matter")&&(this.matter=new w.Physics.Matter(this.game,this.config))},startSystem:function(t){t===w.Physics.ARCADE?this.arcade=new w.Physics.Arcade(this.game):t===w.Physics.P2JS?null===this.p2?this.p2=new w.Physics.P2(this.game,this.config):this.p2.reset():t===w.Physics.NINJA?this.ninja=new w.Physics.Ninja(this.game):t===w.Physics.BOX2D?null===this.box2d?this.box2d=new w.Physics.Box2D(this.game,this.config):this.box2d.reset():t===w.Physics.MATTERJS&&(null===this.matter?this.matter=new w.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=w.Physics.ARCADE),void 0===i&&(i=!1),e===w.Physics.ARCADE?this.arcade.enable(t):e===w.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===w.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===w.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===w.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},w.Physics.prototype.constructor=w.Physics,w.Particles=function(t){this.game=t,this.emitters={},this.ID=0},w.Particles.prototype={add:function(t){return this.emitters[t.id]=t},remove:function(t){delete this.emitters[t.id]}},w.Particles.prototype.constructor=w.Particles,void 0===PIXI.blendModes&&(PIXI.blendModes=w.blendModes),void 0===PIXI.scaleModes&&(PIXI.scaleModes=w.scaleModes),void 0===PIXI.Texture.emptyTexture&&(PIXI.Texture.emptyTexture=new PIXI.Texture(new PIXI.BaseTexture)),void 0===PIXI.DisplayObject._tempMatrix&&(PIXI.DisplayObject._tempMatrix=new w.Matrix),PIXI.TextureSilentFail=!0,PIXI.canUseNewCanvasBlendModes=function(){return w.Device.canUseMultiply},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=w),exports.Phaser=w):"undefined"!=typeof define&&define.amd?define("Phaser",t.Phaser=w):t.Phaser=w,w}.call(this); //# sourceMappingURL=phaser-minimum.map \ No newline at end of file diff --git a/build/custom/phaser-no-physics.js b/build/custom/phaser-no-physics.js index 2f304ccca..7303b54d0 100644 --- a/build/custom/phaser-no-physics.js +++ b/build/custom/phaser-no-physics.js @@ -7,7 +7,7 @@ * * Phaser CE - https://github.com/photonstorm/phaser-ce * -* v2.19.1 "2021-10-13" - Built: Tue Oct 19 2021 11:50:13 +* v2.19.2 "2021-10-25" - Built: Sun Oct 24 2021 17:53:17 * * By Richard Davey http://www.photonstorm.com @photonstorm and Phaser CE contributors * @@ -5311,10 +5311,7 @@ PIXI.WebGLSpriteBatch.prototype.flush = function () gl.vertexAttribPointer(shader.colorAttribute, 4, gl.UNSIGNED_BYTE, true, stride, 16); // Texture index - if (PIXI._enableMultiTextureToggle) - { - gl.vertexAttribPointer(shader.aTextureIndex, 1, gl.FLOAT, false, stride, 20); - } + gl.vertexAttribPointer(shader.aTextureIndex, 1, gl.FLOAT, false, stride, 20); } // upload the verts to the buffer @@ -7787,7 +7784,7 @@ var Phaser = Phaser || { // jshint ignore:line * @constant Phaser.VERSION * @type {string} */ - VERSION: '2.19.1', + VERSION: '2.19.2', /** * An array of Phaser game instances. diff --git a/build/custom/phaser-no-physics.map b/build/custom/phaser-no-physics.map index de5b754ee..a3e026469 100644 --- a/build/custom/phaser-no-physics.map +++ b/build/custom/phaser-no-physics.map @@ -1 +1 @@ -{"version":3,"sources":["phaser-no-physics.js"],"names":["root","this","PIXI","DisplayObject","position","Point","scale","pivot","rotation","alpha","visible","hitArea","renderable","parent","worldAlpha","worldTransform","Phaser","Matrix","worldPosition","worldScale","worldRotation","filterArea","_sr","_cr","_bounds","Rectangle","_currentBounds","_mask","_cacheAsBitmap","_cacheIsDirty","prototype","constructor","destroy","children","i","length","_destroyCachedSprite","_destroyTintedTexture","updateTransform","game","p","world","a","b","c","d","tx","ty","pt","wt","Math","PI2","rotationCache","sin","cos","x","y","determ","r","sqrt","acos","s","HALF_PI","transformCallback","call","transformCallbackContext","preUpdate","generateTexture","resolution","scaleMode","renderer","bounds","getLocalBounds","renderTexture","RenderTexture","width","height","_tempMatrix","render","updateCache","_generateCachedSprite","toGlobal","apply","toLocal","from","applyInverse","_renderCachedSprite","renderSession","_cachedSprite","gl","Sprite","_renderWebGL","_renderCanvas","max","ceil","texture","resize","textureUnit","baseTexture","_enableMultiTextureToggle","textureIndex","undefined","tempFilters","_filters","filters","anchor","tintedTexture","CanvasPool","removeByCanvas","displayObjectUpdateTransform","Object","defineProperties","get","set","value","worldVisible","item","mask","isMask","Array","isArray","passes","filterPasses","j","push","_filterBlock","target","blendMode","blendModes","MULTIPLY","NORMAL","cacheAsBitmap","DisplayObjectContainer","ignoreChildInput","create","addChild","child","addChildAt","index","removeChild","splice","Error","swapChildren","child2","index1","getChildIndex","index2","indexOf","setChildIndex","currentIndex","getChildAt","removeChildAt","bringChildToTop","sendChildToBack","removeChildren","beginIndex","endIndex","range","removed","displayObjectContainerUpdateTransform","getBounds","targetCoordinateSpace","isTargetCoordinateSpaceDisplayObject","isTargetCoordinateSpaceThisOrParent","contains","matrixCache","identityMatrix","childBounds","childMaxX","childMaxY","minX","Infinity","minY","maxX","maxY","childVisible","w0","w1","h0","h1","x1","y1","x2","y2","x3","y3","x4","y4","targetCoordinateSpaceBounds","spriteBatch","flush","filterManager","pushFilter","stop","maskManager","pushMask","start","popMask","popFilter","defineProperty","_width","_height","defaultAnchor","Texture","emptyTexture","tint","cachedTint","shader","exists","hasLoaded","onTextureUpdate","frame","setTexture","destroyBase","skipRender","valid","matrix","temp","crop","currentBlendMode","context","globalCompositeOperation","blendModesCanvas","globalAlpha","smoothProperty","scaleModes","LINEAR","dx","trim","dy","shakeX","shakeY","cw","ch","rotated","e","roundPixels","setTransform","requiresReTint","CanvasTinter","getTintedTexture","drawImage","cx","cy","source","initDefaultShaders","CompileVertexShader","shaderSrc","_CompileShader","VERTEX_SHADER","CompileFragmentShader","FRAGMENT_SHADER","shaderType","src","join","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","window","console","log","getShaderInfoLog","compileProgram","vertexSrc","fragmentSrc","fragmentShader","vertexShader","shaderProgram","createProgram","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","PixiShader","_UID","program","textureCount","firstRun","dirty","attributes","init","initMultitexShader","MAX_TEXTURES","getParameter","MAX_TEXTURE_IMAGE_UNITS","dynamicIfs","defaultVertexSrc","useProgram","uSamplerArray","getUniformLocation","projectionVector","offsetVector","dimensions","aVertexPosition","getAttribLocation","aTextureCoord","colorAttribute","aTextureIndex","indices","tempTexture","createTexture","activeTexture","TEXTURE0","bindTexture","TEXTURE_2D","texImage2D","RGB","UNSIGNED_BYTE","key","uniform1iv","uniforms","uniformLocation","initUniforms","initDefaultShader","uSampler","usingFilter","uniform","type","_init","initSampler2D","glMatrix","glValueLength","glFunc","uniformMatrix2fv","uniformMatrix3fv","uniformMatrix4fv","_glTextures","id","textureData","data","magFilter","minFilter","wrapS","CLAMP_TO_EDGE","wrapT","format","LUMINANCE","RGBA","repeat","REPEAT","pixelStorei","UNPACK_FLIP_Y_WEBGL","flipY","border","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","TEXTURE_WRAP_S","TEXTURE_WRAP_T","uniform1i","syncUniforms","transpose","z","w","_dirty","instances","updateTexture","deleteProgram","PixiFastShader","uMatrix","aPositionCoord","aScale","aRotation","StripShader","translationMatrix","attribute","PrimitiveShader","tintColor","ComplexPrimitiveShader","color","glContexts","WebGLRenderer","config","defaultRenderer","extensions","WEBGL","transparent","autoResize","preserveDrawingBuffer","clearBeforeRender","powerPreference","view","canvas","_contextOptions","antialias","failIfMajorPerformanceCaveat","premultipliedAlpha","stencil","projection","offset","shaderManager","WebGLShaderManager","WebGLSpriteBatch","WebGLMaskManager","WebGLFilterManager","stencilManager","WebGLStencilManager","blendModeManager","WebGLBlendModeManager","currentBatchedTextures","drawCount","maxTextureAvailableSpace","initContext","mapBlendModes","getContext","maxTextures","maxTextureSize","MAX_TEXTURE_SIZE","glContextId","disable","DEPTH_TEST","CULL_FACE","enable","BLEND","setContext","compression","etc1","getExtension","pvrtc","s3tc","ETC1","PVRTC","S3TC","setTexturePriority","textureNameCollection","clampPot","potSize","imageCache","cache","_cache","image","imageName","base","warn","stage","contextLost","viewport","bindFramebuffer","FRAMEBUFFER","clearColor","_bgColor","g","clear","COLOR_BUFFER_BIT","camera","_shake","renderDisplayObject","postRender","displayObject","buffer","setBlendMode","begin","end","style","updateCompressedTexture","textureMetaData","compressedTexImage2D","glExtensionFormat","NEAREST","mipmap","isPowerOfTwo","LINEAR_MIPMAP_LINEAR","NEAREST_MIPMAP_NEAREST","generateMipmap","_powerOf2","compressionAlgorithm","UNPACK_PREMULTIPLY_ALPHA_WEBGL","remove","blendModesWebGL","modes","ONE","ONE_MINUS_SRC_ALPHA","ADD","SRC_ALPHA","DST_ALPHA","DST_COLOR","SCREEN","OVERLAY","DARKEN","LIGHTEN","COLOR_DODGE","COLOR_BURN","HARD_LIGHT","SOFT_LIGHT","DIFFERENCE","EXCLUSION","HUE","SATURATION","COLOR","LUMINOSITY","getMaxTextureUnit","enableMultiTexture","textureArray","blendModeWebGL","blendFunc","maskData","WebGLGraphics","updateGraphics","_webGL","pushStencil","popStencil","stencilStack","reverse","count","graphics","webGLData","bindGraphics","STENCIL_TEST","STENCIL_BUFFER_BIT","level","colorMask","stencilFunc","ALWAYS","stencilOp","KEEP","INVERT","mode","drawElements","TRIANGLE_FAN","UNSIGNED_SHORT","EQUAL","DECR","INCR","TRIANGLE_STRIP","_currentGraphics","complexPrimitiveShader","setShader","uniform1f","toArray","uniform2f","uniform3fv","Color","hexToRGBArray","bindBuffer","ARRAY_BUFFER","vertexAttribPointer","FLOAT","primitiveShader","ELEMENT_ARRAY_BUFFER","indexBuffer","pop","maxAttibs","attribState","tempAttribState","stack","defaultShader","fastShader","stripShader","creatureShader","CreatureShader","setAttribs","attribs","attribId","enableVertexAttribArray","disableVertexAttribArray","_currentId","currentShader","vertSize","size","vertexSize","numVerts","numIndices","vertices","ArrayBuffer","positions","Float32Array","colors","Uint32Array","Uint16Array","lastIndexCount","drawing","currentBatchSize","currentBaseTexture","textures","shaders","sprites","Filter","vertexBuffer","createBuffer","bufferData","STATIC_DRAW","DYNAMIC_DRAW","sprite","uvs","_uvs","aX","aY","a0","b0","c0","d0","_w1","_w0","_updateUvsInverted","x0","y0","renderTilingSprite","tilingTexture","TextureUvs","h","tilePosition","tileScaleOffset","offsetX","offsetY","scaleX","tileScale","scaleY","nextTexture","nextBlendMode","nextShader","stride","bufferSubData","subarray","batchSize","blendSwap","shaderSwap","skip","renderBatch","startIndex","TRIANGLES","deleteBuffer","WebGLFastSpriteBatch","maxSize","renderSprite","filterStack","texturePool","initShaderBuffers","filterBlock","_filterArea","_previous_stencil_mgr","filter","FilterTexture","padding","frameBuffer","_glFilterTexture","vertexArray","uvBuffer","uvArray","inputTexture","outputTexture","filterPass","applyFilterPass","sizeX","sizeY","currentFilter","colorBuffer","colorArray","_fbErrors","36054","36055","36057","36061","_CreateFramebuffer","fbStatus","framebuffer","createFramebuffer","depthStencilBuffer","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","framebufferRenderbuffer","DEPTH_STENCIL_ATTACHMENT","renderBuffer","framebufferTexture2D","COLOR_ATTACHMENT0","checkFramebufferStatus","FRAMEBUFFER_COMPLETE","error","targetTexture","DEFAULT","renderbufferStorage","DEPTH_STENCIL","deleteFramebuffer","deleteTexture","CanvasBuffer","clearRect","CanvasMaskManager","save","cacheAlpha","transform","CanvasGraphics","renderGraphicsMask","clip","restore","tintMethod","tintWithMultiply","fillStyle","toString","substr","fillRect","tintWithPerPixel","rgbValues","pixelData","getImageData","pixels","canHandleAlpha","putImageData","CanvasRenderer","CANVAS","refresh","Canvas","getSmoothingPrefix","navigator","isCocoonJS","screencanvas","rgba","removeView","useNew","device","canUseMultiply","BaseTexture","complete","naturalWidth","naturalHeight","forceLoaded","unloadFromGPU","glTexture","fromCanvas","TextureSilentFail","noFrame","isTiling","requiresUpdate","setFrame","onBaseTextureLoaded","_updateUvs","tw","th","exports","module","define","amd","slice","VERSION","GAMES","AUTO","HEADLESS","WEBGL_MULTI","NONE","LEFT","RIGHT","UP","DOWN","SPRITE","BUTTON","IMAGE","GRAPHICS","TEXT","TILESPRITE","BITMAPTEXT","GROUP","RENDERTEXTURE","TILEMAP","TILEMAPLAYER","EMITTER","POLYGON","BITMAPDATA","CANVAS_FILTER","WEBGL_FILTER","ELLIPSE","SPRITEBATCH","RETROFONT","POINTER","ROPE","CIRCLE","RECTANGLE","LINE","MATRIX","POINT","ROUNDEDRECTANGLE","CREATURE","VIDEO","PENDING_ATLAS","HORIZONTAL","VERTICAL","LANDSCAPE","PORTRAIT","ANGLE_UP","ANGLE_DOWN","ANGLE_LEFT","ANGLE_RIGHT","ANGLE_NORTH_EAST","ANGLE_NORTH_WEST","ANGLE_SOUTH_EAST","ANGLE_SOUTH_WEST","TOP_LEFT","TOP_CENTER","TOP_RIGHT","LEFT_TOP","LEFT_CENTER","LEFT_BOTTOM","CENTER","RIGHT_TOP","RIGHT_CENTER","RIGHT_BOTTOM","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT","AudioBufferSourceNode","noteGrainOn","noteOff","trunc","floor","Function","bind","thisArg","boundArgs","arguments","TypeError","bound","args","concat","F","proto","arg","forEach","fun","t","len","CheapArray","assert","assign","varArgs","to","hasOwn","hasOwnProperty","nextSource","nextKey","Utils","defaults","keys","reverseString","string","split","getProperty","obj","name","parts","_getProperty","setProperties","props","setProperty","_setProperty","val","currentObj","chanceRoll","chance","random","randomChoice","choice1","choice2","parseDimension","dimension","f","parseInt","innerWidth","innerHeight","pad","str","dir","padlen","right","isPlainObject","nodeType","extend","options","copy","copyIsArray","clone","deep","mixinPrototype","mixin","replace","mixinKeys","o","childNodes","cloneNode","Circle","diameter","_diameter","_radius","circumference","PI","out","u","radius","setTo","copyFrom","copyTo","dest","distance","round","output","circumferencePoint","angle","asDegrees","sample","steps","startAngle","endAngle","linear","offsetPoint","point","left","top","bottom","equals","intersects","degToRad","intersectsRectangle","abs","halfWidth","halfHeight","xCornerDist","yCornerDist","intersectsLine","l","returnPoints","k","m","n","del","p0","p1","p0Exists","pointOnSegment","p1Exists","Ellipse","centerX","centerY","normx","normy","Line","fromPoints","fromSprite","startSprite","endSprite","useCenter","fromAngle","rotate","rotateAround","line","asSegment","result","intersectsPoints","reflect","midPoint","centerOn","add","pointOnLine","epsilon","fuzzyEqual","xMin","min","xMax","yMin","yMax","coordinatesOnLine","stepRate","results","sx","sy","err","e2","wrap","a1","a2","b1","b2","c1","c2","denom","uc","ua","ub","rect","empty","bx1","by1","bx2","by2","intersectionWithRectangle","self","edges","edgeIntersection","closestDistance","edge","normalAngle","fromArray","array","pos","newPos","translate","tx1","append","d1","identity","invert","setToPolar","azimuth","subtract","multiply","divide","clampX","clamp","clampY","equalsXY","fuzzyEquals","fuzzyEqualsXY","angleXY","atan2","radToDeg","atan","getMagnitude","getMagnitudeSq","setMagnitude","magnitude","normalize","isZero","limit","expand","dot","cross","perp","rperp","normalRightHand","negative","multiplyAdd","interpolate","project","amt","projectUnit","centroid","points","pointslength","parse","xProp","yProp","parseFloat","isPoint","sortClockwise","center","sort","det","Polygon","area","_points","closed","flattened","toNumberArray","flatten","inside","ix","iy","jx","jy","Number","MAX_VALUE","calculateArea","p2","avgHeight","floorAll","ceilAll","copyFromBounds","inflate","containsRect","intersection","intersectsRaw","tolerance","union","randomX","randomY","getPoint","sides","inflatePoint","createFromBounds","containsRaw","rx","ry","rw","rh","containsPoint","volume","sameDimensions","aabb","NEGATIVE_INFINITY","POSITIVE_INFINITY","EmptyRectangle","RoundedRectangle","Camera","deadzone","roundPx","atLimit","totalInView","lerp","onShakeComplete","Signal","onFlashComplete","onFadeComplete","fx","_targetPosition","_edge","_position","intensity","duration","horizontal","vertical","shakeBounds","_fxDuration","_fxType","_fixedView","FOLLOW_LOCKON","FOLLOW_PLATFORMER","FOLLOW_TOPDOWN","FOLLOW_TOPDOWN_TIGHT","SHAKE_BOTH","SHAKE_HORIZONTAL","SHAKE_VERTICAL","ENABLE_FX","FLASH","FADE_OUT","FADE_IN","boot","Graphics","follow","lerpX","lerpY","helper","unfollow","focusOn","setPosition","focusOnXY","shake","force","direction","flash","beginFill","drawRect","endFill","fade","fadeEffect","fadeIn","update","updateFX","updateShake","checkBounds","time","delta","dispatch","rnd","frac","updateTarget","math","setBoundsToWorld","vx","vw","vy","vh","setSize","reset","resetFX","State","make","input","load","sound","state","tweens","particles","physics","preload","loadUpdate","loadRender","postUpdate","preRender","paused","resumed","pauseUpdate","shutdown","StateManager","pendingState","states","_pendingState","_clearWorld","_clearCache","_created","_args","current","onStateChange","onInitCallback","onPreloadCallback","onCreateCallback","onUpdateCallback","onRenderCallback","onResizeCallback","onPreRenderCallback","onLoadUpdateCallback","onLoadRenderCallback","onPausedCallback","onResumedCallback","onPauseUpdateCallback","onShutDownCallback","onPause","pause","onResume","resume","autoStart","newState","isBooted","callbackContext","clearWorld","clearCache","checkState","restart","dummy","clearCurrentState","setCurrentState","totalQueuedFiles","totalQueuedPacks","loadComplete","removeAll","debug","link","unlink","previousStateKey","onPostUpdateCallback","_kickstart","getCurrentState","renderType","_bindings","_prevParams","memorize","_shouldPropagate","active","_boundDispatch","validateListener","listener","fnName","_registerListener","isOnce","listenerContext","priority","binding","prevIndex","_indexOfListener","SignalBinding","_addBinding","execute","_priority","cur","_listener","has","addOnce","_destroy","getNumListeners","halt","paramsArr","bindings","forget","dispose","_this","signal","_isOnce","_signal","callCount","params","handlerReturn","detach","isBound","getListener","getSignal","prevPoint","Date","mouse","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","sampleRate","iChannel0","iChannel1","iChannel2","iChannel3","setResolution","pointer","toFixed","totalElapsedSeconds","addToWorld","anchorX","anchorY","Cache","Plugin","hasPreUpdate","hasUpdate","hasPostUpdate","hasRender","hasPostRender","PluginManager","plugins","_len","_i","plugin","Stage","disableVisibilityChange","currentRenderOrderID","_hiddenVar","_onChange","parseConfig","backgroundColor","setBackgroundColor","DOM","getOffset","setUserSelect","setTouchAction","checkVisibility","document","hidden","webkitHidden","mozHidden","msHidden","event","visibilityChange","_onChangePause","_onChangeResume","_onClick","hasFocus","addEventListener","onblur","onfocus","onpagehide","onpageshow","cocoonJSApp","CocoonJS","App","onSuspended","onActivated","on","focusLoss","focusGain","gamePaused","gameResumed","valueToColor","updateColor","removeEventListener","silent","body","hash","removeFromHash","Group","addToStage","enableBody","physicsBodyType","Physics","ARCADE","physicsType","alive","ignoreDestroy","pendingDestroy","classType","cursor","inputEnableChildren","updateOnlyExistingChildren","onChildInputDown","onChildInputUp","onChildInputOver","onChildInputOut","enableBodyDebug","physicsSortDirection","onDestroy","cursorIndex","fixedToCamera","cameraOffset","_sortProperty","RETURN_NONE","RETURN_TOTAL","RETURN_CHILD","RETURN_ALL","SORT_ASCENDING","SORT_DESCENDING","updateZ","addToHash","inputEnabled","events","onAddedToGroup$dispatch","addAt","addMultiple","moveAll","getAt","createMultiple","quantity","callback","singleKey","singleFrame","align","cellWidth","cellHeight","alignIn","resetCursor","next","previous","swap","child1","bringToTop","getIndex","sendToBack","moveUp","moveDown","xy","getByName","getFirst","oldChild","newChild","hasProperty","operation","checkProperty","checkAlive","checkVisible","setAll","setAllChildren","checkAll","checkAny","addAll","property","amount","subAll","multiplyAll","divideAll","kill","killAll","callAllExists","revive","reviveAll","resetAll","checkExists","resetChild","existsValue","callbackFromArray","callAll","method","methodLength","contextLength","renderOrderID","predicate","ArraySet","forEachExists","iterate","forEachAlive","forEachDead","order","ascendingSortHandler","descendingSortHandler","customSort","sortHandler","returnType","total","getFirstExists","createIfNull","getFirstAlive","getFirstDead","loadTexture","getTop","getBottom","getClosestTo","object","tempDistance","getFurthestFrom","countLiving","countDead","getRandom","ArrayUtils","getRandomItem","getRandomExists","list","getAll","pick","destroyPhase","onRemovedFromGroup$dispatch","group","destroyTexture","removeBetween","scatter","shuffle","destroyChildren","soft","World","_definedSize","stateChange","setBounds","useBounds","wrapAll","between","Game","physicsConfig","multiTexture","isRunning","raf","Device","lockRender","stepping","pendingStep","stepCount","onBlur","onFocus","onBoot","_paused","_codePaused","_focusGained","currentUpdateID","updatesThisFrame","rendersThisFrame","_deltaTime","_lastCount","_spiraling","fpsProblemNotifier","forceSingleUpdate","forceSingleRender","dropFrames","_nextFpsNotification","enableDebug","RandomDataGenerator","now","whenReady","seed","ScaleManager","setUpRenderer","GameObjectFactory","GameObjectCreator","Loader","Time","TweenManager","Input","SoundManager","Particles","Create","Debug","noop","isDisabled","showDebugHeader","forceSetTimeOut","RequestAnimationFrame","focusWindow","disableStart","isReady","onReady","PhaserGlobal","hideBanner","v","webAudio","ie","canvasID","canvasStyle","crisp","setImageRenderingCrisp","webGL","contextRestored","webGLRendererError","cocoonJS","smoothed","addToDOM","preventDefault","clearGLTextures","updateLogic","desiredFpsMult","updateRender","elapsed","deltaMax","slowMotion","fixedStepSize","enableStep","disableStep","step","removeFromDOM","cordova","iOS","focus","stopFocus","muteOnPause","setMute","unsetMute","hitCanvas","hitContext","moveCallbacks","customCandidateHandler","customCandidateHandlerContext","pollRate","enabled","multiInputOverride","MOUSE_TOUCH_COMBINE","speed","circle","maxPointers","tapRate","doubleTapRate","holdRate","justPressedRate","justReleasedRate","recordPointerHistory","recordRate","recordLimit","touchLockCallbacks","pointer1","pointer2","pointer3","pointer4","pointer5","pointer6","pointer7","pointer8","pointer9","pointer10","pointers","activePointer","mousePointer","keyboard","touch","mspointer","gamepad","resetLocked","onDown","onUp","onTap","onHold","minPriorityID","interactiveItems","_localPoint","_pollCounter","_oldPosition","_x","_y","MOUSE_OVERRIDES_TOUCH","TOUCH_OVERRIDES_MOUSE","MAX_POINTERS","Pointer","PointerMode","CURSOR","addPointer","Mouse","Touch","MSPointer","mouseWheel","MouseWheel","pointerLock","PointerLock","Keyboard","Gamepad","_onClickTrampoline","onClickTrampoline","setInteractiveCandidateHandler","addMoveCallback","addTouchLockCallback","onEnd","removeTouchLockCallback","executeTouchLockCallbacks","cb","deleteMoveCallback","CONTACT","hard","resetSpeed","startPointer","countActivePointers","updatePointer","identifier","move","stopPointer","getPointer","isActive","getPointerFromIdentifier","getPointerFromId","pointerId","getLocalPosition","hitTest","localPoint","Creature","TileSprite","graphicsData","fill","shape","processClickTrampolines","handler","mouseDownCallback","mouseUpCallback","mouseOutCallback","mouseOverCallback","capture","stopOnGameOut","_onMouseDown","_onMouseMove","_onMouseUp","_onMouseOut","_onMouseOver","NO_BUTTON","LEFT_BUTTON","MIDDLE_BUTTON","RIGHT_BUTTON","BACK_BUTTON","FORWARD_BUTTON","isAndroidStockBrowser","onMouseDown","onMouseMove","onMouseUp","_onMouseUpGlobal","onMouseUpGlobal","_onMouseOutGlobal","onMouseOutGlobal","onMouseOut","onMouseOver","mouseMoveCallback","withinGame","resetButtons","updateButtons","element","wheelEventName","wheelEvent","boundOnWheelHandler","onWheelHandler","eventProxy","WheelEventProxy","bindEvent","deltaY","pointerDownCallback","pointerMoveCallback","pointerUpCallback","pointerOutCallback","pointerOverCallback","pointerCancelCallback","_onMSPointerDown","_onMSPointerMove","_onMSPointerUp","_onMSPointerUpGlobal","_onMSPointerOut","_onMSPointerOver","onPointerDown","onPointerMove","onPointerUp","onPointerUpGlobal","onPointerOut","onPointerOver","_onMSPointerCancel","onPointerCancel","isMousePointerEvent","getPointerFromEvent","pointerType","DeviceButton","buttonCode","isDown","isUp","timeDown","timeUp","repeats","altKey","shiftKey","ctrlKey","onFloat","startStop","condition","padFloat","justPressed","justReleased","pointerMode","button","leftButton","middleButton","rightButton","backButton","forwardButton","eraserButton","ERASER_BUTTON","_holdSent","_history","_nextDrop","_stateReset","clientX","clientY","pageX","pageY","screenX","screenY","rawMovementX","rawMovementY","movementX","movementY","isMouse","previousTapTime","totalTouches","msSinceLastClick","targetObject","interactiveCandidates","positionDown","positionUp","_clickTrampolines","_trampolineTargetObject","processButtonsDown","processButtonsUp","processButtonsUpDown","buttons","toLowerCase","down","totalActivePointers","_touchedHandler","processInteractiveObjects","shift","fromClick","pollLocked","locked","mozMovementX","webkitMovementX","mozMovementY","webkitMovementY","noPause","isDragged","highestRenderOrderID","highestInputPriorityID","candidateTarget","currentNode","first","checked","validForInput","checkPointerDown","checkPointerOver","priorityID","swapTarget","newTarget","_pointerOutHandler","_pointerOverHandler","leave","doubleTap","currentPointers","addClickTrampoline","callbackArgs","trampolines","trampoline","_releasedHandler","resetMovement","PointerModes","touchStartCallback","touchMoveCallback","touchEndCallback","touchEnterCallback","touchLeaveCallback","touchCancelCallback","_onTouchStart","_onTouchMove","_onTouchEnd","_onTouchEnter","_onTouchLeave","_onTouchCancel","onTouchStart","onTouchMove","onTouchEnd","onTouchEnter","onTouchLeave","onTouchCancel","consumeDocumentTouches","_documentTouchMove","changedTouches","InputHandler","useHandCursor","_setHandCursor","allowHorizontalDrag","allowVerticalDrag","snapOffset","snapOnDrag","snapOnRelease","snapX","snapY","snapOffsetX","snapOffsetY","pixelPerfectOver","pixelPerfectClick","pixelPerfectAlpha","draggable","boundsRect","boundsSprite","scaleLayer","dragOffset","dragFromCenter","dragStopBlocksInputUp","dragStartPoint","dragDistanceThreshold","dragTimeThreshold","downPoint","snapPoint","_dragPoint","_dragPhase","_pendingDrag","_dragTimePass","_dragDistancePass","_wasEnabled","_tempPoint","_pointerData","camX","camY","isOver","isOut","timeOver","timeOut","downDuration","onAddedToGroup","addedToGroup","onRemovedFromGroup","removedFromGroup","highestID","highestRenderID","includePixelPerfect","isPixelPerfect","pointerX","pointerY","pointerDown","pointerUp","pointerTimeDown","pointerTimeUp","pointerOver","pointerOut","pointerTimeOver","pointerTimeOut","pointerDragged","fastTest","checkPixel","_dx","_dy","startDrag","_draggedPointerID","updateDrag","sendEvent","onInputOver$dispatch","onInputOut$dispatch","onInputDown$dispatch","dragTimeElapsed","onInputUp$dispatch","stopDrag","fromStart","dragPoint","pointerData","pointerLocalCoord","globalToLocal","px","py","prevX","prevY","checkBoundsRect","checkBoundsSprite","onDragUpdate","justOver","delay","overDuration","justOut","enableDrag","lockCenter","pixelPerfect","alphaThreshold","disableDrag","boundsCenterLocalCoord","onDragStart$dispatch","globalToLocalX","grid","boundsFluid","scaleFluidInversed","globalToLocalY","globalCoord","onDragStop$dispatch","setDragLock","allowHorizontal","allowVertical","enableSnap","onDrag","onRelease","disableSnap","onChange","onError","boundOnChangeHandler","onChangeHandler","boundOnErrorHandler","onErrorHandler","pointerLockElement","pointerlockchange","pointerlockerror","requestPointerLock","mozRequestPointerLock","webkitRequestPointerLock","exitPointerLock","mozExitPointerLock","webkitExitPointerLock","request","exit","_gamepadIndexMap","_rawPads","_active","_gamepadSupportAvailable","webkitGetGamepads","webkitGamepads","userAgent","getGamepads","_prevRawGamepadTypes","_prevTimestamps","onConnectCallback","onDisconnectCallback","onDownCallback","onUpCallback","onAxisCallback","onFloatCallback","_ongamepadconnected","_gamepaddisconnected","_gamepads","SinglePad","addCallbacks","callbacks","onConnect","onDisconnect","onAxis","_onGamepadConnected","onGamepadConnected","_onGamepadDisconnected","onGamepadDisconnected","newPad","connect","removedPad","disconnect","_pollGamepads","pad1","pollStatus","pad2","pad3","pad4","rawGamepads","gamepadsChanged","_rawPad","singlePad","validConnections","rawIndices","padIndices","connected","rawPad","setDeadZones","deadZone","BUTTON_0","BUTTON_1","BUTTON_2","BUTTON_3","BUTTON_4","BUTTON_5","BUTTON_6","BUTTON_7","BUTTON_8","BUTTON_9","BUTTON_10","BUTTON_11","BUTTON_12","BUTTON_13","BUTTON_14","BUTTON_15","AXIS_0","AXIS_1","AXIS_2","AXIS_3","AXIS_4","AXIS_5","AXIS_6","AXIS_7","AXIS_8","AXIS_9","XBOX360_A","XBOX360_B","XBOX360_X","XBOX360_Y","XBOX360_LEFT_BUMPER","XBOX360_RIGHT_BUMPER","XBOX360_LEFT_TRIGGER","XBOX360_RIGHT_TRIGGER","XBOX360_BACK","XBOX360_START","XBOX360_STICK_LEFT_BUTTON","XBOX360_STICK_RIGHT_BUTTON","XBOX360_DPAD_LEFT","XBOX360_DPAD_RIGHT","XBOX360_DPAD_UP","XBOX360_DPAD_DOWN","XBOX360_STICK_LEFT_X","XBOX360_STICK_LEFT_Y","XBOX360_STICK_RIGHT_X","XBOX360_STICK_RIGHT_Y","PS3XC_X","PS3XC_CIRCLE","PS3XC_SQUARE","PS3XC_TRIANGLE","PS3XC_L1","PS3XC_R1","PS3XC_L2","PS3XC_R2","PS3XC_SELECT","PS3XC_START","PS3XC_STICK_LEFT_BUTTON","PS3XC_STICK_RIGHT_BUTTON","PS3XC_DPAD_UP","PS3XC_DPAD_DOWN","PS3XC_DPAD_LEFT","PS3XC_DPAD_RIGHT","PS3XC_STICK_LEFT_X","PS3XC_STICK_LEFT_Y","PS3XC_STICK_RIGHT_X","PS3XC_STICK_RIGHT_Y","padParent","_padParent","_prevTimestamp","_buttons","_buttonsLen","_axes","_axesLen","getButton","timestamp","rawButtonVal","isNaN","processButtonDown","processButtonUp","processButtonFloat","axes","processAxisChange","triggerCallback","disconnectingIndex","axis","axisCode","buttonValue","Key","keycode","_enabled","durationUp","keyCode","onHoldCallback","onHoldContext","_justDown","_justUp","processKeyDown","processKeyUp","upDuration","pressEvent","onPressCallback","_keys","_capture","_onKeyDown","_onKeyPress","_onKeyUp","_k","onPress","removeCallbacks","addKey","addKeyCapture","addKeys","removeKey","removeKeyCapture","createCursorKeys","up","KeyCode","processKeyPress","clearCaptures","String","fromCharCode","charCode","A","charCodeAt","B","C","D","E","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","ZERO","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","NUMPAD_0","NUMPAD_1","NUMPAD_2","NUMPAD_3","NUMPAD_4","NUMPAD_5","NUMPAD_6","NUMPAD_7","NUMPAD_8","NUMPAD_9","NUMPAD_MULTIPLY","NUMPAD_ADD","NUMPAD_ENTER","NUMPAD_SUBTRACT","NUMPAD_DECIMAL","NUMPAD_DIVIDE","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","F13","F14","F15","COLON","EQUALS","COMMA","UNDERSCORE","PERIOD","QUESTION_MARK","TILDE","OPEN_BRACKET","BACKWARD_SLASH","CLOSED_BRACKET","QUOTES","BACKSPACE","TAB","CLEAR","ENTER","SHIFT","CONTROL","ALT","CAPS_LOCK","ESC","SPACEBAR","PAGE_UP","PAGE_DOWN","END","HOME","PLUS","MINUS","INSERT","DELETE","HELP","NUM_LOCK","match","prop","Component","Angle","wrapAngle","Animation","play","frameRate","loop","killOnComplete","animations","AutoCull","autoCull","inCamera","checkWorldBounds","Bounds","container","alignTo","BringToTop","Core","install","components","previousPosition","Events","PhysicsBody","AnimationManager","LoadTexture","FixedToCamera","previousRotation","preUpdateChildren","fresh","_exists","P2JS","removeFromWorld","customRender","Crop","cropRect","_crop","updateCrop","resetFrame","oldX","oldY","oldW","oldH","_frame","Delta","deltaX","deltaZ","Destroy","onDestroy$dispatch","removeFrom","Video","onChangeSource","resizeFrame","BitmapText","_glyphs","_parent","_onDestroy","_onAddedToGroup","_onRemovedFromGroup","_onKilled","_onRevived","_onEnterBounds","_onOutOfBounds","_onInputOver","_onInputOut","_onInputDown","_onInputUp","_onDragStart","_onDragUpdate","_onDragStop","_onAnimationStart","_onAnimationComplete","_onAnimationLoop","onKilled","onRevived","onOutOfBounds","onEnterBounds","onInputOver","onInputOut","onInputDown","onInputUp","onDragStart","onDragStop","onAnimationStart","onAnimationComplete","onAnimationLoop","backing","_fixedToCamera","Health","health","maxHealth","damage","setHealth","heal","InCamera","InputEnabled","InWorld","outOfCameraBoundsKill","_outOfBoundsFired","onEnterBounds$dispatch","onOutOfBounds$dispatch","outOfBoundsKill","inWorld","LifeSpan","lifespan","onRevived$dispatch","onKilled$dispatch","stopAnimation","BitmapData","hasFrameData","loadFrameData","getFrameData","frameData","Tilemap","TilemapLayer","img","getImage","trimmed","spriteSourceSizeX","spriteSourceSizeY","sourceSizeW","sourceSizeH","refreshTexture","frameName","Overlap","overlap","_reset","Reset","ScaleMinMax","scaleMin","scaleMax","checkTransform","setScaleMinMax","Smoothed","existing","weapon","bulletClass","Weapon","createBullets","Image","creature","mesh","animation","useFlatData","tween","physicsGroup","SpriteBatch","audio","audioSprite","addSprite","tileSprite","rope","Rope","text","Text","overFrame","outFrame","downFrame","upFrame","Button","emitter","maxParticles","Arcade","Emitter","retroFont","font","characterWidth","characterHeight","chars","charsPerRow","xSpacing","ySpacing","xOffset","yOffset","RetroFont","bitmapText","tilemap","tileWidth","tileHeight","addToCache","uuid","addRenderTexture","video","url","bitmapData","addBitmapData","Tween","preUpdatePhysics","preUpdateLifeSpan","preUpdateInWorld","preUpdateCore","_onOverFrame","_onOutFrame","_onDownFrame","_onUpFrame","onOverSound","onOutSound","onDownSound","onUpSound","onOverSoundMarker","onOutSoundMarker","onDownSoundMarker","onUpSoundMarker","onOverMouseOnly","justReleasedPreventsOver","freezeFrames","forceOut","setFrames","onInputOverHandler","onInputOutHandler","onInputDownHandler","onInputUpHandler","STATE_OVER","STATE_OUT","STATE_DOWN","STATE_UP","clearFrames","setStateFrame","switchImmediately","frameKey","changeStateFrame","setStateSound","marker","soundKey","markerKey","Sound","AudioSprite","playStateSound","setSounds","overSound","overMarker","downSound","downMarker","outSound","outMarker","upSound","upMarker","setOverSound","setOutSound","setDownSound","setUpSound","fastSpriteBatch","ready","isRotated","childTransform","skipPool","ctx","imageData","FrameData","textureFrame","addFrame","Frame","disableTextureUpload","cls","_image","_pos","_size","_scale","_rotate","_alpha","prev","_anchor","_tempR","_tempG","_tempB","_circle","_swapCanvas","moveH","moveV","draw","getBase64","encoderOptions","toDataURL","onLoadCallback","onErrorCallback","onload","onerror","addImage","processPixelRGB","pixel","createColor","unpackPixel","getPixel32","setPixel32","processPixel","replaceRGB","r1","g1","r2","g2","region","packPixel","setHSL","bHaveH","bHaveS","bHaveL","HSLtoRGB","shiftHSL","red","green","blue","immediate","LITTLE_ENDIAN","setPixel","getPixel","getPixelRGB","hsl","hsv","getPixels","getFirstPixel","scan","newWidth","newHeight","getCanvas","op","copyTransform","copyRect","drawGroup","drawGroupProxy","drawFull","renderGraphics","shadow","blur","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","alphaMask","sourceRect","maskRect","blendSourceAtop","blendReset","extract","destination","prevFont","fillText","beginPath","arc","closePath","moveTo","lineTo","lineWidth","strokeStyle","stroke","polygon","textureLine","createPattern","blendSourceOver","blendSourceIn","blendSourceOut","blendDestinationOver","blendDestinationIn","blendDestinationOut","blendDestinationAtop","blendXor","blendAdd","blendMultiply","blendScreen","blendOverlay","blendDarken","blendLighten","blendColorDodge","blendColorBurn","blendHardLight","blendSoftLight","blendDifference","blendExclusion","blendHue","blendSaturation","blendColor","blendLuminosity","copyBitmapData","destRowStart","getSmoothingEnabled","setSmoothingEnabled","getTransform","translateX","translateY","skewX","skewY","EarCut","Triangulate","holeIndices","dim","hasHoles","outerLen","outerNode","linkedList","triangles","eliminateHoles","earcutLinked","clockwise","last","sum","insertNode","filterPoints","again","steiner","removeNode","ear","pass","indexCurve","isEarHashed","isEar","cureLocalIntersections","splitEarcut","pointInTriangle","minTX","minTY","maxTX","maxTY","minZ","zOrder","maxZ","nextZ","prevZ","locallyInside","isValidDiagonal","splitPolygon","queue","getLeftmost","compareX","eliminateHole","hole","findHoleBridge","hx","hy","qx","tan","tanMin","sortLinked","q","tail","numMerges","pSize","qSize","inSize","leftmost","ax","ay","bx","by","intersectsPolygon","middleInside","q1","q2","Node","an","bp","stencilBufferLimit","lastIndex","clearDirty","graphicsDataPool","switchMode","buildPoly","buildComplexPoly","buildLine","buildRectangle","buildCircle","buildRoundedRectangle","upload","WebGLGraphicsData","rectData","fillColor","fillAlpha","verts","vertPos","tempPoints","rrectData","recPoints","quadraticBezierCurve","vecPos","fromX","fromY","cpX","cpY","toX","toY","xa","ya","xb","yb","getPt","n1","n2","perc","circleData","seg","totalSegs","firstPoint","lastPoint","midPointX","midPointY","unshift","p1x","p1y","p2x","p2y","p3x","p3y","perpx","perpy","perp2x","perp2y","perp3x","perp3y","dist","indexCount","indexStart","lineColor","lineAlpha","glPoints","glIndicies","updateGraphicsTint","_fillTint","_lineTint","strokeRect","ox","oy","xe","ye","xm","ym","bezierCurveTo","maxRadius","quadraticCurveTo","tintR","tintG","tintB","GraphicsData","currentPath","boundsPadding","_localBounds","_boundsDirty","webGLDirty","cachedSpriteDirty","updateLocalBounds","drawTriangle","cull","triangle","cameraToFace","ab","faceNormal","drawPolygon","drawTriangles","point1","point2","point3","lineStyle","drawShape","cpX2","cpY2","dt","dt2","dt3","t2","t3","arcTo","mm","dd","cc","tt","k1","k2","j1","j2","qy","anticlockwise","segments","sweep","segs","startX","startY","filling","theta","theta2","cTheta","sTheta","segMinus","remainder","drawRoundedRect","drawCircle","drawEllipse","path","canvasBuffer","updateCachedSpriteTexture","_prevTint","tempPoint","getVisualBounds","cachedSprite","destroyCachedSprite","textureBuffer","tempMatrix","renderXY","renderRawXY","updateBase","realResolution","webGLPixels","Uint8Array","readPixels","tempCanvas","canvasData","textBounds","strokeColors","fontStyles","fontWeights","autoRound","useAdvancedWrap","splitRegExp","characterLimitSize","characterLimitSuffix","_testString","_res","_text","_fontComponents","_lineSpacing","_charCount","setStyle","updateText","setShadow","shadowStroke","shadowFill","newStyle","boundsAlignH","boundsAlignV","strokeThickness","wordWrap","wordWrapWidth","maxLines","tabs","fontProperties","fontToComponents","fontStyle","fontVariant","fontWeight","fontSize","componentsToFont","testString","outputText","substring","runWordWrap","lines","lineWidths","maxLineWidth","determineFontProperties","drawnLines","measureLine","measureText","tab","section","snapToCeil","linePositionX","linePositionY","lineHeight","lineSpacing","textBaseline","lineCap","lineJoin","ascent","updateLine","updateShadow","strokeText","renderTabLine","snap","lineLength","letter","clearColors","clearFontValues","addColor","addStrokeColor","addFontStyle","addFontWeight","weight","precalculateWordWrap","advancedWordWrap","basicWordWrap","linesCount","currentLineWidth","words","word","wordWithSpace","wordWidth","newWord","secondPart","spaceLeft","wordWidthWithSpace","updateFont","family","exec","fontFamily","setText","parseList","setTextBounds","properties","fontPropertiesCache","fontPropertiesContext","testStringMetrics","actualBoundingBoxAscent","asc","descent","desc","actualBoundingBoxDescent","mxWidth","setCharacterLimit","characterLimit","suffix","fontPropertiesCanvas","createElement","textWidth","textHeight","_prevAnchor","_maxWidth","_data","getBitmapFont","_font","_fontSize","_align","_letterSpacing","_tint","sourceWidth","sourceHeight","scanLine","lastSpace","wrappedWidth","prevCharCode","maxWidth","test","charAt","charData","kerning","xAdvance","letterSpacing","cleanText","purgeGlyphs","kept","checkImageKey","characterSpacingX","characterSpacingY","characterPerRow","multiLine","autoUpperCase","customSpacingX","customSpacingY","fixedWidth","fontSet","grabData","currentX","currentY","updateFrameData","stamp","ALIGN_LEFT","ALIGN_RIGHT","ALIGN_CENTER","TEXT_SET1","TEXT_SET2","TEXT_SET3","TEXT_SET4","TEXT_SET5","TEXT_SET6","TEXT_SET7","TEXT_SET8","TEXT_SET9","TEXT_SET10","TEXT_SET11","setFixedWidth","lineAlignment","content","characterSpacing","allowLowerCase","buildRetroFontText","getLongestLine","pasteLine","longestLine","removeUnsupportedCharacters","stripCR","newString","aChar","code","updateOffset","diffX","diffY","frames","getFrames","newText","toUpperCase","_hasUpdateAnimation","_updateAnimationCallback","canvasPadding","drawMode","updateAnimation","nextPoint","perpLength","num","_vertexBuffer","_initWebGL","_renderStrip","_indexBuffer","_uvBuffer","_colorBuffer","_renderCanvasTriangleStrip","_renderCanvasTriangles","_renderCanvasDrawTriangle","index0","textureSource","textureWidth","textureHeight","u0","u1","u2","v0","v1","v2","paddingX","paddingY","normX","normY","deltaA","deltaB","deltaC","deltaD","deltaE","deltaF","renderStripFlat","strip","rawX","rawY","_updateAnimation","difference","_scroll","textureDebug","tilePattern","frameWidth","frameHeight","autoScroll","stopScroll","generateTilingTexture","needsUpdate","restartBatch","sessionBlendMode","forcePowerOfTwo","targetWidth","targetHeight","getNextPowerOfTwo","idx","pool","getTotal","getFree","deviceReadyAt","initialized","desktop","iOSVersion","node","nodeWebkit","electron","ejecta","crosswalk","android","chromeOS","linux","macOS","windows","windowsPhone","canvasBitBltShift","file","fileSystem","localStorage","worker","css3D","typedArray","vibration","getUserMedia","quirksMode","arora","chrome","chromeVersion","epiphany","firefox","firefoxVersion","ieVersion","trident","tridentVersion","mobileSafari","midori","opera","safari","safariVersion","webApp","silk","audioData","ogg","opus","mp3","wav","m4a","webm","dolby","oggVideo","h264Video","mp4Video","webmVideo","vp9Video","hlsVideo","iPhone","iPhone4","iPad","pixelRatio","littleEndian","support32bit","fullscreen","requestFullscreen","cancelFullscreen","fullscreenKeyboard","onInitialized","nonPrimer","readyCheck","_readyCheck","_monitor","_queue","readyState","setTimeout","_initialize","vita","kindle","RegExp","$1","_checkOS","$3","standalone","process","require","versions","_checkBrowser","AudioContext","webkitAudioContext","audioElement","canPlayType","major","minor","$2","_checkAudio","videoElement","_checkVideo","has3d","el","transforms","webkitTransform","OTransform","msTransform","MozTransform","insertBefore","getComputedStyle","getPropertyValue","_checkCSS3D","devicePixelRatio","Int8Array","Uint8ClampedArray","Int32Array","createImageData","_checkIsUint8ClampedImageData","vibrate","webkitVibrate","mozVibrate","msVibrate","CanvasRenderingContext2D","getItem","File","FileReader","FileList","Blob","requestFileSystem","WebGLRenderingContext","Worker","compatMode","webkitGetUserMedia","mozGetUserMedia","msGetUserMedia","oGetUserMedia","URL","webkitURL","mozURL","msURL","_checkFeatures","s1","s2","_checkCanvasFeatures","fs","cfs","Element","ALLOW_KEYBOARD_INPUT","_checkFullScreenSupport","documentElement","maxTouchPoints","PointerEvent","MSPointerEvent","msPointerEnabled","pointerEnabled","canPlayAudio","canPlayVideo","needsTouchUnlock","fakeiOSTouchLock","matches","display","msTouchAction","overflowHidden","getElementById","overflow","appendChild","parentNode","vendor","prefix","types","msInterpolationMode","setImageRenderingBicubic","vendors","requestAnimationFrame","cancelAnimationFrame","_isSetTimeOut","_onLoop","_timeOutID","updateSetTimeout","updateRAF","rafTime","timeToCall","clearTimeout","isSetTimeOut","isRAF","DEG_TO_RAD","RAD_TO_DEG","degrees","radians","fuzzyLessThan","fuzzyGreaterThan","fuzzyCeil","fuzzyFloor","average","shear","snapTo","gap","snapToFloor","roundTo","place","pow","floorTo","ceilTo","isFinite","rotateToAngle","currentAngle","targetAngle","getShortestAngle","angle1","angle2","angleBetween","angleBetweenY","angleBetweenPoints","angleBetweenPointsY","reverseAngle","angleRad","normalizeAngle","maxAdd","minSub","wrapValue","isOdd","isEven","minProperty","maxProperty","linearInterpolation","bezierInterpolation","bernstein","catmullRomInterpolation","catmullRom","factorial","res","p3","roundAwayFromZero","sinCosGenerator","sinAmplitude","cosAmplitude","frequency","frq","cosTable","sinTable","hypot","distanceSq","distancePow","clampBottom","within","mapLinear","smoothstep","smootherstep","sign","percent","seeds","s0","sow","integer","real","integerInRange","realInRange","normal","ary","weightedPick","QuadTree","maxObjects","maxLevels","objects","nodes","_empty","subWidth","subHeight","populate","populateHandler","insert","retrieve","returnObjects","_tweens","_add","easeMap","Power0","Easing","Power1","Power2","Power3","Power4","Linear","None","Quad","Quadratic","Out","Cubic","Quart","Quartic","Quint","Quintic","Sine","Sinusoidal","Expo","Exponential","Circ","Circular","Elastic","Back","Bounce","Quad.easeIn","In","Cubic.easeIn","Quart.easeIn","Quint.easeIn","Sine.easeIn","Expo.easeIn","Circ.easeIn","Elastic.easeIn","Back.easeIn","Bounce.easeIn","Quad.easeOut","Cubic.easeOut","Quart.easeOut","Quint.easeOut","Sine.easeOut","Expo.easeOut","Circ.easeOut","Elastic.easeOut","Back.easeOut","Bounce.easeOut","Quad.easeInOut","InOut","Cubic.easeInOut","Quart.easeInOut","Quint.easeInOut","Sine.easeInOut","Expo.easeInOut","Circ.easeInOut","Elastic.easeInOut","Back.easeInOut","Bounce.easeInOut","_pauseAll","_resumeAll","pendingDelete","_manager","addTweens","numTweens","deltaTotal","isTweening","checkIsRunning","some","_pause","_resume","pauseAll","resumeAll","manager","timeline","timeScale","repeatCounter","onStart","onLoop","onRepeat","onChildComplete","onComplete","chainedTween","isPaused","_onUpdateCallback","_onUpdateCallbackContext","_pausedTime","_hasStarted","ease","yoyo","Default","TweenData","vEnd","loadValues","updateTweenData","repeatDelay","yoyoDelay","easing","interpolation","repeatAll","chain","startTime","status","PENDING","RUNNING","LOOPED","COMPLETE","generateData","vStart","vStartCache","vEndCache","repeatTotal","inReverse","easingFunction","interpolationFunction","interpolationContext","isFrom","ms","fps","blob","reversed","elapsedMS","_desiredFps","suggestedFps","desiredFps","advancedTiming","updates","renders","ups","rps","fpsMin","fpsMax","msMin","msMax","pauseDuration","timeExpected","Timer","_frameCount","_elapsedAccumulator","_started","_timeLastSecond","_pauseStarted","_timers","timer","autoDestroy","previousDateNow","previousNow","updateAdvancedTiming","updateTimers","interval","elapsedSince","since","elapsedSecondsSince","running","expired","nextTick","_pauseTotal","_now","_marked","_diff","_newTick","MINUTE","SECOND","HALF","QUARTER","repeatCount","tick","TimerEvent","clearEvents","clearPendingEvents","adjustEvents","baseTime","currentFrame","currentAnim","updateIfVisible","isLoaded","_frameData","_anims","_outputFrames","anim","copyFrameData","useNumericIndex","getFrameIndexes","validateFrames","checkFrameName","isPlaying","getAnimation","refreshFrame","gotFrame","getFrame","getFrameByName","_frameIndex","_frames","loopCount","isFinished","_pauseStartTime","_frameDiff","_frameSkip","onUpdate","isReversed","_timeLastFrame","_timeNextFrame","updateCurrentFrame","onAnimationStart$dispatch","reverseOnce","frameId","useLocalFrameIndex","frameIndex","directionalOffset","dispatchComplete","onAnimationComplete$dispatch","diff","onAnimationLoop$dispatch","signalUpdate","fromPlay","generateFrameNames","zeroPad","spriteSourceSizeW","spriteSourceSizeH","setTrim","actualWidth","actualHeight","destX","destY","destWidth","destHeight","getRect","_frameNames","getFrameRange","AnimationParser","spriteSheet","frameMax","margin","spacing","skipFrames","row","column","totalAvailable","lastAvailable","firstFrame","lastFrame","JSONData","json","newFrame","filename","sourceSize","spriteSourceSize","JSONDataPyxel","layers","tileheight","tilewidth","tiles","JSONDataHash","XMLData","xml","getElementsByTagName","frameX","frameY","autoResolveURL","binary","bitmapFont","compressedTexture","_urlMap","_urlResolver","_urlTemp","onSoundUnlock","_cacheMap","TEXTURE","SOUND","PHYSICS","BINARY","BITMAPFONT","JSON","XML","SHADER","RENDER_TEXTURE","DATA","_pendingCount","_addImages","DEFAULT_KEY","DEFAULT_SRC","MISSING","MISSING_KEY","MISSING_SRC","READY_TIMEOUT","addCompressedTextureMetaData","extension","arrayBuffer","removeImage","LoaderParser","fileFormat","_resolveURL","addCanvas","addImageAsync","_removePending","_addPending","addDefaultImage","addMissingImage","addSound","audioTag","decoded","isDecoding","touchLocked","addText","addPhysicsData","addTilemap","mapData","addBinary","binaryData","addBitmapFont","atlasData","atlasType","jsonBitmapFont","xmlBitmapFont","addBitmapFontFromAtlas","atlasKey","atlasFrame","dataKey","dataType","fontData","getBaseTexture","getJSON","getXML","addJSON","addXML","addVideo","isBlob","addShader","addSpriteSheet","addTextureAtlas","TEXTURE_ATLAS_XML_STARLING","TEXTURE_ATLAS_JSON_PYXEL","addData","reloadSound","getSound","reloadSoundComplete","updateSound","decodedSound","isSoundDecoded","isSoundReady","checkKey","checkURL","checkCanvasKey","checkDataKey","checkTextureKey","checkSoundKey","checkTextKey","checkPhysicsKey","checkTilemapKey","checkBinaryKey","checkBitmapDataKey","checkBitmapFontKey","checkJSONKey","checkXMLKey","checkVideoKey","checkShaderKey","checkRenderTextureKey","full","getTextureFrame","getSoundData","getText","getPhysicsData","fixtureKey","fixtures","fixture","getTilemapData","getBinary","getBitmapData","getVideo","getShader","getRenderTexture","getData","getFrameCount","getFrameByIndex","getURL","getKeys","removeCanvas","destroyBaseTexture","removeSound","removeText","removePhysics","removeTilemap","removeBinary","removeBitmapData","removeBitmapFont","removeJSON","removeXML","removeVideo","removeShader","removeRenderTexture","removeSpriteSheet","removeTextureAtlas","removeData","baseURL","destroyItem","readyTimeout","_ready","_checkReady","isLoading","preloadSprite","crossOrigin","headers","requestedWith","onLoadStart","onBeforeLoadComplete","onLoadComplete","onPackComplete","onFileStart","onFileComplete","onFileError","enableParallel","maxParallelDownloads","_withSyncPointDepth","_fileList","_flightQueue","_processingHead","_fileLoadStarted","_totalPackCount","_totalFileCount","_loadedPackCount","_loadedFileCount","TEXTURE_ATLAS_JSON_ARRAY","TEXTURE_ATLAS_JSON_HASH","PHYSICS_LIME_CORONA_JSON","PHYSICS_PHASER_JSON","mediaTypes","avif","bmp","gif","ico","jpg","jpeg","png","svg","tif","tiff","webp","getMediaType","_getSource","setPreloadSprite","checkKeyExists","getAssetIndex","bestFound","loaded","loading","getAsset","fileIndex","addToFileList","overwrite","syncPoint","currentFile","replaceInFileList","pack","imageset","sources","defaultSource","imageFromBitmapData","imageFromGrid","imageFromTexture","pixelWidth","pixelHeight","palette","exkey","truecolor","images","urls","script","spritesheet","autoDecode","noAudio","jsonURL","jsonData","audiosprite","loadEvent","asBlob","CSV","TILED_JSON","tilemapCSV","tilemapTiledJSON","LIME_CORONA_JSON","textureURL","atlasURL","parseXml","atlasJSONArray","atlas","atlasJSONHash","atlasXML","withSyncPoint","addSyncPoint","asset","removeFile","updateProgress","processLoadQueue","finishedLoading","requestUrl","requestObject","progress","syncblock","inflightLimit","processPack","loadFile","abnormal","asyncComplete","errorMessage","packData","transformUrl","xhrLoad","fileComplete","loadImageTag","loadPictureTag","getAudioURL","usingWebAudio","usingAudioTag","loadAudioTag","fileError","getVideoURL","loadVideoTag","jsonLoadComplete","xmlLoadComplete","csvLoadComplete","picElm","sourceElm","setAttribute","currentSrc","controls","autoplay","playsInline","videoLoadEvent","canplay","Audio","playThroughEvent","xhr","XMLHttpRequest","open","responseType","setRequestHeader","message","send","videoType","uri","lastIndexOf","audioType","reason","loadNext","responseText","response","decode","language","defer","head","contentType","DOMParser","parseFromString","ActiveXObject","async","loadXML","totalLoadedFiles","totalLoadedPacks","progressFloat","info","common","getAttribute","letters","char","kernings","second","finalizeBitmapFont","_face","_lineHeight","_id","_xoffset","_yoffset","_xadvance","_second","_first","_amount","bitmapFontData","pvr","uintArray","byteArray","pvrHeader","pixelFormat","flags","colorSpace","channelType","depth","numberOfSurfaces","numberOfFaces","numberOfMipmaps","metaDataSize","byteLength","dds","ddsHeader","pitch","mipmapCount","formatSize","formatFlag","formatFourCC","formatBitCount","formatRBitMask","formatGBitMask","formatBBitMask","formatABitMask","caps1","caps2","caps3","caps4","reserved2","DXGIFormat","resourceDimension","miscFlag","arraySize","ktx","ktxHeader","imageSizeOffset","imageSize","glInternalFormat","endianness","glType","glTypeSize","glFormat","glBaseInternalFormat","pixelDepth","numberOfArrayElements","numberOfMipmapLevels","bytesOfKeyValueData","keyAndValueByteSize","pkm","pkmHeader","originalWidth","originalHeight","autoplayKey","sounds","spritemap","addMarker","connectToMaster","markers","totalDuration","currentTime","durationMS","stopTime","pausedPosition","pausedTime","currentMarker","fadeTween","pendingPlayback","override","allowMultiple","playOnce","externalNode","masterGainNode","gainNode","_sound","_globalVolume","_markedToDelete","_pendingStart","_removeFromSoundManager","_sourceId","masterGain","createGain","createGainNode","gain","soundHasUnlocked","onDecoded","onPlay","onStop","onMute","onMarkerComplete","_volume","_buffer","_muted","_tempMarker","_tempPosition","_tempVolume","_tempPause","_muteVolume","_tempLoop","_onDecodedEventDispatched","removeMarker","onEndedHandler","_removeOnEndedHandler","_disconnectSource","isDecoded","loopFull","forceRestart","_stopSourceAndDisconnect","_createSourceAndConnect","_addOnEndedHandler","_startSource","muted","mute","prevMarker","fadeTo","fadeOut","fadeComplete","updateGlobalVolume","globalVolume","createBufferSource","when","onended","onSoundDecode","onVolumeChange","onUnMute","onTouchUnlock","baseLatency","channels","_codeMuted","_unlockSource","_sounds","_watchList","_watching","_watchCallback","_watchContext","_onStateChange","disableAudio","disableWebAudio","audioContext","onstatechange","setTouchLock","unlock","setTouchUnlock","webAudioIsSuspended","resumeWebAudio","resumeWebAudioIfSuspended","noteOn","stopAll","soundData","decodeAudioData","setDecodedCallback","files","removeByKey","close","dom","minWidth","minHeight","maxHeight","forceLandscape","forcePortrait","incorrectOrientation","_pageAlignHorizontally","_pageAlignVertically","onOrientationChange","enterIncorrectOrientation","leaveIncorrectOrientation","hasPhaserSetFullScreen","fullScreenTarget","_createdFullScreenTarget","onFullScreenInit","onFullScreenChange","onFullScreenError","screenOrientation","getScreenOrientation","scaleFactor","scaleFactorInversed","aspectRatio","sourceAspectRatio","windowConstraints","compatibility","supportsFullScreen","orientationFallback","noMargins","scrollTo","forceMinimumDocumentHeight","canExpandParent","clickTrampoline","_scaleMode","NO_SCALE","_fullScreenScaleMode","parentIsWindow","parentScaleFactor","trackParentInterval","onSizeChange","onResize","onResizeContext","_pendingScaleMode","_fullScreenRestore","_gameSize","_userScaleFactor","_userScaleTrim","_lastUpdate","_updateThrottle","_updateThrottleReset","_parentBounds","_tempBounds","_lastReportedCanvasSize","_lastReportedGameSize","_booted","setupScale","EXACT_FIT","SHOW_ALL","RESIZE","USER_SCALE","MODES","compat","_orientationChange","orientationChange","_windowResize","windowResize","_fullScreenChange","fullScreenChange","_fullScreenError","fullScreenError","_gameResumed","setGameSize","FlexGrid","fullScreenScaleMode","pageAlignHorizontally","alignH","pageAlignVertically","alignV","scaleH","scaleV","setUserScale","trimH","trimV","getParentBounds","visualBounds","updateDimensions","queueUpdate","currentScaleMode","hScale","vScale","hTrim","vTrim","setResizeCallback","signalSizeChange","setMinMax","prevThrottle","prevWidth","prevHeight","boundsChanged","orientationChanged","updateOrientationState","updateLayout","throttle","updateScalingAndBounds","forceOrientation","classifyOrientation","orientation","previousOrientation","previouslyIncorrect","isLandscape","isPortrait","changed","correctnessChanged","scrollTop","setMaximum","setExactFit","isFullScreen","boundingParent","setShowAll","resetCanvas","reflowCanvas","reflowGame","layoutBounds","clientRect","getBoundingClientRect","parentRect","offsetParent","wc","windowBounds","alignCanvas","parentBounds","canvasBounds","currentEdge","targetEdge","marginLeft","marginRight","marginTop","marginBottom","cssWidth","cssHeight","expanding","multiplier","createFullScreenTarget","fsTarget","background","startFullScreen","allowTrampoline","cleanupCreatedTarget","initData","targetElement","navigationUI","stopFullScreen","prepScreenMode","enteringFullscreen","createdTarget","scaleSprite","letterBox","scaleX1","scaleY1","scaleX2","scaleY2","scaleOnWidth","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","bmd","columnWidth","renderShadow","currentColor","currentAlpha","_line","_rect","GEOM_AUTO","GEOM_RECTANGLE","GEOM_CIRCLE","GEOM_POINT","GEOM_LINE","GEOM_ELLIPSE","gameInfo","1","2","3","4","soundInfo","sourceId","ended","filled","rectangle","geom","cameraInfo","hideIfUp","downColor","upColor","inactiveColor","mx","my","worldX","worldY","_pointerButtonIcon","btn","spriteInputInfo","justDown","justUp","inputInfo","showDetails","_inputHandler","free","inputHandler","_inputHandlerStatusIcon","_inputHandlerCaptureIcon","spriteBounds","ropeSegments","segment","spriteInfo","spriteCoords","lineInfo","forceType","ellipse","quadTree","quadtree","Body","NINJA","Ninja","BOX2D","Box2D","renderBody","bodyInfo","renderBodyInfo","box2d","box2dWorld","renderDebugDraw","box2dBody","displayList","canvasPool","phaser","factor","loader","box","scrollY","scrollLeft","scrollX","clientTop","clientLeft","cushion","calibrate","coords","getAspectRatio","inLayoutViewport","primaryFallback","screen","mozOrientation","msOrientation","matchMedia","documentBounds","pageXOffset","pageYOffset","clientWidth","clientHeight","offsetWidth","scrollWidth","offsetHeight","scrollHeight","getByKey","randomIndex","removeRandomItem","newLength","transposeMatrix","sourceRowCount","sourceColCount","rotateMatrix","findClosest","arr","NaN","low","high","rotateRight","rotateLeft","numberArray","numberArrayStep","LinkedList","entity","palettes","0","5","6","7","8","9","PALETTE_ARNE","PALETTE_JMP","PALETTE_CGA","PALETTE_C64","PALETTE_JAPANESE_MACHINE","boundsCustom","boundsFull","boundsNone","positionCustom","positionFluid","positionFull","positionNone","scaleCustom","scaleFluid","scaleFull","scaleNone","customWidth","customHeight","customOffsetX","customOffsetY","ratioH","ratioV","createCustomLayer","layer","FlexLayer","createFluidLayer","createFullLayer","createFixedLayer","persist","fitSprite","topLeft","topMiddle","topRight","bottomLeft","bottomMiddle","bottomRight","RED","ORANGE","YELLOW","GREEN","AQUA","BLUE","VIOLET","WHITE","BLACK","GRAY","RGBtoHSL","RGBtoHSV","fromRGBA","toRGBA","toABGR","RGBArrayToHex","rgb","hueToColor","HSVtoRGB","color32","getColor","getColor32","RGBtoString","componentToHex","hexToRGB","hex","hexToColor","webToColor","web","tempColor","getRGB","HSVColorWheel","HSLColorWheel","interpolateColor","color1","color2","currentStep","src1","src2","hsv1","hsv2","dh","h3","interpolateColorWithRGB","or","og","ob","interpolateRGB","getRandomColor","getWebRGB","getAlpha","getAlphaFloat","getRed","getGreen","getBlue","blendNormal","blendAverage","blendSubtract","blendNegation","blendLinearDodge","blendLinearBurn","blendLinearLight","blendVividLight","blendPinLight","blendHardMix","blendReflect","blendGlow","blendPhoenix","arcade","ninja","chipmunk","matter","CHIPMUNK","MATTERJS","P2","Matter","startSystem","system","enableAABB","emitters","ID","onAccess","onTimeout","playWhenUnlocked","timeout","videoStream","isStreaming","retryLimit","retry","retryInterval","_retryID","_pending","_pendingChangeSource","_autoplay","_endCallback","_playCallback","_video","createVideoFromBlob","videoWidth","videoHeight","createVideoFromURL","snapshot","connectToMediaStream","stream","startMediaStream","captureAudio","captureVideo","removeVideoElement","getUserMediaTimeout","mediaDevices","then","getUserMediaSuccess","catch","getUserMediaError","mozSrcObject","srcObject","createObjectURL","onloadeddata","checkStream","checkVideoProgress","change","playbackRate","setPause","setResume","playHandler","getTracks","track","playing","changeSource","grab","hasChildNodes","firstChild","removeAttribute","canUseNewCanvasBlendModes"],"mappings":"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","file":"phaser-no-physics.min.js"} \ No newline at end of file +{"version":3,"sources":["phaser-no-physics.js"],"names":["root","this","PIXI","DisplayObject","position","Point","scale","pivot","rotation","alpha","visible","hitArea","renderable","parent","worldAlpha","worldTransform","Phaser","Matrix","worldPosition","worldScale","worldRotation","filterArea","_sr","_cr","_bounds","Rectangle","_currentBounds","_mask","_cacheAsBitmap","_cacheIsDirty","prototype","constructor","destroy","children","i","length","_destroyCachedSprite","_destroyTintedTexture","updateTransform","game","p","world","a","b","c","d","tx","ty","pt","wt","Math","PI2","rotationCache","sin","cos","x","y","determ","r","sqrt","acos","s","HALF_PI","transformCallback","call","transformCallbackContext","preUpdate","generateTexture","resolution","scaleMode","renderer","bounds","getLocalBounds","renderTexture","RenderTexture","width","height","_tempMatrix","render","updateCache","_generateCachedSprite","toGlobal","apply","toLocal","from","applyInverse","_renderCachedSprite","renderSession","_cachedSprite","gl","Sprite","_renderWebGL","_renderCanvas","max","ceil","texture","resize","textureUnit","baseTexture","_enableMultiTextureToggle","textureIndex","undefined","tempFilters","_filters","filters","anchor","tintedTexture","CanvasPool","removeByCanvas","displayObjectUpdateTransform","Object","defineProperties","get","set","value","worldVisible","item","mask","isMask","Array","isArray","passes","filterPasses","j","push","_filterBlock","target","blendMode","blendModes","MULTIPLY","NORMAL","cacheAsBitmap","DisplayObjectContainer","ignoreChildInput","create","addChild","child","addChildAt","index","removeChild","splice","Error","swapChildren","child2","index1","getChildIndex","index2","indexOf","setChildIndex","currentIndex","getChildAt","removeChildAt","bringChildToTop","sendChildToBack","removeChildren","beginIndex","endIndex","range","removed","displayObjectContainerUpdateTransform","getBounds","targetCoordinateSpace","isTargetCoordinateSpaceDisplayObject","isTargetCoordinateSpaceThisOrParent","contains","matrixCache","identityMatrix","childBounds","childMaxX","childMaxY","minX","Infinity","minY","maxX","maxY","childVisible","w0","w1","h0","h1","x1","y1","x2","y2","x3","y3","x4","y4","targetCoordinateSpaceBounds","spriteBatch","flush","filterManager","pushFilter","stop","maskManager","pushMask","start","popMask","popFilter","defineProperty","_width","_height","defaultAnchor","Texture","emptyTexture","tint","cachedTint","shader","exists","hasLoaded","onTextureUpdate","frame","setTexture","destroyBase","skipRender","valid","matrix","temp","crop","currentBlendMode","context","globalCompositeOperation","blendModesCanvas","globalAlpha","smoothProperty","scaleModes","LINEAR","dx","trim","dy","shakeX","shakeY","cw","ch","rotated","e","roundPixels","setTransform","requiresReTint","CanvasTinter","getTintedTexture","drawImage","cx","cy","source","initDefaultShaders","CompileVertexShader","shaderSrc","_CompileShader","VERTEX_SHADER","CompileFragmentShader","FRAGMENT_SHADER","shaderType","src","join","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","window","console","log","getShaderInfoLog","compileProgram","vertexSrc","fragmentSrc","fragmentShader","vertexShader","shaderProgram","createProgram","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","PixiShader","_UID","program","textureCount","firstRun","dirty","attributes","init","initMultitexShader","MAX_TEXTURES","getParameter","MAX_TEXTURE_IMAGE_UNITS","dynamicIfs","defaultVertexSrc","useProgram","uSamplerArray","getUniformLocation","projectionVector","offsetVector","dimensions","aVertexPosition","getAttribLocation","aTextureCoord","colorAttribute","aTextureIndex","indices","tempTexture","createTexture","activeTexture","TEXTURE0","bindTexture","TEXTURE_2D","texImage2D","RGB","UNSIGNED_BYTE","key","uniform1iv","uniforms","uniformLocation","initUniforms","initDefaultShader","uSampler","usingFilter","uniform","type","_init","initSampler2D","glMatrix","glValueLength","glFunc","uniformMatrix2fv","uniformMatrix3fv","uniformMatrix4fv","_glTextures","id","textureData","data","magFilter","minFilter","wrapS","CLAMP_TO_EDGE","wrapT","format","LUMINANCE","RGBA","repeat","REPEAT","pixelStorei","UNPACK_FLIP_Y_WEBGL","flipY","border","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","TEXTURE_WRAP_S","TEXTURE_WRAP_T","uniform1i","syncUniforms","transpose","z","w","_dirty","instances","updateTexture","deleteProgram","PixiFastShader","uMatrix","aPositionCoord","aScale","aRotation","StripShader","translationMatrix","attribute","PrimitiveShader","tintColor","ComplexPrimitiveShader","color","glContexts","WebGLRenderer","config","defaultRenderer","extensions","WEBGL","transparent","autoResize","preserveDrawingBuffer","clearBeforeRender","powerPreference","view","canvas","_contextOptions","antialias","failIfMajorPerformanceCaveat","premultipliedAlpha","stencil","projection","offset","shaderManager","WebGLShaderManager","WebGLSpriteBatch","WebGLMaskManager","WebGLFilterManager","stencilManager","WebGLStencilManager","blendModeManager","WebGLBlendModeManager","currentBatchedTextures","drawCount","maxTextureAvailableSpace","initContext","mapBlendModes","getContext","maxTextures","maxTextureSize","MAX_TEXTURE_SIZE","glContextId","disable","DEPTH_TEST","CULL_FACE","enable","BLEND","setContext","compression","etc1","getExtension","pvrtc","s3tc","ETC1","PVRTC","S3TC","setTexturePriority","textureNameCollection","clampPot","potSize","imageCache","cache","_cache","image","imageName","base","warn","stage","contextLost","viewport","bindFramebuffer","FRAMEBUFFER","clearColor","_bgColor","g","clear","COLOR_BUFFER_BIT","camera","_shake","renderDisplayObject","postRender","displayObject","buffer","setBlendMode","begin","end","style","updateCompressedTexture","textureMetaData","compressedTexImage2D","glExtensionFormat","NEAREST","mipmap","isPowerOfTwo","LINEAR_MIPMAP_LINEAR","NEAREST_MIPMAP_NEAREST","generateMipmap","_powerOf2","compressionAlgorithm","UNPACK_PREMULTIPLY_ALPHA_WEBGL","remove","blendModesWebGL","modes","ONE","ONE_MINUS_SRC_ALPHA","ADD","SRC_ALPHA","DST_ALPHA","DST_COLOR","SCREEN","OVERLAY","DARKEN","LIGHTEN","COLOR_DODGE","COLOR_BURN","HARD_LIGHT","SOFT_LIGHT","DIFFERENCE","EXCLUSION","HUE","SATURATION","COLOR","LUMINOSITY","getMaxTextureUnit","enableMultiTexture","textureArray","blendModeWebGL","blendFunc","maskData","WebGLGraphics","updateGraphics","_webGL","pushStencil","popStencil","stencilStack","reverse","count","graphics","webGLData","bindGraphics","STENCIL_TEST","STENCIL_BUFFER_BIT","level","colorMask","stencilFunc","ALWAYS","stencilOp","KEEP","INVERT","mode","drawElements","TRIANGLE_FAN","UNSIGNED_SHORT","EQUAL","DECR","INCR","TRIANGLE_STRIP","_currentGraphics","complexPrimitiveShader","setShader","uniform1f","toArray","uniform2f","uniform3fv","Color","hexToRGBArray","bindBuffer","ARRAY_BUFFER","vertexAttribPointer","FLOAT","primitiveShader","ELEMENT_ARRAY_BUFFER","indexBuffer","pop","maxAttibs","attribState","tempAttribState","stack","defaultShader","fastShader","stripShader","creatureShader","CreatureShader","setAttribs","attribs","attribId","enableVertexAttribArray","disableVertexAttribArray","_currentId","currentShader","vertSize","size","vertexSize","numVerts","numIndices","vertices","ArrayBuffer","positions","Float32Array","colors","Uint32Array","Uint16Array","lastIndexCount","drawing","currentBatchSize","currentBaseTexture","textures","shaders","sprites","Filter","vertexBuffer","createBuffer","bufferData","STATIC_DRAW","DYNAMIC_DRAW","sprite","uvs","_uvs","aX","aY","a0","b0","c0","d0","_w1","_w0","_updateUvsInverted","x0","y0","renderTilingSprite","tilingTexture","TextureUvs","h","tilePosition","tileScaleOffset","offsetX","offsetY","scaleX","tileScale","scaleY","nextTexture","nextBlendMode","nextShader","stride","bufferSubData","subarray","batchSize","blendSwap","shaderSwap","skip","renderBatch","startIndex","TRIANGLES","deleteBuffer","WebGLFastSpriteBatch","maxSize","renderSprite","filterStack","texturePool","initShaderBuffers","filterBlock","_filterArea","_previous_stencil_mgr","filter","FilterTexture","padding","frameBuffer","_glFilterTexture","vertexArray","uvBuffer","uvArray","inputTexture","outputTexture","filterPass","applyFilterPass","sizeX","sizeY","currentFilter","colorBuffer","colorArray","_fbErrors","36054","36055","36057","36061","_CreateFramebuffer","fbStatus","framebuffer","createFramebuffer","depthStencilBuffer","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","framebufferRenderbuffer","DEPTH_STENCIL_ATTACHMENT","renderBuffer","framebufferTexture2D","COLOR_ATTACHMENT0","checkFramebufferStatus","FRAMEBUFFER_COMPLETE","error","targetTexture","DEFAULT","renderbufferStorage","DEPTH_STENCIL","deleteFramebuffer","deleteTexture","CanvasBuffer","clearRect","CanvasMaskManager","save","cacheAlpha","transform","CanvasGraphics","renderGraphicsMask","clip","restore","tintMethod","tintWithMultiply","fillStyle","toString","substr","fillRect","tintWithPerPixel","rgbValues","pixelData","getImageData","pixels","canHandleAlpha","putImageData","CanvasRenderer","CANVAS","refresh","Canvas","getSmoothingPrefix","navigator","isCocoonJS","screencanvas","rgba","removeView","useNew","device","canUseMultiply","BaseTexture","complete","naturalWidth","naturalHeight","forceLoaded","unloadFromGPU","glTexture","fromCanvas","TextureSilentFail","noFrame","isTiling","requiresUpdate","setFrame","onBaseTextureLoaded","_updateUvs","tw","th","exports","module","define","amd","slice","VERSION","GAMES","AUTO","HEADLESS","WEBGL_MULTI","NONE","LEFT","RIGHT","UP","DOWN","SPRITE","BUTTON","IMAGE","GRAPHICS","TEXT","TILESPRITE","BITMAPTEXT","GROUP","RENDERTEXTURE","TILEMAP","TILEMAPLAYER","EMITTER","POLYGON","BITMAPDATA","CANVAS_FILTER","WEBGL_FILTER","ELLIPSE","SPRITEBATCH","RETROFONT","POINTER","ROPE","CIRCLE","RECTANGLE","LINE","MATRIX","POINT","ROUNDEDRECTANGLE","CREATURE","VIDEO","PENDING_ATLAS","HORIZONTAL","VERTICAL","LANDSCAPE","PORTRAIT","ANGLE_UP","ANGLE_DOWN","ANGLE_LEFT","ANGLE_RIGHT","ANGLE_NORTH_EAST","ANGLE_NORTH_WEST","ANGLE_SOUTH_EAST","ANGLE_SOUTH_WEST","TOP_LEFT","TOP_CENTER","TOP_RIGHT","LEFT_TOP","LEFT_CENTER","LEFT_BOTTOM","CENTER","RIGHT_TOP","RIGHT_CENTER","RIGHT_BOTTOM","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT","AudioBufferSourceNode","noteGrainOn","noteOff","trunc","floor","Function","bind","thisArg","boundArgs","arguments","TypeError","bound","args","concat","F","proto","arg","forEach","fun","t","len","CheapArray","assert","assign","varArgs","to","hasOwn","hasOwnProperty","nextSource","nextKey","Utils","defaults","keys","reverseString","string","split","getProperty","obj","name","parts","_getProperty","setProperties","props","setProperty","_setProperty","val","currentObj","chanceRoll","chance","random","randomChoice","choice1","choice2","parseDimension","dimension","f","parseInt","innerWidth","innerHeight","pad","str","dir","padlen","right","isPlainObject","nodeType","extend","options","copy","copyIsArray","clone","deep","mixinPrototype","mixin","replace","mixinKeys","o","childNodes","cloneNode","Circle","diameter","_diameter","_radius","circumference","PI","out","u","radius","setTo","copyFrom","copyTo","dest","distance","round","output","circumferencePoint","angle","asDegrees","sample","steps","startAngle","endAngle","linear","offsetPoint","point","left","top","bottom","equals","intersects","degToRad","intersectsRectangle","abs","halfWidth","halfHeight","xCornerDist","yCornerDist","intersectsLine","l","returnPoints","k","m","n","del","p0","p1","p0Exists","pointOnSegment","p1Exists","Ellipse","centerX","centerY","normx","normy","Line","fromPoints","fromSprite","startSprite","endSprite","useCenter","fromAngle","rotate","rotateAround","line","asSegment","result","intersectsPoints","reflect","midPoint","centerOn","add","pointOnLine","epsilon","fuzzyEqual","xMin","min","xMax","yMin","yMax","coordinatesOnLine","stepRate","results","sx","sy","err","e2","wrap","a1","a2","b1","b2","c1","c2","denom","uc","ua","ub","rect","empty","bx1","by1","bx2","by2","intersectionWithRectangle","self","edges","edgeIntersection","closestDistance","edge","normalAngle","fromArray","array","pos","newPos","translate","tx1","append","d1","identity","invert","setToPolar","azimuth","subtract","multiply","divide","clampX","clamp","clampY","equalsXY","fuzzyEquals","fuzzyEqualsXY","angleXY","atan2","radToDeg","atan","getMagnitude","getMagnitudeSq","setMagnitude","magnitude","normalize","isZero","limit","expand","dot","cross","perp","rperp","normalRightHand","negative","multiplyAdd","interpolate","project","amt","projectUnit","centroid","points","pointslength","parse","xProp","yProp","parseFloat","isPoint","sortClockwise","center","sort","det","Polygon","area","_points","closed","flattened","toNumberArray","flatten","inside","ix","iy","jx","jy","Number","MAX_VALUE","calculateArea","p2","avgHeight","floorAll","ceilAll","copyFromBounds","inflate","containsRect","intersection","intersectsRaw","tolerance","union","randomX","randomY","getPoint","sides","inflatePoint","createFromBounds","containsRaw","rx","ry","rw","rh","containsPoint","volume","sameDimensions","aabb","NEGATIVE_INFINITY","POSITIVE_INFINITY","EmptyRectangle","RoundedRectangle","Camera","deadzone","roundPx","atLimit","totalInView","lerp","onShakeComplete","Signal","onFlashComplete","onFadeComplete","fx","_targetPosition","_edge","_position","intensity","duration","horizontal","vertical","shakeBounds","_fxDuration","_fxType","_fixedView","FOLLOW_LOCKON","FOLLOW_PLATFORMER","FOLLOW_TOPDOWN","FOLLOW_TOPDOWN_TIGHT","SHAKE_BOTH","SHAKE_HORIZONTAL","SHAKE_VERTICAL","ENABLE_FX","FLASH","FADE_OUT","FADE_IN","boot","Graphics","follow","lerpX","lerpY","helper","unfollow","focusOn","setPosition","focusOnXY","shake","force","direction","flash","beginFill","drawRect","endFill","fade","fadeEffect","fadeIn","update","updateFX","updateShake","checkBounds","time","delta","dispatch","rnd","frac","updateTarget","math","setBoundsToWorld","vx","vw","vy","vh","setSize","reset","resetFX","State","make","input","load","sound","state","tweens","particles","physics","preload","loadUpdate","loadRender","postUpdate","preRender","paused","resumed","pauseUpdate","shutdown","StateManager","pendingState","states","_pendingState","_clearWorld","_clearCache","_created","_args","current","onStateChange","onInitCallback","onPreloadCallback","onCreateCallback","onUpdateCallback","onRenderCallback","onResizeCallback","onPreRenderCallback","onLoadUpdateCallback","onLoadRenderCallback","onPausedCallback","onResumedCallback","onPauseUpdateCallback","onShutDownCallback","onPause","pause","onResume","resume","autoStart","newState","isBooted","callbackContext","clearWorld","clearCache","checkState","restart","dummy","clearCurrentState","setCurrentState","totalQueuedFiles","totalQueuedPacks","loadComplete","removeAll","debug","link","unlink","previousStateKey","onPostUpdateCallback","_kickstart","getCurrentState","renderType","_bindings","_prevParams","memorize","_shouldPropagate","active","_boundDispatch","validateListener","listener","fnName","_registerListener","isOnce","listenerContext","priority","binding","prevIndex","_indexOfListener","SignalBinding","_addBinding","execute","_priority","cur","_listener","has","addOnce","_destroy","getNumListeners","halt","paramsArr","bindings","forget","dispose","_this","signal","_isOnce","_signal","callCount","params","handlerReturn","detach","isBound","getListener","getSignal","prevPoint","Date","mouse","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","sampleRate","iChannel0","iChannel1","iChannel2","iChannel3","setResolution","pointer","toFixed","totalElapsedSeconds","addToWorld","anchorX","anchorY","Cache","Plugin","hasPreUpdate","hasUpdate","hasPostUpdate","hasRender","hasPostRender","PluginManager","plugins","_len","_i","plugin","Stage","disableVisibilityChange","currentRenderOrderID","_hiddenVar","_onChange","parseConfig","backgroundColor","setBackgroundColor","DOM","getOffset","setUserSelect","setTouchAction","checkVisibility","document","hidden","webkitHidden","mozHidden","msHidden","event","visibilityChange","_onChangePause","_onChangeResume","_onClick","hasFocus","addEventListener","onblur","onfocus","onpagehide","onpageshow","cocoonJSApp","CocoonJS","App","onSuspended","onActivated","on","focusLoss","focusGain","gamePaused","gameResumed","valueToColor","updateColor","removeEventListener","silent","body","hash","removeFromHash","Group","addToStage","enableBody","physicsBodyType","Physics","ARCADE","physicsType","alive","ignoreDestroy","pendingDestroy","classType","cursor","inputEnableChildren","updateOnlyExistingChildren","onChildInputDown","onChildInputUp","onChildInputOver","onChildInputOut","enableBodyDebug","physicsSortDirection","onDestroy","cursorIndex","fixedToCamera","cameraOffset","_sortProperty","RETURN_NONE","RETURN_TOTAL","RETURN_CHILD","RETURN_ALL","SORT_ASCENDING","SORT_DESCENDING","updateZ","addToHash","inputEnabled","events","onAddedToGroup$dispatch","addAt","addMultiple","moveAll","getAt","createMultiple","quantity","callback","singleKey","singleFrame","align","cellWidth","cellHeight","alignIn","resetCursor","next","previous","swap","child1","bringToTop","getIndex","sendToBack","moveUp","moveDown","xy","getByName","getFirst","oldChild","newChild","hasProperty","operation","checkProperty","checkAlive","checkVisible","setAll","setAllChildren","checkAll","checkAny","addAll","property","amount","subAll","multiplyAll","divideAll","kill","killAll","callAllExists","revive","reviveAll","resetAll","checkExists","resetChild","existsValue","callbackFromArray","callAll","method","methodLength","contextLength","renderOrderID","predicate","ArraySet","forEachExists","iterate","forEachAlive","forEachDead","order","ascendingSortHandler","descendingSortHandler","customSort","sortHandler","returnType","total","getFirstExists","createIfNull","getFirstAlive","getFirstDead","loadTexture","getTop","getBottom","getClosestTo","object","tempDistance","getFurthestFrom","countLiving","countDead","getRandom","ArrayUtils","getRandomItem","getRandomExists","list","getAll","pick","destroyPhase","onRemovedFromGroup$dispatch","group","destroyTexture","removeBetween","scatter","shuffle","destroyChildren","soft","World","_definedSize","stateChange","setBounds","useBounds","wrapAll","between","Game","physicsConfig","multiTexture","isRunning","raf","Device","lockRender","stepping","pendingStep","stepCount","onBlur","onFocus","onBoot","_paused","_codePaused","_focusGained","currentUpdateID","updatesThisFrame","rendersThisFrame","_deltaTime","_lastCount","_spiraling","fpsProblemNotifier","forceSingleUpdate","forceSingleRender","dropFrames","_nextFpsNotification","enableDebug","RandomDataGenerator","now","whenReady","seed","ScaleManager","setUpRenderer","GameObjectFactory","GameObjectCreator","Loader","Time","TweenManager","Input","SoundManager","Particles","Create","Debug","noop","isDisabled","showDebugHeader","forceSetTimeOut","RequestAnimationFrame","focusWindow","disableStart","isReady","onReady","PhaserGlobal","hideBanner","v","webAudio","ie","canvasID","canvasStyle","crisp","setImageRenderingCrisp","webGL","contextRestored","webGLRendererError","cocoonJS","smoothed","addToDOM","preventDefault","clearGLTextures","updateLogic","desiredFpsMult","updateRender","elapsed","deltaMax","slowMotion","fixedStepSize","enableStep","disableStep","step","removeFromDOM","cordova","iOS","focus","stopFocus","muteOnPause","setMute","unsetMute","hitCanvas","hitContext","moveCallbacks","customCandidateHandler","customCandidateHandlerContext","pollRate","enabled","multiInputOverride","MOUSE_TOUCH_COMBINE","speed","circle","maxPointers","tapRate","doubleTapRate","holdRate","justPressedRate","justReleasedRate","recordPointerHistory","recordRate","recordLimit","touchLockCallbacks","pointer1","pointer2","pointer3","pointer4","pointer5","pointer6","pointer7","pointer8","pointer9","pointer10","pointers","activePointer","mousePointer","keyboard","touch","mspointer","gamepad","resetLocked","onDown","onUp","onTap","onHold","minPriorityID","interactiveItems","_localPoint","_pollCounter","_oldPosition","_x","_y","MOUSE_OVERRIDES_TOUCH","TOUCH_OVERRIDES_MOUSE","MAX_POINTERS","Pointer","PointerMode","CURSOR","addPointer","Mouse","Touch","MSPointer","mouseWheel","MouseWheel","pointerLock","PointerLock","Keyboard","Gamepad","_onClickTrampoline","onClickTrampoline","setInteractiveCandidateHandler","addMoveCallback","addTouchLockCallback","onEnd","removeTouchLockCallback","executeTouchLockCallbacks","cb","deleteMoveCallback","CONTACT","hard","resetSpeed","startPointer","countActivePointers","updatePointer","identifier","move","stopPointer","getPointer","isActive","getPointerFromIdentifier","getPointerFromId","pointerId","getLocalPosition","hitTest","localPoint","Creature","TileSprite","graphicsData","fill","shape","processClickTrampolines","handler","mouseDownCallback","mouseUpCallback","mouseOutCallback","mouseOverCallback","capture","stopOnGameOut","_onMouseDown","_onMouseMove","_onMouseUp","_onMouseOut","_onMouseOver","NO_BUTTON","LEFT_BUTTON","MIDDLE_BUTTON","RIGHT_BUTTON","BACK_BUTTON","FORWARD_BUTTON","isAndroidStockBrowser","onMouseDown","onMouseMove","onMouseUp","_onMouseUpGlobal","onMouseUpGlobal","_onMouseOutGlobal","onMouseOutGlobal","onMouseOut","onMouseOver","mouseMoveCallback","withinGame","resetButtons","updateButtons","element","wheelEventName","wheelEvent","boundOnWheelHandler","onWheelHandler","eventProxy","WheelEventProxy","bindEvent","deltaY","pointerDownCallback","pointerMoveCallback","pointerUpCallback","pointerOutCallback","pointerOverCallback","pointerCancelCallback","_onMSPointerDown","_onMSPointerMove","_onMSPointerUp","_onMSPointerUpGlobal","_onMSPointerOut","_onMSPointerOver","onPointerDown","onPointerMove","onPointerUp","onPointerUpGlobal","onPointerOut","onPointerOver","_onMSPointerCancel","onPointerCancel","isMousePointerEvent","getPointerFromEvent","pointerType","DeviceButton","buttonCode","isDown","isUp","timeDown","timeUp","repeats","altKey","shiftKey","ctrlKey","onFloat","startStop","condition","padFloat","justPressed","justReleased","pointerMode","button","leftButton","middleButton","rightButton","backButton","forwardButton","eraserButton","ERASER_BUTTON","_holdSent","_history","_nextDrop","_stateReset","clientX","clientY","pageX","pageY","screenX","screenY","rawMovementX","rawMovementY","movementX","movementY","isMouse","previousTapTime","totalTouches","msSinceLastClick","targetObject","interactiveCandidates","positionDown","positionUp","_clickTrampolines","_trampolineTargetObject","processButtonsDown","processButtonsUp","processButtonsUpDown","buttons","toLowerCase","down","totalActivePointers","_touchedHandler","processInteractiveObjects","shift","fromClick","pollLocked","locked","mozMovementX","webkitMovementX","mozMovementY","webkitMovementY","noPause","isDragged","highestRenderOrderID","highestInputPriorityID","candidateTarget","currentNode","first","checked","validForInput","checkPointerDown","checkPointerOver","priorityID","swapTarget","newTarget","_pointerOutHandler","_pointerOverHandler","leave","doubleTap","currentPointers","addClickTrampoline","callbackArgs","trampolines","trampoline","_releasedHandler","resetMovement","PointerModes","touchStartCallback","touchMoveCallback","touchEndCallback","touchEnterCallback","touchLeaveCallback","touchCancelCallback","_onTouchStart","_onTouchMove","_onTouchEnd","_onTouchEnter","_onTouchLeave","_onTouchCancel","onTouchStart","onTouchMove","onTouchEnd","onTouchEnter","onTouchLeave","onTouchCancel","consumeDocumentTouches","_documentTouchMove","changedTouches","InputHandler","useHandCursor","_setHandCursor","allowHorizontalDrag","allowVerticalDrag","snapOffset","snapOnDrag","snapOnRelease","snapX","snapY","snapOffsetX","snapOffsetY","pixelPerfectOver","pixelPerfectClick","pixelPerfectAlpha","draggable","boundsRect","boundsSprite","scaleLayer","dragOffset","dragFromCenter","dragStopBlocksInputUp","dragStartPoint","dragDistanceThreshold","dragTimeThreshold","downPoint","snapPoint","_dragPoint","_dragPhase","_pendingDrag","_dragTimePass","_dragDistancePass","_wasEnabled","_tempPoint","_pointerData","camX","camY","isOver","isOut","timeOver","timeOut","downDuration","onAddedToGroup","addedToGroup","onRemovedFromGroup","removedFromGroup","highestID","highestRenderID","includePixelPerfect","isPixelPerfect","pointerX","pointerY","pointerDown","pointerUp","pointerTimeDown","pointerTimeUp","pointerOver","pointerOut","pointerTimeOver","pointerTimeOut","pointerDragged","fastTest","checkPixel","_dx","_dy","startDrag","_draggedPointerID","updateDrag","sendEvent","onInputOver$dispatch","onInputOut$dispatch","onInputDown$dispatch","dragTimeElapsed","onInputUp$dispatch","stopDrag","fromStart","dragPoint","pointerData","pointerLocalCoord","globalToLocal","px","py","prevX","prevY","checkBoundsRect","checkBoundsSprite","onDragUpdate","justOver","delay","overDuration","justOut","enableDrag","lockCenter","pixelPerfect","alphaThreshold","disableDrag","boundsCenterLocalCoord","onDragStart$dispatch","globalToLocalX","grid","boundsFluid","scaleFluidInversed","globalToLocalY","globalCoord","onDragStop$dispatch","setDragLock","allowHorizontal","allowVertical","enableSnap","onDrag","onRelease","disableSnap","onChange","onError","boundOnChangeHandler","onChangeHandler","boundOnErrorHandler","onErrorHandler","pointerLockElement","pointerlockchange","pointerlockerror","requestPointerLock","mozRequestPointerLock","webkitRequestPointerLock","exitPointerLock","mozExitPointerLock","webkitExitPointerLock","request","exit","_gamepadIndexMap","_rawPads","_active","_gamepadSupportAvailable","webkitGetGamepads","webkitGamepads","userAgent","getGamepads","_prevRawGamepadTypes","_prevTimestamps","onConnectCallback","onDisconnectCallback","onDownCallback","onUpCallback","onAxisCallback","onFloatCallback","_ongamepadconnected","_gamepaddisconnected","_gamepads","SinglePad","addCallbacks","callbacks","onConnect","onDisconnect","onAxis","_onGamepadConnected","onGamepadConnected","_onGamepadDisconnected","onGamepadDisconnected","newPad","connect","removedPad","disconnect","_pollGamepads","pad1","pollStatus","pad2","pad3","pad4","rawGamepads","gamepadsChanged","_rawPad","singlePad","validConnections","rawIndices","padIndices","connected","rawPad","setDeadZones","deadZone","BUTTON_0","BUTTON_1","BUTTON_2","BUTTON_3","BUTTON_4","BUTTON_5","BUTTON_6","BUTTON_7","BUTTON_8","BUTTON_9","BUTTON_10","BUTTON_11","BUTTON_12","BUTTON_13","BUTTON_14","BUTTON_15","AXIS_0","AXIS_1","AXIS_2","AXIS_3","AXIS_4","AXIS_5","AXIS_6","AXIS_7","AXIS_8","AXIS_9","XBOX360_A","XBOX360_B","XBOX360_X","XBOX360_Y","XBOX360_LEFT_BUMPER","XBOX360_RIGHT_BUMPER","XBOX360_LEFT_TRIGGER","XBOX360_RIGHT_TRIGGER","XBOX360_BACK","XBOX360_START","XBOX360_STICK_LEFT_BUTTON","XBOX360_STICK_RIGHT_BUTTON","XBOX360_DPAD_LEFT","XBOX360_DPAD_RIGHT","XBOX360_DPAD_UP","XBOX360_DPAD_DOWN","XBOX360_STICK_LEFT_X","XBOX360_STICK_LEFT_Y","XBOX360_STICK_RIGHT_X","XBOX360_STICK_RIGHT_Y","PS3XC_X","PS3XC_CIRCLE","PS3XC_SQUARE","PS3XC_TRIANGLE","PS3XC_L1","PS3XC_R1","PS3XC_L2","PS3XC_R2","PS3XC_SELECT","PS3XC_START","PS3XC_STICK_LEFT_BUTTON","PS3XC_STICK_RIGHT_BUTTON","PS3XC_DPAD_UP","PS3XC_DPAD_DOWN","PS3XC_DPAD_LEFT","PS3XC_DPAD_RIGHT","PS3XC_STICK_LEFT_X","PS3XC_STICK_LEFT_Y","PS3XC_STICK_RIGHT_X","PS3XC_STICK_RIGHT_Y","padParent","_padParent","_prevTimestamp","_buttons","_buttonsLen","_axes","_axesLen","getButton","timestamp","rawButtonVal","isNaN","processButtonDown","processButtonUp","processButtonFloat","axes","processAxisChange","triggerCallback","disconnectingIndex","axis","axisCode","buttonValue","Key","keycode","_enabled","durationUp","keyCode","onHoldCallback","onHoldContext","_justDown","_justUp","processKeyDown","processKeyUp","upDuration","pressEvent","onPressCallback","_keys","_capture","_onKeyDown","_onKeyPress","_onKeyUp","_k","onPress","removeCallbacks","addKey","addKeyCapture","addKeys","removeKey","removeKeyCapture","createCursorKeys","up","KeyCode","processKeyPress","clearCaptures","String","fromCharCode","charCode","A","charCodeAt","B","C","D","E","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","ZERO","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","NUMPAD_0","NUMPAD_1","NUMPAD_2","NUMPAD_3","NUMPAD_4","NUMPAD_5","NUMPAD_6","NUMPAD_7","NUMPAD_8","NUMPAD_9","NUMPAD_MULTIPLY","NUMPAD_ADD","NUMPAD_ENTER","NUMPAD_SUBTRACT","NUMPAD_DECIMAL","NUMPAD_DIVIDE","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","F13","F14","F15","COLON","EQUALS","COMMA","UNDERSCORE","PERIOD","QUESTION_MARK","TILDE","OPEN_BRACKET","BACKWARD_SLASH","CLOSED_BRACKET","QUOTES","BACKSPACE","TAB","CLEAR","ENTER","SHIFT","CONTROL","ALT","CAPS_LOCK","ESC","SPACEBAR","PAGE_UP","PAGE_DOWN","END","HOME","PLUS","MINUS","INSERT","DELETE","HELP","NUM_LOCK","match","prop","Component","Angle","wrapAngle","Animation","play","frameRate","loop","killOnComplete","animations","AutoCull","autoCull","inCamera","checkWorldBounds","Bounds","container","alignTo","BringToTop","Core","install","components","previousPosition","Events","PhysicsBody","AnimationManager","LoadTexture","FixedToCamera","previousRotation","preUpdateChildren","fresh","_exists","P2JS","removeFromWorld","customRender","Crop","cropRect","_crop","updateCrop","resetFrame","oldX","oldY","oldW","oldH","_frame","Delta","deltaX","deltaZ","Destroy","onDestroy$dispatch","removeFrom","Video","onChangeSource","resizeFrame","BitmapText","_glyphs","_parent","_onDestroy","_onAddedToGroup","_onRemovedFromGroup","_onKilled","_onRevived","_onEnterBounds","_onOutOfBounds","_onInputOver","_onInputOut","_onInputDown","_onInputUp","_onDragStart","_onDragUpdate","_onDragStop","_onAnimationStart","_onAnimationComplete","_onAnimationLoop","onKilled","onRevived","onOutOfBounds","onEnterBounds","onInputOver","onInputOut","onInputDown","onInputUp","onDragStart","onDragStop","onAnimationStart","onAnimationComplete","onAnimationLoop","backing","_fixedToCamera","Health","health","maxHealth","damage","setHealth","heal","InCamera","InputEnabled","InWorld","outOfCameraBoundsKill","_outOfBoundsFired","onEnterBounds$dispatch","onOutOfBounds$dispatch","outOfBoundsKill","inWorld","LifeSpan","lifespan","onRevived$dispatch","onKilled$dispatch","stopAnimation","BitmapData","hasFrameData","loadFrameData","getFrameData","frameData","Tilemap","TilemapLayer","img","getImage","trimmed","spriteSourceSizeX","spriteSourceSizeY","sourceSizeW","sourceSizeH","refreshTexture","frameName","Overlap","overlap","_reset","Reset","ScaleMinMax","scaleMin","scaleMax","checkTransform","setScaleMinMax","Smoothed","existing","weapon","bulletClass","Weapon","createBullets","Image","creature","mesh","animation","useFlatData","tween","physicsGroup","SpriteBatch","audio","audioSprite","addSprite","tileSprite","rope","Rope","text","Text","overFrame","outFrame","downFrame","upFrame","Button","emitter","maxParticles","Arcade","Emitter","retroFont","font","characterWidth","characterHeight","chars","charsPerRow","xSpacing","ySpacing","xOffset","yOffset","RetroFont","bitmapText","tilemap","tileWidth","tileHeight","addToCache","uuid","addRenderTexture","video","url","bitmapData","addBitmapData","Tween","preUpdatePhysics","preUpdateLifeSpan","preUpdateInWorld","preUpdateCore","_onOverFrame","_onOutFrame","_onDownFrame","_onUpFrame","onOverSound","onOutSound","onDownSound","onUpSound","onOverSoundMarker","onOutSoundMarker","onDownSoundMarker","onUpSoundMarker","onOverMouseOnly","justReleasedPreventsOver","freezeFrames","forceOut","setFrames","onInputOverHandler","onInputOutHandler","onInputDownHandler","onInputUpHandler","STATE_OVER","STATE_OUT","STATE_DOWN","STATE_UP","clearFrames","setStateFrame","switchImmediately","frameKey","changeStateFrame","setStateSound","marker","soundKey","markerKey","Sound","AudioSprite","playStateSound","setSounds","overSound","overMarker","downSound","downMarker","outSound","outMarker","upSound","upMarker","setOverSound","setOutSound","setDownSound","setUpSound","fastSpriteBatch","ready","isRotated","childTransform","skipPool","ctx","imageData","FrameData","textureFrame","addFrame","Frame","disableTextureUpload","cls","_image","_pos","_size","_scale","_rotate","_alpha","prev","_anchor","_tempR","_tempG","_tempB","_circle","_swapCanvas","moveH","moveV","draw","getBase64","encoderOptions","toDataURL","onLoadCallback","onErrorCallback","onload","onerror","addImage","processPixelRGB","pixel","createColor","unpackPixel","getPixel32","setPixel32","processPixel","replaceRGB","r1","g1","r2","g2","region","packPixel","setHSL","bHaveH","bHaveS","bHaveL","HSLtoRGB","shiftHSL","red","green","blue","immediate","LITTLE_ENDIAN","setPixel","getPixel","getPixelRGB","hsl","hsv","getPixels","getFirstPixel","scan","newWidth","newHeight","getCanvas","op","copyTransform","copyRect","drawGroup","drawGroupProxy","drawFull","renderGraphics","shadow","blur","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","alphaMask","sourceRect","maskRect","blendSourceAtop","blendReset","extract","destination","prevFont","fillText","beginPath","arc","closePath","moveTo","lineTo","lineWidth","strokeStyle","stroke","polygon","textureLine","createPattern","blendSourceOver","blendSourceIn","blendSourceOut","blendDestinationOver","blendDestinationIn","blendDestinationOut","blendDestinationAtop","blendXor","blendAdd","blendMultiply","blendScreen","blendOverlay","blendDarken","blendLighten","blendColorDodge","blendColorBurn","blendHardLight","blendSoftLight","blendDifference","blendExclusion","blendHue","blendSaturation","blendColor","blendLuminosity","copyBitmapData","destRowStart","getSmoothingEnabled","setSmoothingEnabled","getTransform","translateX","translateY","skewX","skewY","EarCut","Triangulate","holeIndices","dim","hasHoles","outerLen","outerNode","linkedList","triangles","eliminateHoles","earcutLinked","clockwise","last","sum","insertNode","filterPoints","again","steiner","removeNode","ear","pass","indexCurve","isEarHashed","isEar","cureLocalIntersections","splitEarcut","pointInTriangle","minTX","minTY","maxTX","maxTY","minZ","zOrder","maxZ","nextZ","prevZ","locallyInside","isValidDiagonal","splitPolygon","queue","getLeftmost","compareX","eliminateHole","hole","findHoleBridge","hx","hy","qx","tan","tanMin","sortLinked","q","tail","numMerges","pSize","qSize","inSize","leftmost","ax","ay","bx","by","intersectsPolygon","middleInside","q1","q2","Node","an","bp","stencilBufferLimit","lastIndex","clearDirty","graphicsDataPool","switchMode","buildPoly","buildComplexPoly","buildLine","buildRectangle","buildCircle","buildRoundedRectangle","upload","WebGLGraphicsData","rectData","fillColor","fillAlpha","verts","vertPos","tempPoints","rrectData","recPoints","quadraticBezierCurve","vecPos","fromX","fromY","cpX","cpY","toX","toY","xa","ya","xb","yb","getPt","n1","n2","perc","circleData","seg","totalSegs","firstPoint","lastPoint","midPointX","midPointY","unshift","p1x","p1y","p2x","p2y","p3x","p3y","perpx","perpy","perp2x","perp2y","perp3x","perp3y","dist","indexCount","indexStart","lineColor","lineAlpha","glPoints","glIndicies","updateGraphicsTint","_fillTint","_lineTint","strokeRect","ox","oy","xe","ye","xm","ym","bezierCurveTo","maxRadius","quadraticCurveTo","tintR","tintG","tintB","GraphicsData","currentPath","boundsPadding","_localBounds","_boundsDirty","webGLDirty","cachedSpriteDirty","updateLocalBounds","drawTriangle","cull","triangle","cameraToFace","ab","faceNormal","drawPolygon","drawTriangles","point1","point2","point3","lineStyle","drawShape","cpX2","cpY2","dt","dt2","dt3","t2","t3","arcTo","mm","dd","cc","tt","k1","k2","j1","j2","qy","anticlockwise","segments","sweep","segs","startX","startY","filling","theta","theta2","cTheta","sTheta","segMinus","remainder","drawRoundedRect","drawCircle","drawEllipse","path","canvasBuffer","updateCachedSpriteTexture","_prevTint","tempPoint","getVisualBounds","cachedSprite","destroyCachedSprite","textureBuffer","tempMatrix","renderXY","renderRawXY","updateBase","realResolution","webGLPixels","Uint8Array","readPixels","tempCanvas","canvasData","textBounds","strokeColors","fontStyles","fontWeights","autoRound","useAdvancedWrap","splitRegExp","characterLimitSize","characterLimitSuffix","_testString","_res","_text","_fontComponents","_lineSpacing","_charCount","setStyle","updateText","setShadow","shadowStroke","shadowFill","newStyle","boundsAlignH","boundsAlignV","strokeThickness","wordWrap","wordWrapWidth","maxLines","tabs","fontProperties","fontToComponents","fontStyle","fontVariant","fontWeight","fontSize","componentsToFont","testString","outputText","substring","runWordWrap","lines","lineWidths","maxLineWidth","determineFontProperties","drawnLines","measureLine","measureText","tab","section","snapToCeil","linePositionX","linePositionY","lineHeight","lineSpacing","textBaseline","lineCap","lineJoin","ascent","updateLine","updateShadow","strokeText","renderTabLine","snap","lineLength","letter","clearColors","clearFontValues","addColor","addStrokeColor","addFontStyle","addFontWeight","weight","precalculateWordWrap","advancedWordWrap","basicWordWrap","linesCount","currentLineWidth","words","word","wordWithSpace","wordWidth","newWord","secondPart","spaceLeft","wordWidthWithSpace","updateFont","family","exec","fontFamily","setText","parseList","setTextBounds","properties","fontPropertiesCache","fontPropertiesContext","testStringMetrics","actualBoundingBoxAscent","asc","descent","desc","actualBoundingBoxDescent","mxWidth","setCharacterLimit","characterLimit","suffix","fontPropertiesCanvas","createElement","textWidth","textHeight","_prevAnchor","_maxWidth","_data","getBitmapFont","_font","_fontSize","_align","_letterSpacing","_tint","sourceWidth","sourceHeight","scanLine","lastSpace","wrappedWidth","prevCharCode","maxWidth","test","charAt","charData","kerning","xAdvance","letterSpacing","cleanText","purgeGlyphs","kept","checkImageKey","characterSpacingX","characterSpacingY","characterPerRow","multiLine","autoUpperCase","customSpacingX","customSpacingY","fixedWidth","fontSet","grabData","currentX","currentY","updateFrameData","stamp","ALIGN_LEFT","ALIGN_RIGHT","ALIGN_CENTER","TEXT_SET1","TEXT_SET2","TEXT_SET3","TEXT_SET4","TEXT_SET5","TEXT_SET6","TEXT_SET7","TEXT_SET8","TEXT_SET9","TEXT_SET10","TEXT_SET11","setFixedWidth","lineAlignment","content","characterSpacing","allowLowerCase","buildRetroFontText","getLongestLine","pasteLine","longestLine","removeUnsupportedCharacters","stripCR","newString","aChar","code","updateOffset","diffX","diffY","frames","getFrames","newText","toUpperCase","_hasUpdateAnimation","_updateAnimationCallback","canvasPadding","drawMode","updateAnimation","nextPoint","perpLength","num","_vertexBuffer","_initWebGL","_renderStrip","_indexBuffer","_uvBuffer","_colorBuffer","_renderCanvasTriangleStrip","_renderCanvasTriangles","_renderCanvasDrawTriangle","index0","textureSource","textureWidth","textureHeight","u0","u1","u2","v0","v1","v2","paddingX","paddingY","normX","normY","deltaA","deltaB","deltaC","deltaD","deltaE","deltaF","renderStripFlat","strip","rawX","rawY","_updateAnimation","difference","_scroll","textureDebug","tilePattern","frameWidth","frameHeight","autoScroll","stopScroll","generateTilingTexture","needsUpdate","restartBatch","sessionBlendMode","forcePowerOfTwo","targetWidth","targetHeight","getNextPowerOfTwo","idx","pool","getTotal","getFree","deviceReadyAt","initialized","desktop","iOSVersion","node","nodeWebkit","electron","ejecta","crosswalk","android","chromeOS","linux","macOS","windows","windowsPhone","canvasBitBltShift","file","fileSystem","localStorage","worker","css3D","typedArray","vibration","getUserMedia","quirksMode","arora","chrome","chromeVersion","epiphany","firefox","firefoxVersion","ieVersion","trident","tridentVersion","mobileSafari","midori","opera","safari","safariVersion","webApp","silk","audioData","ogg","opus","mp3","wav","m4a","webm","dolby","oggVideo","h264Video","mp4Video","webmVideo","vp9Video","hlsVideo","iPhone","iPhone4","iPad","pixelRatio","littleEndian","support32bit","fullscreen","requestFullscreen","cancelFullscreen","fullscreenKeyboard","onInitialized","nonPrimer","readyCheck","_readyCheck","_monitor","_queue","readyState","setTimeout","_initialize","vita","kindle","RegExp","$1","_checkOS","$3","standalone","process","require","versions","_checkBrowser","AudioContext","webkitAudioContext","audioElement","canPlayType","major","minor","$2","_checkAudio","videoElement","_checkVideo","has3d","el","transforms","webkitTransform","OTransform","msTransform","MozTransform","insertBefore","getComputedStyle","getPropertyValue","_checkCSS3D","devicePixelRatio","Int8Array","Uint8ClampedArray","Int32Array","createImageData","_checkIsUint8ClampedImageData","vibrate","webkitVibrate","mozVibrate","msVibrate","CanvasRenderingContext2D","getItem","File","FileReader","FileList","Blob","requestFileSystem","WebGLRenderingContext","Worker","compatMode","webkitGetUserMedia","mozGetUserMedia","msGetUserMedia","oGetUserMedia","URL","webkitURL","mozURL","msURL","_checkFeatures","s1","s2","_checkCanvasFeatures","fs","cfs","Element","ALLOW_KEYBOARD_INPUT","_checkFullScreenSupport","documentElement","maxTouchPoints","PointerEvent","MSPointerEvent","msPointerEnabled","pointerEnabled","canPlayAudio","canPlayVideo","needsTouchUnlock","fakeiOSTouchLock","matches","display","msTouchAction","overflowHidden","getElementById","overflow","appendChild","parentNode","vendor","prefix","types","msInterpolationMode","setImageRenderingBicubic","vendors","requestAnimationFrame","cancelAnimationFrame","_isSetTimeOut","_onLoop","_timeOutID","updateSetTimeout","updateRAF","rafTime","timeToCall","clearTimeout","isSetTimeOut","isRAF","DEG_TO_RAD","RAD_TO_DEG","degrees","radians","fuzzyLessThan","fuzzyGreaterThan","fuzzyCeil","fuzzyFloor","average","shear","snapTo","gap","snapToFloor","roundTo","place","pow","floorTo","ceilTo","isFinite","rotateToAngle","currentAngle","targetAngle","getShortestAngle","angle1","angle2","angleBetween","angleBetweenY","angleBetweenPoints","angleBetweenPointsY","reverseAngle","angleRad","normalizeAngle","maxAdd","minSub","wrapValue","isOdd","isEven","minProperty","maxProperty","linearInterpolation","bezierInterpolation","bernstein","catmullRomInterpolation","catmullRom","factorial","res","p3","roundAwayFromZero","sinCosGenerator","sinAmplitude","cosAmplitude","frequency","frq","cosTable","sinTable","hypot","distanceSq","distancePow","clampBottom","within","mapLinear","smoothstep","smootherstep","sign","percent","seeds","s0","sow","integer","real","integerInRange","realInRange","normal","ary","weightedPick","QuadTree","maxObjects","maxLevels","objects","nodes","_empty","subWidth","subHeight","populate","populateHandler","insert","retrieve","returnObjects","_tweens","_add","easeMap","Power0","Easing","Power1","Power2","Power3","Power4","Linear","None","Quad","Quadratic","Out","Cubic","Quart","Quartic","Quint","Quintic","Sine","Sinusoidal","Expo","Exponential","Circ","Circular","Elastic","Back","Bounce","Quad.easeIn","In","Cubic.easeIn","Quart.easeIn","Quint.easeIn","Sine.easeIn","Expo.easeIn","Circ.easeIn","Elastic.easeIn","Back.easeIn","Bounce.easeIn","Quad.easeOut","Cubic.easeOut","Quart.easeOut","Quint.easeOut","Sine.easeOut","Expo.easeOut","Circ.easeOut","Elastic.easeOut","Back.easeOut","Bounce.easeOut","Quad.easeInOut","InOut","Cubic.easeInOut","Quart.easeInOut","Quint.easeInOut","Sine.easeInOut","Expo.easeInOut","Circ.easeInOut","Elastic.easeInOut","Back.easeInOut","Bounce.easeInOut","_pauseAll","_resumeAll","pendingDelete","_manager","addTweens","numTweens","deltaTotal","isTweening","checkIsRunning","some","_pause","_resume","pauseAll","resumeAll","manager","timeline","timeScale","repeatCounter","onStart","onLoop","onRepeat","onChildComplete","onComplete","chainedTween","isPaused","_onUpdateCallback","_onUpdateCallbackContext","_pausedTime","_hasStarted","ease","yoyo","Default","TweenData","vEnd","loadValues","updateTweenData","repeatDelay","yoyoDelay","easing","interpolation","repeatAll","chain","startTime","status","PENDING","RUNNING","LOOPED","COMPLETE","generateData","vStart","vStartCache","vEndCache","repeatTotal","inReverse","easingFunction","interpolationFunction","interpolationContext","isFrom","ms","fps","blob","reversed","elapsedMS","_desiredFps","suggestedFps","desiredFps","advancedTiming","updates","renders","ups","rps","fpsMin","fpsMax","msMin","msMax","pauseDuration","timeExpected","Timer","_frameCount","_elapsedAccumulator","_started","_timeLastSecond","_pauseStarted","_timers","timer","autoDestroy","previousDateNow","previousNow","updateAdvancedTiming","updateTimers","interval","elapsedSince","since","elapsedSecondsSince","running","expired","nextTick","_pauseTotal","_now","_marked","_diff","_newTick","MINUTE","SECOND","HALF","QUARTER","repeatCount","tick","TimerEvent","clearEvents","clearPendingEvents","adjustEvents","baseTime","currentFrame","currentAnim","updateIfVisible","isLoaded","_frameData","_anims","_outputFrames","anim","copyFrameData","useNumericIndex","getFrameIndexes","validateFrames","checkFrameName","isPlaying","getAnimation","refreshFrame","gotFrame","getFrame","getFrameByName","_frameIndex","_frames","loopCount","isFinished","_pauseStartTime","_frameDiff","_frameSkip","onUpdate","isReversed","_timeLastFrame","_timeNextFrame","updateCurrentFrame","onAnimationStart$dispatch","reverseOnce","frameId","useLocalFrameIndex","frameIndex","directionalOffset","dispatchComplete","onAnimationComplete$dispatch","diff","onAnimationLoop$dispatch","signalUpdate","fromPlay","generateFrameNames","zeroPad","spriteSourceSizeW","spriteSourceSizeH","setTrim","actualWidth","actualHeight","destX","destY","destWidth","destHeight","getRect","_frameNames","getFrameRange","AnimationParser","spriteSheet","frameMax","margin","spacing","skipFrames","row","column","totalAvailable","lastAvailable","firstFrame","lastFrame","JSONData","json","newFrame","filename","sourceSize","spriteSourceSize","JSONDataPyxel","layers","tileheight","tilewidth","tiles","JSONDataHash","XMLData","xml","getElementsByTagName","frameX","frameY","autoResolveURL","binary","bitmapFont","compressedTexture","_urlMap","_urlResolver","_urlTemp","onSoundUnlock","_cacheMap","TEXTURE","SOUND","PHYSICS","BINARY","BITMAPFONT","JSON","XML","SHADER","RENDER_TEXTURE","DATA","_pendingCount","_addImages","DEFAULT_KEY","DEFAULT_SRC","MISSING","MISSING_KEY","MISSING_SRC","READY_TIMEOUT","addCompressedTextureMetaData","extension","arrayBuffer","removeImage","LoaderParser","fileFormat","_resolveURL","addCanvas","addImageAsync","_removePending","_addPending","addDefaultImage","addMissingImage","addSound","audioTag","decoded","isDecoding","touchLocked","addText","addPhysicsData","addTilemap","mapData","addBinary","binaryData","addBitmapFont","atlasData","atlasType","jsonBitmapFont","xmlBitmapFont","addBitmapFontFromAtlas","atlasKey","atlasFrame","dataKey","dataType","fontData","getBaseTexture","getJSON","getXML","addJSON","addXML","addVideo","isBlob","addShader","addSpriteSheet","addTextureAtlas","TEXTURE_ATLAS_XML_STARLING","TEXTURE_ATLAS_JSON_PYXEL","addData","reloadSound","getSound","reloadSoundComplete","updateSound","decodedSound","isSoundDecoded","isSoundReady","checkKey","checkURL","checkCanvasKey","checkDataKey","checkTextureKey","checkSoundKey","checkTextKey","checkPhysicsKey","checkTilemapKey","checkBinaryKey","checkBitmapDataKey","checkBitmapFontKey","checkJSONKey","checkXMLKey","checkVideoKey","checkShaderKey","checkRenderTextureKey","full","getTextureFrame","getSoundData","getText","getPhysicsData","fixtureKey","fixtures","fixture","getTilemapData","getBinary","getBitmapData","getVideo","getShader","getRenderTexture","getData","getFrameCount","getFrameByIndex","getURL","getKeys","removeCanvas","destroyBaseTexture","removeSound","removeText","removePhysics","removeTilemap","removeBinary","removeBitmapData","removeBitmapFont","removeJSON","removeXML","removeVideo","removeShader","removeRenderTexture","removeSpriteSheet","removeTextureAtlas","removeData","baseURL","destroyItem","readyTimeout","_ready","_checkReady","isLoading","preloadSprite","crossOrigin","headers","requestedWith","onLoadStart","onBeforeLoadComplete","onLoadComplete","onPackComplete","onFileStart","onFileComplete","onFileError","enableParallel","maxParallelDownloads","_withSyncPointDepth","_fileList","_flightQueue","_processingHead","_fileLoadStarted","_totalPackCount","_totalFileCount","_loadedPackCount","_loadedFileCount","TEXTURE_ATLAS_JSON_ARRAY","TEXTURE_ATLAS_JSON_HASH","PHYSICS_LIME_CORONA_JSON","PHYSICS_PHASER_JSON","mediaTypes","avif","bmp","gif","ico","jpg","jpeg","png","svg","tif","tiff","webp","getMediaType","_getSource","setPreloadSprite","checkKeyExists","getAssetIndex","bestFound","loaded","loading","getAsset","fileIndex","addToFileList","overwrite","syncPoint","currentFile","replaceInFileList","pack","imageset","sources","defaultSource","imageFromBitmapData","imageFromGrid","imageFromTexture","pixelWidth","pixelHeight","palette","exkey","truecolor","images","urls","script","spritesheet","autoDecode","noAudio","jsonURL","jsonData","audiosprite","loadEvent","asBlob","CSV","TILED_JSON","tilemapCSV","tilemapTiledJSON","LIME_CORONA_JSON","textureURL","atlasURL","parseXml","atlasJSONArray","atlas","atlasJSONHash","atlasXML","withSyncPoint","addSyncPoint","asset","removeFile","updateProgress","processLoadQueue","finishedLoading","requestUrl","requestObject","progress","syncblock","inflightLimit","processPack","loadFile","abnormal","asyncComplete","errorMessage","packData","transformUrl","xhrLoad","fileComplete","loadImageTag","loadPictureTag","getAudioURL","usingWebAudio","usingAudioTag","loadAudioTag","fileError","getVideoURL","loadVideoTag","jsonLoadComplete","xmlLoadComplete","csvLoadComplete","picElm","sourceElm","setAttribute","currentSrc","controls","autoplay","playsInline","videoLoadEvent","canplay","Audio","playThroughEvent","xhr","XMLHttpRequest","open","responseType","setRequestHeader","message","send","videoType","uri","lastIndexOf","audioType","reason","loadNext","responseText","response","decode","language","defer","head","contentType","DOMParser","parseFromString","ActiveXObject","async","loadXML","totalLoadedFiles","totalLoadedPacks","progressFloat","info","common","getAttribute","letters","char","kernings","second","finalizeBitmapFont","_face","_lineHeight","_id","_xoffset","_yoffset","_xadvance","_second","_first","_amount","bitmapFontData","pvr","uintArray","byteArray","pvrHeader","pixelFormat","flags","colorSpace","channelType","depth","numberOfSurfaces","numberOfFaces","numberOfMipmaps","metaDataSize","byteLength","dds","ddsHeader","pitch","mipmapCount","formatSize","formatFlag","formatFourCC","formatBitCount","formatRBitMask","formatGBitMask","formatBBitMask","formatABitMask","caps1","caps2","caps3","caps4","reserved2","DXGIFormat","resourceDimension","miscFlag","arraySize","ktx","ktxHeader","imageSizeOffset","imageSize","glInternalFormat","endianness","glType","glTypeSize","glFormat","glBaseInternalFormat","pixelDepth","numberOfArrayElements","numberOfMipmapLevels","bytesOfKeyValueData","keyAndValueByteSize","pkm","pkmHeader","originalWidth","originalHeight","autoplayKey","sounds","spritemap","addMarker","connectToMaster","markers","totalDuration","currentTime","durationMS","stopTime","pausedPosition","pausedTime","currentMarker","fadeTween","pendingPlayback","override","allowMultiple","playOnce","externalNode","masterGainNode","gainNode","_sound","_globalVolume","_markedToDelete","_pendingStart","_removeFromSoundManager","_sourceId","masterGain","createGain","createGainNode","gain","soundHasUnlocked","onDecoded","onPlay","onStop","onMute","onMarkerComplete","_volume","_buffer","_muted","_tempMarker","_tempPosition","_tempVolume","_tempPause","_muteVolume","_tempLoop","_onDecodedEventDispatched","removeMarker","onEndedHandler","_removeOnEndedHandler","_disconnectSource","isDecoded","loopFull","forceRestart","_stopSourceAndDisconnect","_createSourceAndConnect","_addOnEndedHandler","_startSource","muted","mute","prevMarker","fadeTo","fadeOut","fadeComplete","updateGlobalVolume","globalVolume","createBufferSource","when","onended","onSoundDecode","onVolumeChange","onUnMute","onTouchUnlock","baseLatency","channels","_codeMuted","_unlockSource","_sounds","_watchList","_watching","_watchCallback","_watchContext","_onStateChange","disableAudio","disableWebAudio","audioContext","onstatechange","setTouchLock","unlock","setTouchUnlock","webAudioIsSuspended","resumeWebAudio","resumeWebAudioIfSuspended","noteOn","stopAll","soundData","decodeAudioData","setDecodedCallback","files","removeByKey","close","dom","minWidth","minHeight","maxHeight","forceLandscape","forcePortrait","incorrectOrientation","_pageAlignHorizontally","_pageAlignVertically","onOrientationChange","enterIncorrectOrientation","leaveIncorrectOrientation","hasPhaserSetFullScreen","fullScreenTarget","_createdFullScreenTarget","onFullScreenInit","onFullScreenChange","onFullScreenError","screenOrientation","getScreenOrientation","scaleFactor","scaleFactorInversed","aspectRatio","sourceAspectRatio","windowConstraints","compatibility","supportsFullScreen","orientationFallback","noMargins","scrollTo","forceMinimumDocumentHeight","canExpandParent","clickTrampoline","_scaleMode","NO_SCALE","_fullScreenScaleMode","parentIsWindow","parentScaleFactor","trackParentInterval","onSizeChange","onResize","onResizeContext","_pendingScaleMode","_fullScreenRestore","_gameSize","_userScaleFactor","_userScaleTrim","_lastUpdate","_updateThrottle","_updateThrottleReset","_parentBounds","_tempBounds","_lastReportedCanvasSize","_lastReportedGameSize","_booted","setupScale","EXACT_FIT","SHOW_ALL","RESIZE","USER_SCALE","MODES","compat","_orientationChange","orientationChange","_windowResize","windowResize","_fullScreenChange","fullScreenChange","_fullScreenError","fullScreenError","_gameResumed","setGameSize","FlexGrid","fullScreenScaleMode","pageAlignHorizontally","alignH","pageAlignVertically","alignV","scaleH","scaleV","setUserScale","trimH","trimV","getParentBounds","visualBounds","updateDimensions","queueUpdate","currentScaleMode","hScale","vScale","hTrim","vTrim","setResizeCallback","signalSizeChange","setMinMax","prevThrottle","prevWidth","prevHeight","boundsChanged","orientationChanged","updateOrientationState","updateLayout","throttle","updateScalingAndBounds","forceOrientation","classifyOrientation","orientation","previousOrientation","previouslyIncorrect","isLandscape","isPortrait","changed","correctnessChanged","scrollTop","setMaximum","setExactFit","isFullScreen","boundingParent","setShowAll","resetCanvas","reflowCanvas","reflowGame","layoutBounds","clientRect","getBoundingClientRect","parentRect","offsetParent","wc","windowBounds","alignCanvas","parentBounds","canvasBounds","currentEdge","targetEdge","marginLeft","marginRight","marginTop","marginBottom","cssWidth","cssHeight","expanding","multiplier","createFullScreenTarget","fsTarget","background","startFullScreen","allowTrampoline","cleanupCreatedTarget","initData","targetElement","navigationUI","stopFullScreen","prepScreenMode","enteringFullscreen","createdTarget","scaleSprite","letterBox","scaleX1","scaleY1","scaleX2","scaleY2","scaleOnWidth","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","bmd","columnWidth","renderShadow","currentColor","currentAlpha","_line","_rect","GEOM_AUTO","GEOM_RECTANGLE","GEOM_CIRCLE","GEOM_POINT","GEOM_LINE","GEOM_ELLIPSE","gameInfo","1","2","3","4","soundInfo","sourceId","ended","filled","rectangle","geom","cameraInfo","hideIfUp","downColor","upColor","inactiveColor","mx","my","worldX","worldY","_pointerButtonIcon","btn","spriteInputInfo","justDown","justUp","inputInfo","showDetails","_inputHandler","free","inputHandler","_inputHandlerStatusIcon","_inputHandlerCaptureIcon","spriteBounds","ropeSegments","segment","spriteInfo","spriteCoords","lineInfo","forceType","ellipse","quadTree","quadtree","Body","NINJA","Ninja","BOX2D","Box2D","renderBody","bodyInfo","renderBodyInfo","box2d","box2dWorld","renderDebugDraw","box2dBody","displayList","canvasPool","phaser","factor","loader","box","scrollY","scrollLeft","scrollX","clientTop","clientLeft","cushion","calibrate","coords","getAspectRatio","inLayoutViewport","primaryFallback","screen","mozOrientation","msOrientation","matchMedia","documentBounds","pageXOffset","pageYOffset","clientWidth","clientHeight","offsetWidth","scrollWidth","offsetHeight","scrollHeight","getByKey","randomIndex","removeRandomItem","newLength","transposeMatrix","sourceRowCount","sourceColCount","rotateMatrix","findClosest","arr","NaN","low","high","rotateRight","rotateLeft","numberArray","numberArrayStep","LinkedList","entity","palettes","0","5","6","7","8","9","PALETTE_ARNE","PALETTE_JMP","PALETTE_CGA","PALETTE_C64","PALETTE_JAPANESE_MACHINE","boundsCustom","boundsFull","boundsNone","positionCustom","positionFluid","positionFull","positionNone","scaleCustom","scaleFluid","scaleFull","scaleNone","customWidth","customHeight","customOffsetX","customOffsetY","ratioH","ratioV","createCustomLayer","layer","FlexLayer","createFluidLayer","createFullLayer","createFixedLayer","persist","fitSprite","topLeft","topMiddle","topRight","bottomLeft","bottomMiddle","bottomRight","RED","ORANGE","YELLOW","GREEN","AQUA","BLUE","VIOLET","WHITE","BLACK","GRAY","RGBtoHSL","RGBtoHSV","fromRGBA","toRGBA","toABGR","RGBArrayToHex","rgb","hueToColor","HSVtoRGB","color32","getColor","getColor32","RGBtoString","componentToHex","hexToRGB","hex","hexToColor","webToColor","web","tempColor","getRGB","HSVColorWheel","HSLColorWheel","interpolateColor","color1","color2","currentStep","src1","src2","hsv1","hsv2","dh","h3","interpolateColorWithRGB","or","og","ob","interpolateRGB","getRandomColor","getWebRGB","getAlpha","getAlphaFloat","getRed","getGreen","getBlue","blendNormal","blendAverage","blendSubtract","blendNegation","blendLinearDodge","blendLinearBurn","blendLinearLight","blendVividLight","blendPinLight","blendHardMix","blendReflect","blendGlow","blendPhoenix","arcade","ninja","chipmunk","matter","CHIPMUNK","MATTERJS","P2","Matter","startSystem","system","enableAABB","emitters","ID","onAccess","onTimeout","playWhenUnlocked","timeout","videoStream","isStreaming","retryLimit","retry","retryInterval","_retryID","_pending","_pendingChangeSource","_autoplay","_endCallback","_playCallback","_video","createVideoFromBlob","videoWidth","videoHeight","createVideoFromURL","snapshot","connectToMediaStream","stream","startMediaStream","captureAudio","captureVideo","removeVideoElement","getUserMediaTimeout","mediaDevices","then","getUserMediaSuccess","catch","getUserMediaError","mozSrcObject","srcObject","createObjectURL","onloadeddata","checkStream","checkVideoProgress","change","playbackRate","setPause","setResume","playHandler","getTracks","track","playing","changeSource","grab","hasChildNodes","firstChild","removeAttribute","canUseNewCanvasBlendModes"],"mappings":";;CAoBA,WAEI,IAAIA,EAAOC,KAUXC,EAAOA,GAAQ,GAmBnBA,EAAKC,cAAgB,WAWjBF,KAAKG,SAAW,IAAIF,EAAKG,MAAM,EAAG,GAYlCJ,KAAKK,MAAQ,IAAIJ,EAAKG,MAAM,EAAG,GAQ/BJ,KAAKM,MAAQ,IAAIL,EAAKG,MAAM,EAAG,GAY/BJ,KAAKO,SAAW,EAYhBP,KAAKQ,MAAQ,EAiBbR,KAAKS,SAAU,EASfT,KAAKU,QAAU,KASfV,KAAKW,YAAa,EAYlBX,KAAKY,OAAS,KAgBdZ,KAAKa,WAAa,EAelBb,KAAKc,eAAiB,IAAIC,OAAOC,OAejChB,KAAKiB,cAAgB,IAAIhB,EAAKG,MAAM,EAAG,GAevCJ,KAAKkB,WAAa,IAAIjB,EAAKG,MAAM,EAAG,GAepCJ,KAAKmB,cAAgB,EASrBnB,KAAKoB,WAAa,KAMlBpB,KAAKqB,IAAM,EAMXrB,KAAKsB,IAAM,EAMXtB,KAAKuB,QAAU,IAAItB,EAAKuB,UAAU,EAAG,EAAG,EAAG,GAM3CxB,KAAKyB,eAAiB,KAMtBzB,KAAK0B,MAAQ,KAMb1B,KAAK2B,gBAAiB,EAMtB3B,KAAK4B,eAAgB,GAGzB3B,EAAKC,cAAc2B,UAAY,CAE3BC,YAAa7B,EAAKC,cAWlB6B,QAAS,WAEL,GAAI/B,KAAKgC,SACT,CAGI,IAFA,IAAIC,EAAIjC,KAAKgC,SAASE,OAEfD,KAEHjC,KAAKgC,SAASC,GAAGF,UAGrB/B,KAAKgC,SAAW,GAGpBhC,KAAKU,QAAU,KACfV,KAAKY,OAAS,KACdZ,KAAKc,eAAiB,KACtBd,KAAKoB,WAAa,KAClBpB,KAAKW,YAAa,EAElBX,KAAKuB,QAAU,KACfvB,KAAKyB,eAAiB,KACtBzB,KAAK0B,MAAQ,KAEb1B,KAAKmC,uBACLnC,KAAKoC,yBAsBTC,gBAAiB,SAAUzB,GAEvB,IAAKA,IAAWZ,KAAKY,SAAWZ,KAAKsC,KAEjC,OAAOtC,KAGX,IAAIuC,EAAIvC,KAAKY,OAETA,EAEA2B,EAAI3B,EAEEZ,KAAKY,SAEX2B,EAAIvC,KAAKsC,KAAKE,OAIlB,IAIIC,EAAGC,EAAGC,EAAGC,EAAGC,EAAIC,EAJhBC,EAAKR,EAAEzB,eACPkC,EAAKhD,KAAKc,eAMVd,KAAKO,SAAWQ,OAAOkC,KAAKC,KAGxBlD,KAAKO,WAAaP,KAAKmD,gBAEvBnD,KAAKmD,cAAgBnD,KAAKO,SAC1BP,KAAKqB,IAAM4B,KAAKG,IAAIpD,KAAKO,UACzBP,KAAKsB,IAAM2B,KAAKI,IAAIrD,KAAKO,WAI7BkC,EAAIzC,KAAKsB,IAAMtB,KAAKK,MAAMiD,EAC1BZ,EAAI1C,KAAKqB,IAAMrB,KAAKK,MAAMiD,EAC1BX,GAAK3C,KAAKqB,IAAMrB,KAAKK,MAAMkD,EAC3BX,EAAI5C,KAAKsB,IAAMtB,KAAKK,MAAMkD,EAC1BV,EAAK7C,KAAKG,SAASmD,EACnBR,EAAK9C,KAAKG,SAASoD,GAGfvD,KAAKM,MAAMgD,GAAKtD,KAAKM,MAAMiD,KAE3BV,GAAM7C,KAAKM,MAAMgD,EAAIb,EAAIzC,KAAKM,MAAMiD,EAAIZ,EACxCG,GAAM9C,KAAKM,MAAMgD,EAAIZ,EAAI1C,KAAKM,MAAMiD,EAAIX,GAI5CI,EAAGP,EAAIA,EAAIM,EAAGN,EAAIC,EAAIK,EAAGJ,EACzBK,EAAGN,EAAID,EAAIM,EAAGL,EAAIA,EAAIK,EAAGH,EACzBI,EAAGL,EAAIA,EAAII,EAAGN,EAAIG,EAAIG,EAAGJ,EACzBK,EAAGJ,EAAID,EAAII,EAAGL,EAAIE,EAAIG,EAAGH,IAOzBH,EAAIzC,KAAKK,MAAMiD,EAEfX,EADAD,EAAI,EAEJE,EAAI5C,KAAKK,MAAMkD,EACfV,EAAK7C,KAAKG,SAASmD,EAAItD,KAAKM,MAAMgD,EAAIb,EACtCK,EAAK9C,KAAKG,SAASoD,EAAIvD,KAAKM,MAAMiD,EAAIX,EAEtCI,EAAGP,EAAIA,EAAIM,EAAGN,EACdO,EAAGN,EAAID,EAAIM,EAAGL,EACdM,EAAGL,EAAIC,EAAIG,EAAGJ,EACdK,EAAGJ,EAAIA,EAAIG,EAAGH,GAhBdI,EAAGH,GAAKA,EAAKE,EAAGN,EAAIK,EAAKC,EAAGJ,EAAII,EAAGF,GACnCG,EAAGF,GAAKD,EAAKE,EAAGL,EAAII,EAAKC,EAAGH,EAAIG,EAAGD,GAoBvCL,EAAIO,EAAGP,EACPC,EAAIM,EAAGN,EACPC,EAAIK,EAAGL,EAGP,IAAIa,EAAUf,GAFdG,EAAII,EAAGJ,GAEiBF,EAAIC,EAE5B,GAAIF,GAAKC,EACT,CACI,IAAIe,EAAIR,KAAKS,KAAMjB,EAAIA,EAAMC,EAAIA,GAEjC1C,KAAKmB,cAAqB,EAAJuB,EAASO,KAAKU,KAAKlB,EAAIgB,IAAMR,KAAKU,KAAKlB,EAAIgB,GACjEzD,KAAKkB,WAAWoC,EAAIG,EACpBzD,KAAKkB,WAAWqC,EAAIC,EAASC,OAE5B,GAAId,GAAKC,EACd,CACI,IAAIgB,EAAIX,KAAKS,KAAMf,EAAIA,EAAMC,EAAIA,GAEjC5C,KAAKmB,cAAgBJ,OAAOkC,KAAKY,SAAgB,EAAJjB,EAASK,KAAKU,MAAMhB,EAAIiB,IAAMX,KAAKU,KAAKhB,EAAIiB,IACzF5D,KAAKkB,WAAWoC,EAAIE,EAASI,EAC7B5D,KAAKkB,WAAWqC,EAAIK,OAIpB5D,KAAKkB,WAAWoC,EAAI,EACpBtD,KAAKkB,WAAWqC,EAAI,EAiBxB,OAbAvD,KAAKa,WAAab,KAAKQ,MAAQ+B,EAAE1B,WACjCb,KAAKiB,cAAcqC,EAAIN,EAAGH,GAC1B7C,KAAKiB,cAAcsC,EAAIP,EAAGF,GAG1B9C,KAAKyB,eAAiB,KAGlBzB,KAAK8D,mBAEL9D,KAAK8D,kBAAkBC,KAAK/D,KAAKgE,yBAA0BhB,EAAID,GAG5D/C,MAQXiE,UAAW,aAkBXC,gBAAiB,SAAUC,EAAYC,EAAWC,GAE9C,IAAIC,EAAStE,KAAKuE,iBAEdC,EAAgB,IAAIzD,OAAO0D,cAAczE,KAAKsC,KAAqB,EAAfgC,EAAOI,MAA2B,EAAhBJ,EAAOK,OAAYN,EAAUD,EAAWD,GAOlH,OALAlE,EAAKC,cAAc0E,YAAY/B,IAAMyB,EAAOhB,EAC5CrD,EAAKC,cAAc0E,YAAY9B,IAAMwB,EAAOf,EAE5CiB,EAAcK,OAAO7E,KAAMC,EAAKC,cAAc0E,aAEvCJ,GASXM,YAAa,WAIT,OAFA9E,KAAK+E,wBAEE/E,MAUXgF,SAAU,SAAU7E,GAIhB,OAFAH,KAAKqC,kBAEErC,KAAKc,eAAemE,MAAM9E,IAWrC+E,QAAS,SAAU/E,EAAUgF,GASzB,OAPIA,IAEAhF,EAAWgF,EAAKH,SAAS7E,IAG7BH,KAAKqC,kBAEErC,KAAKc,eAAesE,aAAajF,IAU5CkF,oBAAqB,SAAUC,GAE3BtF,KAAKuF,cAAc1E,WAAab,KAAKa,WAEjCyE,EAAcE,GAEdvF,EAAKwF,OAAO5D,UAAU6D,aAAa3B,KAAK/D,KAAKuF,cAAeD,GAI5DrF,EAAKwF,OAAO5D,UAAU8D,cAAc5B,KAAK/D,KAAKuF,cAAeD,IAUrEP,sBAAuB,WAEnB/E,KAAK2B,gBAAiB,EAEtB,IAAI2C,EAAStE,KAAKuE,iBAQlB,GALAD,EAAOI,MAAQzB,KAAK2C,IAAI,EAAG3C,KAAK4C,KAAKvB,EAAOI,QAC5CJ,EAAOK,OAAS1B,KAAK2C,IAAI,EAAG3C,KAAK4C,KAAKvB,EAAOK,SAE7C3E,KAAKqC,kBAEArC,KAAKuF,cAaNvF,KAAKuF,cAAcO,QAAQC,OAAOzB,EAAOI,MAAOJ,EAAOK,YAZ3D,CACI,IAAIqB,EAAc,EACdhG,KAAK8F,SAAW9F,KAAK8F,QAAQG,aAAehG,EAAKiG,4BAEjDF,EAAchG,KAAK8F,QAAQG,YAAYE,cAE3C,IAAI3B,EAAgB,IAAIzD,OAAO0D,cAAczE,KAAKsC,KAAMgC,EAAOI,MAAOJ,EAAOK,YAAQyB,OAAWA,OAAWA,OAAWA,EAAWJ,GACjIhG,KAAKuF,cAAgB,IAAItF,EAAKwF,OAAOjB,GACrCxE,KAAKuF,cAAczE,eAAiBd,KAAKc,eAQ7C,IAAIuF,EAAcrG,KAAKsG,SAEvBtG,KAAKsG,SAAW,KAChBtG,KAAKuF,cAAcgB,QAAUF,EAE7BpG,EAAKC,cAAc0E,YAAY/B,IAAMyB,EAAOhB,EAC5CrD,EAAKC,cAAc0E,YAAY9B,IAAMwB,EAAOf,EAC5CvD,KAAKuF,cAAcO,QAAQjB,OAAO7E,KAAMC,EAAKC,cAAc0E,aAAa,GACxE5E,KAAKuF,cAAciB,OAAOlD,GAAMgB,EAAOhB,EAAIgB,EAAOI,MAClD1E,KAAKuF,cAAciB,OAAOjD,GAAMe,EAAOf,EAAIe,EAAOK,OAElD3E,KAAKsG,SAAWD,EAEhBrG,KAAK2B,gBAAiB,GAS1BQ,qBAAsB,WAEbnC,KAAKuF,gBAKVvF,KAAKuF,cAAcO,QAAQ/D,SAAQ,GAEnC/B,KAAKuF,cAAgB,OAGzBnD,sBAAuB,WAEdpC,KAAKyG,gBAKV1F,OAAO2F,WAAWC,eAAe3G,KAAKyG,eAEtCzG,KAAKyG,cAAgB,QAM7BxG,EAAKC,cAAc2B,UAAU+E,6BAA+B3G,EAAKC,cAAc2B,UAAUQ,gBAEzFwE,OAAOC,iBAAiB7G,EAAKC,cAAc2B,UAAW,CAQlDyB,EAAG,CAECyD,IAAK,WAED,OAAO/G,KAAKG,SAASmD,GAGzB0D,IAAK,SAAUC,GAEXjH,KAAKG,SAASmD,EAAI2D,IAW1B1D,EAAG,CAECwD,IAAK,WAED,OAAO/G,KAAKG,SAASoD,GAGzByD,IAAK,SAAUC,GAEXjH,KAAKG,SAASoD,EAAI0D,IAU1BC,aAAc,CAEVH,IAAK,WAED,GAAK/G,KAAKS,QAKV,CACI,IAAI0G,EAAOnH,KAAKY,OAEhB,IAAKuG,EAED,OAAOnH,KAAKS,QAIZ,EACA,CACI,IAAK0G,EAAK1G,QAEN,OAAO,EAGX0G,EAAOA,EAAKvG,aAETuG,GAGX,OAAO,EAxBP,OAAO,IAuCnBC,KAAM,CAEFL,IAAK,WAED,OAAO/G,KAAK0B,OAGhBsF,IAAK,SAAUC,GAEPjH,KAAK0B,QAEL1B,KAAK0B,MAAM2F,QAAS,IAGxBrH,KAAK0B,MAAQuF,KAITjH,KAAK0B,MAAM2F,QAAS,KAmBhCd,QAAS,CAELQ,IAAK,WAED,OAAO/G,KAAKsG,UAGhBU,IAAK,SAAUC,GAEX,GAAIK,MAAMC,QAAQN,GAClB,CAII,IAFA,IAAIO,EAAS,GAEJvF,EAAI,EAAGA,EAAIgF,EAAM/E,OAAQD,IAI9B,IAFA,IAAIwF,EAAeR,EAAMhF,GAAGuF,OAEnBE,EAAI,EAAGA,EAAID,EAAavF,OAAQwF,IAErCF,EAAOG,KAAKF,EAAaC,IAKjC1H,KAAK4H,aAAe,CAAEC,OAAQ7H,KAAMyH,aAAcD,GAGtDxH,KAAKsG,SAAWW,EAEZjH,KAAK8H,WAAa9H,KAAK8H,YAAc7H,EAAK8H,WAAWC,WAErDhI,KAAK8H,UAAY7H,EAAK8H,WAAWE,UAuB7CC,cAAe,CAEXnB,IAAK,WAED,OAAO/G,KAAK2B,gBAGhBqF,IAAK,SAAUC,GAEPjH,KAAK2B,iBAAmBsF,IAKxBA,EAEAjH,KAAK+E,wBAIL/E,KAAKmC,uBAGTnC,KAAK2B,eAAiBsF,OAmBlChH,EAAKkI,uBAAyB,WAE1BlI,EAAKC,cAAc6D,KAAK/D,MASxBA,KAAKgC,SAAW,GAWhBhC,KAAKoI,kBAAmB,GAG5BnI,EAAKkI,uBAAuBtG,UAAYgF,OAAOwB,OAAOpI,EAAKC,cAAc2B,WACzE5B,EAAKkI,uBAAuBtG,UAAUC,YAAc7B,EAAKkI,uBASzDlI,EAAKkI,uBAAuBtG,UAAUyG,SAAW,SAAUC,GAEvD,OAAOvI,KAAKwI,WAAWD,EAAOvI,KAAKgC,SAASE,SAWhDjC,EAAKkI,uBAAuBtG,UAAU2G,WAAa,SAAUD,EAAOE,GAEhE,GAAa,GAATA,GAAcA,GAASzI,KAAKgC,SAASE,OAWrC,OATIqG,EAAM3H,QAEN2H,EAAM3H,OAAO8H,YAAYH,IAG7BA,EAAM3H,OAASZ,MAEVgC,SAAS2G,OAAOF,EAAO,EAAGF,GAExBA,EAIP,MAAM,IAAIK,MAAML,EAAQ,yBAA2BE,EAAQ,8BAAgCzI,KAAKgC,SAASE,SAWjHjC,EAAKkI,uBAAuBtG,UAAUgH,aAAe,SAAUN,EAAOO,GAElE,GAAIP,IAAUO,EAAd,CAKA,IAAIC,EAAS/I,KAAKgJ,cAAcT,GAC5BU,EAASjJ,KAAKgJ,cAAcF,GAEhC,GAAIC,EAAS,GAAKE,EAAS,EAEvB,MAAM,IAAIL,MAAM,iFAGpB5I,KAAKgC,SAAS+G,GAAUD,EACxB9I,KAAKgC,SAASiH,GAAUV,IAU5BtI,EAAKkI,uBAAuBtG,UAAUmH,cAAgB,SAAUT,GAE5D,IAAIE,EAAQzI,KAAKgC,SAASkH,QAAQX,GAElC,IAAe,IAAXE,EAEA,MAAM,IAAIG,MAAM,4DAGpB,OAAOH,GAUXxI,EAAKkI,uBAAuBtG,UAAUsH,cAAgB,SAAUZ,EAAOE,GAEnE,GAAIA,EAAQ,GAAKA,GAASzI,KAAKgC,SAASE,OAEpC,MAAM,IAAI0G,MAAM,uCAGpB,IAAIQ,EAAepJ,KAAKgJ,cAAcT,GAEtCvI,KAAKgC,SAAS2G,OAAOS,EAAc,GACnCpJ,KAAKgC,SAAS2G,OAAOF,EAAO,EAAGF,IAUnCtI,EAAKkI,uBAAuBtG,UAAUwH,WAAa,SAAUZ,GAEzD,GAAIA,EAAQ,GAAKA,GAASzI,KAAKgC,SAASE,OAEpC,MAAM,IAAI0G,MAAM,8BAAgCH,EAAQ,kGAG5D,OAAOzI,KAAKgC,SAASyG,IAUzBxI,EAAKkI,uBAAuBtG,UAAU6G,YAAc,SAAUH,GAE1D,IAAIE,EAAQzI,KAAKgC,SAASkH,QAAQX,GAElC,IAAe,IAAXE,EAKJ,OAAOzI,KAAKsJ,cAAcb,IAU9BxI,EAAKkI,uBAAuBtG,UAAUyH,cAAgB,SAAUb,GAE5D,IAAIF,EAAQvI,KAAKqJ,WAAWZ,GAS5B,OAPIF,IAEAA,EAAM3H,YAASwF,EAEfpG,KAAKgC,SAAS2G,OAAOF,EAAO,IAGzBF,GAGXtI,EAAKkI,uBAAuBtG,UAAU0H,gBAAkB,SAAUhB,GAE9D,GAAIA,EAAM3H,SAAWZ,KAKrB,OAAOA,KAAKmJ,cAAcZ,EAAOvI,KAAKgC,SAASE,OAAS,IAG5DjC,EAAKkI,uBAAuBtG,UAAU2H,gBAAkB,SAAUjB,GAE9D,GAAIA,EAAM3H,SAAWZ,KAKrB,OAAOA,KAAKmJ,cAAcZ,EAAO,IAUrCtI,EAAKkI,uBAAuBtG,UAAU4H,eAAiB,SAAUC,EAAYC,QAEtDvD,IAAfsD,IAA4BA,EAAa,QAC5BtD,IAAbuD,IAA0BA,EAAW3J,KAAKgC,SAASE,QAEvD,IAAI0H,EAAQD,EAAWD,EAEvB,GAAY,EAARE,GAAaA,GAASD,EAC1B,CAGI,IAFA,IAAIE,EAAU7J,KAAKgC,SAAS2G,OAAOe,EAAYE,GAEtC3H,EAAI,EAAGA,EAAI4H,EAAQ3H,OAAQD,IACpC,CACgB4H,EAAQ5H,GACdrB,YAASwF,EAGnB,OAAOyD,EAEN,GAAc,IAAVD,GAAwC,IAAzB5J,KAAKgC,SAASE,OAElC,MAAO,GAIP,MAAM,IAAI0G,MAAM,iFAUxB3I,EAAKkI,uBAAuBtG,UAAUQ,gBAAkB,WAEpD,GAAKrC,KAAKS,UAKVT,KAAK4G,gCAED5G,KAAK2B,gBAKT,IAAK,IAAIM,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGI,mBAKzBpC,EAAKkI,uBAAuBtG,UAAUiI,sCAAwC7J,EAAKkI,uBAAuBtG,UAAUQ,gBASpHpC,EAAKkI,uBAAuBtG,UAAUkI,UAAY,SAAUC,GAExD,IAgBI/H,EAhBAgI,EAAwCD,GAAyBA,aAAiC/J,EAAKC,cACvGgK,GAAsC,EAiB1C,GAfKD,EAMDC,EAFKF,aAAiC/J,EAAKkI,wBAEL6B,EAAsBG,SAASnK,MAJrEgK,EAAwBhK,KAaxBiK,EACJ,CACI,IAAIG,EAAcJ,EAAsBlJ,eAIxC,IAFAkJ,EAAsBlJ,eAAiBC,OAAOsJ,eAEzCpI,EAAI,EAAGA,EAAI+H,EAAsBhI,SAASE,OAAQD,IAEnD+H,EAAsBhI,SAASC,GAAGI,kBAI1C,IAMIiI,EACAC,EACAC,EARAC,EAAOC,EAAAA,EACPC,EAAOD,EAAAA,EAEPE,GAAQF,EAAAA,EACRG,GAAQH,EAAAA,EAMRI,GAAe,EAEnB,IAAK7I,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IACtC,CACgBjC,KAAKgC,SAASC,GAEfxB,UAKXqK,GAAe,EAIfL,EAAQA,GAFRH,EAActK,KAAKgC,SAASC,GAAG8H,aAEJzG,EAAKmH,EAAOH,EAAYhH,EACnDqH,EAAQA,EAAOL,EAAY/G,EAAKoH,EAAOL,EAAY/G,EAKnDqH,GAHAL,EAAYD,EAAY5F,MAAQ4F,EAAYhH,GAGpCsH,EAAoBA,EAAOL,EACnCM,GAHAL,EAAYF,EAAY3F,OAAS2F,EAAY/G,GAGrCsH,EAAoBA,EAAOL,GAGvC,IAAIlG,EAAStE,KAAKuB,QAElB,IAAKuJ,EACL,CAGI,IAAIC,GAFJzG,EAAS,IAAIrE,EAAKuB,WAEF8B,EACZ0H,EAAK1G,EAAOI,MAAQJ,EAAOhB,EAE3B2H,EAAK3G,EAAOf,EACZ2H,EAAK5G,EAAOK,OAASL,EAAOf,EAE5BzC,EAAiBd,KAAKc,eAEtB2B,EAAI3B,EAAe2B,EACnBC,EAAI5B,EAAe4B,EACnBC,EAAI7B,EAAe6B,EACnBC,EAAI9B,EAAe8B,EACnBC,EAAK/B,EAAe+B,GACpBC,EAAKhC,EAAegC,GAEpBqI,EAAK1I,EAAIuI,EAAKrI,EAAIuI,EAAKrI,EACvBuI,EAAKxI,EAAIsI,EAAKxI,EAAIsI,EAAKlI,EAEvBuI,EAAK5I,EAAIsI,EAAKpI,EAAIuI,EAAKrI,EACvByI,EAAK1I,EAAIsI,EAAKxI,EAAIqI,EAAKjI,EAEvByI,EAAK9I,EAAIsI,EAAKpI,EAAIsI,EAAKpI,EACvB2I,EAAK5I,EAAIqI,EAAKvI,EAAIqI,EAAKjI,EAEvB2I,EAAKhJ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EACvB6I,EAAK9I,EAAIqI,EAAKvI,EAAIsI,EAAKlI,EAU3B2H,EAAOgB,GADPhB,EAAOc,GADPd,EAAOY,GAHPZ,EAHAG,EAAOO,GAMYE,EAAKZ,GACLc,EAAKd,GACLgB,EAAKhB,EAIxBE,EAAOe,GADPf,EAAOa,GADPb,EAAOW,GANPX,EAHAE,EAAOO,GASYE,EAAKX,GACLa,EAAKb,GACLe,EAAKf,EAIxBC,GADAA,GADAA,EAAYA,EAALS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAIxBC,GADAA,GADAA,EAAYA,EAALS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAQ5B,GALAvG,EAAOhB,EAAImH,EACXnG,EAAOf,EAAIoH,EACXrG,EAAOI,MAAQkG,EAAOH,EACtBnG,EAAOK,OAASkG,EAAOF,EAEnBV,EAIA,IAFAD,EAAsBlJ,eAAiBsJ,EAElCnI,EAAI,EAAGA,EAAI+H,EAAsBhI,SAASE,OAAQD,IAEnD+H,EAAsBhI,SAASC,GAAGI,kBAI1C,IAAK6H,EACL,CACI,IAAIyB,EAA8B3B,EAAsBD,YAExDzF,EAAOhB,GAAKqI,EAA4BrI,EACxCgB,EAAOf,GAAKoI,EAA4BpI,EAG5C,OAAOe,GASXrE,EAAKkI,uBAAuBtG,UAAU0C,eAAiB,WAEnD,OAAOvE,KAAK+J,UAAU/J,OAU1BC,EAAKkI,uBAAuBtG,UAAUsI,SAAW,SAAU5B,GAEvD,QAAKA,IAIIA,IAAUvI,MAMRA,KAAKmK,SAAS5B,EAAM3H,UAWnCX,EAAKkI,uBAAuBtG,UAAU6D,aAAe,SAAUJ,GAa3D,IAAIrD,EAXJ,GAAKjC,KAAKS,WAAWT,KAAKQ,OAAS,GAKnC,GAAIR,KAAK2B,eAEL3B,KAAKqF,oBAAoBC,QAM7B,GAAItF,KAAK0B,OAAS1B,KAAKsG,SACvB,CAgBI,IAdItG,KAAKsG,WAELhB,EAAcsG,YAAYC,QAC1BvG,EAAcwG,cAAcC,WAAW/L,KAAK4H,eAG5C5H,KAAK0B,QAEL4D,EAAcsG,YAAYI,OAC1B1G,EAAc2G,YAAYC,SAASlM,KAAKoH,KAAM9B,GAC9CA,EAAcsG,YAAYO,SAIzBlK,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAElCjC,KAAKgC,SAASC,GAAGyD,aAAaJ,GAGlCA,EAAcsG,YAAYI,OAEtBhM,KAAK0B,OAAS4D,EAAc2G,YAAYG,QAAQpM,KAAK0B,MAAO4D,GAC5DtF,KAAKsG,UAAYhB,EAAcwG,cAAcO,YAEjD/G,EAAcsG,YAAYO,aAK1B,IAAKlK,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAElCjC,KAAKgC,SAASC,GAAGyD,aAAaJ,IAY1CrF,EAAKkI,uBAAuBtG,UAAU8D,cAAgB,SAAUL,GAE5D,IAAqB,IAAjBtF,KAAKS,SAAoC,IAAfT,KAAKQ,MAKnC,GAAIR,KAAK2B,eAEL3B,KAAKqF,oBAAoBC,OAF7B,CAMItF,KAAK0B,OAEL4D,EAAc2G,YAAYC,SAASlM,KAAK0B,MAAO4D,GAGnD,IAAK,IAAIrD,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAG0D,cAAcL,GAG/BtF,KAAK0B,OAEL4D,EAAc2G,YAAYG,QAAQ9G,KAU1CuB,OAAOyF,eAAerM,EAAKkI,uBAAuBtG,UAAW,QAAS,CAElEkF,IAAK,WAED,OAAO/G,KAAKuE,iBAAiBG,MAAQ1E,KAAKK,MAAMiD,GAGpD0D,IAAK,SAAUC,GAEX,IAAIvC,EAAQ1E,KAAKuE,iBAAiBG,MAI9B1E,KAAKK,MAAMiD,EAFD,IAAVoB,EAEeuC,EAAQvC,EAIR,EAGnB1E,KAAKuM,OAAStF,KAUtBJ,OAAOyF,eAAerM,EAAKkI,uBAAuBtG,UAAW,SAAU,CAEnEkF,IAAK,WAED,OAAO/G,KAAKuE,iBAAiBI,OAAS3E,KAAKK,MAAMkD,GAGrDyD,IAAK,SAAUC,GAEX,IAAItC,EAAS3E,KAAKuE,iBAAiBI,OAI/B3E,KAAKK,MAAMkD,EAFA,IAAXoB,EAEesC,EAAQtC,EAIR,EAGnB3E,KAAKwM,QAAUvF,KAiBvBhH,EAAKwF,OAAS,SAAUK,GAEpB7F,EAAKkI,uBAAuBpE,KAAK/D,MAajCA,KAAKwG,OAAS,IAAIvG,EAAKG,MAAMH,EAAKwF,OAAOgH,cAAcnJ,EAAGrD,EAAKwF,OAAOgH,cAAclJ,GAQpFvD,KAAK8F,QAAUA,GAAW7F,EAAKyM,QAAQC,aASvC3M,KAAKuM,OAAS,EASdvM,KAAKwM,QAAU,EASfxM,KAAK4M,KAAO,SAUZ5M,KAAK6M,YAAc,EASnB7M,KAAKyG,cAAgB,KAWrBzG,KAAK8H,UAAY7H,EAAK8H,WAAWE,OAUjCjI,KAAK8M,OAAS,KASd9M,KAAK+M,QAAS,EAEV/M,KAAK8F,QAAQG,YAAY+G,WAEzBhN,KAAKiN,kBAGTjN,KAAKW,YAAa,GAQtBV,EAAKwF,OAAOgH,cAAgB,CAACnJ,EAAG,EAAGC,EAAG,GAGtCtD,EAAKwF,OAAO5D,UAAYgF,OAAOwB,OAAOpI,EAAKkI,uBAAuBtG,WAClE5B,EAAKwF,OAAO5D,UAAUC,YAAc7B,EAAKwF,OAQzCoB,OAAOyF,eAAerM,EAAKwF,OAAO5D,UAAW,QAAS,CAElDkF,IAAK,WAED,OAAO/G,KAAKK,MAAMiD,EAAItD,KAAK8F,QAAQoH,MAAMxI,OAG7CsC,IAAK,SAAUC,GAEXjH,KAAKK,MAAMiD,EAAI2D,EAAQjH,KAAK8F,QAAQoH,MAAMxI,MAC1C1E,KAAKuM,OAAStF,KAWtBJ,OAAOyF,eAAerM,EAAKwF,OAAO5D,UAAW,SAAU,CAEnDkF,IAAK,WAED,OAAO/G,KAAKK,MAAMkD,EAAIvD,KAAK8F,QAAQoH,MAAMvI,QAG7CqC,IAAK,SAAUC,GAEXjH,KAAKK,MAAMkD,EAAI0D,EAAQjH,KAAK8F,QAAQoH,MAAMvI,OAC1C3E,KAAKwM,QAAUvF,KAavBhH,EAAKwF,OAAO5D,UAAUsL,WAAa,SAAUrH,EAASsH,GAE9CA,GAEApN,KAAK8F,QAAQG,YAAYlE,UAI7B/B,KAAK8F,QAAQG,YAAYoH,YAAa,EACtCrN,KAAK8F,QAAUA,EACf9F,KAAK8F,QAAQwH,OAAQ,EACrBtN,KAAK6M,YAAc,GAUvB5M,EAAKwF,OAAO5D,UAAUoL,gBAAkB,WAGhCjN,KAAKuM,SAAUvM,KAAKK,MAAMiD,EAAItD,KAAKuM,OAASvM,KAAK8F,QAAQoH,MAAMxI,OAC/D1E,KAAKwM,UAAWxM,KAAKK,MAAMkD,EAAIvD,KAAKwM,QAAUxM,KAAK8F,QAAQoH,MAAMvI,SAiBzE1E,EAAKwF,OAAO5D,UAAUkI,UAAY,SAAUwD,GAExC,IAAI7I,EAAQ1E,KAAK8F,QAAQoH,MAAMxI,MAC3BC,EAAS3E,KAAK8F,QAAQoH,MAAMvI,OAE5BoG,EAAKrG,GAAS,EAAI1E,KAAKwG,OAAOlD,GAC9B0H,EAAKtG,GAAS1E,KAAKwG,OAAOlD,EAE1B2H,EAAKtG,GAAU,EAAI3E,KAAKwG,OAAOjD,GAC/B2H,EAAKvG,GAAU3E,KAAKwG,OAAOjD,EAE3BzC,EAAiByM,GAAUvN,KAAKc,eAEhC2B,EAAI3B,EAAe2B,EACnBC,EAAI5B,EAAe4B,EACnBC,EAAI7B,EAAe6B,EACnBC,EAAI9B,EAAe8B,EACnBC,EAAK/B,EAAe+B,GACpBC,EAAKhC,EAAegC,GAEpB8H,GAAQF,EAAAA,EACRG,GAAQH,EAAAA,EAERD,EAAOC,EAAAA,EACPC,EAAOD,EAAAA,EAEX,GAAU,IAANhI,GAAiB,IAANC,EACf,CAEI,GAAIF,EAAI,EACR,CACIA,IAAM,EACN,IAAI+K,EAAOzC,EACXA,GAAMC,EACNA,GAAMwC,EAGV,GAAI5K,EAAI,EACR,CACIA,IAAM,EACF4K,EAAOvC,EACXA,GAAMC,EACNA,GAAMsC,EAOV/C,EAAOhI,EAAIuI,EAAKnI,EAChB+H,EAAOnI,EAAIsI,EAAKlI,EAChB8H,EAAO/H,EAAIsI,EAAKpI,EAChB+H,EAAOjI,EAAIqI,EAAKnI,MAGpB,CACI,IAAIqI,EAAK1I,EAAIuI,EAAKrI,EAAIuI,EAAKrI,EACvBuI,EAAKxI,EAAIsI,EAAKxI,EAAIsI,EAAKlI,EAEvBuI,EAAK5I,EAAIsI,EAAKpI,EAAIuI,EAAKrI,EACvByI,EAAK1I,EAAIsI,EAAKxI,EAAIqI,EAAKjI,EAEvByI,EAAK9I,EAAIsI,EAAKpI,EAAIsI,EAAKpI,EACvB2I,EAAK5I,EAAIqI,EAAKvI,EAAIqI,EAAKjI,EAEvB2I,EAAKhJ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EACvB6I,EAAK9I,EAAIqI,EAAKvI,EAAIsI,EAAKlI,EAK3B2H,EAAOgB,GADPhB,EAAOc,GADPd,EAAOY,GADPZ,EAAOU,EAAKV,EAAOU,EAAKV,GACLY,EAAKZ,GACLc,EAAKd,GACLgB,EAAKhB,EAKxBE,EAAOe,GADPf,EAAOa,GADPb,EAAOW,GADPX,EAAOS,EAAKT,EAAOS,EAAKT,GACLW,EAAKX,GACLa,EAAKb,GACLe,EAAKf,EAKxBC,GADAA,GADAA,GADAA,EAAYA,EAALO,EAAYA,EAAKP,GACjBS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAKxBC,GADAA,GADAA,GADAA,EAAYA,EAALO,EAAYA,EAAKP,GACjBS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAG5B,IAAIvG,EAAStE,KAAKuB,QAWlB,OATA+C,EAAOhB,EAAImH,EACXnG,EAAOI,MAAQkG,EAAOH,EAEtBnG,EAAOf,EAAIoH,EACXrG,EAAOK,OAASkG,EAAOF,EAGvB3K,KAAKyB,eAAiB6C,GAW1BrE,EAAKwF,OAAO5D,UAAU0C,eAAiB,WAEnC,IAAI6F,EAAcpK,KAAKc,eAEvBd,KAAKc,eAAiBC,OAAOsJ,eAE7B,IAAK,IAAIpI,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGI,kBAGrB,IAAIiC,EAAStE,KAAK+J,YAIlB,IAFA/J,KAAKc,eAAiBsJ,EAEjBnI,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAElCjC,KAAKgC,SAASC,GAAGI,kBAGrB,OAAOiC,GAWXrE,EAAKwF,OAAO5D,UAAU6D,aAAe,SAAUJ,EAAeiI,GAG1D,GAAKvN,KAAKS,WAAWT,KAAKQ,OAAS,IAAMR,KAAKW,WAA9C,CAGA,IAAIqC,EAAKhD,KAAKc,eAQd,GANIyM,IAEAvK,EAAKuK,GAILvN,KAAK0B,OAAS1B,KAAKsG,SACvB,CACI,IAAIsF,EAActG,EAAcsG,YAG5B5L,KAAKsG,WAELsF,EAAYC,QACZvG,EAAcwG,cAAcC,WAAW/L,KAAK4H,eAG5C5H,KAAK0B,QAELkK,EAAYI,OACZ1G,EAAc2G,YAAYC,SAASlM,KAAKoH,KAAM9B,GAC9CsG,EAAYO,SAIhBP,EAAY/G,OAAO7E,MAGnB,IAAK,IAAIiC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGyD,aAAaJ,GAIlCsG,EAAYI,OAERhM,KAAK0B,OAAS4D,EAAc2G,YAAYG,QAAQpM,KAAK0B,MAAO4D,GAC5DtF,KAAKsG,UAAYhB,EAAcwG,cAAcO,YAEjDT,EAAYO,YAGhB,CACI7G,EAAcsG,YAAY/G,OAAO7E,MAGjC,IAASiC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGyD,aAAaJ,EAAetC,MAazD/C,EAAKwF,OAAO5D,UAAU8D,cAAgB,SAAUL,EAAeiI,GAG3D,MAAKvN,KAAKS,SAA0B,IAAfT,KAAKQ,QAAgBR,KAAKW,YAAcX,KAAK8F,QAAQ2H,KAAK/I,MAAQ,GAAK1E,KAAK8F,QAAQ2H,KAAK9I,OAAS,GAAvH,CAKA,IAAI3B,EAAKhD,KAAKc,eAoBd,GAjBIyM,IAEAvK,EAAKuK,GAGLvN,KAAK8H,YAAcxC,EAAcoI,mBAEjCpI,EAAcoI,iBAAmB1N,KAAK8H,UACtCxC,EAAcqI,QAAQC,yBAA2B3N,EAAK4N,iBAAiBvI,EAAcoI,mBAGrF1N,KAAK0B,OAEL4D,EAAc2G,YAAYC,SAASlM,KAAK0B,MAAO4D,GAI9CtF,KAAK8F,QAAQwH,MAAlB,CAgBA,IAAInJ,EAAanE,KAAK8F,QAAQG,YAAY9B,WAAamB,EAAcnB,WAErEmB,EAAcqI,QAAQG,YAAc9N,KAAKa,WAGrCyE,EAAcyI,gBAAkBzI,EAAclB,YAAcpE,KAAK8F,QAAQG,YAAY7B,YAErFkB,EAAclB,UAAYpE,KAAK8F,QAAQG,YAAY7B,UACnDkB,EAAcqI,QAAQrI,EAAcyI,gBAAmBzI,EAAclB,YAAcnE,EAAK+N,WAAWC,QAIvG,IAAIC,EAAMlO,KAAK8F,QAAY,KAAI9F,KAAK8F,QAAQqI,KAAK7K,EAAItD,KAAKwG,OAAOlD,EAAItD,KAAK8F,QAAQqI,KAAKzJ,MAAQ1E,KAAKwG,OAAOlD,GAAKtD,KAAK8F,QAAQoH,MAAMxI,MAC/H0J,EAAMpO,KAAK8F,QAAY,KAAI9F,KAAK8F,QAAQqI,KAAK5K,EAAIvD,KAAKwG,OAAOjD,EAAIvD,KAAK8F,QAAQqI,KAAKxJ,OAAS3E,KAAKwG,OAAOjD,GAAKvD,KAAK8F,QAAQoH,MAAMvI,OAEhI9B,EAAMG,EAAGH,GAAKyC,EAAcnB,WAAcmB,EAAc+I,OACxDvL,EAAME,EAAGF,GAAKwC,EAAcnB,WAAcmB,EAAcgJ,OAExDC,EAAKvO,KAAK8F,QAAQ2H,KAAK/I,MACvB8J,EAAKxO,KAAK8F,QAAQ2H,KAAK9I,OAE3B,GAAI3E,KAAK8F,QAAQ2I,QACjB,CACI,IAAIhM,EAAIO,EAAGP,EACPC,EAAIM,EAAGN,EACPC,EAAIK,EAAGL,EACPC,EAAII,EAAGJ,EACP8L,EAAIH,EAGR1L,EAAKG,EAAGL,EAAI6L,EAAK3L,EACjBC,EAAKE,EAAGJ,EAAI4L,EAAK1L,EAMjBE,EAAGP,EAAQ,qBAAJA,EAA6BE,EACpCK,EAAGN,EAAQ,qBAAJA,EAA6BE,EACpCI,EAAGL,EAAIF,EAAQ,qBAAJE,EACXK,EAAGJ,EAAIF,EAAQ,qBAAJE,EAGX2L,EAAKC,EACLA,EAAKE,EAqBT,GAjBIpJ,EAAcqJ,aAEdrJ,EAAcqI,QAAQiB,aAAa5L,EAAGP,EAAGO,EAAGN,EAAGM,EAAGL,EAAGK,EAAGJ,EAAQ,EAALC,EAAa,EAALC,GACnEoL,GAAM,EACNE,GAAM,GAIN9I,EAAcqI,QAAQiB,aAAa5L,EAAGP,EAAGO,EAAGN,EAAGM,EAAGL,EAAGK,EAAGJ,EAAGC,EAAIC,GAGnEoL,GAAM/J,EACNiK,GAAMjK,EAGNqK,GAAM,GADND,GAAM,IAGMC,EAAZ,CAKA,GAAkB,WAAdxO,KAAK4M,MAED5M,KAAK8F,QAAQ+I,gBAAkB7O,KAAK6M,aAAe7M,KAAK4M,QAExD5M,KAAKyG,cAAgBxG,EAAK6O,aAAaC,iBAAiB/O,KAAMA,KAAK4M,MAEnE5M,KAAK6M,WAAa7M,KAAK4M,KACvB5M,KAAK8F,QAAQ+I,gBAAiB,GAGlCvJ,EAAcqI,QAAQqB,UAAUhP,KAAKyG,cAAe,EAAG,EAAG8H,EAAIC,EAAIN,EAAIE,EAAIG,EAAKpK,EAAYqK,EAAKrK,OAGpG,CACI,IAAI8K,EAAKjP,KAAK8F,QAAQ2H,KAAKnK,EACvB4L,EAAKlP,KAAK8F,QAAQ2H,KAAKlK,EAE3B+B,EAAcqI,QAAQqB,UAAUhP,KAAK8F,QAAQG,YAAYkJ,OAAQF,EAAIC,EAAIX,EAAIC,EAAIN,EAAIE,EAAIG,EAAKpK,EAAYqK,EAAKrK,GAGnH,IAASlC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAG0D,cAAcL,GAG/BtF,KAAK0B,OAEL4D,EAAc2G,YAAYG,QAAQ9G,QAjHtC,CAGI,IAAK,IAAIrD,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAG0D,cAAcL,GAG/BtF,KAAK0B,OAEL4D,EAAc2G,YAAYG,QAAQ9G,MAoH9CrF,EAAKmP,mBAAqB,aAW1BnP,EAAKoP,oBAAsB,SAAU7J,EAAI8J,GAErC,OAAOrP,EAAKsP,eAAe/J,EAAI8J,EAAW9J,EAAGgK,gBAUjDvP,EAAKwP,sBAAwB,SAAUjK,EAAI8J,GAEvC,OAAOrP,EAAKsP,eAAe/J,EAAI8J,EAAW9J,EAAGkK,kBAYjDzP,EAAKsP,eAAiB,SAAU/J,EAAI8J,EAAWK,GAE3C,IAAIC,EAAMN,EAENhI,MAAMC,QAAQ+H,KAEdM,EAAMN,EAAUO,KAAK,OAGzB,IAAI/C,EAAStH,EAAGsK,aAAaH,GAI7B,OAHAnK,EAAGuK,aAAajD,EAAQ8C,GACxBpK,EAAGwK,cAAclD,GAEZtH,EAAGyK,mBAAmBnD,EAAQtH,EAAG0K,gBAM/BpD,GAJHqD,OAAOC,QAAQC,IAAI7K,EAAG8K,iBAAiBxD,IAChC,OAcf7M,EAAKsQ,eAAiB,SAAU/K,EAAIgL,EAAWC,GAE3C,IAAIC,EAAiBzQ,EAAKwP,sBAAsBjK,EAAIiL,GAChDE,EAAe1Q,EAAKoP,oBAAoB7J,EAAIgL,GAE5CI,EAAgBpL,EAAGqL,gBAYvB,OAVArL,EAAGsL,aAAaF,EAAeD,GAC/BnL,EAAGsL,aAAaF,EAAeF,GAC/BlL,EAAGuL,YAAYH,GAEVpL,EAAGwL,oBAAoBJ,EAAepL,EAAGyL,eAE1Cd,OAAOC,QAAQC,IAAI7K,EAAG0L,kBAAkBN,IACxCT,OAAOC,QAAQC,IAAI,iCAGhBO,GAaX3Q,EAAKkR,WAAa,SAAU3L,GAOxBxF,KAAKoR,KAAOrQ,OAAOqQ,OAMnBpR,KAAKwF,GAAKA,EAOVxF,KAAKqR,QAAU,KAOfrR,KAAKyQ,YAAc,KAOnBzQ,KAAKsR,aAAe,EAQpBtR,KAAKuR,UAAW,EAOhBvR,KAAKwR,OAAQ,EAQbxR,KAAKyR,WAAa,GAElBzR,KAAK0R,QAGTzR,EAAKkR,WAAWtP,UAAUC,YAAc7B,EAAKkR,WAE7ClR,EAAKkR,WAAWtP,UAAU8P,mBAAqB,WAE3C,IAAInM,EAAKxF,KAAKwF,GACdxF,KAAK4R,aAAepM,EAAGqM,aAAarM,EAAGsM,yBAEvC,IADA,IAAIC,EAAa,8GACRtJ,EAAQ,EAAGA,EAAQzI,KAAK4R,eAAgBnJ,EAE7CsJ,GAAc,0BACFtJ,EAAQ,+CACRA,EAAQ,wCAExBzI,KAAKyQ,YAAc,CACf,iCACA,wBACA,+FACA,8BACA,uBACA,+BACA,mCAAqCzQ,KAAK4R,aAAe,KAMzD,8CAMA,6CACA,oBACAG,EACA,0BAA4B/R,KAAK4R,aAAe,qCAChD,4DACA,KAGJ,IAAIP,EAAUpR,EAAKsQ,eAAe/K,EAAIxF,KAAKwQ,WAAavQ,EAAKkR,WAAWa,iBAAkBhS,KAAKyQ,aAE/FjL,EAAGyM,WAAWZ,GAMdrR,KAAKkS,cAAgB1M,EAAG2M,mBAAmBd,EAAS,oBACpDrR,KAAKoS,iBAAmB5M,EAAG2M,mBAAmBd,EAAS,oBACvDrR,KAAKqS,aAAe7M,EAAG2M,mBAAmBd,EAAS,gBACnDrR,KAAKsS,WAAa9M,EAAG2M,mBAAmBd,EAAS,cAGjDrR,KAAKuS,gBAAkB/M,EAAGgN,kBAAkBnB,EAAS,mBACrDrR,KAAKyS,cAAgBjN,EAAGgN,kBAAkBnB,EAAS,iBACnDrR,KAAK0S,eAAiBlN,EAAGgN,kBAAkBnB,EAAS,UACpDrR,KAAK2S,cAAgBnN,EAAGgN,kBAAkBnB,EAAS,iBAEnD,IAAIuB,EAAU,GAGVC,EAAcrN,EAAGsN,gBACrBtN,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAGyN,YAAYzN,EAAG0N,WAAYL,GAC9BrN,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG1N,EAAG4N,IAAK,EAAG,EAAG,EAAG5N,EAAG4N,IAAK5N,EAAG6N,cAAe,MAC3E,IAAK,IAAIpR,EAAI,EAAGA,EAAIjC,KAAK4R,eAAgB3P,EAErCuD,EAAGuN,cAAcvN,EAAGwN,SAAW/Q,GAC/BuD,EAAGyN,YAAYzN,EAAG0N,WAAYL,GAC9BD,EAAQjL,KAAK1F,GAuBjB,IAAK,IAAIqR,KArBT9N,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAG+N,WAAWvT,KAAKkS,cAAeU,IAUN,IAAzB5S,KAAK0S,iBAEJ1S,KAAK0S,eAAiB,GAG1B1S,KAAKyR,WAAa,CAAEzR,KAAKuS,gBAAiBvS,KAAKyS,cAAezS,KAAK0S,eAAgB1S,KAAK2S,eAKxE3S,KAAKwT,SAGjBxT,KAAKwT,SAASF,GAAKG,gBAAkBjO,EAAG2M,mBAAmBd,EAASiC,GAGxEtT,KAAK0T,eAEL1T,KAAKqR,QAAUA,GAGnBpR,EAAKkR,WAAWtP,UAAU8R,kBAAoB,WAEjB,OAArB3T,KAAKyQ,cAELzQ,KAAKyQ,YAAc,CACf,wBACA,8BACA,uBACA,+BACA,8BACA,oBACA,kEACA,MAIR,IAAIjL,EAAKxF,KAAKwF,GAEV6L,EAAUpR,EAAKsQ,eAAe/K,EAAIxF,KAAKwQ,WAAavQ,EAAKkR,WAAWa,iBAAkBhS,KAAKyQ,aAkC/F,IAAK,IAAI6C,KAhCT9N,EAAGyM,WAAWZ,GAGdrR,KAAK4T,SAAWpO,EAAG2M,mBAAmBd,EAAS,YAC/CrR,KAAKoS,iBAAmB5M,EAAG2M,mBAAmBd,EAAS,oBACvDrR,KAAKqS,aAAe7M,EAAG2M,mBAAmBd,EAAS,gBACnDrR,KAAKsS,WAAa9M,EAAG2M,mBAAmBd,EAAS,cAGjDrR,KAAKuS,gBAAkB/M,EAAGgN,kBAAkBnB,EAAS,mBACrDrR,KAAKyS,cAAgBjN,EAAGgN,kBAAkBnB,EAAS,iBACnDrR,KAAK0S,eAAiBlN,EAAGgN,kBAAkBnB,EAAS,UACpDrR,KAAK2S,cAAgBnN,EAAGgN,kBAAkBnB,EAAS,kBAUvB,IAAzBrR,KAAK0S,iBAEJ1S,KAAK0S,eAAiB,GAG1B1S,KAAKyR,WAAa,CAAEzR,KAAKuS,gBAAiBvS,KAAKyS,cAAezS,KAAK0S,eAAgB1S,KAAK2S,eAKxE3S,KAAKwT,SAGjBxT,KAAKwT,SAASF,GAAKG,gBAAkBjO,EAAG2M,mBAAmBd,EAASiC,GAGxEtT,KAAK0T,eAEL1T,KAAKqR,QAAUA,GAQnBpR,EAAKkR,WAAWtP,UAAU6P,KAAO,SAAUmC,GAEnC5T,EAAKiG,4BAA8B2N,EAEnC7T,KAAK2R,qBAIL3R,KAAK2T,qBAYb1T,EAAKkR,WAAWtP,UAAU6R,aAAe,WAErC1T,KAAKsR,aAAe,EACpB,IACIwC,EADAtO,EAAKxF,KAAKwF,GAGd,IAAK,IAAI8N,KAAOtT,KAAKwT,SACrB,CAGI,IAAIO,GAFJD,EAAU9T,KAAKwT,SAASF,IAELS,KAEN,cAATA,GAEAD,EAAQE,OAAQ,EAEM,OAAlBF,EAAQ7M,OAERjH,KAAKiU,cAAcH,IAGT,SAATC,GAA4B,SAATA,GAA4B,SAATA,GAG3CD,EAAQI,UAAW,EACnBJ,EAAQK,cAAgB,EAEX,SAATJ,EAEAD,EAAQM,OAAS5O,EAAG6O,iBAEN,SAATN,EAELD,EAAQM,OAAS5O,EAAG8O,iBAEN,SAATP,IAELD,EAAQM,OAAS5O,EAAG+O,oBAMxBT,EAAQM,OAAS5O,EAAG,UAAYuO,GAI5BD,EAAQK,cAFC,OAATJ,GAA0B,OAATA,EAEO,EAEV,OAATA,GAA0B,OAATA,EAEE,EAEV,OAATA,GAA0B,OAATA,EAEE,EAIA,KAWxC9T,EAAKkR,WAAWtP,UAAUoS,cAAgB,SAAUH,GAEhD,GAAKA,EAAQ7M,OAAU6M,EAAQ7M,MAAMhB,aAAgB6N,EAAQ7M,MAAMhB,YAAY+G,UAA/E,CAKA,IAAIxH,EAAKxF,KAAKwF,GAOd,GAJAA,EAAGuN,cAAcvN,EAAGwN,SAAWhT,KAAKsR,cACpC9L,EAAGyN,YAAYzN,EAAG0N,WAAYY,EAAQ7M,MAAMhB,YAAYuO,YAAYhP,EAAGiP,KAGnEX,EAAQY,YACZ,CACI,IAAIC,EAAOb,EAAQY,YAgBfE,EAAaD,EAAc,UAAIA,EAAKC,UAAYpP,EAAGyI,OACnD4G,EAAaF,EAAc,UAAIA,EAAKE,UAAYrP,EAAGyI,OACnD6G,EAASH,EAAU,MAAIA,EAAKG,MAAQtP,EAAGuP,cACvCC,EAASL,EAAU,MAAIA,EAAKK,MAAQxP,EAAGuP,cACvCE,EAAUN,EAAc,UAAInP,EAAG0P,UAAY1P,EAAG2P,KAUlD,GARIR,EAAKS,SAELN,EAAQtP,EAAG6P,OACXL,EAAQxP,EAAG6P,QAGf7P,EAAG8P,YAAY9P,EAAG+P,sBAAuBZ,EAAKa,OAE1Cb,EAAKjQ,MACT,CACI,IAAIA,EAASiQ,EAAU,MAAIA,EAAKjQ,MAAQ,IACpCC,EAAUgQ,EAAW,OAAIA,EAAKhQ,OAAS,EACvC8Q,EAAUd,EAAW,OAAIA,EAAKc,OAAS,EAG3CjQ,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG+B,EAAQvQ,EAAOC,EAAQ8Q,EAAQR,EAAQzP,EAAG6N,cAAe,WAKzF7N,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG+B,EAAQzP,EAAG2P,KAAM3P,EAAG6N,cAAeS,EAAQ7M,MAAMhB,YAAYkJ,QAGjG3J,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGmQ,mBAAoBf,GACvDpP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGoQ,mBAAoBf,GACvDrP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGqQ,eAAgBf,GACnDtP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGsQ,eAAgBd,GAGvDxP,EAAGuQ,UAAUjC,EAAQL,gBAAiBzT,KAAKsR,cAE3CwC,EAAQE,OAAQ,EAEhBhU,KAAKsR,iBAQTrR,EAAKkR,WAAWtP,UAAUmU,aAAe,WAGrC,IAAIlC,EADJ9T,KAAKsR,aAAe,EAEpB,IAAI9L,EAAKxF,KAAKwF,GAGd,IAAK,IAAI8N,KAAOtT,KAAKwT,SAGa,KAD9BM,EAAU9T,KAAKwT,SAASF,IACZa,eAEiB,IAArBL,EAAQI,SAERJ,EAAQM,OAAOrQ,KAAKyB,EAAIsO,EAAQL,gBAAiBK,EAAQmC,UAAWnC,EAAQ7M,OAI5E6M,EAAQM,OAAOrQ,KAAKyB,EAAIsO,EAAQL,gBAAiBK,EAAQ7M,OAG9B,IAA1B6M,EAAQK,cAEbL,EAAQM,OAAOrQ,KAAKyB,EAAIsO,EAAQL,gBAAiBK,EAAQ7M,MAAM3D,EAAGwQ,EAAQ7M,MAAM1D,GAEjD,IAA1BuQ,EAAQK,cAEbL,EAAQM,OAAOrQ,KAAKyB,EAAIsO,EAAQL,gBAAiBK,EAAQ7M,MAAM3D,EAAGwQ,EAAQ7M,MAAM1D,EAAGuQ,EAAQ7M,MAAMiP,GAElE,IAA1BpC,EAAQK,cAEbL,EAAQM,OAAOrQ,KAAKyB,EAAIsO,EAAQL,gBAAiBK,EAAQ7M,MAAM3D,EAAGwQ,EAAQ7M,MAAM1D,EAAGuQ,EAAQ7M,MAAMiP,EAAGpC,EAAQ7M,MAAMkP,GAE5F,cAAjBrC,EAAQC,OAETD,EAAQE,OAERxO,EAAGuN,cAAcvN,EAAG,UAAYxF,KAAKsR,eAElCwC,EAAQ7M,MAAMhB,YAAYmQ,OAAO5Q,EAAGiP,IAEnCxU,EAAKoW,UAAU7Q,EAAGiP,IAAI6B,cAAcxC,EAAQ7M,MAAMhB,aAKlDT,EAAGyN,YAAYzN,EAAG0N,WAAYY,EAAQ7M,MAAMhB,YAAYuO,YAAYhP,EAAGiP,KAI3EjP,EAAGuQ,UAAUjC,EAAQL,gBAAiBzT,KAAKsR,cAC3CtR,KAAKsR,gBAILtR,KAAKiU,cAAcH,KAWnC7T,EAAKkR,WAAWtP,UAAUE,QAAU,WAEhC/B,KAAKwF,GAAG+Q,cAAcvW,KAAKqR,SAC3BrR,KAAKwT,SAAW,KAChBxT,KAAKwF,GAAK,KAEVxF,KAAKyR,WAAa,MAStBxR,EAAKkR,WAAWa,iBAAmB,CAC/B,8BACA,kCACA,kCACA,gCACA,yBACA,iCAEA,iCACA,6BAEA,8BACA,uBACA,+BAEA,uCAEA,oBACA,uDACA,qGACA,oCACA,qDACA,oCACA,KAYJ/R,EAAKuW,eAAiB,SAAUhR,GAsB5B,GAfAxF,KAAKoR,KAAOrQ,OAAOqQ,OAMnBpR,KAAKwF,GAAKA,EAOVxF,KAAKqR,QAAU,KAEXpR,EAAKiG,0BACT,CACQV,EAAKxF,KAAKwF,GACdxF,KAAK4R,aAAepM,EAAGqM,aAAarM,EAAGsM,yBAEvC,IADA,IAAIC,EAAa,8GACRtJ,EAAQ,EAAGA,EAAQzI,KAAK4R,eAAgBnJ,EAE7CsJ,GAAc,0BACFtJ,EAAQ,gDACRA,EAAQ,wCAQxBzI,KAAKyQ,YAAc,CACf,qCACA,wBACA,+FACA,8BACA,wBACA,+BACA,mCAAqCzQ,KAAK4R,aAAe,KAMzD,8CAMA,6CACA,oBACAG,EACA,0BAA4B/R,KAAK4R,aAAe,qCAChD,2DACA,UAKJ5R,KAAKyQ,YAAc,CACf,qCACA,wBACA,8BACA,wBACA,+BACA,8BACA,oBACA,iEACA,KASRzQ,KAAKwQ,UAAY,CACb,mCACA,kCACA,iCACA,yBACA,6BACA,gCACA,0BACA,iCAEA,iCACA,6BACA,wBAEA,8BACA,wBACA,+BAEA,uCAEA,oBACA,aACA,yCACA,8DACA,8DACA,2DACA,uEACA,oCACA,oCAGA,sBACA,KAQJxQ,KAAKsR,aAAe,EAEpBtR,KAAK0R,QAGTzR,EAAKuW,eAAe3U,UAAUC,YAAc7B,EAAKuW,eAOjDvW,EAAKuW,eAAe3U,UAAU6P,KAAO,WAEjC,IAAIlM,EAAKxF,KAAKwF,GACV6L,EAAUpR,EAAKsQ,eAAe/K,EAAIxF,KAAKwQ,UAAWxQ,KAAKyQ,aAS3D,GAPAjL,EAAGyM,WAAWZ,GAGdrR,KAAK4T,SAAW3T,EAAKiG,0BACjBV,EAAG2M,mBAAmBd,EAAS,oBAC/B7L,EAAG2M,mBAAmBd,EAAS,YAE/BpR,EAAKiG,0BACT,CACI,IAAI0M,EAAU,GAGVC,EAAcrN,EAAGsN,gBACrBtN,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAGyN,YAAYzN,EAAG0N,WAAYL,GAC9BrN,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG1N,EAAG4N,IAAK,EAAG,EAAG,EAAG5N,EAAG4N,IAAK5N,EAAG6N,cAAe,MAC3E,IAAK,IAAIpR,EAAI,EAAGA,EAAIjC,KAAK4R,eAAgB3P,EAErCuD,EAAGuN,cAAcvN,EAAGwN,SAAW/Q,GAC/BuD,EAAGyN,YAAYzN,EAAG0N,WAAYL,GAC9BD,EAAQjL,KAAK1F,GAEjBuD,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAG+N,WAAWvT,KAAK4T,SAAUhB,GAGjC5S,KAAKoS,iBAAmB5M,EAAG2M,mBAAmBd,EAAS,oBACvDrR,KAAKqS,aAAe7M,EAAG2M,mBAAmBd,EAAS,gBACnDrR,KAAKsS,WAAa9M,EAAG2M,mBAAmBd,EAAS,cACjDrR,KAAKyW,QAAUjR,EAAG2M,mBAAmBd,EAAS,WAG9CrR,KAAKuS,gBAAkB/M,EAAGgN,kBAAkBnB,EAAS,mBACrDrR,KAAK0W,eAAiBlR,EAAGgN,kBAAkBnB,EAAS,kBAEpDrR,KAAK2W,OAASnR,EAAGgN,kBAAkBnB,EAAS,UAC5CrR,KAAK4W,UAAYpR,EAAGgN,kBAAkBnB,EAAS,aAE/CrR,KAAKyS,cAAgBjN,EAAGgN,kBAAkBnB,EAAS,iBACnDrR,KAAK0S,eAAiBlN,EAAGgN,kBAAkBnB,EAAS,UAEpDrR,KAAK2S,cAAgBnN,EAAGgN,kBAAkBnB,EAAS,kBAUtB,IAAzBrR,KAAK0S,iBAEL1S,KAAK0S,eAAiB,GAG1B1S,KAAKyR,WAAa,CACdzR,KAAKuS,gBACLvS,KAAK0W,eACL1W,KAAK2W,OACL3W,KAAK4W,UACL5W,KAAKyS,cACLzS,KAAK0S,eACL1S,KAAK2S,eAKT3S,KAAKqR,QAAUA,GAQnBpR,EAAKuW,eAAe3U,UAAUE,QAAU,WAEpC/B,KAAKwF,GAAG+Q,cAAcvW,KAAKqR,SAC3BrR,KAAKwT,SAAW,KAChBxT,KAAKwF,GAAK,KAEVxF,KAAKyR,WAAa,MAYtBxR,EAAK4W,YAAc,SAAUrR,GAsBzB,GAfAxF,KAAKoR,KAAOrQ,OAAOqQ,OAMnBpR,KAAKwF,GAAKA,EAOVxF,KAAKqR,QAAU,KAEXpR,EAAKiG,0BACT,CACQV,EAAKxF,KAAKwF,GACdxF,KAAK4R,aAAepM,EAAGqM,aAAarM,EAAGsM,yBAEvC,IADA,IAAIC,EAAa,qGACRtJ,EAAQ,EAAGA,EAAQzI,KAAK4R,eAAgBnJ,EAE7CsJ,GAAc,0BACFtJ,EAAQ,gDACRA,EAAQ,gCAQxBzI,KAAKyQ,YAAc,CACf,iCACA,2BACA,+FACA,8BACA,+BAGA,uBACA,mCAAqCzQ,KAAK4R,aAAe,KAMzD,8CAMA,6CACA,oBACAG,EACA,0BAA4B/R,KAAK4R,aAAe,qCAChD,2DACA,UAUJ5R,KAAKyQ,YAAc,CACf,iCACA,2BACA,8BACA,+BAGA,uBACA,8BACA,oBACA,wDACA,KASRzQ,KAAKwQ,UAAY,CACb,+BACA,kCACA,gCACA,iCACA,kCACA,iCACA,6BAMA,8BACA,+BAIA,oBACA,+DACA,4BACA,qGACA,oCACA,oCAGA,KAGJxQ,KAAK0R,QAGTzR,EAAK4W,YAAYhV,UAAUC,YAAc7B,EAAK4W,YAO9C5W,EAAK4W,YAAYhV,UAAU6P,KAAO,WAE9B,IAAIlM,EAAKxF,KAAKwF,GACV6L,EAAUpR,EAAKsQ,eAAe/K,EAAIxF,KAAKwQ,UAAWxQ,KAAKyQ,aAQ3D,GAPAjL,EAAGyM,WAAWZ,GAGdrR,KAAK4T,SAAW3T,EAAKiG,0BACjBV,EAAG2M,mBAAmBd,EAAS,oBAC/B7L,EAAG2M,mBAAmBd,EAAS,YAE/BpR,EAAKiG,0BACT,CACI,IAAI0M,EAAU,GAGVC,EAAcrN,EAAGsN,gBACrBtN,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAGyN,YAAYzN,EAAG0N,WAAYL,GAC9BrN,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG1N,EAAG4N,IAAK,EAAG,EAAG,EAAG5N,EAAG4N,IAAK5N,EAAG6N,cAAe,MAC3E,IAAK,IAAIpR,EAAI,EAAGA,EAAIjC,KAAK4R,eAAgB3P,EAErCuD,EAAGuN,cAAcvN,EAAGwN,SAAW/Q,GAC/BuD,EAAGyN,YAAYzN,EAAG0N,WAAYL,GAC9BD,EAAQjL,KAAK1F,GAEjBuD,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAG+N,WAAWvT,KAAK4T,SAAUhB,GAGjC5S,KAAKoS,iBAAmB5M,EAAG2M,mBAAmBd,EAAS,oBACvDrR,KAAKqS,aAAe7M,EAAG2M,mBAAmBd,EAAS,gBACnDrR,KAAK0S,eAAiBlN,EAAGgN,kBAAkBnB,EAAS,UACpDrR,KAAK2S,cAAgBnN,EAAGgN,kBAAkBnB,EAAS,iBAKnDrR,KAAKuS,gBAAkB/M,EAAGgN,kBAAkBnB,EAAS,mBACrDrR,KAAKyS,cAAgBjN,EAAGgN,kBAAkBnB,EAAS,iBAEnDrR,KAAKyR,WAAa,CAAEzR,KAAKuS,gBAAiBvS,KAAKyS,cAAezS,KAAK2S,eAEnE3S,KAAK8W,kBAAoBtR,EAAG2M,mBAAmBd,EAAS,qBACxDrR,KAAKQ,MAAQgF,EAAG2M,mBAAmBd,EAAS,SAE5CrR,KAAKqR,QAAUA,GAQnBpR,EAAK4W,YAAYhV,UAAUE,QAAU,WAEjC/B,KAAKwF,GAAG+Q,cAAcvW,KAAKqR,SAC3BrR,KAAKwT,SAAW,KAChBxT,KAAKwF,GAAK,KAEVxF,KAAK+W,UAAY,MAYrB9W,EAAK+W,gBAAkB,SAAUxR,GAO7BxF,KAAKoR,KAAOrQ,OAAOqQ,OAMnBpR,KAAKwF,GAAKA,EAOVxF,KAAKqR,QAAU,KAOfrR,KAAKyQ,YAAc,CACf,2BACA,uBAEA,oBACA,4BACA,KAQJzQ,KAAKwQ,UAAY,CACb,kCACA,yBACA,kCACA,iCACA,6BACA,uBACA,uBACA,qBACA,uBAEA,oBACA,+DACA,4BACA,iHACA,kDACA,KAGJxQ,KAAK0R,QAGTzR,EAAK+W,gBAAgBnV,UAAUC,YAAc7B,EAAK+W,gBAOlD/W,EAAK+W,gBAAgBnV,UAAU6P,KAAO,WAElC,IAAIlM,EAAKxF,KAAKwF,GAEV6L,EAAUpR,EAAKsQ,eAAe/K,EAAIxF,KAAKwQ,UAAWxQ,KAAKyQ,aAC3DjL,EAAGyM,WAAWZ,GAGdrR,KAAKoS,iBAAmB5M,EAAG2M,mBAAmBd,EAAS,oBACvDrR,KAAKqS,aAAe7M,EAAG2M,mBAAmBd,EAAS,gBACnDrR,KAAKiX,UAAYzR,EAAG2M,mBAAmBd,EAAS,QAChDrR,KAAKwV,MAAQhQ,EAAG2M,mBAAmBd,EAAS,SAG5CrR,KAAKuS,gBAAkB/M,EAAGgN,kBAAkBnB,EAAS,mBACrDrR,KAAK0S,eAAiBlN,EAAGgN,kBAAkBnB,EAAS,UAEpDrR,KAAKyR,WAAa,CAAEzR,KAAKuS,gBAAiBvS,KAAK0S,gBAE/C1S,KAAK8W,kBAAoBtR,EAAG2M,mBAAmBd,EAAS,qBACxDrR,KAAKQ,MAAQgF,EAAG2M,mBAAmBd,EAAS,SAE5CrR,KAAKqR,QAAUA,GAQnBpR,EAAK+W,gBAAgBnV,UAAUE,QAAU,WAErC/B,KAAKwF,GAAG+Q,cAAcvW,KAAKqR,SAC3BrR,KAAKwT,SAAW,KAChBxT,KAAKwF,GAAK,KAEVxF,KAAKyR,WAAa,MAYtBxR,EAAKiX,uBAAyB,SAAU1R,GAOpCxF,KAAKoR,KAAOrQ,OAAOqQ,OAMnBpR,KAAKwF,GAAKA,EAOVxF,KAAKqR,QAAU,KAOfrR,KAAKyQ,YAAc,CAEf,2BAEA,uBAEA,oBACA,4BACA,KAQJzQ,KAAKwQ,UAAY,CACb,kCAGA,kCACA,iCACA,6BAEA,qBACA,uBACA,sBACA,uBACA,uBAEA,oBACA,+DACA,4BACA,iHACA,iDACA,KAGJxQ,KAAK0R,QAGTzR,EAAKiX,uBAAuBrV,UAAUC,YAAc7B,EAAKiX,uBAOzDjX,EAAKiX,uBAAuBrV,UAAU6P,KAAO,WAEzC,IAAIlM,EAAKxF,KAAKwF,GAEV6L,EAAUpR,EAAKsQ,eAAe/K,EAAIxF,KAAKwQ,UAAWxQ,KAAKyQ,aAC3DjL,EAAGyM,WAAWZ,GAGdrR,KAAKoS,iBAAmB5M,EAAG2M,mBAAmBd,EAAS,oBACvDrR,KAAKqS,aAAe7M,EAAG2M,mBAAmBd,EAAS,gBACnDrR,KAAKiX,UAAYzR,EAAG2M,mBAAmBd,EAAS,QAChDrR,KAAKmX,MAAQ3R,EAAG2M,mBAAmBd,EAAS,SAC5CrR,KAAKwV,MAAQhQ,EAAG2M,mBAAmBd,EAAS,SAG5CrR,KAAKuS,gBAAkB/M,EAAGgN,kBAAkBnB,EAAS,mBAIrDrR,KAAKyR,WAAa,CAAEzR,KAAKuS,gBAAiBvS,KAAK0S,gBAE/C1S,KAAK8W,kBAAoBtR,EAAG2M,mBAAmBd,EAAS,qBACxDrR,KAAKQ,MAAQgF,EAAG2M,mBAAmBd,EAAS,SAE5CrR,KAAKqR,QAAUA,GAQnBpR,EAAKiX,uBAAuBrV,UAAUE,QAAU,WAE5C/B,KAAKwF,GAAG+Q,cAAcvW,KAAKqR,SAC3BrR,KAAKwT,SAAW,KAChBxT,KAAKwF,GAAK,KAEVxF,KAAK+W,UAAY,MAOrB9W,EAAKmX,WAAa,GAClBnX,EAAKoW,UAAY,GACjBpW,EAAKiG,2BAA4B,EAYjCjG,EAAKoX,cAAgB,SAAU/U,EAAMgV,GAKjCtX,KAAKsC,KAAOA,EAEPrC,EAAKsX,kBAENtX,EAAKsX,gBAAkBvX,MAG3BA,KAAKwX,WAAa,GAMlBxX,KAAK+T,KAAOhT,OAAO0W,MASnBzX,KAAKmE,WAAa7B,EAAK6B,WAQvBnE,KAAK0X,YAAcpV,EAAKoV,YAQxB1X,KAAK2X,YAAa,EAQlB3X,KAAK4X,sBAAwBtV,EAAKsV,sBAYlC5X,KAAK6X,kBAAoBvV,EAAKuV,kBAU9B7X,KAAK8X,gBAAkBxV,EAAKwV,gBAQ5B9X,KAAK0E,MAAQpC,EAAKoC,MAQlB1E,KAAK2E,OAASrC,EAAKqC,OAQnB3E,KAAK+X,KAAOzV,EAAK0V,OAOjBhY,KAAKiY,gBAAkB,CACnBzX,MAAOR,KAAK0X,YACZQ,UAAW5V,EAAK4V,UAChBC,6BAA8Bb,EAAOa,6BACrCC,mBAAoBpY,KAAK0X,aAAoC,kBAArB1X,KAAK0X,YAC7CW,SAAS,EACTT,sBAAuB5X,KAAK4X,sBAC5BE,gBAAiBxV,EAAKwV,iBAO1B9X,KAAKsY,WAAa,IAAIrY,EAAKG,MAM3BJ,KAAKuY,OAAS,IAAItY,EAAKG,MASvBJ,KAAKwY,cAAgB,IAAIvY,EAAKwY,mBAO9BzY,KAAK4L,YAAc,IAAI3L,EAAKyY,iBAAiBpW,GAO7CtC,KAAKiM,YAAc,IAAIhM,EAAK0Y,iBAO5B3Y,KAAK8L,cAAgB,IAAI7L,EAAK2Y,mBAO9B5Y,KAAK6Y,eAAiB,IAAI5Y,EAAK6Y,oBAO/B9Y,KAAK+Y,iBAAmB,IAAI9Y,EAAK+Y,sBAMjChZ,KAAKsF,cAAgB,GAMrBtF,KAAKiZ,uBAAyB,GAG9BjZ,KAAKsF,cAAchD,KAAOtC,KAAKsC,KAC/BtC,KAAKsF,cAAcE,GAAKxF,KAAKwF,GAC7BxF,KAAKsF,cAAc4T,UAAY,EAC/BlZ,KAAKsF,cAAckT,cAAgBxY,KAAKwY,cACxCxY,KAAKsF,cAAc2G,YAAcjM,KAAKiM,YACtCjM,KAAKsF,cAAcwG,cAAgB9L,KAAK8L,cACxC9L,KAAKsF,cAAcyT,iBAAmB/Y,KAAK+Y,iBAC3C/Y,KAAKsF,cAAcsG,YAAc5L,KAAK4L,YACtC5L,KAAKsF,cAAcuT,eAAiB7Y,KAAK6Y,gBACzC7Y,KAAKsF,cAAcjB,SAAWrE,MACzBsF,cAAcnB,WAAanE,KAAKmE,WACrCnE,KAAKsF,cAAcqJ,YAAc2I,EAAO3I,cAAe,EACvD3O,KAAKsF,cAAc6T,yBAA2B,KAG9CnZ,KAAKoZ,cAGLpZ,KAAKqZ,iBAITpZ,EAAKoX,cAAcxV,UAAUC,YAAc7B,EAAKoX,cAKhDpX,EAAKoX,cAAcxV,UAAUuX,YAAc,WAEvC,IAAI5T,EAAKxF,KAAK+X,KAAKuB,WAAW,QAAStZ,KAAKiY,kBAAoBjY,KAAK+X,KAAKuB,WAAW,qBAAsBtZ,KAAKiY,iBAIhH,KAFAjY,KAAKwF,GAAKA,GAKN,MAAM,IAAIoD,MAAM,sEAGpB5I,KAAKuZ,YAAc/T,EAAGqM,aAAarM,EAAGsM,yBACtC9R,KAAKwZ,eAAiBxZ,KAAKwF,GAAGqM,aAAarM,EAAGiU,kBAE9CzZ,KAAK0Z,YAAclU,EAAGiP,GAAKxU,EAAKoX,cAAcqC,cAE9CzZ,EAAKmX,WAAWpX,KAAK0Z,aAAelU,EAEpCvF,EAAKoW,UAAUrW,KAAK0Z,aAAe1Z,KAGnCwF,EAAGmU,QAAQnU,EAAGoU,YACdpU,EAAGmU,QAAQnU,EAAGqU,WACdrU,EAAGsU,OAAOtU,EAAGuU,OAGb/Z,KAAKwY,cAAcwB,WAAWxU,GAC9BxF,KAAK4L,YAAYoO,WAAWxU,GAC5BxF,KAAKiM,YAAY+N,WAAWxU,GAC5BxF,KAAK8L,cAAckO,WAAWxU,GAC9BxF,KAAK+Y,iBAAiBiB,WAAWxU,GACjCxF,KAAK6Y,eAAemB,WAAWxU,GAE/BxF,KAAKsF,cAAcE,GAAKxF,KAAKwF,GAG7BxF,KAAK+F,OAAO/F,KAAK0E,MAAO1E,KAAK2E,QAG7B3E,KAAKwX,WAAWyC,YAAc,GAE9B,IAAIC,EAAO1U,EAAG2U,aAAa,kCAAoC3U,EAAG2U,aAAa,wCAC3EC,EAAQ5U,EAAG2U,aAAa,mCAAqC3U,EAAG2U,aAAa,yCAC7EE,EAAO7U,EAAG2U,aAAa,kCAAoC3U,EAAG2U,aAAa,wCAE3ED,IAAQla,KAAKwX,WAAWyC,YAAYK,KAAOJ,GAC3CE,IAASpa,KAAKwX,WAAWyC,YAAYM,MAAQH,GAC7CC,IAAQra,KAAKwX,WAAWyC,YAAYO,KAAOH,IA0BnDpa,EAAKoX,cAAcxV,UAAU4Y,mBAAqB,SAAUC,GAExD,GAAKza,EAAKiG,0BAAV,CA0BA,IArBA,IAAIyU,EAAW,SAAUC,GAQrB,QANEA,EACFA,GAAWA,GAAW,EACtBA,GAAWA,GAAW,EACtBA,GAAWA,GAAW,EACtBA,GAAWA,GAAW,EACtBA,GAAWA,GAAW,KACbA,GAETpV,EAAKxF,KAAKwF,GACV+T,EAAc/T,EAAGqM,aAAarM,EAAGsM,yBACjC0H,EAAiBhU,EAAGqM,aAAarM,EAAGiU,kBACpCoB,EAAa7a,KAAKsC,KAAKwY,MAAMC,OAAOC,MACpCC,EAAY,KAOPhZ,EAAI,EAAGA,EAAIjC,KAAKiZ,uBAAuB/W,OAAQD,KAEpDgZ,EAAYjb,KAAKiZ,uBAAuBhX,MAErB4Y,EAMnBA,EAAWI,GAAWC,KAAK/U,aAAe,EAJtCiK,QAAQ+K,KAAK,iEAAkEF,GAUvF,IAJA,IAAI9B,EAA2B,EAAmBwB,EAAS1X,KAAK2C,IAAI5F,KAAK0E,MAAO1E,KAAK2E,SAI5E+C,EAHT1H,KAAKiZ,uBAAuB/W,OAAS,EAGrBwF,EAAIgT,EAAsBxY,SAAUwF,EAIhD,IAFAuT,EAAYP,EAAsBhT,MAEfmT,EAAnB,CAOA,IAAIK,EAAOL,EAAWI,GAAWC,MACjC/B,GAA4BwB,EAAS1X,KAAK2C,IAAIsV,EAAKxW,MAAOwW,EAAKvW,WAC/B,GAE5BuW,EAAK/U,aAAe,EACpBiK,QAAQ+K,KAAK,4GACTF,EAAW9B,IAIf+B,EAAK/U,aAAgB,EAAKuB,GAAK6R,EAAc,GAEjDvZ,KAAKiZ,uBAAuBtR,KAAKsT,QAjB7B7K,QAAQ+K,KAAK,iEAAkEF,GAsBvF,OAFAjb,KAAKsF,cAAc6T,yBAA2BA,EAEvCnZ,KAAKiZ,uBApER7I,QAAQ+K,KAAK,mGA6ErBlb,EAAKoX,cAAcxV,UAAUgD,OAAS,SAAUuW,GAG5C,IAAIpb,KAAKqb,YAAT,CAKA,IAAI7V,EAAKxF,KAAKwF,GAGdA,EAAG8V,SAAS,EAAG,EAAGtb,KAAK0E,MAAO1E,KAAK2E,QAGnCa,EAAG+V,gBAAgB/V,EAAGgW,YAAa,MAE/Bxb,KAAKsC,KAAKuV,oBAEVrS,EAAGiW,WAAWL,EAAMM,SAASjY,EAAG2X,EAAMM,SAASC,EAAGP,EAAMM,SAAShZ,EAAG0Y,EAAMM,SAASjZ,GAEnF+C,EAAGoW,MAAMpW,EAAGqW,mBAGhB7b,KAAKuY,OAAOjV,EAAItD,KAAKsC,KAAKwZ,OAAOC,OAAOzY,EACxCtD,KAAKuY,OAAOhV,EAAIvD,KAAKsC,KAAKwZ,OAAOC,OAAOxY,EAExCvD,KAAKgc,oBAAoBZ,EAAOpb,KAAKsY,cAGzCrY,EAAKoX,cAAcxV,UAAUoa,WAAa,WAGtCjc,KAAKwF,GAAGqG,SAWZ5L,EAAKoX,cAAcxV,UAAUma,oBAAsB,SAAUE,EAAe5D,EAAY6D,EAAQ5O,GAE5FvN,KAAKsF,cAAcyT,iBAAiBqD,aAAanc,EAAK8H,WAAWE,QAGjEjI,KAAKsF,cAAc4T,UAAY,EAG/BlZ,KAAKsF,cAAckQ,MAAQ2G,GAAU,EAAI,EAGzCnc,KAAKsF,cAAcgT,WAAaA,EAGhCtY,KAAKsF,cAAciT,OAASvY,KAAKuY,OAGjCvY,KAAK4L,YAAYyQ,MAAMrc,KAAKsF,eAG5BtF,KAAK8L,cAAcuQ,MAAMrc,KAAKsF,cAAe6W,GAG7CD,EAAcxW,aAAa1F,KAAKsF,cAAeiI,GAG/CvN,KAAK4L,YAAY0Q,OAUrBrc,EAAKoX,cAAcxV,UAAUkE,OAAS,SAAUrB,EAAOC,GAEnD3E,KAAK0E,MAAQA,EAAQ1E,KAAKmE,WAC1BnE,KAAK2E,OAASA,EAAS3E,KAAKmE,WAE5BnE,KAAK+X,KAAKrT,MAAQ1E,KAAK0E,MACvB1E,KAAK+X,KAAKpT,OAAS3E,KAAK2E,OAEpB3E,KAAK2X,aAEL3X,KAAK+X,KAAKwE,MAAM7X,MAAQ1E,KAAK0E,MAAQ1E,KAAKmE,WAAa,KACvDnE,KAAK+X,KAAKwE,MAAM5X,OAAS3E,KAAK2E,OAAS3E,KAAKmE,WAAa,MAG7DnE,KAAKwF,GAAG8V,SAAS,EAAG,EAAGtb,KAAK0E,MAAO1E,KAAK2E,QAExC3E,KAAKsY,WAAWhV,EAAItD,KAAK0E,MAAQ,EAAI1E,KAAKmE,WAC1CnE,KAAKsY,WAAW/U,GAAKvD,KAAK2E,OAAS,EAAI3E,KAAKmE,YAUhDlE,EAAKoX,cAAcxV,UAAU2a,wBAA0B,SAAU1W,GAE7D,IAAKA,EAAQkH,UAET,OAAO,EAEX,IAAIxH,EAAKxF,KAAKwF,GACViX,EAAkB3W,EAAQqJ,OA2C9B,OAzCKrJ,EAAQ0O,YAAYhP,EAAGiP,MAExB3O,EAAQ0O,YAAYhP,EAAGiP,IAAMjP,EAAGsN,iBAEpCtN,EAAGuN,cAAcvN,EAAGwN,SAAWlN,EAAQK,cAEvCX,EAAGyN,YAAYzN,EAAG0N,WAAYpN,EAAQ0O,YAAYhP,EAAGiP,KAErDjP,EAAGkX,qBACClX,EAAG0N,WACH,EACAuJ,EAAgBE,kBAChBF,EAAgB/X,MAChB+X,EAAgB9X,OAChB,EACA8X,EAAgB/H,aAGpBlP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGmQ,mBAAoB7P,EAAQ1B,YAAcnE,EAAK+N,WAAWC,OAASzI,EAAGyI,OAASzI,EAAGoX,SAEjH9W,EAAQ+W,QAAU9b,OAAOkC,KAAK6Z,aAAahX,EAAQpB,MAAOoB,EAAQnB,SAElEa,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGoQ,mBAAoB9P,EAAQ1B,YAAcnE,EAAK+N,WAAWC,OAASzI,EAAGuX,qBAAuBvX,EAAGwX,wBACnIxX,EAAGyX,eAAezX,EAAG0N,aAIrB1N,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGoQ,mBAAoB9P,EAAQ1B,YAAcnE,EAAK+N,WAAWC,OAASzI,EAAGyI,OAASzI,EAAGoX,SAGpH9W,EAAQoX,WAOT1X,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGqQ,eAAgBrQ,EAAG6P,QACtD7P,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGsQ,eAAgBtQ,EAAG6P,UANtD7P,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGqQ,eAAgBrQ,EAAGuP,eACtDvP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGsQ,eAAgBtQ,EAAGuP,kBAO1DjP,EAAQsQ,OAAO5Q,EAAGiP,KAAM,IAW5BxU,EAAKoX,cAAcxV,UAAUyU,cAAgB,SAAUxQ,GAEnD,IAAKA,EAAQkH,YAAclH,EAAQqJ,OAE/B,OAAO,EAEX,GAAIrJ,EAAQqJ,OAAOgO,qBAEf,OAAOnd,KAAKwc,wBAAwB1W,GAGxC,IAAIN,EAAKxF,KAAKwF,GAwCd,OAtCKM,EAAQ0O,YAAYhP,EAAGiP,MAExB3O,EAAQ0O,YAAYhP,EAAGiP,IAAMjP,EAAGsN,iBAEpCtN,EAAGuN,cAAcvN,EAAGwN,SAAWlN,EAAQK,cAEvCX,EAAGyN,YAAYzN,EAAG0N,WAAYpN,EAAQ0O,YAAYhP,EAAGiP,KAErDjP,EAAG8P,YAAY9P,EAAG4X,+BAAgCtX,EAAQsS,oBAE1D5S,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG1N,EAAG2P,KAAM3P,EAAG2P,KAAM3P,EAAG6N,cAAevN,EAAQqJ,QAE5E3J,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGmQ,mBAAoB7P,EAAQ1B,YAAcnE,EAAK+N,WAAWC,OAASzI,EAAGyI,OAASzI,EAAGoX,SAEjH9W,EAAQ+W,QAAU9b,OAAOkC,KAAK6Z,aAAahX,EAAQpB,MAAOoB,EAAQnB,SAElEa,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGoQ,mBAAoB9P,EAAQ1B,YAAcnE,EAAK+N,WAAWC,OAASzI,EAAGuX,qBAAuBvX,EAAGwX,wBACnIxX,EAAGyX,eAAezX,EAAG0N,aAIrB1N,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGoQ,mBAAoB9P,EAAQ1B,YAAcnE,EAAK+N,WAAWC,OAASzI,EAAGyI,OAASzI,EAAGoX,SAGpH9W,EAAQoX,WAOT1X,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGqQ,eAAgBrQ,EAAG6P,QACtD7P,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGsQ,eAAgBtQ,EAAG6P,UANtD7P,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGqQ,eAAgBrQ,EAAGuP,eACtDvP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGsQ,eAAgBtQ,EAAGuP,kBAQ1DjP,EAAQsQ,OAAO5Q,EAAGiP,KAAM,IAW5BxU,EAAKoX,cAAcxV,UAAUE,QAAU,WAEnC9B,EAAKmX,WAAWpX,KAAK0Z,aAAe,KAEpC1Z,KAAKsY,WAAa,KAClBtY,KAAKuY,OAAS,KAEdvY,KAAKwY,cAAczW,UACnB/B,KAAK4L,YAAY7J,UACjB/B,KAAKiM,YAAYlK,UACjB/B,KAAK8L,cAAc/J,UAEnB/B,KAAKwY,cAAgB,KACrBxY,KAAK4L,YAAc,KACnB5L,KAAKiM,YAAc,KACnBjM,KAAK8L,cAAgB,KAErB9L,KAAKwF,GAAK,KACVxF,KAAKsF,cAAgB,KAErBvE,OAAO2F,WAAW2W,OAAOrd,MAEzBC,EAAKoW,UAAUrW,KAAK0Z,aAAe,KAEnCzZ,EAAKoX,cAAcqC,eAQvBzZ,EAAKoX,cAAcxV,UAAUwX,cAAgB,WAEzC,IAAI7T,EAAKxF,KAAKwF,GAEd,IAAKvF,EAAKqd,gBACV,CACI,IAAI5a,EAAI,GACJ6a,EAAQtd,EAAK8H,WAEjBrF,EAAE6a,EAAMtV,QAAU,CAAEzC,EAAGgY,IAAKhY,EAAGiY,qBAC/B/a,EAAE6a,EAAMG,KAAO,CAAElY,EAAGmY,UAAWnY,EAAGoY,WAClClb,EAAE6a,EAAMvV,UAAY,CAAExC,EAAGqY,UAAWrY,EAAGiY,qBACvC/a,EAAE6a,EAAMO,QAAU,CAAEtY,EAAGmY,UAAWnY,EAAGgY,KACrC9a,EAAE6a,EAAMQ,SAAW,CAAEvY,EAAGgY,IAAKhY,EAAGiY,qBAChC/a,EAAE6a,EAAMS,QAAU,CAAExY,EAAGgY,IAAKhY,EAAGiY,qBAC/B/a,EAAE6a,EAAMU,SAAW,CAAEzY,EAAGgY,IAAKhY,EAAGiY,qBAChC/a,EAAE6a,EAAMW,aAAe,CAAE1Y,EAAGgY,IAAKhY,EAAGiY,qBACpC/a,EAAE6a,EAAMY,YAAc,CAAE3Y,EAAGgY,IAAKhY,EAAGiY,qBACnC/a,EAAE6a,EAAMa,YAAc,CAAE5Y,EAAGgY,IAAKhY,EAAGiY,qBACnC/a,EAAE6a,EAAMc,YAAc,CAAE7Y,EAAGgY,IAAKhY,EAAGiY,qBACnC/a,EAAE6a,EAAMe,YAAc,CAAE9Y,EAAGgY,IAAKhY,EAAGiY,qBACnC/a,EAAE6a,EAAMgB,WAAa,CAAE/Y,EAAGgY,IAAKhY,EAAGiY,qBAClC/a,EAAE6a,EAAMiB,KAAO,CAAEhZ,EAAGgY,IAAKhY,EAAGiY,qBAC5B/a,EAAE6a,EAAMkB,YAAc,CAAEjZ,EAAGgY,IAAKhY,EAAGiY,qBACnC/a,EAAE6a,EAAMmB,OAAS,CAAElZ,EAAGgY,IAAKhY,EAAGiY,qBAC9B/a,EAAE6a,EAAMoB,YAAc,CAAEnZ,EAAGgY,IAAKhY,EAAGiY,qBAEnCxd,EAAKqd,gBAAkB5a,IAI/BzC,EAAKoX,cAAcxV,UAAU+c,kBAAoB,WAE7C,IAAIpZ,EAAKxF,KAAKwF,GACd,OAAOA,EAAGqM,aAAarM,EAAGsM,0BAG9B7R,EAAK4e,mBAAqB,WAEtB5e,EAAKiG,2BAA4B,GAGrCjG,EAAKoX,cAAcqC,YAAc,EACjCzZ,EAAKoX,cAAcyH,aAAe,GAWlC7e,EAAK+Y,sBAAwB,WAMzBhZ,KAAK0N,iBAAmB,OAG5BzN,EAAK+Y,sBAAsBnX,UAAUC,YAAc7B,EAAK+Y,sBAQxD/Y,EAAK+Y,sBAAsBnX,UAAUmY,WAAa,SAAUxU,GAExDxF,KAAKwF,GAAKA,GASdvF,EAAK+Y,sBAAsBnX,UAAUua,aAAe,SAAUtU,GAE1D,GAAG9H,KAAK0N,mBAAqB5F,EAAa,OAAO,EAEjD9H,KAAK0N,iBAAmB5F,EAExB,IAAIiX,EAAiB9e,EAAKqd,gBAAgBtd,KAAK0N,kBAO/C,OALIqR,GAEA/e,KAAKwF,GAAGwZ,UAAUD,EAAe,GAAIA,EAAe,KAGjD,GAQX9e,EAAK+Y,sBAAsBnX,UAAUE,QAAU,WAE3C/B,KAAKwF,GAAK,MAYdvF,EAAK0Y,iBAAmB,aAIxB1Y,EAAK0Y,iBAAiB9W,UAAUC,YAAc7B,EAAK0Y,iBAQnD1Y,EAAK0Y,iBAAiB9W,UAAUmY,WAAa,SAAUxU,GAEnDxF,KAAKwF,GAAKA,GAUdvF,EAAK0Y,iBAAiB9W,UAAUqK,SAAW,SAAU+S,EAAU3Z,GAE3D,IAAIE,EAAKF,EAAcE,GAEnByZ,EAASzN,OAETvR,EAAKif,cAAcC,eAAeF,EAAUzZ,QAGjBY,IAA3B6Y,EAASG,OAAO5Z,EAAGiP,UAAqDrO,IAAhC6Y,EAASG,OAAO5Z,EAAGiP,IAAIE,MAA6D,IAAvCsK,EAASG,OAAO5Z,EAAGiP,IAAIE,KAAKzS,QAKrHoD,EAAcuT,eAAewG,YAAYJ,EAAUA,EAASG,OAAO5Z,EAAGiP,IAAIE,KAAK,GAAIrP,IAUvFrF,EAAK0Y,iBAAiB9W,UAAUuK,QAAU,SAAU6S,EAAU3Z,GAE1D,IAAIE,EAAKxF,KAAKwF,QAEiBY,IAA3B6Y,EAASG,OAAO5Z,EAAGiP,UAAqDrO,IAAhC6Y,EAASG,OAAO5Z,EAAGiP,IAAIE,MAA6D,IAAvCsK,EAASG,OAAO5Z,EAAGiP,IAAIE,KAAKzS,QAKrHoD,EAAcuT,eAAeyG,WAAWL,EAAUA,EAASG,OAAO5Z,EAAGiP,IAAIE,KAAK,GAAIrP,IAQtFrF,EAAK0Y,iBAAiB9W,UAAUE,QAAU,WAEtC/B,KAAKwF,GAAK,MAYdvF,EAAK6Y,oBAAsB,WAEvB9Y,KAAKuf,aAAe,GACpBvf,KAAKwf,SAAU,EACfxf,KAAKyf,MAAQ,GASjBxf,EAAK6Y,oBAAoBjX,UAAUmY,WAAa,SAAUxU,GAEtDxF,KAAKwF,GAAKA,GAWdvF,EAAK6Y,oBAAoBjX,UAAUwd,YAAc,SAAUK,EAAUC,EAAWra,GAE5E,IAAIE,EAAKxF,KAAKwF,GACdxF,KAAK4f,aAAaF,EAAUC,EAAWra,GAEP,IAA7BtF,KAAKuf,aAAard,SAEjBsD,EAAGsU,OAAOtU,EAAGqa,cACbra,EAAGoW,MAAMpW,EAAGsa,oBACZ9f,KAAKwf,SAAU,EACfxf,KAAKyf,MAAQ,GAGjBzf,KAAKuf,aAAa5X,KAAKgY,GAEvB,IAAII,EAAQ/f,KAAKyf,MAEjBja,EAAGwa,WAAU,GAAO,GAAO,GAAO,GAElCxa,EAAGya,YAAYza,EAAG0a,OAAO,EAAE,KAC3B1a,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAG6a,QAIV,IAAnBV,EAAUW,MAET9a,EAAG+a,aAAa/a,EAAGgb,aAAcb,EAAU/M,QAAQ1Q,OAAS,EAAGsD,EAAGib,eAAgB,GAE/EzgB,KAAKwf,SAEJha,EAAGya,YAAYza,EAAGkb,MAAO,IAAOX,EAAO,KACvCva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGmb,QAIhCnb,EAAGya,YAAYza,EAAGkb,MAAMX,EAAO,KAC/Bva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGob,OAIpCpb,EAAG+a,aAAa/a,EAAGgb,aAAc,EAAGhb,EAAGib,eAAiD,GAAhCd,EAAU/M,QAAQ1Q,OAAS,IAEhFlC,KAAKwf,QAEJha,EAAGya,YAAYza,EAAGkb,MAAM,KAAQX,EAAQ,GAAI,KAI5Cva,EAAGya,YAAYza,EAAGkb,MAAMX,EAAQ,EAAG,KAGvC/f,KAAKwf,SAAWxf,KAAKwf,UAIjBxf,KAAKwf,SAOLha,EAAGya,YAAYza,EAAGkb,MAAMX,EAAO,KAC/Bva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGob,QANhCpb,EAAGya,YAAYza,EAAGkb,MAAO,IAAOX,EAAO,KACvCva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGmb,OAQpCnb,EAAG+a,aAAa/a,EAAGqb,eAAgBlB,EAAU/M,QAAQ1Q,OAAQsD,EAAGib,eAAgB,GAE5EzgB,KAAKwf,QAMLha,EAAGya,YAAYza,EAAGkb,MAAMX,EAAQ,EAAG,KAJnCva,EAAGya,YAAYza,EAAGkb,MAAM,KAAQX,EAAQ,GAAI,MAQpDva,EAAGwa,WAAU,GAAM,GAAM,GAAM,GAC/Bxa,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAG4a,MAEhCpgB,KAAKyf,SAWTxf,EAAK6Y,oBAAoBjX,UAAU+d,aAAe,SAAUF,EAAUC,EAAWra,GAG7EtF,KAAK8gB,iBAAmBpB,EAExB,IAKI5S,EALAtH,EAAKxF,KAAKwF,GAGV8S,EAAahT,EAAcgT,WAC3BC,EAASjT,EAAciT,OAGL,IAAnBoH,EAAUW,MAETxT,EAASxH,EAAckT,cAAcuI,uBAErCzb,EAAckT,cAAcwI,UAAUlU,GAEtCtH,EAAGyb,UAAUnU,EAAO0I,MAAOlQ,EAAckQ,OAEzChQ,EAAG8O,iBAAiBxH,EAAOgK,mBAAmB,EAAO4I,EAAS5e,eAAeogB,SAAQ,IAErF1b,EAAG2b,UAAUrU,EAAOsF,iBAAkBkG,EAAWhV,GAAIgV,EAAW/U,GAChEiC,EAAG2b,UAAUrU,EAAOuF,cAAekG,EAAOjV,GAAIiV,EAAOhV,GAErDiC,EAAG4b,WAAWtU,EAAOmK,UAAWlW,OAAOsgB,MAAMC,cAAc5B,EAAS9S,OACpEpH,EAAG4b,WAAWtU,EAAOqK,MAAOwI,EAAUxI,OAEtC3R,EAAGyb,UAAUnU,EAAOtM,MAAOkf,EAAS7e,WAAa8e,EAAUnf,OAE3DgF,EAAG+b,WAAW/b,EAAGgc,aAAc7B,EAAUxD,QAEzC3W,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO,EAAO,KAW1E5U,EAASxH,EAAckT,cAAcmJ,gBACrCrc,EAAckT,cAAcwI,UAAUlU,GAEtCtH,EAAG8O,iBAAiBxH,EAAOgK,mBAAmB,EAAO4I,EAAS5e,eAAeogB,SAAQ,IAErF1b,EAAGyb,UAAUnU,EAAO0I,MAAOlQ,EAAckQ,OACzChQ,EAAG2b,UAAUrU,EAAOsF,iBAAkBkG,EAAWhV,GAAIgV,EAAW/U,GAChEiC,EAAG2b,UAAUrU,EAAOuF,cAAekG,EAAOjV,GAAIiV,EAAOhV,GAErDiC,EAAG4b,WAAWtU,EAAOmK,UAAWlW,OAAOsgB,MAAMC,cAAc5B,EAAS9S,OAEpEpH,EAAGyb,UAAUnU,EAAOtM,MAAOkf,EAAS7e,YAEpC2E,EAAG+b,WAAW/b,EAAGgc,aAAc7B,EAAUxD,QAEzC3W,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO,GAAO,GAC1Elc,EAAGic,oBAAoB3U,EAAO4F,eAAgB,EAAGlN,EAAGkc,OAAO,EAAM,GAAO,IArBxElc,EAAG+b,WAAW/b,EAAGoc,qBAAsBjC,EAAUkC,cAkCzD5hB,EAAK6Y,oBAAoBjX,UAAUyd,WAAa,SAAUI,EAAUC,EAAWra,GAE3E,IAAIE,EAAKxF,KAAKwF,GAKd,GAJAxF,KAAKuf,aAAauC,MAElB9hB,KAAKyf,QAE2B,IAA7Bzf,KAAKuf,aAAard,OAGjBsD,EAAGmU,QAAQnU,EAAGqa,kBAGlB,CACI,IAAIE,EAAQ/f,KAAKyf,MAEjBzf,KAAK4f,aAAaF,EAAUC,EAAWra,GAEvCE,EAAGwa,WAAU,GAAO,GAAO,GAAO,GAEZ,IAAnBL,EAAUW,MAETtgB,KAAKwf,SAAWxf,KAAKwf,QAElBxf,KAAKwf,SAEJha,EAAGya,YAAYza,EAAGkb,MAAO,KAAQX,EAAQ,GAAI,KAC7Cva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGob,QAIhCpb,EAAGya,YAAYza,EAAGkb,MAAMX,EAAQ,EAAG,KACnCva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGmb,OAIpCnb,EAAG+a,aAAa/a,EAAGgb,aAAc,EAAGhb,EAAGib,eAAiD,GAAhCd,EAAU/M,QAAQ1Q,OAAS,IAEnFsD,EAAGya,YAAYza,EAAG0a,OAAO,EAAE,KAC3B1a,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAG6a,QAGhC7a,EAAG+a,aAAa/a,EAAGgb,aAAcb,EAAU/M,QAAQ1Q,OAAS,EAAGsD,EAAGib,eAAgB,KAc9EzgB,KAAKwf,SAOLha,EAAGya,YAAYza,EAAGkb,MAAMX,EAAQ,EAAG,KACnCva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGmb,QANhCnb,EAAGya,YAAYza,EAAGkb,MAAO,KAAQX,EAAQ,GAAI,KAC7Cva,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAGob,OAQpCpb,EAAG+a,aAAa/a,EAAGqb,eAAgBlB,EAAU/M,QAAQ1Q,OAAQsD,EAAGib,eAAgB,IAvB5EzgB,KAAKwf,QAMLha,EAAGya,YAAYza,EAAGkb,MAAMX,EAAO,KAJ/Bva,EAAGya,YAAYza,EAAGkb,MAAM,IAAO,EAAS,KAiChDlb,EAAGwa,WAAU,GAAM,GAAM,GAAM,GAC/Bxa,EAAG2a,UAAU3a,EAAG4a,KAAK5a,EAAG4a,KAAK5a,EAAG4a,QASxCngB,EAAK6Y,oBAAoBjX,UAAUE,QAAU,WAEzC/B,KAAKuf,aAAe,KACpBvf,KAAKwF,GAAK,MAYdvF,EAAKwY,mBAAqB,WAMtBzY,KAAK+hB,UAAY,GAMjB/hB,KAAKgiB,YAAc,GAMnBhiB,KAAKiiB,gBAAkB,GAEvB,IAAK,IAAIhgB,EAAI,EAAGA,EAAIjC,KAAK+hB,UAAW9f,IAEhCjC,KAAKgiB,YAAY/f,IAAK,EAO1BjC,KAAKkiB,MAAQ,IAGjBjiB,EAAKwY,mBAAmB5W,UAAUC,YAAc7B,EAAKwY,mBAQrDxY,EAAKwY,mBAAmB5W,UAAUmY,WAAa,SAAUxU,GAErDxF,KAAKwF,GAAKA,EAGVxF,KAAK2hB,gBAAkB,IAAI1hB,EAAK+W,gBAAgBxR,GAGhDxF,KAAK+gB,uBAAyB,IAAI9gB,EAAKiX,uBAAuB1R,GAG9DxF,KAAKmiB,cAAgB,IAAIliB,EAAKkR,WAAW3L,GAGzCxF,KAAKoiB,WAAa,IAAIniB,EAAKuW,eAAehR,GAG1CxF,KAAKqiB,YAAc,IAAIpiB,EAAK4W,YAAYrR,GAGxCxF,KAAKsiB,eAAiBriB,EAAKsiB,eAAiB,IAAItiB,EAAKsiB,eAAe/c,GAAM,KAE1ExF,KAAKghB,UAAUhhB,KAAKmiB,gBASxBliB,EAAKwY,mBAAmB5W,UAAU2gB,WAAa,SAAUC,GAGrD,IAAIxgB,EAEJ,IAAKA,EAAI,EAAGA,EAAIjC,KAAKiiB,gBAAgB/f,OAAQD,IAEzCjC,KAAKiiB,gBAAgBhgB,IAAK,EAI9B,IAAKA,EAAI,EAAGA,EAAIwgB,EAAQvgB,OAAQD,IAChC,CACI,IAAIygB,EAAWD,EAAQxgB,GACvBjC,KAAKiiB,gBAAgBS,IAAY,EAGrC,IAAIld,EAAKxF,KAAKwF,GAEd,IAAKvD,EAAI,EAAGA,EAAIjC,KAAKgiB,YAAY9f,OAAQD,IAElCjC,KAAKgiB,YAAY/f,KAAOjC,KAAKiiB,gBAAgBhgB,KAE5CjC,KAAKgiB,YAAY/f,GAAKjC,KAAKiiB,gBAAgBhgB,GAExCjC,KAAKiiB,gBAAgBhgB,GAEpBuD,EAAGmd,wBAAwB1gB,GAI3BuD,EAAGod,yBAAyB3gB,KAY5ChC,EAAKwY,mBAAmB5W,UAAUmf,UAAY,SAAUlU,GAEpD,OAAG9M,KAAK6iB,aAAe/V,EAAOsE,OAE9BpR,KAAK6iB,WAAa/V,EAAOsE,KAEzBpR,KAAK8iB,cAAgBhW,EAErB9M,KAAKwF,GAAGyM,WAAWnF,EAAOuE,SAC1BrR,KAAKwiB,WAAW1V,EAAO2E,aAEhB,IAQXxR,EAAKwY,mBAAmB5W,UAAUE,QAAU,WAExC/B,KAAKgiB,YAAc,KAEnBhiB,KAAKiiB,gBAAkB,KAEvBjiB,KAAK2hB,gBAAgB5f,UAErB/B,KAAK+gB,uBAAuBhf,UAE5B/B,KAAKmiB,cAAcpgB,UAEnB/B,KAAKoiB,WAAWrgB,UAEhB/B,KAAKqiB,YAAYtgB,UAEb/B,KAAKsiB,gBAELtiB,KAAKsiB,eAAevgB,UAGxB/B,KAAKwF,GAAK,MAoBdvF,EAAKyY,iBAAmB,SAAUpW,GAK9BtC,KAAKsC,KAAOA,EAMZtC,KAAK+iB,SAAW,EAOhB/iB,KAAKgjB,KAAO,IAQZhjB,KAAKijB,WAAa,GAClB,IAAIC,EAAWljB,KAAKijB,WAAajjB,KAAKgjB,KAAO,EAMzCG,EAAyB,EAAZnjB,KAAKgjB,KAQtBhjB,KAAKojB,SAAW,IAAIC,YAAYH,GAQhCljB,KAAKsjB,UAAY,IAAIC,aAAavjB,KAAKojB,UAQvCpjB,KAAKwjB,OAAS,IAAIC,YAAYzjB,KAAKojB,UAQnCpjB,KAAK4S,QAAU,IAAI8Q,YAAYP,GAQ/B,IAAK,IAAIlhB,EAFTjC,KAAK2jB,eAAiB,EAENjc,EAAI,EAAGzF,EAAIkhB,EAAYlhB,GAAK,EAAGyF,GAAK,EAEhD1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAO9B1H,KAAK4jB,SAAU,EAMf5jB,KAAK6jB,iBAAmB,EAMxB7jB,KAAK8jB,mBAAqB,KAM1B9jB,KAAKwR,OAAQ,EAMbxR,KAAK+jB,SAAW,GAMhB/jB,KAAK+H,WAAa,GAMlB/H,KAAKgkB,QAAU,GAMfhkB,KAAKikB,QAAU,GAMfjkB,KAAKmiB,cAAgB,MAOzBliB,EAAKyY,iBAAiB7W,UAAUmY,WAAa,SAAUxU,GAInD,GAFAxF,KAAK4R,aAAepM,EAAGqM,aAAarM,EAAGsM,yBACvC9R,KAAKwF,GAAKA,EACNvF,EAAKiG,0BACT,CAEI,IADA,IAAI6L,EAAa,6GACRtJ,EAAQ,EAAGA,EAAQzI,KAAK4R,eAAgBnJ,EAE7CsJ,GAAc,0BACVtJ,EAAQ,+CACRA,EAAQ,wCAEhBzI,KAAKmiB,cAAgB,IAAIphB,OAAOmjB,OAC5BlkB,KAAKsC,UACL8D,EACA,CACI,sCACA,wBACA,8BACA,uBACA,+BACA,mCAAqCpG,KAAK4R,aAAe,KACzD,oBACAG,EACA,wEACA,WAKR/R,KAAKmiB,cAAgB,IAAIphB,OAAOmjB,OAC5BlkB,KAAKsC,UACL8D,EACA,CACI,sCACA,wBACA,8BACA,uBACA,+BACA,8BACA,oBACA,iEACA,MAKZpG,KAAKmkB,aAAe3e,EAAG4e,eACvBpkB,KAAK6hB,YAAcrc,EAAG4e,eAKtB5e,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAC5Crc,EAAG6e,WAAW7e,EAAGoc,qBAAsB5hB,KAAK4S,QAASpN,EAAG8e,aAExD9e,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC3e,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKojB,SAAU5d,EAAG+e,cAEjDvkB,KAAK0N,iBAAmB,MAExB,IAAIZ,EAAS,IAAI7M,EAAKkR,WAAW3L,GAEjCsH,EAAO2D,YAAczQ,KAAKmiB,cAAc1R,YACxC3D,EAAO0G,SAAW,GAClB1G,EAAO4E,OAEP1R,KAAKmiB,cAAc6B,QAAQxe,EAAGiP,IAAM3H,GAOxC7M,EAAKyY,iBAAiB7W,UAAUwa,MAAQ,SAAU/W,GAE9CtF,KAAKsF,cAAgBA,EACrBtF,KAAK8M,OAAS9M,KAAKsF,cAAckT,cAAc2J,cAE/CniB,KAAKmM,SAMTlM,EAAKyY,iBAAiB7W,UAAUya,IAAM,WAElCtc,KAAK6L,SAQT5L,EAAKyY,iBAAiB7W,UAAUgD,OAAS,SAAU2f,EAAQjX,GAEvD,IAAIzH,EAAU0e,EAAO1e,QAErB,GAAI7F,EAAKiG,0BACT,CACI,IAAID,EAAcH,EAAQG,YACtBT,EAAKxF,KAAKwF,GACVvF,EAAKoX,cAAcyH,aAAa7Y,EAAYE,eAAiBF,IAE7DjG,KAAK6L,QACLrG,EAAGuN,cAAcvN,EAAGwN,SAAW/M,EAAYE,cAC3CX,EAAGyN,YAAYzN,EAAG0N,WAAYjN,EAAYuO,YAAYhP,EAAGiP,KACzDxU,EAAKoX,cAAcyH,aAAa7Y,EAAYE,cAAgBF,GAKpE,IAAIjD,EAAKwhB,EAAO1jB,eAEZyM,IAEAvK,EAAKuK,GAILvN,KAAK6jB,kBAAoB7jB,KAAKgjB,OAE9BhjB,KAAK6L,QACL7L,KAAK8jB,mBAAqBhe,EAAQG,aAItC,IAAIwe,EAAM3e,EAAQ4e,KAGlB,GAAKD,EAAL,CAKA,IAGI1Z,EAAIC,EAAIC,EAAIC,EAHZyZ,EAAKH,EAAOhe,OAAOlD,EACnBshB,EAAKJ,EAAOhe,OAAOjD,EAIvB,GAAIuC,EAAQqI,KACZ,CAEI,IAAIA,EAAOrI,EAAQqI,KAGnBpD,GADAC,EAAKmD,EAAK7K,EAAIqhB,EAAKxW,EAAKzJ,OACdoB,EAAQ2H,KAAK/I,MAGvBuG,GADAC,EAAKiD,EAAK5K,EAAIqhB,EAAKzW,EAAKxJ,QACdmB,EAAQ2H,KAAK9I,YAIvBoG,EAAMjF,EAAQoH,MAAW,OAAK,EAAIyX,GAClC3Z,EAAMlF,EAAQoH,MAAW,OAAKyX,EAE9B1Z,EAAKnF,EAAQoH,MAAMvI,QAAU,EAAIigB,GACjC1Z,EAAKpF,EAAQoH,MAAMvI,QAAUigB,EAGjC,IAAI3iB,EAAIjC,KAAK6jB,iBAAmB7jB,KAAKijB,WACjC9e,EAAa2B,EAAQG,YAAY9B,WACjCgC,EAAeL,EAAQG,YAAYE,aAEnC1D,EAAIO,EAAGP,EAAI0B,EACXzB,EAAIM,EAAGN,EAAIyB,EACXxB,EAAIK,EAAGL,EAAIwB,EACXvB,EAAII,EAAGJ,EAAIuB,EACXtB,EAAKG,EAAGH,GACRC,EAAKE,EAAGF,GAER0L,EAAK1I,EAAQ2H,KAAK9I,OAEtB,GAAImB,EAAQ2I,QACZ,CACI,IAAIoW,EAAK7hB,EAAGP,EACRqiB,EAAK9hB,EAAGN,EACRqiB,EAAK/hB,EAAGL,EACRqiB,EAAKhiB,EAAGJ,EACRqiB,EAAMja,EACNka,EAAMna,EAGVlI,EAAKG,EAAGL,EAAI6L,EAAK3L,EACjBC,EAAKE,EAAGJ,EAAI4L,EAAK1L,EAMjBL,EAAS,qBAALoiB,EAA8BE,EAClCriB,EAAS,qBAALoiB,EAA8BE,EAClCriB,EAAIkiB,EAAU,qBAALE,EACTniB,EAAIkiB,EAAU,qBAALE,EAGTlf,EAAQqf,qBAGRpa,EAAKE,EACLD,EAAKE,EACLD,EAAKia,EACLha,EAAK+Z,EAGT,IAAIzB,EAASxjB,KAAKwjB,OACdF,EAAYtjB,KAAKsjB,UACjB1W,EAAO4X,EAAO5X,KACduK,GAASvK,GAAQ,KAAc,MAAPA,KAA0B,IAAPA,IAAgB,KAA2B,IAApB4X,EAAO3jB,YAAoB,IAE7Fb,KAAKsF,cAAcqJ,aAEnB2U,EAAUrhB,KAAOQ,EAAIuI,EAAKrI,EAAIuI,EAAKrI,EAAK,EACxCygB,EAAUrhB,KAAOW,EAAIsI,EAAKxI,EAAIsI,EAAKlI,EAAK,EACxCwgB,EAAUrhB,KAAOwiB,EAAIW,GACrB9B,EAAUrhB,KAAOwiB,EAAIY,GACrB7B,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAEjBmd,EAAUrhB,KAAOQ,EAAIsI,EAAKpI,EAAIuI,EAAKrI,EAAK,EACxCygB,EAAUrhB,KAAOW,EAAIsI,EAAKxI,EAAIqI,EAAKjI,EAAK,EACxCwgB,EAAUrhB,KAAOwiB,EAAItZ,GACrBmY,EAAUrhB,KAAOwiB,EAAIrZ,GACrBoY,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAEjBmd,EAAUrhB,KAAOQ,EAAIsI,EAAKpI,EAAIsI,EAAKpI,EAAK,EACxCygB,EAAUrhB,KAAOW,EAAIqI,EAAKvI,EAAIqI,EAAKjI,EAAK,EACxCwgB,EAAUrhB,KAAOwiB,EAAIpZ,GACrBiY,EAAUrhB,KAAOwiB,EAAInZ,GACrBkY,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAEjBmd,EAAUrhB,KAAOQ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EAAK,EACxCygB,EAAUrhB,KAAOW,EAAIqI,EAAKvI,EAAIsI,EAAKlI,EAAK,IAQxCwgB,EAAUrhB,KAAOQ,EAAIuI,EAAKrI,EAAIuI,EAAKrI,EACnCygB,EAAUrhB,KAAOW,EAAIsI,EAAKxI,EAAIsI,EAAKlI,EACnCwgB,EAAUrhB,KAAOwiB,EAAIW,GACrB9B,EAAUrhB,KAAOwiB,EAAIY,GACrB7B,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAEjBmd,EAAUrhB,KAAOQ,EAAIsI,EAAKpI,EAAIuI,EAAKrI,EACnCygB,EAAUrhB,KAAOW,EAAIsI,EAAKxI,EAAIqI,EAAKjI,EACnCwgB,EAAUrhB,KAAOwiB,EAAItZ,GACrBmY,EAAUrhB,KAAOwiB,EAAIrZ,GACrBoY,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAEjBmd,EAAUrhB,KAAOQ,EAAIsI,EAAKpI,EAAIsI,EAAKpI,EACnCygB,EAAUrhB,KAAOW,EAAIqI,EAAKvI,EAAIqI,EAAKjI,EACnCwgB,EAAUrhB,KAAOwiB,EAAIpZ,GACrBiY,EAAUrhB,KAAOwiB,EAAInZ,GACrBkY,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAEjBmd,EAAUrhB,KAAOQ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EACnCygB,EAAUrhB,KAAOW,EAAIqI,EAAKvI,EAAIsI,EAAKlI,GA7BnCwgB,EAAUrhB,KAAOwiB,EAAIlZ,GACrB+X,EAAUrhB,KAAOwiB,EAAIjZ,GACrBgY,EAAOvhB,KAAOkV,EACdmM,EAAUrhB,KAAOkE,EAkCrBnG,KAAKikB,QAAQjkB,KAAK6jB,oBAAsBW,IAS5CvkB,EAAKyY,iBAAiB7W,UAAUyjB,mBAAqB,SAAUd,GAE3D,IAAI1e,EAAU0e,EAAOe,cACjBpf,EAAeqe,EAAO1e,QAAQG,YAAYE,aAE9C,GAAIlG,EAAKiG,0BACT,CACI,IAAID,EAAcH,EAAQG,YACtBT,EAAKxF,KAAKwF,GACVvF,EAAKoX,cAAcyH,aAAa3Y,IAAiBF,IAEjDjG,KAAK6L,QACLrG,EAAGuN,cAAcvN,EAAGwN,SAAW7M,GAC/BX,EAAGyN,YAAYzN,EAAG0N,WAAYjN,EAAYuO,YAAYhP,EAAGiP,KACzDxU,EAAKoX,cAAcyH,aAAa3Y,GAAgBF,GAKpDjG,KAAK6jB,kBAAoB7jB,KAAKgjB,OAE9BhjB,KAAK6L,QACL7L,KAAK8jB,mBAAqBhe,EAAQG,aAIjCue,EAAOE,OAERF,EAAOE,KAAO,IAAIzkB,EAAKulB,YAG3B,IAAIf,EAAMD,EAAOE,KAEbvO,EAAIrQ,EAAQG,YAAYvB,MACxB+gB,EAAI3f,EAAQG,YAAYtB,OAY5B6f,EAAOkB,aAAapiB,GAAK6S,EAAIqO,EAAOmB,gBAAgBriB,EACpDkhB,EAAOkB,aAAaniB,GAAKkiB,EAAIjB,EAAOmB,gBAAgBpiB,EAEpD,IAAIqiB,EAAUpB,EAAOkB,aAAapiB,GAAK6S,EAAIqO,EAAOmB,gBAAgBriB,GAC9DuiB,EAAUrB,EAAOkB,aAAaniB,GAAKkiB,EAAIjB,EAAOmB,gBAAgBpiB,GAE9DuiB,EAAUtB,EAAO9f,MAAQyR,GAAMqO,EAAOuB,UAAUziB,EAAIkhB,EAAOmB,gBAAgBriB,GAC3E0iB,EAAUxB,EAAO7f,OAAS8gB,GAAMjB,EAAOuB,UAAUxiB,EAAIihB,EAAOmB,gBAAgBpiB,GAEhFkhB,EAAIW,GAAK,EAAIQ,EACbnB,EAAIY,GAAK,EAAIQ,EAEbpB,EAAItZ,GAAM,EAAI2a,EAAUF,EACxBnB,EAAIrZ,GAAK,EAAIya,EAEbpB,EAAIpZ,GAAM,EAAIya,EAAUF,EACxBnB,EAAInZ,GAAM,EAAI0a,EAAUH,EAExBpB,EAAIlZ,GAAK,EAAIqa,EACbnB,EAAIjZ,GAAM,EAAIwa,EAAUH,EAGxB,IAAIjZ,EAAO4X,EAAO5X,KACduK,GAASvK,GAAQ,KAAc,MAAPA,KAA0B,IAAPA,IAAgB,KAA2B,IAApB4X,EAAO3jB,YAAoB,IAE7FyiB,EAAYtjB,KAAKsjB,UACjBE,EAASxjB,KAAKwjB,OAEd9e,EAAQ8f,EAAO9f,MACfC,EAAS6f,EAAO7f,OAGhBggB,EAAKH,EAAOhe,OAAOlD,EACnBshB,EAAKJ,EAAOhe,OAAOjD,EACnBwH,EAAKrG,GAAS,EAAIigB,GAClB3Z,EAAKtG,GAASigB,EAEd1Z,EAAKtG,GAAU,EAAIigB,GACnB1Z,EAAKvG,GAAUigB,EAEf3iB,EAAIjC,KAAK6jB,iBAAmB7jB,KAAKijB,WAEjC9e,EAAa2B,EAAQG,YAAY9B,WAEjCnB,EAAKwhB,EAAO1jB,eAEZ2B,EAAIO,EAAGP,EAAI0B,EACXzB,EAAIM,EAAGN,EAAIyB,EACXxB,EAAIK,EAAGL,EAAIwB,EACXvB,EAAII,EAAGJ,EAAIuB,EACXtB,EAAKG,EAAGH,GACRC,EAAKE,EAAGF,GAGZwgB,EAAUrhB,KAAOQ,EAAIuI,EAAKrI,EAAIuI,EAAKrI,EACnCygB,EAAUrhB,KAAOW,EAAIsI,EAAKxI,EAAIsI,EAAKlI,EAGnCwgB,EAAUrhB,KAAOwiB,EAAIW,GACrB9B,EAAUrhB,KAAOwiB,EAAIY,GAGrB7B,EAAOvhB,KAAOkV,EAGdmM,EAAUrhB,KAAOkE,EAGjBmd,EAAUrhB,KAAQQ,EAAIsI,EAAKpI,EAAIuI,EAAKrI,EACpCygB,EAAUrhB,KAAOW,EAAIsI,EAAKxI,EAAIqI,EAAKjI,EAGnCwgB,EAAUrhB,KAAOwiB,EAAItZ,GACrBmY,EAAUrhB,KAAOwiB,EAAIrZ,GAGrBoY,EAAOvhB,KAAOkV,EAGdmM,EAAUrhB,KAAOkE,EAGjBmd,EAAUrhB,KAAOQ,EAAIsI,EAAKpI,EAAIsI,EAAKpI,EACnCygB,EAAUrhB,KAAOW,EAAIqI,EAAKvI,EAAIqI,EAAKjI,EAGnCwgB,EAAUrhB,KAAOwiB,EAAIpZ,GACrBiY,EAAUrhB,KAAOwiB,EAAInZ,GAGrBkY,EAAOvhB,KAAOkV,EAGdmM,EAAUrhB,KAAOkE,EAGjBmd,EAAUrhB,KAAOQ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EACnCygB,EAAUrhB,KAAOW,EAAIqI,EAAKvI,EAAIsI,EAAKlI,EAGnCwgB,EAAUrhB,KAAOwiB,EAAIlZ,GACrB+X,EAAUrhB,KAAOwiB,EAAIjZ,GAGrBgY,EAAOvhB,KAAOkV,EAGdmM,EAAUrhB,KAAOkE,EAGjBnG,KAAKikB,QAAQjkB,KAAK6jB,oBAAsBW,GAQ5CvkB,EAAKyY,iBAAiB7W,UAAUgK,MAAQ,WAGpC,GAA8B,IAA1B7L,KAAK6jB,iBAAT,CAKA,IACI/W,EAuCAmZ,EAAaC,EAAeC,EAxC5B3gB,EAAKxF,KAAKwF,GAGd,GAAIxF,KAAKwR,MACT,CACIxR,KAAKwR,OAAQ,EAEb1E,EAAS9M,KAAKmiB,cAAc6B,QAAQxe,EAAGiP,IAGvCjP,EAAGuN,cAAcvN,EAAGwN,UAGpBxN,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC3e,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAG5C,IAAIuE,EAASpmB,KAAKijB,WAClBzd,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO0E,EAAQ,GAC3E5gB,EAAGic,oBAAoB3U,EAAO2F,cAAe,EAAGjN,EAAGkc,OAAO,EAAO0E,EAAQ,GAGzE5gB,EAAGic,oBAAoB3U,EAAO4F,eAAgB,EAAGlN,EAAG6N,eAAe,EAAM+S,EAAQ,IAGjF5gB,EAAGic,oBAAoB3U,EAAO6F,cAAe,EAAGnN,EAAGkc,OAAO,EAAO0E,EAAQ,IAI7E,GAAIpmB,KAAK6jB,iBAAgC,GAAZ7jB,KAAKgjB,KAE9Bxd,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAKojB,cAG9C,CACI5d,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC,IAAIpM,EAAO/X,KAAKsjB,UAAUgD,SAAS,EAAGtmB,KAAK6jB,iBAAmB7jB,KAAKijB,YACnEzd,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGzJ,GAezC,IAXA,IASIyM,EATA+B,EAAY,EACZpa,EAAQ,EAER2X,EAAqB,KACrBpW,EAAmB1N,KAAKsF,cAAcyT,iBAAiBrL,iBACvDoV,EAAgB,KAEhB0D,GAAY,EACZC,GAAa,EAGRxkB,EAAI,EAAGyF,EAAI1H,KAAK6jB,iBAAkB5hB,EAAIyF,EAAGzF,IAClD,CAKQgkB,GAJJzB,EAASxkB,KAAKikB,QAAQhiB,IAEXsjB,cAEOf,EAAOe,cAActf,YAIrBue,EAAO1e,QAAQG,YAMjCugB,EAAY9Y,KAHZwY,EAAgB1B,EAAO1c,WAIvB2e,EAAa3D,KAHbqD,EAAa3B,EAAO1X,QAAU9M,KAAKmiB,eAKnC,IAAIuE,EAAOT,EAAY5Y,WAUvB,GARIqZ,GAAiC,EAAzBlC,EAAOxiB,SAASE,SAExBwkB,GAAO,KAIuBzmB,EAAKiG,2BACd4d,IAAuBmC,IACYS,GACxDF,GACAC,KAEAzmB,KAAK2mB,YAAY7C,EAAoByC,EAAWpa,GAEhDA,EAAQlK,EACRskB,EAAY,EACZzC,EAAqBmC,EAEjBO,IAEA9Y,EAAmBwY,EACnBlmB,KAAKsF,cAAcyT,iBAAiBqD,aAAa1O,IAGjD+Y,GACJ,EAGI3Z,GAFAgW,EAAgBqD,GAEOnC,QAAQxe,EAAGiP,QAI9B3H,EAAS,IAAI7M,EAAKkR,WAAW3L,IAEtBiL,YAAcqS,EAAcrS,YACnC3D,EAAO0G,SAAWsP,EAActP,SAChC1G,EAAO4E,OAEPoR,EAAckB,QAAQxe,EAAGiP,IAAM3H,GAInC9M,KAAKsF,cAAckT,cAAcwI,UAAUlU,GAEvCA,EAAO0E,OAEP1E,EAAOkJ,eAOX,IAAIsC,EAAatY,KAAKsF,cAAcgT,WACpC9S,EAAG2b,UAAUrU,EAAOsF,iBAAkBkG,EAAWhV,EAAGgV,EAAW/U,GAG/D,IAAI8O,EAAerS,KAAKsF,cAAciT,OACtC/S,EAAG2b,UAAUrU,EAAOuF,aAAcA,EAAa/O,EAAG+O,EAAa9O,GAMvEgjB,IAGJvmB,KAAK2mB,YAAY7C,EAAoByC,EAAWpa,GAGhDnM,KAAK6jB,iBAAmB,IAS5B5jB,EAAKyY,iBAAiB7W,UAAU8kB,YAAc,SAAU7gB,EAASkd,EAAM4D,GAEnE,GAAa,IAAT5D,EAAJ,CAKA,IAAIxd,EAAKxF,KAAKwF,GAGd,GAAIM,EAAQsQ,OAAO5Q,EAAGiP,KAElB,IAAKzU,KAAKsF,cAAcjB,SAASiS,cAAcxQ,GAG3C,YAKJN,EAAGyN,YAAYzN,EAAG0N,WAAYpN,EAAQ0O,YAAYhP,EAAGiP,KAGzDjP,EAAG+a,aAAa/a,EAAGqhB,UAAkB,EAAP7D,EAAUxd,EAAGib,eAA6B,EAAbmG,EAAiB,GAG5E5mB,KAAKsF,cAAc4T,cAMvBjZ,EAAKyY,iBAAiB7W,UAAUmK,KAAO,WAEnChM,KAAK6L,QACL7L,KAAKwR,OAAQ,GAMjBvR,EAAKyY,iBAAiB7W,UAAUsK,MAAQ,WAEpCnM,KAAKwR,OAAQ,GAQjBvR,EAAKyY,iBAAiB7W,UAAUE,QAAU,WAEtC/B,KAAKojB,SAAW,KAChBpjB,KAAK4S,QAAU,KAEf5S,KAAKwF,GAAGshB,aAAa9mB,KAAKmkB,cAC1BnkB,KAAKwF,GAAGshB,aAAa9mB,KAAK6hB,aAE1B7hB,KAAK8jB,mBAAqB,KAE1B9jB,KAAKwF,GAAK,MAiBdvF,EAAK8mB,qBAAuB,SAAUvhB,GAMlCxF,KAAK+iB,SAAW,GAMhB/iB,KAAKgnB,QAAU,IAMfhnB,KAAKgjB,KAAOhjB,KAAKgnB,QAGjB,IAAI9D,EAAuB,EAAZljB,KAAKgjB,KAAWhjB,KAAK+iB,SAGhCI,EAA4B,EAAfnjB,KAAKgnB,QAOtBhnB,KAAKojB,SAAW,IAAIG,aAAaL,GAOjCljB,KAAK4S,QAAU,IAAI8Q,YAAYP,GAM/BnjB,KAAKmkB,aAAe,KAMpBnkB,KAAK6hB,YAAc,KAQnB,IAAK,IAAI5f,EAFTjC,KAAK2jB,eAAiB,EAENjc,EAAI,EAAGzF,EAAIkhB,EAAYlhB,GAAK,EAAGyF,GAAK,EAEhD1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAC1B1H,KAAK4S,QAAQ3Q,EAAI,GAAKyF,EAAI,EAO9B1H,KAAK4jB,SAAU,EAMf5jB,KAAK6jB,iBAAmB,EAMxB7jB,KAAK8jB,mBAAqB,KAM1B9jB,KAAK0N,iBAAmB,EAMxB1N,KAAKsF,cAAgB,KAMrBtF,KAAK8M,OAAS,KAMd9M,KAAKuN,OAAS,KAEdvN,KAAKga,WAAWxU,IAGpBvF,EAAK8mB,qBAAqBllB,UAAUC,YAAc7B,EAAK8mB,qBAQvD9mB,EAAK8mB,qBAAqBllB,UAAUmY,WAAa,SAAUxU,GAEvDxF,KAAKwF,GAAKA,EAGVxF,KAAKmkB,aAAe3e,EAAG4e,eACvBpkB,KAAK6hB,YAAcrc,EAAG4e,eAKtB5e,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAC5Crc,EAAG6e,WAAW7e,EAAGoc,qBAAsB5hB,KAAK4S,QAASpN,EAAG8e,aAExD9e,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC3e,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKojB,SAAU5d,EAAG+e,eAQrDtkB,EAAK8mB,qBAAqBllB,UAAUwa,MAAQ,SAAUzQ,EAAatG,GAE/DtF,KAAKsF,cAAgBA,EACrBtF,KAAK8M,OAAS9M,KAAKsF,cAAckT,cAAc4J,WAE/CpiB,KAAKuN,OAAS3B,EAAY9K,eAAeogB,SAAQ,GAEjDlhB,KAAKmM,SAMTlM,EAAK8mB,qBAAqBllB,UAAUya,IAAM,WAEtCtc,KAAK6L,SAOT5L,EAAK8mB,qBAAqBllB,UAAUgD,OAAS,SAAU+G,GAEnD,IAAI5J,EAAW4J,EAAY5J,SACvBwiB,EAASxiB,EAAS,GAKtB,GAAIwiB,EAAO1e,QAAQ4e,KAAnB,CAEA1kB,KAAK8jB,mBAAqBU,EAAO1e,QAAQG,YAGtCue,EAAO1c,YAAc9H,KAAKsF,cAAcyT,iBAAiBrL,mBAExD1N,KAAK6L,QACL7L,KAAKsF,cAAcyT,iBAAiBqD,aAAaoI,EAAO1c,YAG5D,IAAI3B,EAAenG,KAAK8jB,mBAAmB3d,aACvCX,EAAKxF,KAAKwF,GAEdA,EAAGuN,cAAcvN,EAAGwN,SAAW7M,GAC/BX,EAAGyN,YAAYzN,EAAG0N,WAAYlT,KAAK8jB,mBAAmBtP,YAAYhP,EAAGiP,KACrExU,EAAKoX,cAAcyH,aAAa3Y,GAAgBnG,KAAK8jB,mBAErD,IAAI,IAAI7hB,EAAI,EAAEyF,EAAI1F,EAASE,OAAQD,EAAIyF,EAAGzF,IAEtCjC,KAAKinB,aAAajlB,EAASC,IAG/BjC,KAAK6L,UAOT5L,EAAK8mB,qBAAqBllB,UAAUolB,aAAe,SAAUzC,GAEzD,IACIve,EADUue,EAAO1e,QACKG,YACtBT,EAAKxF,KAAKwF,GACVW,EAAeqe,EAAO1e,QAAQG,YAAYE,aAE9C,IAAIlG,EAAKoX,cAAcyH,aAAa3Y,IAAiBF,IACjDA,EAAYuO,YAAYhP,EAAGiP,KAAQ+P,EAAO1e,QAAQG,YAAYoH,aAE9DrN,KAAK6L,QACLrG,EAAGuN,cAAcvN,EAAGwN,SAAW7M,GAC/BX,EAAGyN,YAAYzN,EAAG0N,WAAYjN,EAAYuO,YAAYhP,EAAGiP,KACzDxU,EAAKoX,cAAcyH,aAAa3Y,GAAgBF,EAC5Cue,EAAO1e,QAAQ4e,QAInBF,EAAO/jB,QAAX,CAEA,IAAIgkB,EAEA/f,EAAOC,EAAQoG,EAAIC,EAAIC,EAAIC,EAAIzC,EAD/B2a,EAAWpjB,KAAKojB,SAQpB,GALAqB,EAAMD,EAAO1e,QAAQ4e,KAErBhgB,EAAQ8f,EAAO1e,QAAQoH,MAAMxI,MAC7BC,EAAS6f,EAAO1e,QAAQoH,MAAMvI,OAE1B6f,EAAO1e,QAAQqI,KACnB,CAEI,IAAIA,EAAOqW,EAAO1e,QAAQqI,KAG1BpD,GADAC,EAAKmD,EAAK7K,EAAIkhB,EAAOhe,OAAOlD,EAAI6K,EAAKzJ,OAC3B8f,EAAO1e,QAAQ2H,KAAK/I,MAG9BuG,GADAC,EAAKiD,EAAK5K,EAAIihB,EAAOhe,OAAOjD,EAAI4K,EAAKxJ,QAC3B6f,EAAO1e,QAAQ2H,KAAK9I,YAI9BoG,EAAKrG,GAAS,EAAI8f,EAAOhe,OAAOlD,GAChC0H,EAAKtG,GAAS8f,EAAOhe,OAAOlD,EAE5B2H,EAAKtG,GAAU,EAAI6f,EAAOhe,OAAOjD,GACjC2H,EAAKvG,GAAU6f,EAAOhe,OAAOjD,EAGjCkF,EAAgC,EAAxBzI,KAAK6jB,iBAAuB7jB,KAAK+iB,SAGzCK,EAAS3a,KAAWuC,EACpBoY,EAAS3a,KAAWyC,EAEpBkY,EAAS3a,KAAW+b,EAAOrkB,SAASmD,EACpC8f,EAAS3a,KAAW+b,EAAOrkB,SAASoD,EAGpC6f,EAAS3a,KAAW+b,EAAOnkB,MAAMiD,EACjC8f,EAAS3a,KAAW+b,EAAOnkB,MAAMkD,EAGjC6f,EAAS3a,KAAW+b,EAAOjkB,SAG3B6iB,EAAS3a,KAAWgc,EAAIW,GACxBhC,EAAS3a,KAAWgc,EAAIrZ,GAGxBgY,EAAS3a,KAAW+b,EAAOhkB,MAG3B4iB,EAAS3a,KAAWtC,EAGpBid,EAAS3a,KAAWsC,EACpBqY,EAAS3a,KAAWyC,EAEpBkY,EAAS3a,KAAW+b,EAAOrkB,SAASmD,EACpC8f,EAAS3a,KAAW+b,EAAOrkB,SAASoD,EAGpC6f,EAAS3a,KAAW+b,EAAOnkB,MAAMiD,EACjC8f,EAAS3a,KAAW+b,EAAOnkB,MAAMkD,EAGjC6f,EAAS3a,KAAW+b,EAAOjkB,SAG3B6iB,EAAS3a,KAAWgc,EAAItZ,GACxBiY,EAAS3a,KAAWgc,EAAIrZ,GAGxBgY,EAAS3a,KAAW+b,EAAOhkB,MAG3B4iB,EAAS3a,KAAWtC,EAGpBid,EAAS3a,KAAWsC,EACpBqY,EAAS3a,KAAWwC,EAEpBmY,EAAS3a,KAAW+b,EAAOrkB,SAASmD,EACpC8f,EAAS3a,KAAW+b,EAAOrkB,SAASoD,EAGpC6f,EAAS3a,KAAW+b,EAAOnkB,MAAMiD,EACjC8f,EAAS3a,KAAW+b,EAAOnkB,MAAMkD,EAGjC6f,EAAS3a,KAAW+b,EAAOjkB,SAG3B6iB,EAAS3a,KAAWgc,EAAIpZ,GACxB+X,EAAS3a,KAAWgc,EAAInZ,GAGxB8X,EAAS3a,KAAW+b,EAAOhkB,MAG3B4iB,EAAS3a,KAAWtC,EAGpBid,EAAS3a,KAAWuC,EACpBoY,EAAS3a,KAAWwC,EAEpBmY,EAAS3a,KAAW+b,EAAOrkB,SAASmD,EACpC8f,EAAS3a,KAAW+b,EAAOrkB,SAASoD,EAGpC6f,EAAS3a,KAAW+b,EAAOnkB,MAAMiD,EACjC8f,EAAS3a,KAAW+b,EAAOnkB,MAAMkD,EAGjC6f,EAAS3a,KAAW+b,EAAOjkB,SAG3B6iB,EAAS3a,KAAWgc,EAAIlZ,GACxB6X,EAAS3a,KAAWgc,EAAIjZ,GAGxB4X,EAAS3a,KAAW+b,EAAOhkB,MAG3B4iB,EAAS3a,KAAWtC,EAGpBnG,KAAK6jB,mBAEF7jB,KAAK6jB,kBAAoB7jB,KAAKgjB,MAE7BhjB,KAAK6L,UAOb5L,EAAK8mB,qBAAqBllB,UAAUgK,MAAQ,WAGxC,GAA8B,IAA1B7L,KAAK6jB,iBAAT,CAEA,IAAIre,EAAKxF,KAAKwF,GAId,GAAIxF,KAAK8jB,mBAAmBtP,YAAYhP,EAAGiP,IAA3C,CAUA,GAAGzU,KAAK6jB,iBAAgC,GAAZ7jB,KAAKgjB,KAE7Bxd,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAKojB,cAG9C,CACI,IAAIrL,EAAO/X,KAAKojB,SAASkD,SAAS,EAA2B,EAAxBtmB,KAAK6jB,iBAAuB7jB,KAAK+iB,UAEtEvd,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGzJ,GAIzCvS,EAAG+a,aAAa/a,EAAGqhB,UAAmC,EAAxB7mB,KAAK6jB,iBAAsBre,EAAGib,eAAgB,GAG5EzgB,KAAK6jB,iBAAmB,EAGxB7jB,KAAKsF,cAAc4T,iBA1BflZ,KAAKsF,cAAcjB,SAASiS,cAActW,KAAK8jB,mBAAoBte,KAgC3EvF,EAAK8mB,qBAAqBllB,UAAUmK,KAAO,WAEvChM,KAAK6L,SAMT5L,EAAK8mB,qBAAqBllB,UAAUsK,MAAQ,WAExC,IAAI3G,EAAKxF,KAAKwF,GAGdA,EAAGuN,cAAcvN,EAAGwN,UAGpBxN,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC3e,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAG5C,IAAIvJ,EAAatY,KAAKsF,cAAcgT,WACpC9S,EAAG2b,UAAUnhB,KAAK8M,OAAOsF,iBAAkBkG,EAAWhV,EAAGgV,EAAW/U,GAGpEiC,EAAG8O,iBAAiBtU,KAAK8M,OAAO2J,SAAS,EAAOzW,KAAKuN,QAGrD,IAAI6Y,EAAyB,EAAhBpmB,KAAK+iB,SAElBvd,EAAGic,oBAAoBzhB,KAAK8M,OAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO0E,EAAQ,GAChF5gB,EAAGic,oBAAoBzhB,KAAK8M,OAAO4J,eAAgB,EAAGlR,EAAGkc,OAAO,EAAO0E,EAAQ,GAC/E5gB,EAAGic,oBAAoBzhB,KAAK8M,OAAO6J,OAAQ,EAAGnR,EAAGkc,OAAO,EAAO0E,EAAQ,IACvE5gB,EAAGic,oBAAoBzhB,KAAK8M,OAAO8J,UAAW,EAAGpR,EAAGkc,OAAO,EAAO0E,EAAQ,IAC1E5gB,EAAGic,oBAAoBzhB,KAAK8M,OAAO2F,cAAe,EAAGjN,EAAGkc,OAAO,EAAO0E,EAAQ,IAC9E5gB,EAAGic,oBAAoBzhB,KAAK8M,OAAO4F,eAAgB,EAAGlN,EAAGkc,OAAO,EAAO0E,EAAQ,IAC/E5gB,EAAGic,oBAAoBzhB,KAAK8M,OAAO6F,cAAe,EAAGnN,EAAGkc,OAAO,EAAO0E,EAAQ,KAWlFnmB,EAAK2Y,mBAAqB,WAMtB5Y,KAAKknB,YAAc,GAMnBlnB,KAAK4lB,QAAU,EAMf5lB,KAAK6lB,QAAU,GAGnB5lB,EAAK2Y,mBAAmB/W,UAAUC,YAAc7B,EAAK2Y,mBAQrD3Y,EAAK2Y,mBAAmB/W,UAAUmY,WAAa,SAAUxU,GAErDxF,KAAKwF,GAAKA,EACVxF,KAAKmnB,YAAc,GAEnBnnB,KAAKonB,qBAQTnnB,EAAK2Y,mBAAmB/W,UAAUwa,MAAQ,SAAU/W,EAAe6W,GAE/Dnc,KAAKsF,cAAgBA,EACrBtF,KAAKmiB,cAAgB7c,EAAckT,cAAc2J,cAEjD,IAAI7J,EAAatY,KAAKsF,cAAcgT,WACpCtY,KAAK0E,MAAuB,EAAf4T,EAAWhV,EACxBtD,KAAK2E,OAAyB,GAAf2T,EAAW/U,EAC1BvD,KAAKmc,OAASA,GASlBlc,EAAK2Y,mBAAmB/W,UAAUkK,WAAa,SAAUsb,GAErD,IAAI7hB,EAAKxF,KAAKwF,GAEV8S,EAAatY,KAAKsF,cAAcgT,WAChCC,EAASvY,KAAKsF,cAAciT,OAEhC8O,EAAYC,YAAcD,EAAYxf,OAAOzG,YAAcimB,EAAYxf,OAAOkC,YAG9Esd,EAAYE,sBAAwBvnB,KAAKsF,cAAcuT,eACvD7Y,KAAKsF,cAAcuT,eAAiB,IAAI5Y,EAAK6Y,oBAC7C9Y,KAAKsF,cAAcuT,eAAemB,WAAWxU,GAC7CA,EAAGmU,QAAQnU,EAAGqa,cAQd7f,KAAKknB,YAAYvf,KAAK0f,GAEtB,IAAIG,EAASH,EAAY5f,aAAa,GAEtCzH,KAAK4lB,SAAWyB,EAAYC,YAAYhkB,EACxCtD,KAAK6lB,SAAWwB,EAAYC,YAAY/jB,EAExC,IAAIuC,EAAU9F,KAAKmnB,YAAYrF,MAC3Bhc,EAMAA,EAAQC,OAAO/F,KAAK0E,MAAQ1E,KAAKsF,cAAcnB,WAAYnE,KAAK2E,OAAS3E,KAAKsF,cAAcnB,YAJ5F2B,EAAU,IAAI7F,EAAKwnB,cAAcznB,KAAKwF,GAAIxF,KAAK0E,MAAQ1E,KAAKsF,cAAcnB,WAAYnE,KAAK2E,OAAS3E,KAAKsF,cAAcnB,YAO3HqB,EAAGyN,YAAYzN,EAAG0N,WAAYpN,EAAQA,SAEtC,IAAI1E,EAAaimB,EAAYC,YAEzBI,EAAUF,EAAOE,QACrBtmB,EAAWkC,GAAKokB,EAChBtmB,EAAWmC,GAAKmkB,EAChBtmB,EAAWsD,OAAmB,EAAVgjB,EACpBtmB,EAAWuD,QAAoB,EAAV+iB,EAGlBtmB,EAAWkC,EAAI,IAAKlC,EAAWkC,EAAI,GACnClC,EAAWsD,MAAQ1E,KAAK0E,QAAStD,EAAWsD,MAAQ1E,KAAK0E,OACzDtD,EAAWmC,EAAI,IAAKnC,EAAWmC,EAAI,GACnCnC,EAAWuD,OAAS3E,KAAK2E,SAAUvD,EAAWuD,OAAS3E,KAAK2E,QAG/Da,EAAG+V,gBAAgB/V,EAAGgW,YAAa1V,EAAQ6hB,aAG3CniB,EAAG8V,SAAS,EAAG,EAAGla,EAAWsD,MAAQ1E,KAAKsF,cAAcnB,WAAY/C,EAAWuD,OAAS3E,KAAKsF,cAAcnB,YAE3GmU,EAAWhV,EAAIlC,EAAWsD,MAAQ,EAClC4T,EAAW/U,GAAKnC,EAAWuD,OAAS,EAEpC4T,EAAOjV,GAAKlC,EAAWkC,EACvBiV,EAAOhV,GAAKnC,EAAWmC,EAUvBiC,EAAGwa,WAAU,GAAM,GAAM,GAAM,GAC/Bxa,EAAGiW,WAAW,EAAE,EAAE,EAAG,GACrBjW,EAAGoW,MAAMpW,EAAGqW,kBAEZwL,EAAYO,iBAAmB9hB,GAQnC7F,EAAK2Y,mBAAmB/W,UAAUwK,UAAY,WAE1C,IAAI7G,EAAKxF,KAAKwF,GACV6hB,EAAcrnB,KAAKknB,YAAYpF,MAC/B1gB,EAAaimB,EAAYC,YACzBxhB,EAAUuhB,EAAYO,iBACtBtP,EAAatY,KAAKsF,cAAcgT,WAChCC,EAASvY,KAAKsF,cAAciT,OAEhC,GAAqC,EAAlC8O,EAAY5f,aAAavF,OAC5B,CACIsD,EAAG8V,SAAS,EAAG,EAAGla,EAAWsD,MAAQ1E,KAAKsF,cAAcnB,WAAY/C,EAAWuD,OAAS3E,KAAKsF,cAAcnB,YAE3GqB,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cAEpCnkB,KAAK6nB,YAAY,GAAK,EACtB7nB,KAAK6nB,YAAY,GAAKzmB,EAAWuD,OAEjC3E,KAAK6nB,YAAY,GAAKzmB,EAAWsD,MACjC1E,KAAK6nB,YAAY,GAAKzmB,EAAWuD,OAEjC3E,KAAK6nB,YAAY,GAAK,EACtB7nB,KAAK6nB,YAAY,GAAK,EAEtB7nB,KAAK6nB,YAAY,GAAKzmB,EAAWsD,MACjC1E,KAAK6nB,YAAY,GAAK,EAEtBriB,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAK6nB,aAE1CriB,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK8nB,UAGpC9nB,KAAK+nB,QAAQ,GAAK3mB,EAAWsD,MAAQ1E,KAAK0E,MAC1C1E,KAAK+nB,QAAQ,GAAK3mB,EAAWuD,OAAS3E,KAAK2E,OAC3C3E,KAAK+nB,QAAQ,GAAK3mB,EAAWsD,MAAQ1E,KAAK0E,MAC1C1E,KAAK+nB,QAAQ,GAAK3mB,EAAWuD,OAAS3E,KAAK2E,OAE3Ca,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAK+nB,SAE1C,IAAIC,EAAeliB,EACfmiB,EAAgBjoB,KAAKmnB,YAAYrF,MACjCmG,IAAiBA,EAAgB,IAAIhoB,EAAKwnB,cAAcznB,KAAKwF,GAAIxF,KAAK0E,MAAQ1E,KAAKsF,cAAcnB,WAAYnE,KAAK2E,OAAS3E,KAAKsF,cAAcnB,aAClJ8jB,EAAcliB,OAAO/F,KAAK0E,MAAQ1E,KAAKsF,cAAcnB,WAAYnE,KAAK2E,OAAS3E,KAAKsF,cAAcnB,YAGlGqB,EAAG+V,gBAAgB/V,EAAGgW,YAAayM,EAAcN,aACjDniB,EAAGoW,MAAMpW,EAAGqW,kBAEZrW,EAAGmU,QAAQnU,EAAGuU,OAEd,IAAK,IAAI9X,EAAI,EAAGA,EAAIolB,EAAY5f,aAAavF,OAAS,EAAGD,IACzD,CACI,IAAIimB,EAAab,EAAY5f,aAAaxF,GAE1CuD,EAAG+V,gBAAgB/V,EAAGgW,YAAayM,EAAcN,aAGjDniB,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAGyN,YAAYzN,EAAG0N,WAAY8U,EAAaliB,SAM3C9F,KAAKmoB,gBAAgBD,EAAY9mB,EAAYA,EAAWsD,MAAOtD,EAAWuD,QAG1E,IAAI6I,EAAOwa,EACXA,EAAeC,EACfA,EAAgBza,EAGpBhI,EAAGsU,OAAOtU,EAAGuU,OAEbjU,EAAUkiB,EACVhoB,KAAKmnB,YAAYxf,KAAKsgB,GAG1B,IAAIT,EAASH,EAAY5f,aAAa4f,EAAY5f,aAAavF,OAAS,GAExElC,KAAK4lB,SAAWxkB,EAAWkC,EAC3BtD,KAAK6lB,SAAWzkB,EAAWmC,EAE3B,IAAI6kB,EAAQpoB,KAAK0E,MACb2jB,EAAQroB,KAAK2E,OAEbihB,EAAU,EACVC,EAAU,EAEV1J,EAASnc,KAAKmc,OAGlB,GAA+B,IAA5Bnc,KAAKknB,YAAYhlB,OAEhBsD,EAAGwa,WAAU,GAAM,GAAM,GAAM,OAGnC,CACI,IAAIsI,EAAgBtoB,KAAKknB,YAAYlnB,KAAKknB,YAAYhlB,OAAS,GAG/DkmB,GAFAhnB,EAAaknB,EAAchB,aAER5iB,MACnB2jB,EAAQjnB,EAAWuD,OAEnBihB,EAAUxkB,EAAWkC,EACrBuiB,EAAUzkB,EAAWmC,EAErB4Y,EAASmM,EAAcV,iBAAiBD,YAI5CrP,EAAWhV,EAAI8kB,EAAQ,EACvB9P,EAAW/U,GAAK8kB,EAAQ,EAExB9P,EAAOjV,EAAIsiB,EACXrN,EAAOhV,EAAIsiB,EAIX,IAAIviB,GAFJlC,EAAaimB,EAAYC,aAENhkB,EAAIsiB,EACnBriB,EAAInC,EAAWmC,EAAIsiB,EAMvBrgB,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cAEpCnkB,KAAK6nB,YAAY,GAAKvkB,EACtBtD,KAAK6nB,YAAY,GAAKtkB,EAAInC,EAAWuD,OAErC3E,KAAK6nB,YAAY,GAAKvkB,EAAIlC,EAAWsD,MACrC1E,KAAK6nB,YAAY,GAAKtkB,EAAInC,EAAWuD,OAErC3E,KAAK6nB,YAAY,GAAKvkB,EACtBtD,KAAK6nB,YAAY,GAAKtkB,EAEtBvD,KAAK6nB,YAAY,GAAKvkB,EAAIlC,EAAWsD,MACrC1E,KAAK6nB,YAAY,GAAKtkB,EAEtBiC,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAK6nB,aAE1CriB,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK8nB,UAEpC9nB,KAAK+nB,QAAQ,GAAK3mB,EAAWsD,MAAQ1E,KAAK0E,MAC1C1E,KAAK+nB,QAAQ,GAAK3mB,EAAWuD,OAAS3E,KAAK2E,OAC3C3E,KAAK+nB,QAAQ,GAAK3mB,EAAWsD,MAAQ1E,KAAK0E,MAC1C1E,KAAK+nB,QAAQ,GAAK3mB,EAAWuD,OAAS3E,KAAK2E,OAE3Ca,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAK+nB,SAE1CviB,EAAG8V,SAAS,EAAG,EAAG8M,EAAQpoB,KAAKsF,cAAcnB,WAAYkkB,EAAQroB,KAAKsF,cAAcnB,YAGpFqB,EAAG+V,gBAAgB/V,EAAGgW,YAAaW,GAQnC3W,EAAGuN,cAAcvN,EAAGwN,UACpBxN,EAAGyN,YAAYzN,EAAG0N,WAAYpN,EAAQA,SAGlC9F,KAAKsF,cAAcuT,gBAEnB7Y,KAAKsF,cAAcuT,eAAe9W,UAEtC/B,KAAKsF,cAAcuT,eAAiBwO,EAAYE,sBAChDF,EAAYE,sBAAwB,KACU,EAA1CvnB,KAAKsF,cAAcuT,eAAe4G,MAElCja,EAAGsU,OAAOtU,EAAGqa,cAIbra,EAAGmU,QAAQnU,EAAGqa,cAMlB7f,KAAKmoB,gBAAgBX,EAAQpmB,EAAYgnB,EAAOC,GAUhDroB,KAAKmnB,YAAYxf,KAAK7B,GACtBuhB,EAAYO,iBAAmB,MAYnC3nB,EAAK2Y,mBAAmB/W,UAAUsmB,gBAAkB,SAAUX,EAAQpmB,EAAYsD,EAAOC,GAGrF,IAAIa,EAAKxF,KAAKwF,GACVsH,EAAS0a,EAAOxD,QAAQxe,EAAGiP,IAE3B3H,KAEAA,EAAS,IAAI7M,EAAKkR,WAAW3L,IAEtBiL,YAAc+W,EAAO/W,YAC5B3D,EAAO0G,SAAWgU,EAAOhU,SACzB1G,EAAO4E,MAAK,GAEZ8V,EAAOxD,QAAQxe,EAAGiP,IAAM3H,GAI5B9M,KAAKsF,cAAckT,cAAcwI,UAAUlU,GAI3CtH,EAAG2b,UAAUrU,EAAOsF,iBAAkB1N,EAAQ,GAAIC,EAAS,GAC3Da,EAAG2b,UAAUrU,EAAOuF,aAAc,EAAE,GAEjCmV,EAAOhU,SAASlB,aAEfkV,EAAOhU,SAASlB,WAAWrL,MAAM,GAAKjH,KAAK0E,MAC3C8iB,EAAOhU,SAASlB,WAAWrL,MAAM,GAAKjH,KAAK2E,OAC3C6iB,EAAOhU,SAASlB,WAAWrL,MAAM,GAAKjH,KAAK6nB,YAAY,GACvDL,EAAOhU,SAASlB,WAAWrL,MAAM,GAAKjH,KAAK6nB,YAAY,IAG3D/a,EAAOkJ,eAEPxQ,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC3e,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO,EAAG,GAEtElc,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK8nB,UACpCtiB,EAAGic,oBAAoB3U,EAAO2F,cAAe,EAAGjN,EAAGkc,OAAO,EAAO,EAAG,GAEpElc,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKuoB,aACpC/iB,EAAGic,oBAAoB3U,EAAO4F,eAAgB,EAAGlN,EAAGkc,OAAO,EAAO,EAAG,GAErElc,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAG5Crc,EAAG+a,aAAa/a,EAAGqhB,UAAW,EAAGrhB,EAAGib,eAAgB,GAEpDzgB,KAAKsF,cAAc4T,aAQvBjZ,EAAK2Y,mBAAmB/W,UAAUulB,kBAAoB,WAElD,IAAI5hB,EAAKxF,KAAKwF,GAGdxF,KAAKmkB,aAAe3e,EAAG4e,eACvBpkB,KAAK8nB,SAAWtiB,EAAG4e,eACnBpkB,KAAKuoB,YAAc/iB,EAAG4e,eACtBpkB,KAAK6hB,YAAcrc,EAAG4e,eAMtBpkB,KAAK6nB,YAAc,IAAItE,aAAa,CAAE,EAAK,EACvC,EAAK,EACL,EAAK,EACL,EAAK,IAET/d,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmkB,cACpC3e,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAK6nB,YAAariB,EAAG8e,aAGpDtkB,KAAK+nB,QAAU,IAAIxE,aAAa,CAAE,EAAK,EACnC,EAAK,EACL,EAAK,EACL,EAAK,IAET/d,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK8nB,UACpCtiB,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAK+nB,QAASviB,EAAG8e,aAEhDtkB,KAAKwoB,WAAa,IAAIjF,aAAa,CAAE,EAAK,SACtC,EAAK,SACL,EAAK,SACL,EAAK,WAET/d,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKuoB,aACpC/iB,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKwoB,WAAYhjB,EAAG8e,aAGnD9e,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAC5Crc,EAAG6e,WAAW7e,EAAGoc,qBAAsB,IAAI8B,YAAY,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,IAAMle,EAAG8e,cAQrFrkB,EAAK2Y,mBAAmB/W,UAAUE,QAAU,WAExC,IAAIyD,EAAKxF,KAAKwF,GAEdxF,KAAKknB,YAAc,KAEnBlnB,KAAK4lB,QAAU,EAIf,IAAK,IAAI3jB,EAHTjC,KAAK6lB,QAAU,EAGC5jB,EAAIjC,KAAKmnB,YAAYjlB,OAAQD,IAEzCjC,KAAKmnB,YAAYllB,GAAGF,UAGxB/B,KAAKmnB,YAAc,KAGnB3hB,EAAGshB,aAAa9mB,KAAKmkB,cACrB3e,EAAGshB,aAAa9mB,KAAK8nB,UACrBtiB,EAAGshB,aAAa9mB,KAAKuoB,aACrB/iB,EAAGshB,aAAa9mB,KAAK6hB,cAyBzB,IAAI4G,EAAY,CACZC,MAAO,wBACPC,MAAO,qBACPC,MAAO,wBACPC,MAAO,2BAMX,SAASC,EAAoBtjB,EAAId,EAAOC,EAAQP,EAAW4B,GAEvD,IAGI+iB,EA9BsBvjB,EAAId,EAAOC,EAAQP,EAEzC0B,EAyBAkjB,EAAcxjB,EAAGyjB,oBACjBC,EAAqB1jB,EAAG2jB,qBACxBZ,EAAc,KAkBlB,OAfA/iB,EAAGuN,cAAcvN,EAAGwN,SAAWhN,GAC/BR,EAAG+V,gBAAgB/V,EAAGgW,YAAawN,GACnCxjB,EAAG4jB,iBAAiB5jB,EAAG6jB,aAAcH,GACrC1jB,EAAG8jB,wBAAwB9jB,EAAGgW,YAAahW,EAAG+jB,yBAA0B/jB,EAAG6jB,aAAcrpB,KAAKwpB,cAnChE9kB,EAoCQA,EApCDC,EAoCQA,EApCAP,EAoCQA,EAlCjD0B,GAFsBN,EAoCQA,GAlCjBsN,gBACjBtN,EAAGyN,YAAYzN,EAAG0N,WAAYpN,GAC9BN,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGqQ,eAAgBrQ,EAAGuP,eACtDvP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGsQ,eAAgBtQ,EAAGuP,eACtDvP,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGmQ,mBAAoBvR,IAAcnE,EAAK+N,WAAWC,OAASzI,EAAGyI,OAASzI,EAAGoX,SAC7GpX,EAAGkQ,cAAclQ,EAAG0N,WAAY1N,EAAGoQ,mBAAoBxR,IAAcnE,EAAK+N,WAAWC,OAASzI,EAAGyI,OAASzI,EAAGoX,SAC7GpX,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG1N,EAAG2P,KAAMzQ,EAAOC,EAAQ,EAAGa,EAAG2P,KAAM3P,EAAG6N,cAAe,MA4BtFkV,EA3BOziB,EA4BPN,EAAGikB,qBAAqBjkB,EAAGgW,YAAahW,EAAGkkB,kBAAmBlkB,EAAG0N,WAAYqV,EAAa,IAC1FQ,EAAWvjB,EAAGmkB,uBAAuBnkB,EAAGgW,gBACxBhW,EAAGokB,sBAEfxZ,QAAQyZ,MAAM,8BAA+BpB,EAAUM,IAE3DC,EAAYtkB,MAAQA,EACpBskB,EAAYrkB,OAASA,EACrBqkB,EAAYc,cAAgBvB,EAC5BS,EAAYQ,aAAeN,EACpBF,EAouCP,OAztCJ/oB,EAAKwnB,cAAgB,SAAUjiB,EAAId,EAAOC,EAAQP,EAAW4B,GAEzDA,EAAqC,iBAAhBA,EAA2BA,EAAc,EAM9DhG,KAAKwF,GAAKA,EAQVxF,KAAK2nB,YAAcmB,EAAmBtjB,EAAId,EAAOC,EAAQP,GAAanE,EAAK+N,WAAW+b,QAAS/jB,GAM/FhG,KAAK8F,QAAU9F,KAAK2nB,YAAYmC,cAChC9pB,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EACd3E,KAAKwpB,aAAexpB,KAAK2nB,YAAY6B,cAGzCvpB,EAAKwnB,cAAc5lB,UAAUC,YAAc7B,EAAKwnB,cAOhDxnB,EAAKwnB,cAAc5lB,UAAU+Z,MAAQ,WAEjC,IAAIpW,EAAKxF,KAAKwF,GAEdA,EAAGiW,WAAW,EAAE,EAAE,EAAG,GACrBjW,EAAGoW,MAAMpW,EAAGqW,mBAUhB5b,EAAKwnB,cAAc5lB,UAAUkE,OAAS,SAAUrB,EAAOC,GAEnD,GAAG3E,KAAK0E,QAAUA,GAAS1E,KAAK2E,SAAWA,EAA3C,CAEA3E,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEd,IAAIa,EAAKxF,KAAKwF,GACdA,EAAGyN,YAAYzN,EAAG0N,WAAYlT,KAAK8F,SACnCN,EAAG2N,WAAW3N,EAAG0N,WAAY,EAAG1N,EAAG2P,KAAMzQ,EAAQC,EAAS,EAAGa,EAAG2P,KAAM3P,EAAG6N,cAAe,MAGxF7N,EAAG4jB,iBAAiB5jB,EAAG6jB,aAAcrpB,KAAKwpB,cAC1ChkB,EAAGwkB,oBAAoBxkB,EAAG6jB,aAAc7jB,EAAGykB,cAAevlB,EAAQC,KAQtE1E,EAAKwnB,cAAc5lB,UAAUE,QAAU,WAEnC,IAAIyD,EAAKxF,KAAKwF,GACdA,EAAG0kB,kBAAkBlqB,KAAK2nB,aAC1BniB,EAAG2kB,cAAcnqB,KAAK8F,SAEtB9F,KAAK2nB,YAAc,KACnB3nB,KAAK8F,QAAU,MAenB7F,EAAKmqB,aAAe,SAAU1lB,EAAOC,GAQjC3E,KAAK0E,MAAQA,EAQb1E,KAAK2E,OAASA,EAQd3E,KAAKgY,OAASjX,OAAO2F,WAAW2B,OAAOrI,KAAMA,KAAK0E,MAAO1E,KAAK2E,QAQ9D3E,KAAK2N,QAAU3N,KAAKgY,OAAOsB,WAAW,MAEtCtZ,KAAKgY,OAAOtT,MAAQA,EACpB1E,KAAKgY,OAAOrT,OAASA,GAGzB1E,EAAKmqB,aAAavoB,UAAUC,YAAc7B,EAAKmqB,aAQ/CnqB,EAAKmqB,aAAavoB,UAAU+Z,MAAQ,WAEhC5b,KAAK2N,QAAQiB,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GACzC5O,KAAK2N,QAAQ0c,UAAU,EAAE,EAAGrqB,KAAK0E,MAAO1E,KAAK2E,SAUjD1E,EAAKmqB,aAAavoB,UAAUkE,OAAS,SAAUrB,EAAOC,GAElD3E,KAAK0E,MAAQ1E,KAAKgY,OAAOtT,MAAQA,EACjC1E,KAAK2E,OAAS3E,KAAKgY,OAAOrT,OAASA,GAQvC1E,EAAKmqB,aAAavoB,UAAUE,QAAU,WAElChB,OAAO2F,WAAW2W,OAAOrd,OAa7BC,EAAKqqB,kBAAoB,aAIzBrqB,EAAKqqB,kBAAkBzoB,UAAUC,YAAc7B,EAAKqqB,kBASpDrqB,EAAKqqB,kBAAkBzoB,UAAUqK,SAAW,SAAU+S,EAAU3Z,GAE5D,IAAIqI,EAAUrI,EAAcqI,QAE5BA,EAAQ4c,OAER,IAAIC,EAAavL,EAASze,MACtBiqB,EAAYxL,EAASne,eAErBqD,EAAamB,EAAcnB,WAE/BwJ,EAAQiB,aAAa6b,EAAUhoB,EAAI0B,EAC/BsmB,EAAU/nB,EAAIyB,EACdsmB,EAAU9nB,EAAIwB,EACdsmB,EAAU7nB,EAAIuB,EACdsmB,EAAU5nB,GAAKsB,EACfsmB,EAAU3nB,GAAKqB,GAEnBlE,EAAKyqB,eAAeC,mBAAmB1L,EAAUtR,GAEjDA,EAAQid,OAER3L,EAASpe,WAAa2pB,GAS1BvqB,EAAKqqB,kBAAkBzoB,UAAUuK,QAAU,SAAU9G,GAEjDA,EAAcqI,QAAQkd,WAa1B5qB,EAAK6O,aAAe,aAWpB7O,EAAK6O,aAAaC,iBAAmB,SAAUyV,EAAQrN,GAEnD,IAAIa,EAASwM,EAAO/d,eAAiB1F,OAAO2F,WAAW2B,OAAOrI,MAI9D,OAFAC,EAAK6O,aAAagc,WAAWtG,EAAO1e,QAASqR,EAAOa,GAE7CA,GAYX/X,EAAK6O,aAAaic,iBAAmB,SAAUjlB,EAASqR,EAAOa,GAE3D,IAAIrK,EAAUqK,EAAOsB,WAAW,MAE5B7L,EAAO3H,EAAQ2H,KACf0I,EAAI1I,EAAK/I,MACT+gB,EAAIhY,EAAK9I,OAETmB,EAAQ2I,UAER0H,EAAIsP,EACJA,EAAIhY,EAAK/I,OAGTsT,EAAOtT,QAAUyR,GAAK6B,EAAOrT,SAAW8gB,IAExCzN,EAAOtT,MAAQyR,EACf6B,EAAOrT,OAAS8gB,GAGpB9X,EAAQ0c,UAAU,EAAG,EAAGlU,EAAGsP,GAE3B9X,EAAQqd,UAAY,KAAO,SAAmB,EAAR7T,GAAW8T,SAAS,KAAKC,QAAQ,GACvEvd,EAAQwd,SAAS,EAAG,EAAGhV,EAAGsP,GAE1B9X,EAAQC,yBAA2B,WACnCD,EAAQqB,UAAUlJ,EAAQG,YAAYkJ,OAAQ1B,EAAKnK,EAAGmK,EAAKlK,EAAG4S,EAAGsP,EAAG,EAAG,EAAGtP,EAAGsP,GAE7E9X,EAAQC,yBAA2B,mBACnCD,EAAQqB,UAAUlJ,EAAQG,YAAYkJ,OAAQ1B,EAAKnK,EAAGmK,EAAKlK,EAAG4S,EAAGsP,EAAG,EAAG,EAAGtP,EAAGsP,IAYjFxlB,EAAK6O,aAAasc,iBAAmB,SAAUtlB,EAASqR,EAAOa,GAE3D,IAAIrK,EAAUqK,EAAOsB,WAAW,MAE5B7L,EAAO3H,EAAQ2H,KACf0I,EAAI1I,EAAK/I,MACT+gB,EAAIhY,EAAK9I,OAETmB,EAAQ2I,UAER0H,EAAIsP,EACJA,EAAIhY,EAAK/I,OAGTsT,EAAOtT,QAAUyR,GAAK6B,EAAOrT,SAAW8gB,IAExCzN,EAAOtT,MAAQyR,EACf6B,EAAOrT,OAAS8gB,GAGpB9X,EAAQC,yBAA2B,OAEnCD,EAAQqB,UAAUlJ,EAAQG,YAAYkJ,OAAQ1B,EAAKnK,EAAGmK,EAAKlK,EAAG4S,EAAGsP,EAAG,EAAG,EAAGtP,EAAGsP,GAW7E,IATA,IAAI4F,EAAYtqB,OAAOsgB,MAAMC,cAAcnK,GACvC1T,EAAI4nB,EAAU,GACd1P,EAAI0P,EAAU,GACd3oB,EAAI2oB,EAAU,GAEdC,EAAY3d,EAAQ4d,aAAa,EAAG,EAAGpV,EAAGsP,GAE1C+F,EAASF,EAAU3W,KAEd1S,EAAI,EAAGA,EAAIupB,EAAOtpB,OAAQD,GAAK,EAMpC,GAJAupB,EAAOvpB,EAAI,IAAMwB,EACjB+nB,EAAOvpB,EAAI,IAAM0Z,EACjB6P,EAAOvpB,EAAI,IAAMS,GAEZzC,EAAK6O,aAAa2c,eACvB,CACI,IAAIjrB,EAAQgrB,EAAOvpB,EAAI,GAEvBupB,EAAOvpB,EAAI,IAAM,IAAMzB,EACvBgrB,EAAOvpB,EAAI,IAAM,IAAMzB,EACvBgrB,EAAOvpB,EAAI,IAAM,IAAMzB,EAI/BmN,EAAQ+d,aAAaJ,EAAW,EAAG,IAevCrrB,EAAK0rB,eAAiB,SAAUrpB,EAAMgV,GAyFlC,GApFAtX,KAAKsC,KAAOA,EAEPrC,EAAKsX,kBAENtX,EAAKsX,gBAAkBvX,MAS3BA,KAAK+T,KAAOhT,OAAO6qB,OAQnB5rB,KAAKmE,WAAa7B,EAAK6B,WAYvBnE,KAAK6X,kBAAoBvV,EAAKuV,kBAQ9B7X,KAAK0X,YAAcpV,EAAKoV,YAQxB1X,KAAK2X,YAAa,EASlB3X,KAAK0E,MAAQpC,EAAKoC,MAAQ1E,KAAKmE,WAS/BnE,KAAK2E,OAASrC,EAAKqC,OAAS3E,KAAKmE,WAQjCnE,KAAK+X,KAAOzV,EAAK0V,OAOjBhY,KAAK2N,QAAU3N,KAAK+X,KAAKuB,WAAW,KAAM,CAAE9Y,MAAOR,KAAK0X,eAEnD1X,KAAK2N,QAEN,MAAM,IAAI/E,MAAM,yCASpB5I,KAAK6rB,SAAU,EAQf7rB,KAAKyf,MAAQ,EAObzf,KAAKiM,YAAc,IAAIhM,EAAKqqB,kBAO5BtqB,KAAKsF,cAAgB,CACjBqI,QAAS3N,KAAK2N,QACd1B,YAAajM,KAAKiM,YAClB7H,UAAW,KACX2J,eAAgBhN,OAAO+qB,OAAOC,mBAAmB/rB,KAAK2N,SAMtDgB,YAAa2I,EAAO3I,cAAe,GAGvC3O,KAAKqZ,gBAELrZ,KAAK+F,OAAO/F,KAAK0E,MAAO1E,KAAK2E,SAIjC1E,EAAK0rB,eAAe9pB,UAAUC,YAAc7B,EAAK0rB,eAQjD1rB,EAAK0rB,eAAe9pB,UAAUgD,OAAS,SAAU9E,GAE7CC,KAAK2N,QAAQiB,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GAEzC5O,KAAK2N,QAAQG,YAAc,EAE3B9N,KAAKsF,cAAcoI,iBAAmB,EACtC1N,KAAKsF,cAAc+I,OAASrO,KAAKsC,KAAKwZ,OAAOC,OAAOzY,EACpDtD,KAAKsF,cAAcgJ,OAAStO,KAAKsC,KAAKwZ,OAAOC,OAAOxY,EAEpDvD,KAAK2N,QAAQC,yBAA2B,cAEpCoe,UAAUC,YAAcjsB,KAAK+X,KAAKmU,eAElClsB,KAAK2N,QAAQqd,UAAY,QACzBhrB,KAAK2N,QAAQiO,SAGb5b,KAAK6X,oBAED7X,KAAK0X,YAEL1X,KAAK2N,QAAQ0c,UAAU,EAAG,EAAGrqB,KAAK0E,MAAO1E,KAAK2E,QAEzC5E,EAAK2b,WAEV1b,KAAK2N,QAAQqd,UAAYjrB,EAAK2b,SAASyQ,KACvCnsB,KAAK2N,QAAQwd,SAAS,EAAG,EAAGnrB,KAAK0E,MAAQ1E,KAAK2E,UAItD3E,KAAKgc,oBAAoBjc,IAG7BE,EAAK0rB,eAAe9pB,UAAUoa,WAAa,aAK3Chc,EAAK0rB,eAAe9pB,UAAU4Y,mBAAqB,aAiBnDxa,EAAK0rB,eAAe9pB,UAAUE,QAAU,SAAUqqB,QAE3BhmB,IAAfgmB,IAA4BA,GAAa,GAEzCA,GAAcpsB,KAAK+X,KAAKnX,QAExBZ,KAAK+X,KAAKnX,OAAO8H,YAAY1I,KAAK+X,MAGtC/X,KAAK+X,KAAO,KACZ/X,KAAK2N,QAAU,KACf3N,KAAKiM,YAAc,KACnBjM,KAAKsF,cAAgB,MAUzBrF,EAAK0rB,eAAe9pB,UAAUkE,OAAS,SAAUrB,EAAOC,GAEpD3E,KAAK0E,MAAQA,EAAQ1E,KAAKmE,WAC1BnE,KAAK2E,OAASA,EAAS3E,KAAKmE,WAE5BnE,KAAK+X,KAAKrT,MAAQ1E,KAAK0E,MACvB1E,KAAK+X,KAAKpT,OAAS3E,KAAK2E,OAEpB3E,KAAK2X,aAEL3X,KAAK+X,KAAKwE,MAAM7X,MAAQ1E,KAAK0E,MAAQ1E,KAAKmE,WAAa,KACvDnE,KAAK+X,KAAKwE,MAAM5X,OAAS3E,KAAK2E,OAAS3E,KAAKmE,WAAa,MAGzDnE,KAAKsF,cAAcyI,iBAEnB/N,KAAK2N,QAAQ3N,KAAKsF,cAAcyI,gBAAmB/N,KAAKsF,cAAclB,YAAcnE,EAAK+N,WAAWC,SAa5GhO,EAAK0rB,eAAe9pB,UAAUma,oBAAsB,SAAUE,EAAevO,EAASJ,GAElFvN,KAAKsF,cAAcqI,QAAUA,GAAW3N,KAAK2N,QAC7C3N,KAAKsF,cAAcnB,WAAanE,KAAKmE,WACrC+X,EAAcvW,cAAc3F,KAAKsF,cAAeiI,IASpDtN,EAAK0rB,eAAe9pB,UAAUwX,cAAgB,WAE1C,IAAKpZ,EAAK4N,iBACV,CACI,IAAInL,EAAI,GACJ6a,EAAQtd,EAAK8H,WACbskB,EAASrsB,KAAKsC,KAAKgqB,OAAOC,eAE9B7pB,EAAE6a,EAAMtV,QAAU,cAClBvF,EAAE6a,EAAMG,KAAO,UACfhb,EAAE6a,EAAMvV,UAAY,EAAW,WAAa,cAC5CtF,EAAE6a,EAAMO,QAAU,EAAW,SAAW,cACxCpb,EAAE6a,EAAMQ,SAAW,EAAW,UAAY,cAC1Crb,EAAE6a,EAAMS,QAAU,EAAW,SAAW,cACxCtb,EAAE6a,EAAMU,SAAW,EAAW,UAAY,cAC1Cvb,EAAE6a,EAAMW,aAAe,EAAW,cAAgB,cAClDxb,EAAE6a,EAAMY,YAAc,EAAW,aAAe,cAChDzb,EAAE6a,EAAMa,YAAc,EAAW,aAAe,cAChD1b,EAAE6a,EAAMc,YAAc,EAAW,aAAe,cAChD3b,EAAE6a,EAAMe,YAAc,EAAW,aAAe,cAChD5b,EAAE6a,EAAMgB,WAAa,EAAW,YAAc,cAC9C7b,EAAE6a,EAAMiB,KAAO,EAAW,MAAQ,cAClC9b,EAAE6a,EAAMkB,YAAc,EAAW,aAAe,cAChD/b,EAAE6a,EAAMmB,OAAS,EAAW,QAAU,cACtChc,EAAE6a,EAAMoB,YAAc,EAAW,aAAe,cAEhD1e,EAAK4N,iBAAmBnL,IAiBhCzC,EAAKusB,YAAc,SAAUrd,EAAQ/K,EAAWD,GAQ5CnE,KAAKmE,WAAaA,GAAc,EAShCnE,KAAK0E,MAAQ,IASb1E,KAAK2E,OAAS,IASd3E,KAAKoE,UAAYA,GAAanE,EAAK+N,WAAW+b,QAS9C/pB,KAAKgN,WAAY,EAQjBhN,KAAKmP,OAASA,EASdnP,KAAKoY,oBAAqB,EAS1BpY,KAAKwU,YAAc,GASnBxU,KAAK6c,QAAS,EAOd7c,KAAKmG,aAAe,EAOpBnG,KAAKoW,OAAS,EAAE,GAAM,GAAM,GAAM,GAE7BjH,KAKAnP,KAAKmP,OAAOsd,UAAYzsB,KAAKmP,OAAOmK,aAAetZ,KAAKmP,OAAOzK,OAAS1E,KAAKmP,OAAOxK,SAErF3E,KAAKgN,WAAY,EACjBhN,KAAK0E,MAAQ1E,KAAKmP,OAAOud,cAAgB1sB,KAAKmP,OAAOzK,MACrD1E,KAAK2E,OAAS3E,KAAKmP,OAAOwd,eAAiB3sB,KAAKmP,OAAOxK,OACvD3E,KAAKwR,SAYTxR,KAAKqN,YAAa,EAOlBrN,KAAKkd,WAAY,IAGrBjd,EAAKusB,YAAY3qB,UAAUC,YAAc7B,EAAKusB,YAW9CvsB,EAAKusB,YAAY3qB,UAAU+qB,YAAc,SAAUloB,EAAOC,GAEtD3E,KAAKgN,WAAY,EACjBhN,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EACd3E,KAAKwR,SAQTvR,EAAKusB,YAAY3qB,UAAUE,QAAU,WAE7B/B,KAAKmP,QAELpO,OAAO2F,WAAWC,eAAe3G,KAAKmP,QAG1CnP,KAAKmP,OAAS,KAEdnP,KAAK6sB,iBAQT5sB,EAAKusB,YAAY3qB,UAAU2P,MAAQ,WAE/B,IAAK,IAAIvP,EAAI,EAAGA,EAAIjC,KAAKwU,YAAYtS,OAAQD,IAEzCjC,KAAKoW,OAAOnU,IAAK,GAUzBhC,EAAKusB,YAAY3qB,UAAUgrB,cAAgB,WAEvC7sB,KAAKwR,QAGL,IAAK,IAAIvP,EAAIjC,KAAKwU,YAAYtS,OAAS,EAAQ,GAALD,EAAQA,IAClD,CACI,IAAI6qB,EAAY9sB,KAAKwU,YAAYvS,GAC7BuD,EAAKvF,EAAKmX,WAAWnV,GAEtBuD,GAAMsnB,GAELtnB,EAAG2kB,cAAc2C,GAIzB9sB,KAAKwU,YAAYtS,OAAS,EAE1BlC,KAAKwR,SAaTvR,EAAKusB,YAAYO,WAAa,SAAU/U,EAAQ5T,EAAWD,GAcvD,OAZqB,IAAjB6T,EAAOtT,QAEPsT,EAAOtT,MAAQ,GAGG,IAAlBsT,EAAOrT,SAEPqT,EAAOrT,OAAS,GAGpBR,EAAaA,GAAc,EAEpB,IAAIlE,EAAKusB,YAAYxU,EAAQ5T,EAAWD,IAcnDlE,EAAK+sB,mBAAoB,EAazB/sB,EAAKyM,QAAU,SAAUzG,EAAaiH,EAAOO,EAAMU,GAQ/CnO,KAAKitB,SAAU,EAEV/f,IAEDlN,KAAKitB,SAAU,EACf/f,EAAQ,IAAIjN,EAAKuB,UAAU,EAAE,EAAE,EAAE,IAGjCyE,aAAuBhG,EAAKyM,UAE5BzG,EAAcA,EAAYA,aAS9BjG,KAAKiG,YAAcA,EAQnBjG,KAAKkN,MAAQA,EAQblN,KAAKmO,KAAOA,EAQZnO,KAAKsN,OAAQ,EAQbtN,KAAKktB,UAAW,EAQhBltB,KAAKmtB,gBAAiB,EAQtBntB,KAAK6O,gBAAiB,EAStB7O,KAAK0kB,KAAO,KAQZ1kB,KAAK0E,MAAQ,EAQb1E,KAAK2E,OAAS,EASd3E,KAAKyN,KAAOA,GAAQ,IAAIxN,EAAKuB,UAAU,EAAG,EAAG,EAAG,GAUhDxB,KAAKyO,SAAU,EAEXxI,EAAY+G,YAERhN,KAAKitB,UAAW/f,EAAQ,IAAIjN,EAAKuB,UAAU,EAAG,EAAGyE,EAAYvB,MAAOuB,EAAYtB,SACpF3E,KAAKotB,SAASlgB,KAItBjN,EAAKyM,QAAQ7K,UAAUC,YAAc7B,EAAKyM,QAQ1CzM,EAAKyM,QAAQ7K,UAAUwrB,oBAAsB,WAEzC,IAAIpnB,EAAcjG,KAAKiG,YAEnBjG,KAAKitB,UAELjtB,KAAKkN,MAAQ,IAAIjN,EAAKuB,UAAU,EAAG,EAAGyE,EAAYvB,MAAOuB,EAAYtB,SAGzE3E,KAAKotB,SAASptB,KAAKkN,QASvBjN,EAAKyM,QAAQ7K,UAAUE,QAAU,SAAUqL,GAEnCA,GAAepN,KAAKiG,YAAYlE,UAEpC/B,KAAKsN,OAAQ,GASjBrN,EAAKyM,QAAQ7K,UAAUurB,SAAW,SAAUlgB,GAaxC,GAXAlN,KAAKitB,SAAU,EAEfjtB,KAAKkN,MAAQA,EACblN,KAAK0E,MAAQwI,EAAMxI,MACnB1E,KAAK2E,OAASuI,EAAMvI,OAEpB3E,KAAKyN,KAAKnK,EAAI4J,EAAM5J,EACpBtD,KAAKyN,KAAKlK,EAAI2J,EAAM3J,EACpBvD,KAAKyN,KAAK/I,MAAQwI,EAAMxI,MACxB1E,KAAKyN,KAAK9I,OAASuI,EAAMvI,OAEpB3E,KAAKmO,QAASjB,EAAM5J,EAAI4J,EAAMxI,MAAQ1E,KAAKiG,YAAYvB,OAASwI,EAAM3J,EAAI2J,EAAMvI,OAAS3E,KAAKiG,YAAYtB,QAW/G3E,KAAKsN,MAAQJ,GAASA,EAAMxI,OAASwI,EAAMvI,QAAU3E,KAAKiG,YAAYkJ,QAAUnP,KAAKiG,YAAY+G,UAE7FhN,KAAKmO,OAELnO,KAAK0E,MAAQ1E,KAAKmO,KAAKzJ,MACvB1E,KAAK2E,OAAS3E,KAAKmO,KAAKxJ,OACxB3E,KAAKkN,MAAMxI,MAAQ1E,KAAKmO,KAAKzJ,MAC7B1E,KAAKkN,MAAMvI,OAAS3E,KAAKmO,KAAKxJ,QAG9B3E,KAAKsN,OAAStN,KAAKstB,iBArBvB,CAEI,IAAKrtB,EAAK+sB,kBAEN,MAAM,IAAIpkB,MAAM,wEAA0E5I,MAG9FA,KAAKsN,OAAQ,IAuBrBrN,EAAKyM,QAAQ7K,UAAUyrB,WAAa,WAE5BttB,KAAK0kB,OAAQ1kB,KAAK0kB,KAAO,IAAIzkB,EAAKulB,YAEtC,IAAItY,EAAQlN,KAAKyN,KACb8f,EAAKvtB,KAAKiG,YAAYvB,MACtB8oB,EAAKxtB,KAAKiG,YAAYtB,OAE1B3E,KAAK0kB,KAAKU,GAAKlY,EAAM5J,EAAIiqB,EACzBvtB,KAAK0kB,KAAKW,GAAKnY,EAAM3J,EAAIiqB,EAEzBxtB,KAAK0kB,KAAKvZ,IAAM+B,EAAM5J,EAAI4J,EAAMxI,OAAS6oB,EACzCvtB,KAAK0kB,KAAKtZ,GAAK8B,EAAM3J,EAAIiqB,EAEzBxtB,KAAK0kB,KAAKrZ,IAAM6B,EAAM5J,EAAI4J,EAAMxI,OAAS6oB,EACzCvtB,KAAK0kB,KAAKpZ,IAAM4B,EAAM3J,EAAI2J,EAAMvI,QAAU6oB,EAE1CxtB,KAAK0kB,KAAKnZ,GAAK2B,EAAM5J,EAAIiqB,EACzBvtB,KAAK0kB,KAAKlZ,IAAM0B,EAAM3J,EAAI2J,EAAMvI,QAAU6oB,GAS9CvtB,EAAKyM,QAAQ7K,UAAUsjB,mBAAqB,WAEnCnlB,KAAK0kB,OAAQ1kB,KAAK0kB,KAAO,IAAIzkB,EAAKulB,YAEvC,IAAItY,EAAQlN,KAAKyN,KACb8f,EAAKvtB,KAAKiG,YAAYvB,MACtB8oB,EAAKxtB,KAAKiG,YAAYtB,OAE1B3E,KAAK0kB,KAAKU,GAAKlY,EAAM5J,EAAIiqB,EACzBvtB,KAAK0kB,KAAKW,GAAKnY,EAAM3J,EAAIiqB,EAEzBxtB,KAAK0kB,KAAKvZ,IAAM+B,EAAM5J,EAAI4J,EAAMvI,QAAU4oB,EAC1CvtB,KAAK0kB,KAAKtZ,GAAK8B,EAAM3J,EAAIiqB,EAEzBxtB,KAAK0kB,KAAKrZ,IAAM6B,EAAM5J,EAAI4J,EAAMvI,QAAU4oB,EAC1CvtB,KAAK0kB,KAAKpZ,IAAM4B,EAAM3J,EAAI2J,EAAMxI,OAAS8oB,EAEzCxtB,KAAK0kB,KAAKnZ,GAAK2B,EAAM5J,EAAIiqB,EACzBvtB,KAAK0kB,KAAKlZ,IAAM0B,EAAM3J,EAAI2J,EAAMxI,OAAS8oB,GAY7CvtB,EAAKyM,QAAQqgB,WAAa,SAAU/U,EAAQ5T,GAExC,IAAI6B,EAAchG,EAAKusB,YAAYO,WAAW/U,EAAQ5T,GAEtD,OAAO,IAAInE,EAAKyM,QAAQzG,IAG5BhG,EAAKulB,WAAa,WAEdxlB,KAAKolB,GAAK,EACVplB,KAAKqlB,GAAK,EAEVrlB,KAAKmL,GAAK,EACVnL,KAAKoL,GAAK,EAEVpL,KAAKqL,GAAK,EACVrL,KAAKsL,GAAK,EAEVtL,KAAKuL,GAAK,EACVvL,KAAKwL,GAAK,GAOa,oBAAZiiB,SACe,oBAAXC,QAA0BA,OAAOD,UACxCA,QAAUC,OAAOD,QAAUxtB,GAE/BwtB,QAAQxtB,KAAOA,GACU,oBAAX0tB,QAA0BA,OAAOC,IAC/CD,OAAO,OAA6B5tB,EAAKE,KAAOA,GAEhDF,EAAKE,KAAOA,EAGTA,IACR8D,KAAK/D,MAOR,WAEI,IAykBQ6tB,EAzkBJ9tB,EAAOC,KAWXe,EAASA,GAAU,CAOnB+sB,QAAS,SAOTC,MAAO,GAOPC,KAAM,EAONpC,OAAQ,EAORnU,MAAO,EAOPwW,SAAU,EAOVC,YAAa,EAObC,KAAM,EAONC,KAAM,EAONC,MAAO,EAOPC,GAAI,EAOJC,KAAM,EAONC,OAAQ,EAORC,OAAQ,EAORC,MAAO,EAOPC,SAAU,EAOVC,KAAM,EAONC,WAAY,EAOZC,WAAY,EAOZC,MAAO,EAOPC,cAAe,EAOfC,QAAS,EAOTC,aAAc,GAOdC,QAAS,GAOTC,QAAS,GAOTC,WAAY,GAOZC,cAAe,GAOfC,aAAc,GAOdC,QAAS,GAOTC,YAAa,GAObC,UAAW,GAOXC,QAAS,GAOTC,KAAM,GAONC,OAAQ,GAORC,UAAW,GAOXC,KAAM,GAONC,OAAQ,GAORC,MAAO,GAOPC,iBAAkB,GAOlBC,SAAU,GAOVC,MAAO,GAOPC,eAAgB,EAOhBC,WAAY,EAOZC,SAAU,EAOVC,UAAW,EAOXC,SAAU,EAOVC,SAAU,IAOVC,WAAY,GAOZC,WAAY,IAOZC,YAAa,EAObC,iBAAkB,IAOlBC,iBAAkB,IAOlBC,iBAAkB,GAOlBC,iBAAkB,IAOlBC,SAAU,EAOVC,WAAY,EAOZC,UAAW,EAOXC,SAAU,EAOVC,YAAa,EAObC,YAAa,EAObC,OAAQ,EAORC,UAAW,EAOXC,aAAc,EAOdC,aAAc,EAOdC,YAAa,GAObC,cAAe,GAOfC,aAAc,GA2Bd/pB,WAAY,CACRE,OAAQ,EACRyV,IAAK,EACL1V,SAAU,EACV8V,OAAQ,EACRC,QAAS,EACTC,OAAQ,EACRC,QAAS,EACTC,YAAa,EACbC,WAAY,EACZC,WAAY,EACZC,WAAY,GACZC,WAAY,GACZC,UAAW,GACXC,IAAK,GACLC,WAAY,GACZC,MAAO,GACPC,WAAY,IAehB3Q,WAAY,CACR+b,QAAS,EACT9b,OAAQ,EACR2O,QAAS,GAGb3c,KAAMA,MAAQ,GAGdmR,KAAM,GA4HV,GAnHqC,oBAA1B2gB,wBAEFA,sBAAsBlwB,UAAUsK,QAEjC4lB,sBAAsBlwB,UAAUsK,MAAQ4lB,sBAAsBlwB,UAAUmwB,aAEvED,sBAAsBlwB,UAAUmK,OAEjC+lB,sBAAsBlwB,UAAUmK,KAAO+lB,sBAAsBlwB,UAAUowB,UAK1EhvB,KAAKivB,QAENjvB,KAAKivB,MAAQ,SAAgB5uB,GAEzB,OAAOA,EAAI,EAAIL,KAAK4C,KAAKvC,GAAKL,KAAKkvB,MAAM7uB,KAO5C8uB,SAASvwB,UAAUwwB,OAEpBD,SAASvwB,UAAUwwB,MAEXxE,EAAQvmB,MAAMzF,UAAUgsB,MAErB,SAAUyE,GAEb,IAAIzqB,EAAS7H,KACTuyB,EAAY1E,EAAM9pB,KAAKyuB,UAAW,GAEtC,GAAsB,mBAAX3qB,EAEP,MAAM,IAAI4qB,UAGd,SAASC,IAEL,IAAIC,EAAOJ,EAAUK,OAAO/E,EAAM9pB,KAAKyuB,YACvC3qB,EAAO5C,MAAMjF,gBAAgB0yB,EAAQ1yB,KAAOsyB,EAASK,GAgBzD,OAbAD,EAAM7wB,UAAY,SAAUgxB,EAAGC,GAO3B,GALIA,IAEAD,EAAEhxB,UAAYixB,KAGZ9yB,gBAAgB6yB,GAElB,OAAO,IAAIA,EATD,CAWfhrB,EAAOhG,WAEH6wB,KAQdprB,MAAMC,UAEPD,MAAMC,QAAU,SAAUwrB,GAEtB,MAA+C,mBAAxClsB,OAAOhF,UAAUopB,SAASlnB,KAAKgvB,KAQzCzrB,MAAMzF,UAAUmxB,UAEjB1rB,MAAMzF,UAAUmxB,QAAU,SAAUC,GAEhC,aAEA,GAAIjzB,MAAAA,KAEA,MAAM,IAAIyyB,UAGd,IAAIS,EAAIrsB,OAAO7G,MACXmzB,EAAMD,EAAEhxB,SAAW,EAEvB,GAAmB,mBAAR+wB,EAEP,MAAM,IAAIR,UAKd,IAFA,IAAIH,EAA8B,GAApBE,UAAUtwB,OAAcswB,UAAU,QAAK,EAE5CvwB,EAAI,EAAGA,EAAIkxB,EAAKlxB,IAEjBA,KAAKixB,GAELD,EAAIlvB,KAAKuuB,EAASY,EAAEjxB,GAAIA,EAAGixB,KAWT,mBAAvB/iB,OAAOsT,aAA4D,iBAAvBtT,OAAOsT,YAC9D,CACI,IAAI2P,EAAa,SAAUrf,GAGvB,IAAI+e,EAAQ,IAAIxrB,MAGhB6I,OAAO4D,GAAQ,SAAUgf,GAErB,GAAoB,iBAAV,EACV,CACIzrB,MAAMvD,KAAK/D,KAAM+yB,GACjB/yB,KAAKkC,OAAS6wB,EAEd,IAAK,IAAI9wB,EAAI,EAAGA,EAAIjC,KAAKkC,OAAQD,IAE7BjC,KAAKiC,GAAK,MAIlB,CACIqF,MAAMvD,KAAK/D,KAAM+yB,EAAI7wB,QAErBlC,KAAKkC,OAAS6wB,EAAI7wB,OAElB,IAASD,EAAI,EAAGA,EAAIjC,KAAKkC,OAAQD,IAE7BjC,KAAKiC,GAAK8wB,EAAI9wB,KAK1BkO,OAAO4D,GAAMlS,UAAYixB,EACzB3iB,OAAO4D,GAAMjS,YAAcqO,OAAO4D,IAGtCqf,EAAW,gBACXA,EAAW,eACXA,EAAW,eACXA,EAAW,cACXA,EAAW,eAkjuBf,IAAK,IAAI9f,KA5iuBJnD,OAAOC,UAERD,OAAOC,QAAU,GACjBD,OAAOC,QAAQC,IAAMF,OAAOC,QAAQijB,OAAS,aAC7CljB,OAAOC,QAAQ+K,KAAOhL,OAAOC,QAAQijB,OAAS,cAO7CxsB,OAAOysB,SAGRzsB,OAAOysB,OAAS,SAAUzrB,EAAQ0rB,GAE9B,aACA,GAAc,MAAV1rB,EAEA,MAAM,IAAI4qB,UAAU,8CAMxB,IAHA,IAAIe,EAAK3sB,OAAOgB,GACZ4rB,EAAS5sB,OAAOhF,UAAU6xB,eAErBjrB,EAAQ,EAAGA,EAAQ+pB,UAAUtwB,OAAQuG,IAC9C,CACI,IAAIkrB,EAAanB,UAAU/pB,GAE3B,GAAkB,MAAdkrB,EAEA,IAAK,IAAIC,KAAWD,EAGZF,EAAO1vB,KAAK4vB,EAAYC,KAExBJ,EAAGI,GAAWD,EAAWC,IAKzC,OAAOJ,IAcfzyB,EAAO8yB,MAAQ,CAEXC,SAAU,SAAUjsB,EAAQisB,GAIxB,IAFA,IAAIC,EAAOltB,OAAOktB,KAAKD,GAEd7xB,EAAI,EAAGkxB,EAAMY,EAAK7xB,OAAQD,EAAIkxB,EAAKlxB,IAC5C,CACI,IAAIqR,EAAMygB,EAAK9xB,QAEKmE,IAAhByB,EAAOyL,KAEPzL,EAAOyL,GAAOwgB,EAASxgB,IAI/B,OAAOzL,GAWXmsB,cAAe,SAAUC,GAErB,OAAOA,EAAOC,MAAM,IAAI1U,UAAU3P,KAAK,KAW3CskB,YAAa,SAAUC,EAAKC,GAExB,IAAIC,EAAQD,EAAKH,MAAM,KAEvB,OAAQI,EAAMpyB,QAEV,KAAK,EACD,OAAOkyB,EAAIC,GACf,KAAK,EACD,OAAOD,EAAIE,EAAM,IAAIA,EAAM,IAC/B,KAAK,EACD,OAAOF,EAAIE,EAAM,IAAIA,EAAM,IAAIA,EAAM,IACzC,KAAK,EACD,OAAOF,EAAIE,EAAM,IAAIA,EAAM,IAAIA,EAAM,IAAIA,EAAM,IACnD,QACI,OAAOt0B,KAAKu0B,aAAaH,EAAKC,KAoB1CG,cAAe,SAAUJ,EAAKK,GAE1B,IAAK,IAAIJ,KAAQI,EAEbz0B,KAAK00B,YAAYN,EAAKC,EAAMI,EAAMJ,IAGtC,OAAOD,GAiBXM,YAAa,SAAUN,EAAKC,EAAMptB,GAE9B,IAAIqtB,EAAQD,EAAKH,MAAM,KAEvB,OAAQI,EAAMpyB,QAEV,KAAK,EACDkyB,EAAIC,GAAQptB,EACZ,MACJ,KAAK,EACDmtB,EAAIE,EAAM,IAAIA,EAAM,IAAMrtB,EAC1B,MACJ,KAAK,EACDmtB,EAAIE,EAAM,IAAIA,EAAM,IAAIA,EAAM,IAAMrtB,EACpC,MACJ,KAAK,EACDmtB,EAAIE,EAAM,IAAIA,EAAM,IAAIA,EAAM,IAAIA,EAAM,IAAMrtB,EAC9C,MACJ,QACIjH,KAAK20B,aAAaP,EAAKC,EAAMptB,KAazCstB,aAAc,SAAUH,EAAKC,GAOzB,IALA,IAAIC,EAAQD,EAAKH,MAAM,KACnBf,EAAMmB,EAAMpyB,OACZD,EAAI,EACJ2yB,EAAMR,EAEHnyB,EAAIkxB,GACX,CACI,IAAI7f,EAAMghB,EAAMryB,GAEhB,GAAW,MAAP2yB,EAOA,OALAA,EAAMA,EAAIthB,GACVrR,IAQR,OAAO2yB,GAaXD,aAAc,SAAUP,EAAKC,EAAMptB,GAE/B,IAAIqtB,EAAQD,EAAKH,MAAM,KACnBf,EAAMmB,EAAMpyB,OACZD,EAAI,EACJ4yB,EAAaT,EACb9gB,EAAMghB,EAAM,GAEhB,GAAY,IAARnB,EAEAiB,EAAIC,GAAQptB,MAGhB,CACI,KAAOhF,EAAKkxB,EAAM,GAEd0B,EAAaA,EAAWvhB,GAExBA,EAAMghB,IADNryB,GAIJ4yB,EAAWvhB,GAAOrM,EAGtB,OAAOmtB,GAaXU,WAAY,SAAUC,GAGlB,YADe3uB,IAAX2uB,IAAwBA,EAAS,IACrB,EAATA,GAA+B,IAAhB9xB,KAAK+xB,UAAkBD,GAWjDE,aAAc,SAAUC,EAASC,GAE7B,OAAQlyB,KAAK+xB,SAAW,GAAOE,EAAUC,GAW7CC,eAAgB,SAAUpS,EAAMqS,GAE5B,IAAIC,EAAI,EA6BR,MA1BoB,iBAATtS,EAGiB,MAApBA,EAAKkI,QAAQ,IAEboK,EAAIC,SAASvS,EAAM,IAAM,IAEP,IAAdqS,EAEKllB,OAAOqlB,WAAaF,EAIpBnlB,OAAOslB,YAAcH,GAKzBC,SAASvS,EAAM,IAKnBA,GAiCb0S,IAAK,SAAUC,EAAKxC,EAAKuC,EAAKE,GAE1B,QAAYxvB,IAAR+sB,EAAyBA,EAAM,EACnC,QAAY/sB,IAARsvB,EAAyBA,EAAM,IACnC,QAAYtvB,IAARwvB,EAAyBA,EAAM,EAInC,IAAIC,EAAS,EAEb,GAAI1C,EAAM,IAJVwC,EAAMA,EAAI1K,YAIS/oB,OAEf,OAAQ0zB,GAEJ,KAAK,EACDD,EAAM,IAAIruB,MAAM6rB,EAAM,EAAIwC,EAAIzzB,QAAQ2N,KAAK6lB,GAAOC,EAClD,MAEJ,KAAK,EACD,IAAIG,EAAQ7yB,KAAK4C,MAAMgwB,EAAS1C,EAAMwC,EAAIzzB,QAAU,GAEpDyzB,EAAM,IAAIruB,MADCuuB,EAASC,EACG,GAAGjmB,KAAK6lB,GAAOC,EAAM,IAAIruB,MAAMwuB,EAAQ,GAAGjmB,KAAK6lB,GACtE,MAEJ,QACIC,GAAY,IAAIruB,MAAM6rB,EAAM,EAAIwC,EAAIzzB,QAAQ2N,KAAK6lB,GAK7D,OAAOC,GAUXI,cAAe,SAAU3B,GAQrB,GAAoB,iBAAV,GAAsBA,EAAI4B,UAAY5B,IAAQA,EAAIjkB,OAExD,OAAO,EASX,IAEI,GAAIikB,EAAItyB,cAAgB,GAAK4xB,eAAe3vB,KAAKqwB,EAAItyB,YAAYD,UAAW,iBAExE,OAAO,EAGf,MAAO6M,GAEH,OAAO,EAOX,OAAO,GAWXunB,OAAQ,WAEJ,IAAIC,EAAS7B,EAAMzkB,EAAKumB,EAAMC,EAAaC,EACvCxuB,EAAS2qB,UAAU,IAAM,GACzBvwB,EAAI,EACJC,EAASswB,UAAUtwB,OACnBo0B,GAAO,EAmBX,IAhBsB,kBAAXzuB,IAEPyuB,EAAOzuB,EACPA,EAAS2qB,UAAU,IAAM,GAGzBvwB,EAAI,GAIJC,IAAWD,IAEX4F,EAAS7H,OACPiC,GAGCA,EAAIC,EAAQD,IAGf,GAAgC,OAA3Bi0B,EAAU1D,UAAUvwB,IAGrB,IAAKoyB,KAAQ6B,EAETtmB,EAAM/H,EAAOwsB,GAITxsB,KAHJsuB,EAAOD,EAAQ7B,MASXiC,GAAQH,IAASp1B,EAAO8yB,MAAMkC,cAAcI,KAAUC,EAAc9uB,MAAMC,QAAQ4uB,MAK9EE,EAHAD,GAEAA,GAAc,EACNxmB,GAAOtI,MAAMC,QAAQqI,GAAOA,EAAM,IAIlCA,GAAO7O,EAAO8yB,MAAMkC,cAAcnmB,GAAOA,EAAM,GAI3D/H,EAAOwsB,GAAQtzB,EAAO8yB,MAAMoC,OAAOK,EAAMD,EAAOF,SAIlC/vB,IAAT+vB,IAELtuB,EAAOwsB,GAAQ8B,IAO/B,OAAOtuB,GAeX0uB,eAAgB,SAAU1uB,EAAQ2uB,EAAOC,QAErBrwB,IAAZqwB,IAAyBA,GAAU,GAIvC,IAFA,IAAIC,EAAY7vB,OAAOktB,KAAKyC,GAEnBv0B,EAAI,EAAGA,EAAIy0B,EAAUx0B,OAAQD,IACtC,CACI,IAAIqR,EAAMojB,EAAUz0B,GAChBgF,EAAQuvB,EAAMljB,IAEbmjB,GAAYnjB,KAAOzL,KAMpBZ,GAC0B,mBAAdA,EAAMF,KAA2C,mBAAdE,EAAMD,IAcrDa,EAAOyL,GAAOrM,EAXa,mBAAhBA,EAAMovB,MAEbxuB,EAAOyL,GAAOrM,EAAMovB,QAIpBxvB,OAAOyF,eAAezE,EAAQyL,EAAKrM,MAmBnDuvB,MAAO,SAAUrxB,EAAMquB,GAEnB,IAAKruB,GAA0B,iBAAX,EAEhB,OAAOquB,EAGX,IAAK,IAAIlgB,KAAOnO,EAChB,CACI,IAAIwxB,EAAIxxB,EAAKmO,GAEb,IAAIqjB,EAAEC,aAAcD,EAAEE,UAAtB,CAKA,IAAI9iB,SAAe5O,EAAKmO,GAEnBnO,EAAKmO,IAAiB,WAATS,SAOFyf,EAAGlgB,KAAUS,EAErByf,EAAGlgB,GAAOvS,EAAO8yB,MAAM2C,MAAMrxB,EAAKmO,GAAMkgB,EAAGlgB,IAI3CkgB,EAAGlgB,GAAOvS,EAAO8yB,MAAM2C,MAAMrxB,EAAKmO,GAAM,IAAIqjB,EAAE70B,aAXlD0xB,EAAGlgB,GAAOnO,EAAKmO,IAgBvB,OAAOkgB,IAqBfzyB,EAAO+1B,OAAS,SAAUxzB,EAAGC,EAAGwzB,GAE5BzzB,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACTwzB,EAAWA,GAAY,EAKvB/2B,KAAKsD,EAAIA,EAKTtD,KAAKuD,EAAIA,EAMTvD,KAAKg3B,UAAYD,GAMjB/2B,KAAKi3B,QAAU,GAEXF,IAEA/2B,KAAKi3B,QAAqB,GAAXF,GAOnB/2B,KAAK+T,KAAOhT,EAAO8uB,QAGvB9uB,EAAO+1B,OAAOj1B,UAAY,CAQtBq1B,cAAe,WAEX,OAAYj0B,KAAKk0B,GAAKn3B,KAAKi3B,QAApB,GAWXjC,OAAQ,SAAUoC,QAEFhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1C,IAAI8yB,EAAI,EAAIjwB,KAAKk0B,GAAKl0B,KAAK+xB,SACvBqC,EAAIp0B,KAAK+xB,SAAW/xB,KAAK+xB,SACzBvxB,EAAS,EAAJ4zB,EAAS,EAAIA,EAAIA,EACtB/zB,EAAIG,EAAIR,KAAKI,IAAI6vB,GACjB3vB,EAAIE,EAAIR,KAAKG,IAAI8vB,GAKrB,OAHAkE,EAAI9zB,EAAItD,KAAKsD,EAAKA,EAAItD,KAAKs3B,OAC3BF,EAAI7zB,EAAIvD,KAAKuD,EAAKA,EAAIvD,KAAKs3B,OAEpBF,GASXrtB,UAAW,WAEP,OAAO,IAAIhJ,EAAOS,UAAUxB,KAAKsD,EAAItD,KAAKs3B,OAAQt3B,KAAKuD,EAAIvD,KAAKs3B,OAAQt3B,KAAK+2B,SAAU/2B,KAAK+2B,WAWhGQ,MAAO,SAAUj0B,EAAGC,EAAGwzB,GAOnB,OALA/2B,KAAKsD,EAAIA,EACTtD,KAAKuD,EAAIA,EACTvD,KAAKg3B,UAAYD,EACjB/2B,KAAKi3B,QAAqB,GAAXF,EAER/2B,MASXw3B,SAAU,SAAUroB,GAEhB,OAAOnP,KAAKu3B,MAAMpoB,EAAO7L,EAAG6L,EAAO5L,EAAG4L,EAAO4nB,WASjDU,OAAQ,SAAUC,GAMd,OAJAA,EAAKp0B,EAAItD,KAAKsD,EACdo0B,EAAKn0B,EAAIvD,KAAKuD,EACdm0B,EAAKX,SAAW/2B,KAAKg3B,UAEdU,GAWXC,SAAU,SAAUD,EAAME,GAEtB,IAAID,EAAW52B,EAAOkC,KAAK00B,SAAS33B,KAAKsD,EAAGtD,KAAKuD,EAAGm0B,EAAKp0B,EAAGo0B,EAAKn0B,GACjE,OAAOq0B,EAAQ30B,KAAK20B,MAAMD,GAAYA,GAS1CtB,MAAO,SAAUwB,GAWb,OATIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAO+1B,OAAO92B,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK+2B,UAIhDc,EAAON,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK+2B,UAG/Bc,GAUX1tB,SAAU,SAAU7G,EAAGC,GAEnB,OAAOxC,EAAO+1B,OAAO3sB,SAASnK,KAAMsD,EAAGC,IAW3Cu0B,mBAAoB,SAAUC,EAAOC,EAAWZ,GAE5C,OAAOr2B,EAAO+1B,OAAOgB,mBAAmB93B,KAAM+3B,EAAOC,EAAWZ,IAiBpEa,OAAQ,SAAUC,EAAOC,EAAYC,EAAUJ,EAAWZ,GAEjDc,IAASA,EAAQ,IACJ,MAAdC,IAAsBA,EAAa,GACvB,MAAZC,IAAoBA,EAAWr3B,EAAOkC,KAAKC,KAC1Ck0B,IAAOA,EAAM,IAIlB,IAFA,IAAIn1B,EAAI,EAEDA,EAAIi2B,GAEPl4B,KAAK83B,mBACD/2B,EAAOkC,KAAKo1B,OAAOF,EAAYC,EAAUn2B,EAAIi2B,GAC7CF,EACAZ,EAAIn1B,KAAOm1B,EAAIn1B,GAAK,IAAIlB,EAAOX,QAGnC6B,GAAK,EAGT,OAAOm1B,GAUX7e,OAAQ,SAAUrK,EAAIE,GAKlB,OAHApO,KAAKsD,GAAK4K,EACVlO,KAAKuD,GAAK6K,EAEHpO,MASXs4B,YAAa,SAAUC,GAEnB,OAAOv4B,KAAKuY,OAAOggB,EAAMj1B,EAAGi1B,EAAMh1B,IAQtC0nB,SAAU,WAEN,MAAO,sBAAwBjrB,KAAKsD,EAAI,MAAQtD,KAAKuD,EAAI,aAAevD,KAAK+2B,SAAW,WAAa/2B,KAAKs3B,OAAS,QAK3Hv2B,EAAO+1B,OAAOj1B,UAAUC,YAAcf,EAAO+1B,OAQ7CjwB,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,WAAY,CAEvDkF,IAAK,WAED,OAAO/G,KAAKg3B,WAGhBhwB,IAAK,SAAUC,GAEC,EAARA,IAEAjH,KAAKg3B,UAAY/vB,EACjBjH,KAAKi3B,QAAkB,GAARhwB,MAW3BJ,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,SAAU,CAErDkF,IAAK,WAED,OAAO/G,KAAKi3B,SAGhBjwB,IAAK,SAAUC,GAEC,EAARA,IAEAjH,KAAKi3B,QAAUhwB,EACfjH,KAAKg3B,UAAoB,EAAR/vB,MAW7BJ,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,OAAQ,CAEnDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAItD,KAAKi3B,SAGzBjwB,IAAK,SAAUC,GAEPA,EAAQjH,KAAKsD,GAEbtD,KAAKi3B,QAAU,EACfj3B,KAAKg3B,UAAY,GAIjBh3B,KAAKs3B,OAASt3B,KAAKsD,EAAI2D,KAWnCJ,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,QAAS,CAEpDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAItD,KAAKi3B,SAGzBjwB,IAAK,SAAUC,GAEPA,EAAQjH,KAAKsD,GAEbtD,KAAKi3B,QAAU,EACfj3B,KAAKg3B,UAAY,GAIjBh3B,KAAKs3B,OAASrwB,EAAQjH,KAAKsD,KAWvCuD,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,MAAO,CAElDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAIvD,KAAKi3B,SAGzBjwB,IAAK,SAAUC,GAEPA,EAAQjH,KAAKuD,GAEbvD,KAAKi3B,QAAU,EACfj3B,KAAKg3B,UAAY,GAIjBh3B,KAAKs3B,OAASt3B,KAAKuD,EAAI0D,KAWnCJ,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,SAAU,CAErDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAIvD,KAAKi3B,SAGzBjwB,IAAK,SAAUC,GAEPA,EAAQjH,KAAKuD,GAEbvD,KAAKi3B,QAAU,EACfj3B,KAAKg3B,UAAY,GAIjBh3B,KAAKs3B,OAASrwB,EAAQjH,KAAKuD,KAYvCsD,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,OAAQ,CAEnDkF,IAAK,WAED,OAAmB,EAAf/G,KAAKi3B,QAEEh0B,KAAKk0B,GAAKn3B,KAAKi3B,QAAUj3B,KAAKi3B,QAI9B,KAYnBpwB,OAAOyF,eAAevL,EAAO+1B,OAAOj1B,UAAW,QAAS,CAEpDkF,IAAK,WAED,OAA2B,IAAnB/G,KAAKg3B,WAGjBhwB,IAAK,SAAUC,IAEG,IAAVA,GAEAjH,KAAKu3B,MAAM,EAAG,EAAG,MAc7Bx2B,EAAO+1B,OAAO3sB,SAAW,SAAU1H,EAAGa,EAAGC,GAGrC,OAAe,EAAXd,EAAE60B,QAAch0B,GAAKb,EAAE+1B,MAAQl1B,GAAKb,EAAEqzB,OAASvyB,GAAKd,EAAEg2B,KAAOl1B,GAAKd,EAAEi2B,SAE1Dj2B,EAAEa,EAAIA,IAAMb,EAAEa,EAAIA,IAClBb,EAAEc,EAAIA,IAAMd,EAAEc,EAAIA,IAEPd,EAAE60B,OAAS70B,EAAE60B,QAe1Cv2B,EAAO+1B,OAAO6B,OAAS,SAAUl2B,EAAGC,GAEhC,OAAQD,EAAEa,IAAMZ,EAAEY,GAAKb,EAAEc,IAAMb,EAAEa,GAAKd,EAAEs0B,WAAar0B,EAAEq0B,UAW3Dh2B,EAAO+1B,OAAO8B,WAAa,SAAUn2B,EAAGC,GAEpC,OAAQ3B,EAAOkC,KAAK00B,SAASl1B,EAAEa,EAAGb,EAAEc,EAAGb,EAAEY,EAAGZ,EAAEa,IAAOd,EAAE60B,OAAS50B,EAAE40B,QAYtEv2B,EAAO+1B,OAAOgB,mBAAqB,SAAUr1B,EAAGs1B,EAAOC,EAAWZ,GAa9D,YAXkBhxB,IAAd4xB,IAA2BA,GAAY,QAC/B5xB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,QAExB,IAAd43B,IAEAD,EAAQh3B,EAAOkC,KAAK41B,SAASd,IAGjCX,EAAI9zB,EAAIb,EAAEa,EAAIb,EAAE60B,OAASr0B,KAAKI,IAAI00B,GAClCX,EAAI7zB,EAAId,EAAEc,EAAId,EAAE60B,OAASr0B,KAAKG,IAAI20B,GAE3BX,GAUXr2B,EAAO+1B,OAAOgC,oBAAsB,SAAUn2B,EAAGc,GAE7C,IAAIwL,EAAKhM,KAAK81B,IAAIp2B,EAAEW,EAAIG,EAAEH,EAAIG,EAAEu1B,WAGhC,GAFYv1B,EAAEu1B,UAAYr2B,EAAE20B,OAExBroB,EAEA,OAAO,EAGX,IAAIC,EAAKjM,KAAK81B,IAAIp2B,EAAEY,EAAIE,EAAEF,EAAIE,EAAEw1B,YAGhC,GAFYx1B,EAAEw1B,WAAat2B,EAAE20B,OAEzBpoB,EAEA,OAAO,EAGX,GAAID,GAAMxL,EAAEu1B,WAAa9pB,GAAMzL,EAAEw1B,WAE7B,OAAO,EAGX,IAAIC,EAAcjqB,EAAKxL,EAAEu1B,UACrBG,EAAcjqB,EAAKzL,EAAEw1B,WAKzB,OAJoBC,EAAcA,EACdC,EAAcA,GACZx2B,EAAE20B,OAAS30B,EAAE20B,QAavCv2B,EAAO+1B,OAAOsC,eAAiB,SAAUz2B,EAAG02B,EAAGC,GAE3C,IAAI7T,EAAI9iB,EAAEW,EACNi2B,EAAI52B,EAAEY,EACNi2B,GAAMH,EAAE/c,IAAI/Y,EAAI81B,EAAEltB,MAAM5I,IAAM81B,EAAE/c,IAAIhZ,EAAI+1B,EAAEltB,MAAM7I,GAChDm2B,EAAIJ,EAAE/c,IAAI/Y,EAAKi2B,EAAIH,EAAE/c,IAAIhZ,EACzBb,EAAIE,EAAE20B,OACN50B,EAAIC,EAAE20B,OACNoC,EAAMD,EAAID,EAAI/T,EAEdL,GAAMK,GAAK/iB,EAAIA,GAAK82B,GAAK/2B,EAAIA,IAAMg3B,EAAIF,GAAK92B,EAAIC,EAAKO,KAAKS,KAAMjB,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,EAAMg3B,EAAMA,EAAQH,EAAIA,EAAM,EAAIG,EAAMH,KAAU92B,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,GAClKyI,GAAMsa,GAAK/iB,EAAIA,GAAK82B,GAAK/2B,EAAIA,IAAMg3B,EAAIF,GAAK92B,EAAIC,EAAKO,KAAKS,KAAMjB,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,EAAMg3B,EAAMA,EAAQH,EAAIA,EAAM,EAAIG,EAAMH,KAAU92B,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,GAElK2iB,EAAKmU,EAAIpU,EAAKqU,EACdruB,EAAKouB,EAAIruB,EAAKsuB,EACdE,EAAK,IAAI54B,EAAOX,MAAMglB,EAAIC,GAC1BuU,EAAK,IAAI74B,EAAOX,MAAM+K,EAAIC,GAC1ByuB,EAAWR,EAAES,eAAeH,EAAGr2B,EAAGq2B,EAAGp2B,EAAG,KACxCw2B,EAAWV,EAAES,eAAeF,EAAGt2B,EAAGs2B,EAAGr2B,EAAG,KAE5C,OAAIs2B,GAAYE,GAELT,GAAe,CAAEK,EAAIC,GAEvBC,GAEEP,GAAe,CAAEK,GAEnBI,GAEET,GAAe,CAAEM,KAIjBN,GAAe,IAK9Br5B,KAAK62B,OAAS/1B,EAAO+1B,OAmBrB/1B,EAAOi5B,QAAU,SAAU12B,EAAGC,EAAGmB,EAAOC,GAEpCrB,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACTmB,EAAQA,GAAS,EACjBC,EAASA,GAAU,EAKnB3E,KAAKsD,EAAIA,EAKTtD,KAAKuD,EAAIA,EAKTvD,KAAK0E,MAAQA,EAKb1E,KAAK2E,OAASA,EAMd3E,KAAK+T,KAAOhT,EAAOyuB,SAGvBzuB,EAAOi5B,QAAQn4B,UAAY,CAWvB01B,MAAO,SAAUj0B,EAAGC,EAAGmB,EAAOC,GAO1B,OALA3E,KAAKsD,EAAIA,EACTtD,KAAKuD,EAAIA,EACTvD,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEP3E,MASX+J,UAAW,WAEP,OAAO,IAAIhJ,EAAOS,UAAUxB,KAAKsD,EAAItD,KAAK0E,MAAO1E,KAAKuD,EAAIvD,KAAK2E,OAAQ3E,KAAK0E,MAAO1E,KAAK2E,SAU5F6yB,SAAU,SAAUroB,GAEhB,OAAOnP,KAAKu3B,MAAMpoB,EAAO7L,EAAG6L,EAAO5L,EAAG4L,EAAOzK,MAAOyK,EAAOxK,SAS/D8yB,OAAQ,SAAUC,GAOd,OALAA,EAAKp0B,EAAItD,KAAKsD,EACdo0B,EAAKn0B,EAAIvD,KAAKuD,EACdm0B,EAAKhzB,MAAQ1E,KAAK0E,MAClBgzB,EAAK/yB,OAAS3E,KAAK2E,OAEZ+yB,GASXrB,MAAO,SAAUwB,GAWb,OATIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAOi5B,QAAQh6B,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK0E,MAAO1E,KAAK2E,QAI7DkzB,EAAON,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK0E,MAAO1E,KAAK2E,QAG3CkzB,GAWX1tB,SAAU,SAAU7G,EAAGC,GAEnB,OAAOxC,EAAOi5B,QAAQ7vB,SAASnK,KAAMsD,EAAGC,IAW5CyxB,OAAQ,SAAUoC,QAEFhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1C,IAAImC,EAAIU,KAAK+xB,SAAW/xB,KAAKk0B,GAAK,EAC9B1zB,EAAIR,KAAKS,KAAKT,KAAK+xB,UAKvB,OAHAoC,EAAI9zB,EAAItD,KAAKi6B,QAAU,GAAMx2B,EAAIR,KAAKI,IAAId,GAAKvC,KAAK0E,MACpD0yB,EAAI7zB,EAAIvD,KAAKk6B,QAAU,GAAMz2B,EAAIR,KAAKG,IAAIb,GAAKvC,KAAK2E,OAE7CyyB,GAQXnM,SAAU,WAEN,MAAO,uBAAyBjrB,KAAKsD,EAAI,MAAQtD,KAAKuD,EAAI,UAAYvD,KAAK0E,MAAQ,WAAa1E,KAAK2E,OAAS,QAKtH5D,EAAOi5B,QAAQn4B,UAAUC,YAAcf,EAAOi5B,QAO9CnzB,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,OAAQ,CAEpDkF,IAAK,WAED,OAAO/G,KAAKsD,GAGhB0D,IAAK,SAAUC,GAEXjH,KAAKsD,EAAI2D,KAUjBJ,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,QAAS,CAErDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAItD,KAAK0E,OAGzBsC,IAAK,SAAUC,GAEPA,EAAQjH,KAAKsD,EAEbtD,KAAK0E,MAAQ,EAIb1E,KAAK0E,MAAQuC,EAAQjH,KAAKsD,KAWtCuD,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,MAAO,CAEnDkF,IAAK,WAED,OAAO/G,KAAKuD,GAGhByD,IAAK,SAAUC,GAEXjH,KAAKuD,EAAI0D,KAUjBJ,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,SAAU,CAEtDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAIvD,KAAK2E,QAGzBqC,IAAK,SAAUC,GAEPA,EAAQjH,KAAKuD,EAEbvD,KAAK2E,OAAS,EAId3E,KAAK2E,OAASsC,EAAQjH,KAAKuD,KAYvCsD,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,UAAW,CAEvDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAI,GAAMtD,KAAK0E,SAWnCmC,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,UAAW,CAEvDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAI,GAAMvD,KAAK2E,UAWnCkC,OAAOyF,eAAevL,EAAOi5B,QAAQn4B,UAAW,QAAS,CAErDkF,IAAK,WAED,OAAuB,IAAf/G,KAAK0E,OAA+B,IAAhB1E,KAAK2E,QAGrCqC,IAAK,SAAUC,IAEG,IAAVA,GAEAjH,KAAKu3B,MAAM,EAAG,EAAG,EAAG,MAehCx2B,EAAOi5B,QAAQ7vB,SAAW,SAAU1H,EAAGa,EAAGC,GAEtC,GAAId,EAAEiC,OAAS,GAAKjC,EAAEkC,QAAU,EAE5B,OAAO,EAIX,IAAIw1B,GAAU72B,EAAIb,EAAEa,GAAKb,EAAEiC,MAAS,GAChC01B,GAAU72B,EAAId,EAAEc,GAAKd,EAAEkC,OAAU,GAKrC,OAHAw1B,GAASA,IACTC,GAASA,GAEe,KAW5Br5B,EAAOi5B,QAAQZ,eAAiB,SAAU1qB,EAAG2qB,EAAGC,GAE5C,IAAI7T,EAAI/W,EAAEpL,EACNi2B,EAAI7qB,EAAEnL,EACNi2B,GAAMH,EAAE/c,IAAI/Y,EAAI81B,EAAEltB,MAAM5I,IAAM81B,EAAE/c,IAAIhZ,EAAI+1B,EAAEltB,MAAM7I,GAChDm2B,EAAIJ,EAAE/c,IAAI/Y,EAAKi2B,EAAIH,EAAE/c,IAAIhZ,EACzBb,EAAIiM,EAAEhK,MAAQ,EACdhC,EAAIgM,EAAE/J,OAAS,EACf+0B,EAAMD,EAAID,EAAI/T,EAEdL,GAAMK,GAAK/iB,EAAIA,GAAK82B,GAAK/2B,EAAIA,IAAMg3B,EAAIF,GAAK92B,EAAIC,EAAKO,KAAKS,KAAMjB,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,EAAMg3B,EAAMA,EAAQH,EAAIA,EAAM,EAAIG,EAAMH,KAAU92B,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,GAClKyI,GAAMsa,GAAK/iB,EAAIA,GAAK82B,GAAK/2B,EAAIA,IAAMg3B,EAAIF,GAAK92B,EAAIC,EAAKO,KAAKS,KAAMjB,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,EAAMg3B,EAAMA,EAAQH,EAAIA,EAAM,EAAIG,EAAMH,KAAU92B,EAAIA,GAAM+2B,EAAIA,GAAM92B,EAAIA,GAElK2iB,EAAKmU,EAAIpU,EAAKqU,EACdruB,EAAKouB,EAAIruB,EAAKsuB,EACdE,EAAK,IAAI54B,EAAOX,MAAMglB,EAAIC,GAC1BuU,EAAK,IAAI74B,EAAOX,MAAM+K,EAAIC,GAC1ByuB,EAAWR,EAAES,eAAeH,EAAGr2B,EAAGq2B,EAAGp2B,EAAG,KACxCw2B,EAAWV,EAAES,eAAeF,EAAGt2B,EAAGs2B,EAAGr2B,EAAG,KAE5C,OAAIs2B,GAAYE,GAELT,GAAe,CAAEK,EAAIC,GAEvBC,GAEEP,GAAe,CAAEK,GAEnBI,GAEET,GAAe,CAAEM,KAIjBN,GAAe,IAK9Br5B,KAAK+5B,QAAUj5B,EAAOi5B,QAkBtBj5B,EAAOs5B,KAAO,SAAUlvB,EAAIC,EAAIC,EAAIC,GAEhCH,EAAKA,GAAM,EACXC,EAAKA,GAAM,EACXC,EAAKA,GAAM,EACXC,EAAKA,GAAM,EAKXtL,KAAKmM,MAAQ,IAAIpL,EAAOX,MAAM+K,EAAIC,GAKlCpL,KAAKsc,IAAM,IAAIvb,EAAOX,MAAMiL,EAAIC,GAMhCtL,KAAK+T,KAAOhT,EAAOgvB,MAGvBhvB,EAAOs5B,KAAKx4B,UAAY,CAYpB01B,MAAO,SAAUpsB,EAAIC,EAAIC,EAAIC,GAKzB,OAHAtL,KAAKmM,MAAMorB,MAAMpsB,EAAIC,GACrBpL,KAAKsc,IAAIib,MAAMlsB,EAAIC,GAEZtL,MAUXs6B,WAAY,SAAUnuB,EAAOmQ,GAIzB,OAFAtc,KAAKu3B,MAAMprB,EAAM7I,EAAG6I,EAAM5I,EAAG+Y,EAAIhZ,EAAGgZ,EAAI/Y,GAEjCvD,MAaXu6B,WAAY,SAAUC,EAAaC,EAAWC,GAI1C,YAFkBt0B,IAAds0B,IAA2BA,GAAY,GAEvCA,EAEO16B,KAAKu3B,MAAMiD,EAAYP,QAASO,EAAYN,QAASO,EAAUR,QAASQ,EAAUP,SAGtFl6B,KAAKs6B,WAAWE,EAAaC,IAaxCE,UAAW,SAAUr3B,EAAGC,EAAGw0B,EAAO71B,GAK9B,OAHAlC,KAAKmM,MAAMorB,MAAMj0B,EAAGC,GACpBvD,KAAKsc,IAAIib,MAAMj0B,EAAKL,KAAKI,IAAI00B,GAAS71B,EAASqB,EAAKN,KAAKG,IAAI20B,GAAS71B,GAE/DlC,MAgBX46B,OAAQ,SAAU7C,EAAOC,GAErB,IAAI/oB,GAAMjP,KAAKmM,MAAM7I,EAAItD,KAAKsc,IAAIhZ,GAAK,EACnC4L,GAAMlP,KAAKmM,MAAM5I,EAAIvD,KAAKsc,IAAI/Y,GAAK,EAKvC,OAHAvD,KAAKmM,MAAMyuB,OAAO3rB,EAAIC,EAAI6oB,EAAOC,GACjCh4B,KAAKsc,IAAIse,OAAO3rB,EAAIC,EAAI6oB,EAAOC,GAExBh4B,MAeX66B,aAAc,SAAUv3B,EAAGC,EAAGw0B,EAAOC,GAKjC,OAHAh4B,KAAKmM,MAAMyuB,OAAOt3B,EAAGC,EAAGw0B,EAAOC,GAC/Bh4B,KAAKsc,IAAIse,OAAOt3B,EAAGC,EAAGw0B,EAAOC,GAEtBh4B,MAcX44B,WAAY,SAAUkC,EAAMC,EAAWC,GAEnC,OAAOj6B,EAAOs5B,KAAKY,iBAAiBj7B,KAAKmM,MAAOnM,KAAKsc,IAAKwe,EAAK3uB,MAAO2uB,EAAKxe,IAAKye,EAAWC,IAW/FE,QAAS,SAAUJ,GAEf,OAAO/5B,EAAOs5B,KAAKa,QAAQl7B,KAAM86B,IAUrCK,SAAU,SAAU/D,GAOhB,YALYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1Cg3B,EAAI9zB,GAAKtD,KAAKmM,MAAM7I,EAAItD,KAAKsc,IAAIhZ,GAAK,EACtC8zB,EAAI7zB,GAAKvD,KAAKmM,MAAM5I,EAAIvD,KAAKsc,IAAI/Y,GAAK,EAE/B6zB,GAcXgE,SAAU,SAAU93B,EAAGC,GAEnB,IAGIV,EAAKS,GAHCtD,KAAKmM,MAAM7I,EAAItD,KAAKsc,IAAIhZ,GAAK,EAInCR,EAAKS,GAHCvD,KAAKmM,MAAM5I,EAAIvD,KAAKsc,IAAI/Y,GAAK,EAKvCvD,KAAKmM,MAAMkvB,IAAIx4B,EAAIC,GACnB9C,KAAKsc,IAAI+e,IAAIx4B,EAAIC,IAYrBw4B,YAAa,SAAUh4B,EAAGC,EAAGg4B,GAEzB,OAAOx6B,EAAOkC,KAAKu4B,YAAYl4B,EAAItD,KAAKmM,MAAM7I,IAAMtD,KAAKsc,IAAI/Y,EAAIvD,KAAKmM,MAAM5I,IAAKvD,KAAKsc,IAAIhZ,EAAItD,KAAKmM,MAAM7I,IAAMC,EAAIvD,KAAKmM,MAAM5I,GAAIg4B,GAAW,IAYjJzB,eAAgB,SAAUx2B,EAAGC,EAAGg4B,GAE5B,IAAIE,EAAOx4B,KAAKy4B,IAAI17B,KAAKmM,MAAM7I,EAAGtD,KAAKsc,IAAIhZ,GACvCq4B,EAAO14B,KAAK2C,IAAI5F,KAAKmM,MAAM7I,EAAGtD,KAAKsc,IAAIhZ,GACvCs4B,EAAO34B,KAAKy4B,IAAI17B,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAI/Y,GACvCs4B,EAAO54B,KAAK2C,IAAI5F,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAI/Y,GAE3C,OAAQvD,KAAKs7B,YAAYh4B,EAAGC,EAAGg4B,IAAkBE,GAALn4B,GAAaA,GAAKq4B,GAAeC,GAALr4B,GAAaA,GAAKs4B,GAW9F7G,OAAQ,SAAUoC,QAEFhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1C,IAAI8yB,EAAIjwB,KAAK+xB,SAKb,OAHAoC,EAAI9zB,EAAItD,KAAKmM,MAAM7I,EAAI4vB,GAAKlzB,KAAKsc,IAAIhZ,EAAItD,KAAKmM,MAAM7I,GACpD8zB,EAAI7zB,EAAIvD,KAAKmM,MAAM5I,EAAI2vB,GAAKlzB,KAAKsc,IAAI/Y,EAAIvD,KAAKmM,MAAM5I,GAE7C6zB,GAYX0E,kBAAmB,SAAUC,EAAUC,QAElB51B,IAAb21B,IAA0BA,EAAW,QACzB31B,IAAZ41B,IAAyBA,EAAU,IAEvC,IAAI7wB,EAAKlI,KAAK20B,MAAM53B,KAAKmM,MAAM7I,GAC3B8H,EAAKnI,KAAK20B,MAAM53B,KAAKmM,MAAM5I,GAC3B8H,EAAKpI,KAAK20B,MAAM53B,KAAKsc,IAAIhZ,GACzBgI,EAAKrI,KAAK20B,MAAM53B,KAAKsc,IAAI/Y,GAEzB2K,EAAKjL,KAAK81B,IAAI1tB,EAAKF,GACnBiD,EAAKnL,KAAK81B,IAAIztB,EAAKF,GACnB6wB,EAAM9wB,EAAKE,EAAM,GAAK,EACtB6wB,EAAM9wB,EAAKE,EAAM,GAAK,EACtB6wB,EAAMjuB,EAAKE,EAEf4tB,EAAQr0B,KAAK,CAAEwD,EAAIC,IAInB,IAFA,IAAInJ,EAAI,EAEEkJ,IAAOE,GAAQD,IAAOE,GAChC,CACI,IAAI8wB,EAAKD,GAAO,GAEN/tB,EAANguB,IAEAD,GAAO/tB,EACPjD,GAAM8wB,GAGNG,EAAKluB,IAELiuB,GAAOjuB,EACP9C,GAAM8wB,GAGNj6B,EAAI85B,GAAa,GAEjBC,EAAQr0B,KAAK,CAAEwD,EAAIC,IAGvBnJ,IAGJ,OAAO+5B,GASX3F,MAAO,SAAUwB,GAWb,OATIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAOs5B,KAAKr6B,KAAKmM,MAAM7I,EAAGtD,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAIhZ,EAAGtD,KAAKsc,IAAI/Y,GAI1Es0B,EAAON,MAAMv3B,KAAKmM,MAAM7I,EAAGtD,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAIhZ,EAAGtD,KAAKsc,IAAI/Y,GAG3Ds0B,IAUfhxB,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,SAAU,CAEnDkF,IAAK,WAED,OAAO9D,KAAKS,MAAM1D,KAAKsc,IAAIhZ,EAAItD,KAAKmM,MAAM7I,IAAMtD,KAAKsc,IAAIhZ,EAAItD,KAAKmM,MAAM7I,IAAMtD,KAAKsc,IAAI/Y,EAAIvD,KAAKmM,MAAM5I,IAAMvD,KAAKsc,IAAI/Y,EAAIvD,KAAKmM,MAAM5I,OAU5IsD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,QAAS,CAElDkF,IAAK,WAED,OAAOhG,EAAOX,MAAM23B,MAAM/3B,KAAKsc,IAAKtc,KAAKmM,UAUjDtF,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,QAAS,CAElDkF,IAAK,WAED,OAAQ/G,KAAKsc,IAAI/Y,EAAIvD,KAAKmM,MAAM5I,IAAMvD,KAAKsc,IAAIhZ,EAAItD,KAAKmM,MAAM7I,MAUtEuD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,YAAa,CAEtDkF,IAAK,WAED,QAAU/G,KAAKsc,IAAIhZ,EAAItD,KAAKmM,MAAM7I,IAAMtD,KAAKsc,IAAI/Y,EAAIvD,KAAKmM,MAAM5I,MAUxEsD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,IAAK,CAE9CkF,IAAK,WAED,OAAO9D,KAAKy4B,IAAI17B,KAAKmM,MAAM7I,EAAGtD,KAAKsc,IAAIhZ,MAU/CuD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,IAAK,CAE9CkF,IAAK,WAED,OAAO9D,KAAKy4B,IAAI17B,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAI/Y,MAU/CsD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,OAAQ,CAEjDkF,IAAK,WAED,OAAO9D,KAAKy4B,IAAI17B,KAAKmM,MAAM7I,EAAGtD,KAAKsc,IAAIhZ,MAU/CuD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,QAAS,CAElDkF,IAAK,WAED,OAAO9D,KAAK2C,IAAI5F,KAAKmM,MAAM7I,EAAGtD,KAAKsc,IAAIhZ,MAU/CuD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,MAAO,CAEhDkF,IAAK,WAED,OAAO9D,KAAKy4B,IAAI17B,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAI/Y,MAU/CsD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,SAAU,CAEnDkF,IAAK,WAED,OAAO9D,KAAK2C,IAAI5F,KAAKmM,MAAM5I,EAAGvD,KAAKsc,IAAI/Y,MAU/CsD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,QAAS,CAElDkF,IAAK,WAED,OAAO9D,KAAK81B,IAAI/4B,KAAKmM,MAAM7I,EAAItD,KAAKsc,IAAIhZ,MAUhDuD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,SAAU,CAEnDkF,IAAK,WAED,OAAO9D,KAAK81B,IAAI/4B,KAAKmM,MAAM5I,EAAIvD,KAAKsc,IAAI/Y,MAUhDsD,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,UAAW,CAEpDkF,IAAK,WAED,OAAO9D,KAAKI,IAAIrD,KAAK+3B,MAAQ,uBAUrClxB,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,UAAW,CAEpDkF,IAAK,WAED,OAAO9D,KAAKG,IAAIpD,KAAK+3B,MAAQ,uBAUrClxB,OAAOyF,eAAevL,EAAOs5B,KAAKx4B,UAAW,cAAe,CAExDkF,IAAK,WAED,OAAOhG,EAAOkC,KAAKo5B,KAAKr8B,KAAK+3B,MAAQ,oBAAqB90B,KAAKk0B,GAAIl0B,KAAKk0B,OAoBhFp2B,EAAOs5B,KAAKY,iBAAmB,SAAUx4B,EAAGC,EAAGgM,EAAG4mB,EAAGyF,EAAWC,QAE1C50B,IAAd20B,IAA2BA,GAAY,QAC5B30B,IAAX40B,IAAwBA,EAAS,IAAIj6B,EAAOX,OAEhD,IAAIk8B,EAAK55B,EAAEa,EAAId,EAAEc,EACbg5B,EAAKjH,EAAE/xB,EAAImL,EAAEnL,EACbi5B,EAAK/5B,EAAEa,EAAIZ,EAAEY,EACbm5B,EAAK/tB,EAAEpL,EAAIgyB,EAAEhyB,EACbo5B,EAAMh6B,EAAEY,EAAIb,EAAEc,EAAMd,EAAEa,EAAIZ,EAAEa,EAC5Bo5B,EAAMrH,EAAEhyB,EAAIoL,EAAEnL,EAAMmL,EAAEpL,EAAIgyB,EAAE/xB,EAC5Bq5B,EAASN,EAAKG,EAAOF,EAAKC,EAE9B,GAAc,IAAVI,EAEA,OAAO,KAMX,GAHA5B,EAAO13B,GAAMk5B,EAAKG,EAAOF,EAAKC,GAAOE,EACrC5B,EAAOz3B,GAAMg5B,EAAKG,EAAOJ,EAAKK,GAAOC,EAEjC7B,EACJ,CACI,IAAI8B,GAAOvH,EAAE/xB,EAAImL,EAAEnL,IAAMb,EAAEY,EAAIb,EAAEa,IAAMgyB,EAAEhyB,EAAIoL,EAAEpL,IAAMZ,EAAEa,EAAId,EAAEc,GACzDu5B,IAAQxH,EAAEhyB,EAAIoL,EAAEpL,IAAMb,EAAEc,EAAImL,EAAEnL,IAAO+xB,EAAE/xB,EAAImL,EAAEnL,IAAMd,EAAEa,EAAIoL,EAAEpL,IAAMu5B,EACjEE,IAAQr6B,EAAEY,EAAIb,EAAEa,IAAMb,EAAEc,EAAImL,EAAEnL,IAAQb,EAAEa,EAAId,EAAEc,IAAMd,EAAEa,EAAIoL,EAAEpL,IAAOu5B,EAEvE,OAAU,GAANC,GAAWA,GAAM,GAAW,GAANC,GAAWA,GAAM,EAEhC/B,EAIA,KAIf,OAAOA,GAiBXj6B,EAAOs5B,KAAKzB,WAAa,SAAUn2B,EAAGC,EAAGq4B,EAAWC,GAEhD,OAAOj6B,EAAOs5B,KAAKY,iBAAiBx4B,EAAE0J,MAAO1J,EAAE6Z,IAAK5Z,EAAEyJ,MAAOzJ,EAAE4Z,IAAKye,EAAWC,IAqBnFj6B,EAAOs5B,KAAKvB,oBAAsB,SAAUgC,EAAMkC,GAG9C,GAAoB,IAAhBlC,EAAK54B,QAAgB86B,EAAKC,MAE1B,OAAO,EAGX,IAAI9xB,EAAK2vB,EAAK3uB,MAAM7I,EAChB8H,EAAK0vB,EAAK3uB,MAAM5I,EAEhB8H,EAAKyvB,EAAKxe,IAAIhZ,EACdgI,EAAKwvB,EAAKxe,IAAI/Y,EAEd25B,EAAMF,EAAK15B,EACX65B,EAAMH,EAAKz5B,EACX65B,EAAMJ,EAAKlH,MACXuH,EAAML,EAAKtE,OAEXxF,EAAI,EAOR,GAAWgK,GAAN/xB,GAAaA,GAAMiyB,GAAaD,GAAN/xB,GAAaA,GAAMiyB,GACvCH,GAAN7xB,GAAaA,GAAM+xB,GAAaD,GAAN7xB,GAAaA,GAAM+xB,EAE9C,OAAO,EAGX,GAAIlyB,EAAK+xB,GAAaA,GAAN7xB,GAKZ,GAAQ8xB,GAFRjK,EAAI9nB,GAAME,EAAKF,IAAO8xB,EAAM/xB,IAAOE,EAAKF,KAEzB+nB,GAAKmK,EAEhB,OAAO,OAGV,GAASD,EAALjyB,GAAYE,GAAM+xB,GAKdD,IAFTjK,EAAI9nB,GAAME,EAAKF,IAAOgyB,EAAMjyB,IAAOE,EAAKF,KAExB+nB,GAAKmK,EAEjB,OAAO,EAIf,GAAIjyB,EAAK+xB,GAAaA,GAAN7xB,GAKZ,GAAS4xB,IAFThK,EAAI/nB,GAAME,EAAKF,IAAOgyB,EAAM/xB,IAAOE,EAAKF,KAExB8nB,GAAKkK,EAEjB,OAAO,OAGV,GAASC,EAALjyB,GAAYE,GAAM+xB,GAKdH,IAFThK,EAAI/nB,GAAME,EAAKF,IAAOkyB,EAAMjyB,IAAOE,EAAKF,KAExB8nB,GAAKkK,EAEjB,OAAO,EAIf,OAAO,GAaXr8B,EAAOs5B,KAAKiD,0BAA4B,SAAUxC,EAAMkC,EAAMhC,GAE1D,IAAIuC,EAAOx8B,EAAOs5B,KAAKiD,0BAElBtC,IAEDA,EAAS,IAAIj6B,EAAOX,OAGnBm9B,EAAKC,QAEND,EAAKC,MAAQ,CAAE,IAAIz8B,EAAOs5B,KAAQ,IAAIt5B,EAAOs5B,KAAQ,IAAIt5B,EAAOs5B,KAAQ,IAAIt5B,EAAOs5B,OAGlFkD,EAAKE,mBAENF,EAAKE,iBAAmB,IAAI18B,EAAOX,OAGvC,IAAIo9B,EAAQD,EAAKC,MACbC,EAAmBF,EAAKE,iBAAiBz2B,IAAI,GAE7Ck2B,EAAMF,EAAK15B,EACX65B,EAAMH,EAAKz5B,EACX65B,EAAMJ,EAAKlH,MACXuH,EAAML,EAAKtE,OACXgF,EAAkBhzB,EAAAA,EAEtB8yB,EAAM,GAAGjG,MAAM2F,EAAKC,EAAKC,EAAKD,GAC9BK,EAAM,GAAGjG,MAAM2F,EAAKG,EAAKD,EAAKC,GAC9BG,EAAM,GAAGjG,MAAM2F,EAAKC,EAAKD,EAAKG,GAC9BG,EAAM,GAAGjG,MAAM6F,EAAKD,EAAKC,EAAKC,GAE9B,IAAK,IAAIM,EAAM17B,EAAI,EAAI07B,EAAOH,EAAMv7B,GAAKA,IAErC,GAAI64B,EAAKlC,WAAW+E,GAAM,EAAMF,GAChC,CACI,IAAI9F,EAAWmD,EAAK3uB,MAAMwrB,SAAS8F,GAE/B9F,EAAW+F,IAEXA,EAAkB/F,EAClBqD,EAAOxD,SAASiG,IAK5B,OAAgB,MAAZ9F,EAEOqD,EAGJ,MAYXj6B,EAAOs5B,KAAKa,QAAU,SAAUz4B,EAAGC,GAE/B,OAAO,EAAIA,EAAEk7B,YAAc,kBAAoBn7B,EAAEs1B,OA4BrDh3B,EAAOC,OAAS,SAAUyB,EAAGC,EAAGC,EAAGC,EAAGC,EAAIC,GAElCL,MAAAA,IAAiCA,EAAI,GACrCC,MAAAA,IAAiCA,EAAI,GACrCC,MAAAA,IAAiCA,EAAI,GACrCC,MAAAA,IAAiCA,EAAI,GACrCC,MAAAA,IAAmCA,EAAK,GACxCC,MAAAA,IAAmCA,EAAK,GAM5C9C,KAAKyC,EAAIA,EAMTzC,KAAK0C,EAAIA,EAMT1C,KAAK2C,EAAIA,EAMT3C,KAAK4C,EAAIA,EAMT5C,KAAK6C,GAAKA,EAMV7C,KAAK8C,GAAKA,EAMV9C,KAAK+T,KAAOhT,EAAOivB,QAGvBjvB,EAAOC,OAAOa,UAAY,CAkBtBg8B,UAAW,SAAUC,GAEjB,OAAO99B,KAAKu3B,MAAMuG,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAe9EvG,MAAO,SAAU90B,EAAGC,EAAGC,EAAGC,EAAGC,EAAIC,GAS7B,OAPA9C,KAAKyC,EAAIA,EACTzC,KAAK0C,EAAIA,EACT1C,KAAK2C,EAAIA,EACT3C,KAAK4C,EAAIA,EACT5C,KAAK6C,GAAKA,EACV7C,KAAK8C,GAAKA,EAEH9C,MAYXq2B,MAAO,SAAUwB,GAgBb,OAdIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAOC,OAAOhB,KAAKyC,EAAGzC,KAAK0C,EAAG1C,KAAK2C,EAAG3C,KAAK4C,EAAG5C,KAAK6C,GAAI7C,KAAK8C,KAIzE+0B,EAAOp1B,EAAIzC,KAAKyC,EAChBo1B,EAAOn1B,EAAI1C,KAAK0C,EAChBm1B,EAAOl1B,EAAI3C,KAAK2C,EAChBk1B,EAAOj1B,EAAI5C,KAAK4C,EAChBi1B,EAAOh1B,GAAK7C,KAAK6C,GACjBg1B,EAAO/0B,GAAK9C,KAAK8C,IAGd+0B,GAUXJ,OAAQ,SAAUlqB,GAId,OAFAA,EAAOiqB,SAASx3B,MAETuN,GAUXiqB,SAAU,SAAUjqB,GAShB,OAPAvN,KAAKyC,EAAI8K,EAAO9K,EAChBzC,KAAK0C,EAAI6K,EAAO7K,EAChB1C,KAAK2C,EAAI4K,EAAO5K,EAChB3C,KAAK4C,EAAI2K,EAAO3K,EAChB5C,KAAK6C,GAAK0K,EAAO1K,GACjB7C,KAAK8C,GAAKyK,EAAOzK,GAEV9C,MAWXkhB,QAAS,SAAUjL,EAAW6nB,GA6B1B,YA3Bc13B,IAAV03B,IAAuBA,EAAQ,IAAIva,aAAa,IAEhDtN,GAEA6nB,EAAM,GAAK99B,KAAKyC,EAChBq7B,EAAM,GAAK99B,KAAK0C,EAChBo7B,EAAM,GAAK,EACXA,EAAM,GAAK99B,KAAK2C,EAChBm7B,EAAM,GAAK99B,KAAK4C,EAChBk7B,EAAM,GAAK,EACXA,EAAM,GAAK99B,KAAK6C,GAChBi7B,EAAM,GAAK99B,KAAK8C,KAKhBg7B,EAAM,GAAK99B,KAAKyC,EAChBq7B,EAAM,GAAK99B,KAAK2C,EAChBm7B,EAAM,GAAK99B,KAAK6C,GAChBi7B,EAAM,GAAK99B,KAAK0C,EAChBo7B,EAAM,GAAK99B,KAAK4C,EAChBk7B,EAAM,GAAK99B,KAAK8C,GAChBg7B,EAAM,GAAK,EACXA,EAAM,GAAK,GAXXA,EAAM,GAAK,EAeRA,GAaX74B,MAAO,SAAU84B,EAAKC,GAOlB,YALe53B,IAAX43B,IAAwBA,EAAS,IAAIj9B,EAAOX,OAEhD49B,EAAO16B,EAAItD,KAAKyC,EAAIs7B,EAAIz6B,EAAItD,KAAK2C,EAAIo7B,EAAIx6B,EAAIvD,KAAK6C,GAClDm7B,EAAOz6B,EAAIvD,KAAK0C,EAAIq7B,EAAIz6B,EAAItD,KAAK4C,EAAIm7B,EAAIx6B,EAAIvD,KAAK8C,GAE3Ck7B,GAaX54B,aAAc,SAAU24B,EAAKC,QAEV53B,IAAX43B,IAAwBA,EAAS,IAAIj9B,EAAOX,OAEhD,IAAIqU,EAAK,GAAKzU,KAAKyC,EAAIzC,KAAK4C,EAAI5C,KAAK2C,GAAK3C,KAAK0C,GAC3CY,EAAIy6B,EAAIz6B,EACRC,EAAIw6B,EAAIx6B,EAKZ,OAHAy6B,EAAO16B,EAAItD,KAAK4C,EAAI6R,EAAKnR,GAAKtD,KAAK2C,EAAI8R,EAAKlR,GAAKvD,KAAK8C,GAAK9C,KAAK2C,EAAI3C,KAAK6C,GAAK7C,KAAK4C,GAAK6R,EACxFupB,EAAOz6B,EAAIvD,KAAKyC,EAAIgS,EAAKlR,GAAKvD,KAAK0C,EAAI+R,EAAKnR,IAAMtD,KAAK8C,GAAK9C,KAAKyC,EAAIzC,KAAK6C,GAAK7C,KAAK0C,GAAK+R,EAElFupB,GAYXC,UAAW,SAAU36B,EAAGC,GAKpB,OAHAvD,KAAK6C,IAAMS,EACXtD,KAAK8C,IAAMS,EAEJvD,MAWXK,MAAO,SAAUiD,EAAGC,GAShB,OAPAvD,KAAKyC,GAAKa,EACVtD,KAAK4C,GAAKW,EACVvD,KAAK2C,GAAKW,EACVtD,KAAK0C,GAAKa,EACVvD,KAAK6C,IAAMS,EACXtD,KAAK8C,IAAMS,EAEJvD,MAUX46B,OAAQ,SAAU7C,GAEd,IAAI10B,EAAMJ,KAAKI,IAAI00B,GACf30B,EAAMH,KAAKG,IAAI20B,GAEfuE,EAAKt8B,KAAKyC,EACVi6B,EAAK18B,KAAK2C,EACVu7B,EAAMl+B,KAAK6C,GASf,OAPA7C,KAAKyC,EAAI65B,EAAKj5B,EAAMrD,KAAK0C,EAAIU,EAC7BpD,KAAK0C,EAAI45B,EAAKl5B,EAAMpD,KAAK0C,EAAIW,EAC7BrD,KAAK2C,EAAI+5B,EAAKr5B,EAAMrD,KAAK4C,EAAIQ,EAC7BpD,KAAK4C,EAAI85B,EAAKt5B,EAAMpD,KAAK4C,EAAIS,EAC7BrD,KAAK6C,GAAKq7B,EAAM76B,EAAMrD,KAAK8C,GAAKM,EAChCpD,KAAK8C,GAAKo7B,EAAM96B,EAAMpD,KAAK8C,GAAKO,EAEzBrD,MAUXm+B,OAAQ,SAAU5wB,GAEd,IAAI+uB,EAAKt8B,KAAKyC,EACV+5B,EAAKx8B,KAAK0C,EACVg6B,EAAK18B,KAAK2C,EACVy7B,EAAKp+B,KAAK4C,EAUd,OARA5C,KAAKyC,EAAI8K,EAAO9K,EAAI65B,EAAK/uB,EAAO7K,EAAIg6B,EACpC18B,KAAK0C,EAAI6K,EAAO9K,EAAI+5B,EAAKjvB,EAAO7K,EAAI07B,EACpCp+B,KAAK2C,EAAI4K,EAAO5K,EAAI25B,EAAK/uB,EAAO3K,EAAI85B,EACpC18B,KAAK4C,EAAI2K,EAAO5K,EAAI65B,EAAKjvB,EAAO3K,EAAIw7B,EAEpCp+B,KAAK6C,GAAK0K,EAAO1K,GAAKy5B,EAAK/uB,EAAOzK,GAAK45B,EAAK18B,KAAK6C,GACjD7C,KAAK8C,GAAKyK,EAAO1K,GAAK25B,EAAKjvB,EAAOzK,GAAKs7B,EAAKp+B,KAAK8C,GAE1C9C,MASXq+B,SAAU,WAEN,OAAOr+B,KAAKu3B,MAAM,EAAG,EAAG,EAAG,EAAG,EAAG,KAKzCx2B,EAAOsJ,eAAiB,IAAItJ,EAAOC,OAmBnCD,EAAOX,MAAQ,SAAUkD,EAAGC,GAExBD,EAAIA,GAAK,EACTC,EAAIA,GAAK,EAKTvD,KAAKsD,EAAIA,EAKTtD,KAAKuD,EAAIA,EAMTvD,KAAK+T,KAAOhT,EAAOkvB,OAGvBlvB,EAAOX,MAAMyB,UAAY,CASrB21B,SAAU,SAAUroB,GAEhB,OAAOnP,KAAKu3B,MAAMpoB,EAAO7L,EAAG6L,EAAO5L,IASvC+6B,OAAQ,WAEJ,OAAOt+B,KAAKu3B,MAAMv3B,KAAKuD,EAAGvD,KAAKsD,IAenCi0B,MAAO,SAAUj0B,EAAGC,GAEhB,OAAOxC,EAAOX,MAAM4G,IAAIhH,KAAMsD,EAAGC,IAerCyD,IAAK,SAAU1D,EAAGC,GAEd,OAAOxC,EAAOX,MAAM4G,IAAIhH,KAAMsD,EAAGC,IAYrCg7B,WAAY,SAAUC,EAASlH,EAAQU,GAKnC,OAHc,MAAVV,IAAkBA,EAAS,GAC3BU,IAAawG,EAAUz9B,EAAOkC,KAAK41B,SAAS2F,IAEzCx+B,KAAKu3B,MAAMt0B,KAAKI,IAAIm7B,GAAWlH,EAAQr0B,KAAKG,IAAIo7B,GAAWlH,IAWtE+D,IAAK,SAAU/3B,EAAGC,GAId,OAFAvD,KAAKsD,GAAKA,EACVtD,KAAKuD,GAAKA,EACHvD,MAWXy+B,SAAU,SAAUn7B,EAAGC,GAInB,OAFAvD,KAAKsD,GAAKA,EACVtD,KAAKuD,GAAKA,EACHvD,MAWX0+B,SAAU,SAAUp7B,EAAGC,GAInB,OAFAvD,KAAKsD,GAAKA,EACVtD,KAAKuD,GAAKA,EACHvD,MAWX2+B,OAAQ,SAAUr7B,EAAGC,GAIjB,OAFAvD,KAAKsD,GAAKA,EACVtD,KAAKuD,GAAKA,EACHvD,MAWX4+B,OAAQ,SAAUlD,EAAK91B,GAGnB,OADA5F,KAAKsD,EAAIvC,EAAOkC,KAAK47B,MAAM7+B,KAAKsD,EAAGo4B,EAAK91B,GACjC5F,MAWX8+B,OAAQ,SAAUpD,EAAK91B,GAGnB,OADA5F,KAAKuD,EAAIxC,EAAOkC,KAAK47B,MAAM7+B,KAAKuD,EAAGm4B,EAAK91B,GACjC5F,MAWX6+B,MAAO,SAAUnD,EAAK91B,GAIlB,OAFA5F,KAAKsD,EAAIvC,EAAOkC,KAAK47B,MAAM7+B,KAAKsD,EAAGo4B,EAAK91B,GACxC5F,KAAKuD,EAAIxC,EAAOkC,KAAK47B,MAAM7+B,KAAKuD,EAAGm4B,EAAK91B,GACjC5F,MAUX4qB,KAAM,SAAUoS,GAEZ,IAAIxE,EAAOwE,EAAKxE,KACZC,EAAMuE,EAAKvE,IACX3C,EAAQkH,EAAKlH,MACb4C,EAASsE,EAAKtE,OAOlB,OALI14B,KAAKsD,EAAIk1B,EAAQx4B,KAAKsD,EAAIk1B,EACrBx4B,KAAKsD,EAAIwyB,IAAS91B,KAAKsD,EAAIwyB,GAChC91B,KAAKuD,EAAIk1B,EAAOz4B,KAAKuD,EAAIk1B,EACpBz4B,KAAKuD,EAAIm1B,IAAU14B,KAAKuD,EAAIm1B,GAE9B14B,MAUXq2B,MAAO,SAAUwB,GAWb,OATIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAOX,MAAMJ,KAAKsD,EAAGtD,KAAKuD,GAIvCs0B,EAAON,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,GAGvBs0B,GAUXJ,OAAQ,SAAUC,GAKd,OAHAA,EAAKp0B,EAAItD,KAAKsD,EACdo0B,EAAKn0B,EAAIvD,KAAKuD,EAEPm0B,GAWXC,SAAU,SAAUD,EAAME,GAEtB,OAAO72B,EAAOX,MAAMu3B,SAAS33B,KAAM03B,EAAME,IAU7Ce,OAAQ,SAAUl2B,GAEd,OAAOA,EAAEa,IAAMtD,KAAKsD,GAAKb,EAAEc,IAAMvD,KAAKuD,GAW1Cw7B,SAAU,SAAUz7B,EAAGC,GAEnB,OAAOvD,KAAKsD,IAAMA,GAAKtD,KAAKuD,IAAMA,GAGtCy7B,YAAa,SAAUv8B,EAAG84B,GAEtB,OAAOx6B,EAAOX,MAAM4+B,YAAYh/B,KAAMyC,EAAG84B,IAG7C0D,cAAe,SAAU37B,EAAGC,EAAGg4B,GAE3B,OAAOx6B,EAAOX,MAAM6+B,cAAcj/B,KAAMsD,EAAGC,EAAGg4B,IAWlDxD,MAAO,SAAUt1B,EAAGu1B,GAEhB,OAAOh4B,KAAKk/B,QAAQz8B,EAAEa,EAAGb,EAAEc,EAAGy0B,IAYlCkH,QAAS,SAAU57B,EAAGC,EAAGy0B,GAErB,IAAID,EAAQ90B,KAAKk8B,MAAM57B,EAAIvD,KAAKuD,EAAGD,EAAItD,KAAKsD,GAE5C,OAAI00B,EAEOj3B,EAAOkC,KAAKm8B,SAASrH,GAIrBA,GAWfsH,KAAM,SAAUrH,GAEZ,IAAID,EAAQ90B,KAAKk8B,MAAMn/B,KAAKuD,EAAGvD,KAAKsD,GAEpC,OAAI00B,EAEOj3B,EAAOkC,KAAKm8B,SAASrH,GAIrBA,GAef6C,OAAQ,SAAUt3B,EAAGC,EAAGw0B,EAAOC,EAAWL,GAEtC,OAAO52B,EAAOX,MAAMw6B,OAAO56B,KAAMsD,EAAGC,EAAGw0B,EAAOC,EAAWL,IAS7D2H,aAAc,WAEV,OAAOr8B,KAAKS,KAAM1D,KAAKsD,EAAItD,KAAKsD,EAAMtD,KAAKuD,EAAIvD,KAAKuD,IASxDg8B,eAAgB,WAEZ,OAAQv/B,KAAKsD,EAAItD,KAAKsD,EAAMtD,KAAKuD,EAAIvD,KAAKuD,GAU9Ci8B,aAAc,SAAUC,GAEpB,OAAOz/B,KAAK0/B,YAAYhB,SAASe,EAAWA,IAShDC,UAAW,WAEP,IAAK1/B,KAAK2/B,SACV,CACI,IAAInG,EAAIx5B,KAAKs/B,eACbt/B,KAAKsD,GAAKk2B,EACVx5B,KAAKuD,GAAKi2B,EAGd,OAAOx5B,MAWX4/B,MAAO,SAAUh6B,GAOb,OALI5F,KAAKu/B,iBAAmB35B,EAAMA,GAE9B5F,KAAKw/B,aAAa55B,GAGf5F,MAWX6/B,OAAQ,SAAUnE,GAOd,OALI17B,KAAKu/B,iBAAmB7D,EAAMA,GAE9B17B,KAAKw/B,aAAa9D,GAGf17B,MASX2/B,OAAQ,WAEJ,OAAmB,IAAX3/B,KAAKsD,GAAsB,IAAXtD,KAAKuD,GAUjCu8B,IAAK,SAAUr9B,GAEX,OAASzC,KAAKsD,EAAIb,EAAEa,EAAMtD,KAAKuD,EAAId,EAAEc,GAUzCw8B,MAAO,SAAUt9B,GAEb,OAASzC,KAAKsD,EAAIb,EAAEc,EAAMvD,KAAKuD,EAAId,EAAEa,GASzC08B,KAAM,WAEF,OAAOhgC,KAAKu3B,OAAOv3B,KAAKuD,EAAGvD,KAAKsD,IASpC28B,MAAO,WAEH,OAAOjgC,KAAKu3B,MAAMv3B,KAAKuD,GAAIvD,KAAKsD,IASpC48B,gBAAiB,WAEb,OAAOlgC,KAAKu3B,OAAgB,EAAVv3B,KAAKuD,EAAQvD,KAAKsD,IASxC6uB,MAAO,WAEH,OAAOnyB,KAAKu3B,MAAMt0B,KAAKkvB,MAAMnyB,KAAKsD,GAAIL,KAAKkvB,MAAMnyB,KAAKuD,KAS1DsC,KAAM,WAEF,OAAO7F,KAAKu3B,MAAMt0B,KAAK4C,KAAK7F,KAAKsD,GAAIL,KAAK4C,KAAK7F,KAAKuD,KASxDq0B,MAAO,WAEH,OAAO53B,KAAKu3B,MAAMt0B,KAAK20B,MAAM53B,KAAKsD,GAAIL,KAAK20B,MAAM53B,KAAKuD,KAS1D0nB,SAAU,WAEN,MAAO,cAAgBjrB,KAAKsD,EAAI,MAAQtD,KAAKuD,EAAI,QAKzDxC,EAAOX,MAAMyB,UAAUC,YAAcf,EAAOX,MAW5CW,EAAOX,MAAMi7B,IAAM,SAAU54B,EAAGC,EAAG00B,GAO/B,YALYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1Cg3B,EAAI9zB,EAAIb,EAAEa,EAAIZ,EAAEY,EAChB8zB,EAAI7zB,EAAId,EAAEc,EAAIb,EAAEa,EAET6zB,GAYXr2B,EAAOX,MAAMq+B,SAAW,SAAUh8B,EAAGC,EAAG00B,GAOpC,YALYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1Cg3B,EAAI9zB,EAAIb,EAAEa,EAAIZ,EAAEY,EAChB8zB,EAAI7zB,EAAId,EAAEc,EAAIb,EAAEa,EAET6zB,GAYXr2B,EAAOX,MAAMs+B,SAAW,SAAUj8B,EAAGC,EAAG00B,GAOpC,YALYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1Cg3B,EAAI9zB,EAAIb,EAAEa,EAAIZ,EAAEY,EAChB8zB,EAAI7zB,EAAId,EAAEc,EAAIb,EAAEa,EAET6zB,GAYXr2B,EAAOX,MAAMu+B,OAAS,SAAUl8B,EAAGC,EAAG00B,GAOlC,YALYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1Cg3B,EAAI9zB,EAAIb,EAAEa,EAAIZ,EAAEY,EAChB8zB,EAAI7zB,EAAId,EAAEc,EAAIb,EAAEa,EAET6zB,GAWXr2B,EAAOX,MAAMu4B,OAAS,SAAUl2B,EAAGC,GAE/B,OAAOD,EAAEa,IAAMZ,EAAEY,GAAKb,EAAEc,IAAMb,EAAEa,GAGpCxC,EAAOX,MAAM2+B,SAAW,SAAUt8B,EAAGa,EAAGC,GAEpC,OAAOd,EAAEa,IAAMA,GAAKb,EAAEc,IAAMA,GAGhCxC,EAAOX,MAAM4+B,YAAc,SAAUv8B,EAAGC,EAAG64B,GAEvC,OAAOx6B,EAAOkC,KAAKu4B,WAAW/4B,EAAEa,EAAGZ,EAAEY,EAAGi4B,IACjCx6B,EAAOkC,KAAKu4B,WAAW/4B,EAAEc,EAAGb,EAAEa,EAAGg4B,IAG5Cx6B,EAAOX,MAAM6+B,cAAgB,SAAUx8B,EAAGa,EAAGC,EAAGg4B,GAE5C,OAAOx6B,EAAOkC,KAAKu4B,WAAW/4B,EAAEa,EAAGA,EAAGi4B,IAC/Bx6B,EAAOkC,KAAKu4B,WAAW/4B,EAAEc,EAAGA,EAAGg4B,IAW1Cx6B,EAAOX,MAAM23B,MAAQ,SAAUt1B,EAAGC,GAE9B,OAAOO,KAAKk8B,MAAM18B,EAAEc,EAAIb,EAAEa,EAAGd,EAAEa,EAAIZ,EAAEY,IAWzCvC,EAAOX,MAAM+/B,SAAW,SAAU19B,EAAG20B,GAIjC,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEnCg3B,EAAIG,OAAO90B,EAAEa,GAAIb,EAAEc,IAa9BxC,EAAOX,MAAMggC,YAAc,SAAU39B,EAAGC,EAAGkB,EAAGwzB,GAI1C,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEnCg3B,EAAIG,MAAM90B,EAAEa,EAAIZ,EAAEY,EAAIM,EAAGnB,EAAEc,EAAIb,EAAEa,EAAIK,IAahD7C,EAAOX,MAAMigC,YAAc,SAAU59B,EAAGC,EAAG4yB,EAAG8B,GAI1C,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEnCg3B,EAAIG,MAAM90B,EAAEa,GAAKZ,EAAEY,EAAIb,EAAEa,GAAKgyB,EAAG7yB,EAAEc,GAAKb,EAAEa,EAAId,EAAEc,GAAK+xB,IAWhEv0B,EAAOX,MAAM4/B,KAAO,SAAUv9B,EAAG20B,GAI7B,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEnCg3B,EAAIG,OAAO90B,EAAEc,EAAGd,EAAEa,IAW7BvC,EAAOX,MAAM6/B,MAAQ,SAAUx9B,EAAG20B,GAI9B,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEnCg3B,EAAIG,MAAM90B,EAAEc,GAAId,EAAEa,IAY7BvC,EAAOX,MAAMu3B,SAAW,SAAUl1B,EAAGC,EAAGk1B,GAEpC,IAAID,EAAW52B,EAAOkC,KAAK00B,SAASl1B,EAAEa,EAAGb,EAAEc,EAAGb,EAAEY,EAAGZ,EAAEa,GACrD,OAAOq0B,EAAQ30B,KAAK20B,MAAMD,GAAYA,GAY1C52B,EAAOX,MAAMkgC,QAAU,SAAU79B,EAAGC,EAAG00B,QAEvBhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1C,IAAImgC,EAAM99B,EAAEq9B,IAAIp9B,GAAKA,EAAE68B,iBAOvB,OALY,IAARgB,GAEAnJ,EAAIG,MAAMgJ,EAAM79B,EAAEY,EAAGi9B,EAAM79B,EAAEa,GAG1B6zB,GAYXr2B,EAAOX,MAAMogC,YAAc,SAAU/9B,EAAGC,EAAG00B,QAE3BhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1C,IAAImgC,EAAM99B,EAAEq9B,IAAIp9B,GAOhB,OALY,IAAR69B,GAEAnJ,EAAIG,MAAMgJ,EAAM79B,EAAEY,EAAGi9B,EAAM79B,EAAEa,GAG1B6zB,GAWXr2B,EAAOX,MAAM8/B,gBAAkB,SAAUz9B,EAAG20B,GAIxC,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEnCg3B,EAAIG,OAAa,EAAP90B,EAAEc,EAAQd,EAAEa,IAWjCvC,EAAOX,MAAMs/B,UAAY,SAAUj9B,EAAG20B,QAEtBhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1C,IAAIo5B,EAAI/2B,EAAE68B,eAOV,OALU,IAAN9F,GAEApC,EAAIG,MAAM90B,EAAEa,EAAIk2B,EAAG/2B,EAAEc,EAAIi2B,GAGtBpC,GAoBXr2B,EAAOX,MAAMw6B,OAAS,SAAUn4B,EAAGa,EAAGC,EAAGw0B,EAAOC,EAAWL,GAIvD,GAFIK,IAAaD,EAAQh3B,EAAOkC,KAAK41B,SAASd,SAE7B3xB,IAAbuxB,EACJ,CACIl1B,EAAEg8B,SAASn7B,EAAGC,GAEd,IAAIK,EAAIX,KAAKG,IAAI20B,GACbp1B,EAAIM,KAAKI,IAAI00B,GAEbl1B,EAAKF,EAAIF,EAAEa,EAAIM,EAAInB,EAAEc,EACrBT,EAAKc,EAAInB,EAAEa,EAAIX,EAAIF,EAAEc,EAEzBd,EAAEa,EAAIT,EAAKS,EACXb,EAAEc,EAAIT,EAAKS,MAGf,CACI,IAAI2vB,EAAI6E,EAAQ90B,KAAKk8B,MAAM18B,EAAEc,EAAIA,EAAGd,EAAEa,EAAIA,GAC1Cb,EAAEa,EAAIA,EAAIq0B,EAAW10B,KAAKI,IAAI6vB,GAC9BzwB,EAAEc,EAAIA,EAAIo0B,EAAW10B,KAAKG,IAAI8vB,GAGlC,OAAOzwB,GAWX1B,EAAOX,MAAMqgC,SAAW,SAAUC,EAAQtJ,GAItC,QAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAEK,mBAA3CyG,OAAOhF,UAAUopB,SAASlnB,KAAK28B,GAE/B,MAAM,IAAI93B,MAAM,qDAGpB,IAAI+3B,EAAeD,EAAOx+B,OAE1B,GAAIy+B,EAAe,EAEf,MAAM,IAAI/3B,MAAM,4DAGpB,GAAqB,IAAjB+3B,EAGA,OADAvJ,EAAII,SAASkJ,EAAO,IACbtJ,EAGX,IAAK,IAAIn1B,EAAI,EAAGA,EAAI0+B,EAAc1+B,IAE9BlB,EAAOX,MAAMi7B,IAAIjE,EAAKsJ,EAAOz+B,GAAIm1B,GAKrC,OAFAA,EAAIuH,OAAOgC,EAAcA,GAElBvJ,GAcXr2B,EAAOX,MAAMwgC,MAAQ,SAAUxM,EAAKyM,EAAOC,GAEvCD,EAAQA,GAAS,IACjBC,EAAQA,GAAS,IAEjB,IAAIvI,EAAQ,IAAIx3B,EAAOX,MAYvB,OAVIg0B,EAAIyM,KAEJtI,EAAMj1B,EAAIy9B,WAAW3M,EAAIyM,KAGzBzM,EAAI0M,KAEJvI,EAAMh1B,EAAIw9B,WAAW3M,EAAI0M,KAGtBvI,GAWXx3B,EAAOX,MAAM8xB,MAAQ,SAAUkC,GAK3B,OAHAA,EAAI9wB,EAAIvC,EAAOkC,KAAKivB,MAAMkC,EAAI9wB,GAC9B8wB,EAAI7wB,EAAIxC,EAAOkC,KAAKivB,MAAMkC,EAAI7wB,GAEvB6wB,GAWXrzB,EAAOX,MAAM4gC,QAAU,SAAU5M,GAE7B,OAAe,MAAPA,GAAkC,iBAAVA,EAAI9wB,GAAqC,iBAAV8wB,EAAI7wB,GAavExC,EAAOX,MAAM4G,IAAM,SAAUotB,EAAK9wB,EAAGC,GAKjC,OAHA6wB,EAAI9wB,EAAIA,GAAK,EACb8wB,EAAI7wB,EAAIA,IAAa,IAANA,EAAW6wB,EAAI9wB,EAAI,GAE3B8wB,GAiBXrzB,EAAOX,MAAM6gC,cAAgB,SAAUP,EAAQQ,GAItCA,IAEDA,EAASlhC,KAAKygC,SAASC,IAG3B,IAAIzxB,EAAKiyB,EAAO59B,EACZ4L,EAAKgyB,EAAO39B,EA+ChB,OAAOm9B,EAAOS,KA7CH,SAAU1+B,EAAGC,GAEpB,GAAgB,GAAZD,EAAEa,EAAI2L,GAAWvM,EAAEY,EAAI2L,EAAK,EAE5B,OAAQ,EAGZ,GAAIxM,EAAEa,EAAI2L,EAAK,GAAiB,GAAZvM,EAAEY,EAAI2L,EAEtB,OAAO,EAGX,GAAIxM,EAAEa,EAAI2L,GAAO,GAAKvM,EAAEY,EAAI2L,GAAO,EAE/B,OAAgB,GAAZxM,EAAEc,EAAI2L,GAAuB,GAAZxM,EAAEa,EAAI2L,EAEfzM,EAAEc,EAAIb,EAAEa,EAAK,GAAK,EAGtBb,EAAEa,EAAId,EAAEc,EAAK,GAAK,EAI9B,IAAI69B,GAAO3+B,EAAEa,EAAI2L,KAAQvM,EAAEa,EAAI2L,IAAOxM,EAAEY,EAAI2L,KAAQxM,EAAEc,EAAI2L,GAE1D,GAAIkyB,EAAM,EAEN,OAAQ,EAGZ,GAAU,EAANA,EAEA,OAAO,EAOX,IAAIhD,GAAM37B,EAAEa,EAAI2L,IAAOxM,EAAEa,EAAI2L,IAAOxM,EAAEc,EAAI2L,IAAOzM,EAAEc,EAAI2L,GAGvD,OAFUxM,EAAEY,EAAI2L,IAAOvM,EAAEY,EAAI2L,IAAOvM,EAAEa,EAAI2L,IAAOxM,EAAEa,EAAI2L,GAE/CkvB,GAAY,EAAI,KAOhCn+B,KAAKG,MAAQW,EAAOX,MAyBpBW,EAAOsgC,QAAU,WAKbrhC,KAAKshC,KAAO,EAMZthC,KAAKuhC,QAAU,GAEQ,EAAnB/O,UAAUtwB,QAEVlC,KAAKu3B,MAAMtyB,MAAMjF,KAAMwyB,WAM3BxyB,KAAKwhC,QAAS,EAKdxhC,KAAKyhC,WAAY,EAKjBzhC,KAAK+T,KAAOhT,EAAOquB,SAGvBruB,EAAOsgC,QAAQx/B,UAAY,CASvB6/B,cAAe,SAAU7J,QAENzxB,IAAXyxB,IAAwBA,EAAS,IAErC,IAAK,IAAI51B,EAAI,EAAGA,EAAIjC,KAAKuhC,QAAQr/B,OAAQD,IAEN,iBAApBjC,KAAKuhC,QAAQt/B,IAEpB41B,EAAOlwB,KAAK3H,KAAKuhC,QAAQt/B,IACzB41B,EAAOlwB,KAAK3H,KAAKuhC,QAAQt/B,EAAI,IAC7BA,MAIA41B,EAAOlwB,KAAK3H,KAAKuhC,QAAQt/B,GAAGqB,GAC5Bu0B,EAAOlwB,KAAK3H,KAAKuhC,QAAQt/B,GAAGsB,IAIpC,OAAOs0B,GAWX8J,QAAS,WAML,OAJA3hC,KAAKuhC,QAAUvhC,KAAK0hC,gBAEpB1hC,KAAKyhC,WAAY,EAEVzhC,MAWXq2B,MAAO,SAAUwB,GAEb,IAAI6I,EAAS1gC,KAAKuhC,QAAQ1T,QAW1B,OATIgK,MAAAA,EAEAA,EAAS,IAAI92B,EAAOsgC,QAAQX,GAI5B7I,EAAON,MAAMmJ,GAGV7I,GAWX1tB,SAAU,SAAU7G,EAAGC,GAInB,IAAIq+B,GAAS,EAEb,GAAI5hC,KAAKyhC,UAEL,IAAK,IAAIx/B,GAAK,EAAGyF,EAAI1H,KAAKuhC,QAAQr/B,OAAS,GAAID,GAAK,GAAKjC,KAAKuhC,QAAQr/B,OAAQwF,EAAIzF,EAClF,CACI,IAAI4/B,EAAK7hC,KAAKuhC,QAAQt/B,GAClB6/B,EAAK9hC,KAAKuhC,QAAQt/B,EAAI,GAEtB8/B,EAAK/hC,KAAKuhC,QAAQ75B,GAClBs6B,EAAKhiC,KAAKuhC,QAAQ75B,EAAI,IAEpBo6B,GAAMv+B,GAAKA,EAAIy+B,GAAQA,GAAMz+B,GAAKA,EAAIu+B,IAASx+B,GAAKy+B,EAAKF,IAAOt+B,EAAIu+B,IAAOE,EAAKF,GAAMD,IAExFD,GAAUA,QAMlB,IAAS3/B,GAAK,EAAGyF,EAAI1H,KAAKuhC,QAAQr/B,OAAS,IAAKD,EAAIjC,KAAKuhC,QAAQr/B,OAAQwF,EAAIzF,EAC7E,CACQ4/B,EAAK7hC,KAAKuhC,QAAQt/B,GAAGqB,EACrBw+B,EAAK9hC,KAAKuhC,QAAQt/B,GAAGsB,EAErBw+B,EAAK/hC,KAAKuhC,QAAQ75B,GAAGpE,EACrB0+B,EAAKhiC,KAAKuhC,QAAQ75B,GAAGnE,GAEnBu+B,GAAMv+B,GAAKA,EAAIy+B,GAAQA,GAAMz+B,GAAKA,EAAIu+B,IAASx+B,GAAKy+B,EAAKF,IAAOt+B,EAAIu+B,IAAOE,EAAKF,GAAMD,IAExFD,GAAUA,GAKtB,OAAOA,GAsBXrK,MAAO,SAAUmJ,GAKb,GAHA1gC,KAAKshC,KAAO,EACZthC,KAAKuhC,QAAU,GAEQ,EAAnB/O,UAAUtwB,OACd,CAESoF,MAAMC,QAAQm5B,KAEfA,EAASp5B,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,YAMxC,IAHA,IAAInN,EAAK4c,OAAOC,UAGPjgC,EAAI,EAAGkxB,EAAMuN,EAAOx+B,OAAQD,EAAIkxB,EAAKlxB,IAC9C,CACI,GAAyB,iBAAdy+B,EAAOz+B,GAClB,CACI,IAAIM,EAAI,IAAItC,KAAKG,MAAMsgC,EAAOz+B,GAAIy+B,EAAOz+B,EAAI,IAC7CA,SAEC,GAAIqF,MAAMC,QAAQm5B,EAAOz+B,IAEtBM,EAAI,IAAItC,KAAKG,MAAMsgC,EAAOz+B,GAAG,GAAIy+B,EAAOz+B,GAAG,SAI3CM,EAAI,IAAItC,KAAKG,MAAMsgC,EAAOz+B,GAAGqB,EAAGo9B,EAAOz+B,GAAGsB,GAGlDvD,KAAKuhC,QAAQ55B,KAAKpF,GAGdA,EAAEgB,EAAI8hB,IAENA,EAAK9iB,EAAEgB,GAIfvD,KAAKmiC,cAAc9c,GAGvB,OAAOrlB,MAWXmiC,cAAe,SAAU9c,GAOrB,IALA,IAAIuU,EACAwI,EACAC,EACA39B,EAEKzC,EAAI,EAAGkxB,EAAMnzB,KAAKuhC,QAAQr/B,OAAQD,EAAIkxB,EAAKlxB,IAEhD23B,EAAK55B,KAAKuhC,QAAQt/B,GAIdmgC,EAFAngC,IAAMkxB,EAAM,EAEPnzB,KAAKuhC,QAAQ,GAIbvhC,KAAKuhC,QAAQt/B,EAAI,GAG1BogC,GAAczI,EAAGr2B,EAAI8hB,GAAO+c,EAAG7+B,EAAI8hB,IAAO,EAC1C3gB,EAAQk1B,EAAGt2B,EAAI8+B,EAAG9+B,EAClBtD,KAAKshC,MAAQe,EAAY39B,EAG7B,OAAO1E,KAAKshC,OAKpBvgC,EAAOsgC,QAAQx/B,UAAUC,YAAcf,EAAOsgC,QAW9Cx6B,OAAOyF,eAAevL,EAAOsgC,QAAQx/B,UAAW,SAAU,CAEtDkF,IAAK,WAED,OAAO/G,KAAKuhC,WAMpBthC,KAAKohC,QAAUtgC,EAAOsgC,QAmBtBtgC,EAAOS,UAAY,SAAU8B,EAAGC,EAAGmB,EAAOC,GAEtCrB,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACTmB,EAAQA,GAAS,EACjBC,EAASA,GAAU,EAKnB3E,KAAKsD,EAAIA,EAKTtD,KAAKuD,EAAIA,EAKTvD,KAAK0E,MAAQA,EAKb1E,KAAK2E,OAASA,EAMd3E,KAAK+T,KAAOhT,EAAO+uB,WAGvB/uB,EAAOS,UAAUK,UAAY,CASzB0W,OAAQ,SAAUrK,EAAIE,GAKlB,OAHApO,KAAKsD,GAAK4K,EACVlO,KAAKuD,GAAK6K,EAEHpO,MASXs4B,YAAa,SAAUC,GAEnB,OAAOv4B,KAAKuY,OAAOggB,EAAMj1B,EAAGi1B,EAAMh1B,IAYtCg0B,MAAO,SAAUj0B,EAAGC,EAAGmB,EAAOC,GAO1B,OALA3E,KAAKsD,EAAIA,EACTtD,KAAKuD,EAAIA,EACTvD,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEP3E,MAWXK,MAAO,SAAUiD,EAAGC,GAOhB,YALU6C,IAAN7C,IAAmBA,EAAID,GAE3BtD,KAAK0E,OAASpB,EACdtD,KAAK2E,QAAUpB,EAERvD,MAWXo7B,SAAU,SAAU93B,EAAGC,GAKnB,OAHAvD,KAAKi6B,QAAU32B,EACftD,KAAKk6B,QAAU32B,EAERvD,MAOXmyB,MAAO,WAEHnyB,KAAKsD,EAAIL,KAAKkvB,MAAMnyB,KAAKsD,GACzBtD,KAAKuD,EAAIN,KAAKkvB,MAAMnyB,KAAKuD,IAO7B++B,SAAU,WAENtiC,KAAKsD,EAAIL,KAAKkvB,MAAMnyB,KAAKsD,GACzBtD,KAAKuD,EAAIN,KAAKkvB,MAAMnyB,KAAKuD,GACzBvD,KAAK0E,MAAQzB,KAAKkvB,MAAMnyB,KAAK0E,OAC7B1E,KAAK2E,OAAS1B,KAAKkvB,MAAMnyB,KAAK2E,SAOlCkB,KAAM,WAEF7F,KAAKsD,EAAIL,KAAK4C,KAAK7F,KAAKsD,GACxBtD,KAAKuD,EAAIN,KAAK4C,KAAK7F,KAAKuD,IAO5Bg/B,QAAS,WAELviC,KAAKsD,EAAIL,KAAK4C,KAAK7F,KAAKsD,GACxBtD,KAAKuD,EAAIN,KAAK4C,KAAK7F,KAAKuD,GACxBvD,KAAK0E,MAAQzB,KAAK4C,KAAK7F,KAAK0E,OAC5B1E,KAAK2E,OAAS1B,KAAK4C,KAAK7F,KAAK2E,SASjC6yB,SAAU,SAAUroB,GAEhB,OAAOnP,KAAKu3B,MAAMpoB,EAAO7L,EAAG6L,EAAO5L,EAAG4L,EAAOzK,MAAOyK,EAAOxK,SAS/D69B,eAAgB,SAAUrzB,GAEtB,OAAOnP,KAAKu3B,MAAMpoB,EAAOqpB,KAAMrpB,EAAOspB,IAAKtpB,EAAOzK,MAAOyK,EAAOxK,SASpE8yB,OAAQ,SAAUC,GAOd,OALAA,EAAKp0B,EAAItD,KAAKsD,EACdo0B,EAAKn0B,EAAIvD,KAAKuD,EACdm0B,EAAKhzB,MAAQ1E,KAAK0E,MAClBgzB,EAAK/yB,OAAS3E,KAAK2E,OAEZ+yB,GAUX+K,QAAS,SAAUv0B,EAAIE,GAEnB,OAAOrN,EAAOS,UAAUihC,QAAQziC,KAAMkO,EAAIE,IAS9C4U,KAAM,SAAU6U,GAEZ,OAAO92B,EAAOS,UAAUwhB,KAAKhjB,KAAM63B,IAYvC9xB,OAAQ,SAAUrB,EAAOC,GAKrB,OAHA3E,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEP3E,MASXq2B,MAAO,SAAUwB,GAEb,OAAO92B,EAAOS,UAAU60B,MAAMr2B,KAAM63B,IAUxC1tB,SAAU,SAAU7G,EAAGC,GAEnB,OAAOxC,EAAOS,UAAU2I,SAASnK,KAAMsD,EAAGC,IAU9Cm/B,aAAc,SAAUhgC,GAEpB,OAAO3B,EAAOS,UAAUkhC,aAAahgC,EAAG1C,OAU5C24B,OAAQ,SAAUj2B,GAEd,OAAO3B,EAAOS,UAAUm3B,OAAO34B,KAAM0C,IAUzCigC,aAAc,SAAUjgC,EAAG00B,GAEvB,OAAOr2B,EAAOS,UAAUmhC,aAAa3iC,KAAM0C,EAAG00B,IAWlDwB,WAAY,SAAUl2B,GAElB,OAAO3B,EAAOS,UAAUo3B,WAAW54B,KAAM0C,IAc7CkgC,cAAe,SAAUpK,EAAM1C,EAAO2C,EAAKC,EAAQmK,GAE/C,OAAO9hC,EAAOS,UAAUohC,cAAc5iC,KAAMw4B,EAAM1C,EAAO2C,EAAKC,EAAQmK,IAU1EC,MAAO,SAAUpgC,EAAG00B,GAEhB,OAAOr2B,EAAOS,UAAUshC,MAAM9iC,KAAM0C,EAAG00B,IAW3CpC,OAAQ,SAAUoC,GAOd,YALYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAE1Cg3B,EAAI9zB,EAAItD,KAAK+iC,QACb3L,EAAI7zB,EAAIvD,KAAKgjC,QAEN5L,GAmBX6L,SAAU,SAAU9iC,EAAUi3B,GAI1B,YAFYhxB,IAARgxB,IAAqBA,EAAM,IAAIr2B,EAAOX,OAElCD,GAEJ,QACA,KAAKY,EAAOmwB,SACR,OAAOkG,EAAIpwB,IAAIhH,KAAKsD,EAAGtD,KAAKuD,GAEhC,KAAKxC,EAAOowB,WACR,OAAOiG,EAAIpwB,IAAIhH,KAAKi6B,QAASj6B,KAAKuD,GAEtC,KAAKxC,EAAOqwB,UACR,OAAOgG,EAAIpwB,IAAIhH,KAAK81B,MAAO91B,KAAKuD,GAEpC,KAAKxC,EAAOuwB,YACR,OAAO8F,EAAIpwB,IAAIhH,KAAKsD,EAAGtD,KAAKk6B,SAEhC,KAAKn5B,EAAOywB,OACR,OAAO4F,EAAIpwB,IAAIhH,KAAKi6B,QAASj6B,KAAKk6B,SAEtC,KAAKn5B,EAAO2wB,aACR,OAAO0F,EAAIpwB,IAAIhH,KAAK81B,MAAO91B,KAAKk6B,SAEpC,KAAKn5B,EAAO6wB,YACR,OAAOwF,EAAIpwB,IAAIhH,KAAKsD,EAAGtD,KAAK04B,QAEhC,KAAK33B,EAAO8wB,cACR,OAAOuF,EAAIpwB,IAAIhH,KAAKi6B,QAASj6B,KAAK04B,QAEtC,KAAK33B,EAAO+wB,aACR,OAAOsF,EAAIpwB,IAAIhH,KAAK81B,MAAO91B,KAAK04B,UAc5CwK,MAAO,SAAUzK,EAAK3C,EAAO4C,EAAQF,GAE5BhG,UAAUtwB,SAEXu2B,EAAM,IAAI13B,EAAOs5B,KACjBvE,EAAQ,IAAI/0B,EAAOs5B,KACnB3B,EAAS,IAAI33B,EAAOs5B,KACpB7B,EAAO,IAAIz3B,EAAOs5B,MAGtB,IAAIlvB,EAAKnL,KAAKsD,EACV8H,EAAKpL,KAAKuD,EACV8H,EAAKrL,KAAK81B,MACVxqB,EAAKtL,KAAK04B,OAOd,OALAD,EAAIlB,MAAMpsB,EAAIC,EAAIC,EAAID,GACtB0qB,EAAMyB,MAAMlsB,EAAID,EAAIC,EAAIC,GACxBotB,EAAOnB,MAAMpsB,EAAIG,EAAID,EAAIC,GACzBktB,EAAKjB,MAAMpsB,EAAIC,EAAID,EAAIG,GAElBknB,UAAUtwB,OAKR,KAHI,CAAEu2B,EAAK3C,EAAO4C,EAAQF,IAWrCvN,SAAU,WAEN,MAAO,kBAAoBjrB,KAAKsD,EAAI,MAAQtD,KAAKuD,EAAI,UAAYvD,KAAK0E,MAAQ,WAAa1E,KAAK2E,OAAS,UAAY3E,KAAKi9B,MAAQ,QAU1Ip2B,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,YAAa,CAE3DkF,IAAK,WAED,OAAO9D,KAAK20B,MAAM53B,KAAK0E,MAAQ,MAUvCmC,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,aAAc,CAE5DkF,IAAK,WAED,OAAO9D,KAAK20B,MAAM53B,KAAK2E,OAAS,MAUxCkC,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,SAAU,CAExDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAIvD,KAAK2E,QAGzBqC,IAAK,SAAUC,GAEPA,GAASjH,KAAKuD,EAEdvD,KAAK2E,OAAS,EAId3E,KAAK2E,OAASsC,EAAQjH,KAAKuD,KAWvCsD,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,aAAc,CAE5DkF,IAAK,WAED,OAAO,IAAIhG,EAAOX,MAAMJ,KAAKsD,EAAGtD,KAAK04B,SAGzC1xB,IAAK,SAAUC,GAEXjH,KAAKsD,EAAI2D,EAAM3D,EACftD,KAAK04B,OAASzxB,EAAM1D,KAU5BsD,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,cAAe,CAE7DkF,IAAK,WAED,OAAO,IAAIhG,EAAOX,MAAMJ,KAAK81B,MAAO91B,KAAK04B,SAG7C1xB,IAAK,SAAUC,GAEXjH,KAAK81B,MAAQ7uB,EAAM3D,EACnBtD,KAAK04B,OAASzxB,EAAM1D,KAU5BsD,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,OAAQ,CAEtDkF,IAAK,WAED,OAAO/G,KAAKsD,GAGhB0D,IAAK,SAAUC,GAEPA,GAASjH,KAAK81B,MAEd91B,KAAK0E,MAAQ,EAIb1E,KAAK0E,MAAQ1E,KAAK81B,MAAQ7uB,EAE9BjH,KAAKsD,EAAI2D,KAUjBJ,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,QAAS,CAEvDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAItD,KAAK0E,OAGzBsC,IAAK,SAAUC,GAEPA,GAASjH,KAAKsD,EAEdtD,KAAK0E,MAAQ,EAIb1E,KAAK0E,MAAQuC,EAAQjH,KAAKsD,KAYtCuD,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,SAAU,CAExDkF,IAAK,WAED,OAAO/G,KAAK0E,MAAQ1E,KAAK2E,UAWjCkC,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,YAAa,CAE3DkF,IAAK,WAED,OAAqB,EAAb/G,KAAK0E,MAA4B,EAAd1E,KAAK2E,UAUxCkC,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,UAAW,CAEzDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAItD,KAAKg5B,WAGzBhyB,IAAK,SAAUC,GAEXjH,KAAKsD,EAAI2D,EAAQjH,KAAKg5B,aAU9BnyB,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,UAAW,CAEzDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAIvD,KAAKi5B,YAGzBjyB,IAAK,SAAUC,GAEXjH,KAAKuD,EAAI0D,EAAQjH,KAAKi5B,cAW9BpyB,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,UAAW,CAEzDkF,IAAK,WAED,OAAO/G,KAAKsD,EAAKL,KAAK+xB,SAAWh1B,KAAK0E,SAW9CmC,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,UAAW,CAEzDkF,IAAK,WAED,OAAO/G,KAAKuD,EAAKN,KAAK+xB,SAAWh1B,KAAK2E,UAW9CkC,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,MAAO,CAErDkF,IAAK,WAED,OAAO/G,KAAKuD,GAGhByD,IAAK,SAAUC,GAEPA,GAASjH,KAAK04B,QAEd14B,KAAK2E,OAAS,EACd3E,KAAKuD,EAAI0D,GAITjH,KAAK2E,OAAU3E,KAAK04B,OAASzxB,KAWzCJ,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,UAAW,CAEzDkF,IAAK,WAED,OAAO,IAAIhG,EAAOX,MAAMJ,KAAKsD,EAAGtD,KAAKuD,IAGzCyD,IAAK,SAAUC,GAEXjH,KAAKsD,EAAI2D,EAAM3D,EACftD,KAAKuD,EAAI0D,EAAM1D,KAUvBsD,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,WAAY,CAE1DkF,IAAK,WAED,OAAO,IAAIhG,EAAOX,MAAMJ,KAAKsD,EAAItD,KAAK0E,MAAO1E,KAAKuD,IAGtDyD,IAAK,SAAUC,GAEXjH,KAAK81B,MAAQ7uB,EAAM3D,EACnBtD,KAAKuD,EAAI0D,EAAM1D,KAWvBsD,OAAOyF,eAAevL,EAAOS,UAAUK,UAAW,QAAS,CAEvDkF,IAAK,WAED,OAAS/G,KAAK0E,QAAU1E,KAAK2E,QAGjCqC,IAAK,SAAUC,IAEG,IAAVA,GAEAjH,KAAKu3B,MAAM,EAAG,EAAG,EAAG,MAMhCx2B,EAAOS,UAAUK,UAAUC,YAAcf,EAAOS,UAUhDT,EAAOS,UAAUihC,QAAU,SAAUhgC,EAAGyL,EAAIE,GAOxC,OALA3L,EAAEa,GAAK4K,EACPzL,EAAEiC,OAAS,EAAIwJ,EACfzL,EAAEc,GAAK6K,EACP3L,EAAEkC,QAAU,EAAIyJ,EAET3L,GAUX1B,EAAOS,UAAU2hC,aAAe,SAAU1gC,EAAG81B,GAEzC,OAAOx3B,EAAOS,UAAUihC,QAAQhgC,EAAG81B,EAAMj1B,EAAGi1B,EAAMh1B,IAUtDxC,EAAOS,UAAUwhB,KAAO,SAAUvgB,EAAGo1B,GAWjC,OATIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAOX,MAAMqC,EAAEiC,MAAOjC,EAAEkC,QAIrCkzB,EAAON,MAAM90B,EAAEiC,MAAOjC,EAAEkC,QAGrBkzB,GAUX92B,EAAOS,UAAU60B,MAAQ,SAAU5zB,EAAGo1B,GAWlC,OATIA,MAAAA,EAEAA,EAAS,IAAI92B,EAAOS,UAAUiB,EAAEa,EAAGb,EAAEc,EAAGd,EAAEiC,MAAOjC,EAAEkC,QAInDkzB,EAAON,MAAM90B,EAAEa,EAAGb,EAAEc,EAAGd,EAAEiC,MAAOjC,EAAEkC,QAG/BkzB,GAUX92B,EAAOS,UAAU4hC,iBAAmB,SAAU3gC,EAAGo1B,GAO7C,OALIA,MAAAA,IAEAA,EAAS,IAAI92B,EAAOS,UAAUiB,EAAEa,EAAGb,EAAEc,EAAGd,EAAEiC,MAAOjC,EAAEkC,SAGhDkzB,EAAO2K,eAAe//B,IAWjC1B,EAAOS,UAAU2I,SAAW,SAAU1H,EAAGa,EAAGC,GAExC,QAAId,EAAEiC,OAAS,GAAKjC,EAAEkC,QAAU,KAKxBrB,GAAKb,EAAEa,GAAKA,EAAIb,EAAEqzB,OAASvyB,GAAKd,EAAEc,GAAKA,EAAId,EAAEi2B,SAczD33B,EAAOS,UAAU6hC,YAAc,SAAUC,EAAIC,EAAIC,EAAIC,EAAIngC,EAAGC,GAExD,OAAa+/B,GAALhgC,GAAWA,EAAKggC,EAAKE,GAAYD,GAALhgC,GAAWA,EAAKggC,EAAKE,GAU7D1iC,EAAOS,UAAUkiC,cAAgB,SAAUjhC,EAAG81B,GAE1C,OAAOx3B,EAAOS,UAAU2I,SAAS1H,EAAG81B,EAAMj1B,EAAGi1B,EAAMh1B,IAWvDxC,EAAOS,UAAUkhC,aAAe,SAAUjgC,EAAGC,GAGzC,QAAID,EAAEkhC,OAASjhC,EAAEihC,UAKTlhC,EAAEa,GAAKZ,EAAEY,GAAKb,EAAEc,GAAKb,EAAEa,GAAKd,EAAEqzB,MAAQpzB,EAAEozB,OAASrzB,EAAEi2B,OAASh2B,EAAEg2B,SAW1E33B,EAAOS,UAAUm3B,OAAS,SAAUl2B,EAAGC,GAEnC,OAAQD,EAAEa,IAAMZ,EAAEY,GAAKb,EAAEc,IAAMb,EAAEa,GAAKd,EAAEiC,QAAUhC,EAAEgC,OAASjC,EAAEkC,SAAWjC,EAAEiC,QAUhF5D,EAAOS,UAAUoiC,eAAiB,SAAUnhC,EAAGC,GAE3C,OAAQD,EAAEiC,QAAUhC,EAAEgC,OAASjC,EAAEkC,SAAWjC,EAAEiC,QAWlD5D,EAAOS,UAAUmhC,aAAe,SAAUlgC,EAAGC,EAAGm1B,GAe5C,YAbezxB,IAAXyxB,IAEAA,EAAS,IAAI92B,EAAOS,WAGpBT,EAAOS,UAAUo3B,WAAWn2B,EAAGC,KAE/Bm1B,EAAOv0B,EAAIL,KAAK2C,IAAInD,EAAEa,EAAGZ,EAAEY,GAC3Bu0B,EAAOt0B,EAAIN,KAAK2C,IAAInD,EAAEc,EAAGb,EAAEa,GAC3Bs0B,EAAOnzB,MAAQzB,KAAKy4B,IAAIj5B,EAAEqzB,MAAOpzB,EAAEozB,OAAS+B,EAAOv0B,EACnDu0B,EAAOlzB,OAAS1B,KAAKy4B,IAAIj5B,EAAEi2B,OAAQh2B,EAAEg2B,QAAUb,EAAOt0B,GAGnDs0B,GAWX92B,EAAOS,UAAUo3B,WAAa,SAAUn2B,EAAGC,GAEvC,QAAID,EAAEiC,OAAS,GAAKjC,EAAEkC,QAAU,GAAKjC,EAAEgC,OAAS,GAAKhC,EAAEiC,QAAU,MAKxDlC,EAAEqzB,MAAQpzB,EAAEY,GAAKb,EAAEi2B,OAASh2B,EAAEa,GAAKd,EAAEa,EAAIZ,EAAEozB,OAASrzB,EAAEc,EAAIb,EAAEg2B,SAazE33B,EAAOS,UAAUohC,cAAgB,SAAUngC,EAAG+1B,EAAM1C,EAAO2C,EAAKC,EAAQmK,GAIpE,YAFkBz8B,IAAdy8B,IAA2BA,EAAY,KAElCrK,EAAO/1B,EAAEqzB,MAAQ+M,GAAa/M,EAAQrzB,EAAE+1B,KAAOqK,GAAapK,EAAMh2B,EAAEi2B,OAASmK,GAAanK,EAASj2B,EAAEg2B,IAAMoK,IAWxH9hC,EAAOS,UAAUshC,MAAQ,SAAUrgC,EAAGC,EAAGm1B,GAOrC,YALezxB,IAAXyxB,IAEAA,EAAS,IAAI92B,EAAOS,WAGjBq2B,EAAON,MAAMt0B,KAAKy4B,IAAIj5B,EAAEa,EAAGZ,EAAEY,GAAIL,KAAKy4B,IAAIj5B,EAAEc,EAAGb,EAAEa,GAAIN,KAAK2C,IAAInD,EAAEqzB,MAAOpzB,EAAEozB,OAAS7yB,KAAKy4B,IAAIj5B,EAAE+1B,KAAM91B,EAAE81B,MAAOv1B,KAAK2C,IAAInD,EAAEi2B,OAAQh2B,EAAEg2B,QAAUz1B,KAAKy4B,IAAIj5B,EAAEg2B,IAAK/1B,EAAE+1B,OAWxK13B,EAAOS,UAAUqiC,KAAO,SAAUnD,EAAQtJ,QAE1BhxB,IAARgxB,IAEAA,EAAM,IAAIr2B,EAAOS,WAGrB,IAAIm6B,EAAOsG,OAAO6B,kBACdrI,EAAOwG,OAAO8B,kBACdlI,EAAOoG,OAAO6B,kBACdlI,EAAOqG,OAAO8B,kBAyBlB,OAvBArD,EAAO1N,QAAQ,SAAUuF,GAEjBA,EAAMj1B,EAAIq4B,IAEVA,EAAOpD,EAAMj1B,GAEbi1B,EAAMj1B,EAAIm4B,IAEVA,EAAOlD,EAAMj1B,GAGbi1B,EAAMh1B,EAAIs4B,IAEVA,EAAOtD,EAAMh1B,GAEbg1B,EAAMh1B,EAAIq4B,IAEVA,EAAOrD,EAAMh1B,KAIrB6zB,EAAIG,MAAMkE,EAAMG,EAAMD,EAAOF,EAAMI,EAAOD,GAEnCxE,GAIXn3B,KAAKuB,UAAYT,EAAOS,UAOxBT,EAAOijC,eAAiB,IAAIjjC,EAAOS,UAAU,EAAG,EAAG,EAAG,GAqBtDT,EAAOkjC,iBAAmB,SAAU3gC,EAAGC,EAAGmB,EAAOC,EAAQ2yB,QAE3ClxB,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACb6C,IAAV1B,IAAuBA,EAAQ,QACpB0B,IAAXzB,IAAwBA,EAAS,QACtByB,IAAXkxB,IAAwBA,EAAS,IAKrCt3B,KAAKsD,EAAIA,EAKTtD,KAAKuD,EAAIA,EAKTvD,KAAK0E,MAAQA,EAKb1E,KAAK2E,OAASA,EAKd3E,KAAKs3B,OAASA,GAAU,GAMxBt3B,KAAK+T,KAAOhT,EAAOmvB,kBAGvBnvB,EAAOkjC,iBAAiBpiC,UAAY,CAShCw0B,MAAO,WAEH,OAAO,IAAIt1B,EAAOkjC,iBAAiBjkC,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK0E,MAAO1E,KAAK2E,OAAQ3E,KAAKs3B,SAWrFntB,SAAU,SAAU7G,EAAGC,GAEnB,GAAIvD,KAAK0E,OAAS,GAAK1E,KAAK2E,QAAU,EAElC,OAAO,EAGX,IAAIwG,EAAKnL,KAAKsD,EAEd,GAAS6H,GAAL7H,GAAWA,GAAK6H,EAAKnL,KAAK0E,MAC9B,CACI,IAAI0G,EAAKpL,KAAKuD,EAEd,GAAS6H,GAAL7H,GAAWA,GAAK6H,EAAKpL,KAAK2E,OAE1B,OAAO,EAIf,OAAO,IAKf5D,EAAOkjC,iBAAiBpiC,UAAUC,YAAcf,EAAOkjC,iBAGvDhkC,KAAKgkC,iBAAmBljC,EAAOkjC,iBAqB/BljC,EAAOmjC,OAAS,SAAU5hC,EAAMmS,EAAInR,EAAGC,EAAGmB,EAAOC,GAK7C3E,KAAKsC,KAAOA,EAKZtC,KAAKwC,MAAQF,EAAKE,MAMlBxC,KAAKyU,GAAK,EASVzU,KAAK+X,KAAO,IAAIhX,EAAOS,UAAU8B,EAAGC,EAAGmB,EAAOC,GAS9C3E,KAAKsE,OAAS,IAAIvD,EAAOS,UAAU8B,EAAGC,EAAGmB,EAAOC,GAKhD3E,KAAKmkC,SAAW,KAMhBnkC,KAAKS,SAAU,EAMfT,KAAKokC,SAAU,EAKfpkC,KAAKqkC,QAAU,CAAE/gC,GAAG,EAAOC,GAAG,GAM9BvD,KAAK6H,OAAS,KAKd7H,KAAKkc,cAAgB,KAKrBlc,KAAKK,MAAQ,KAMbL,KAAKskC,YAAc,EAWnBtkC,KAAKukC,KAAO,IAAIxjC,EAAOX,MAAM,EAAG,GAKhCJ,KAAKwkC,gBAAkB,IAAIzjC,EAAO0jC,OAKlCzkC,KAAK0kC,gBAAkB,IAAI3jC,EAAO0jC,OAUlCzkC,KAAK2kC,eAAiB,IAAI5jC,EAAO0jC,OAOjCzkC,KAAK4kC,GAAK,KAMV5kC,KAAK6kC,gBAAkB,IAAI9jC,EAAOX,MAOlCJ,KAAK8kC,MAAQ,EAOb9kC,KAAK+kC,UAAY,IAAIhkC,EAAOX,MAM5BJ,KAAK+b,OAAS,CACVipB,UAAW,EACXC,SAAU,EACVC,YAAY,EACZC,UAAU,EACVC,aAAa,EACb9hC,EAAG,EACHC,EAAG,GAOPvD,KAAKqlC,YAAc,EAMnBrlC,KAAKslC,QAAU,EAMftlC,KAAKulC,WAAa,IAAIxkC,EAAOS,WASjCT,EAAOmjC,OAAOsB,cAAgB,EAQ9BzkC,EAAOmjC,OAAOuB,kBAAoB,EAQlC1kC,EAAOmjC,OAAOwB,eAAiB,EAQ/B3kC,EAAOmjC,OAAOyB,qBAAuB,EAMrC5kC,EAAOmjC,OAAO0B,WAAa,EAM3B7kC,EAAOmjC,OAAO2B,iBAAmB,EAMjC9kC,EAAOmjC,OAAO4B,eAAiB,EAM/B/kC,EAAOmjC,OAAO6B,WAAY,EAM1BhlC,EAAOmjC,OAAO8B,MAAQ,EAMtBjlC,EAAOmjC,OAAO+B,SAAW,EAMzBllC,EAAOmjC,OAAOgC,QAAU,EAExBnlC,EAAOmjC,OAAOriC,UAAY,CAQtBskC,KAAM,WAEFnmC,KAAKkc,cAAgBlc,KAAKsC,KAAKE,MAE/BxC,KAAKK,MAAQL,KAAKsC,KAAKE,MAAMnC,MAE7BL,KAAKsC,KAAKwZ,OAAS9b,KAEfe,EAAOqlC,UAAYrlC,EAAOmjC,OAAO6B,YAEjC/lC,KAAK4kC,GAAK,IAAI7jC,EAAOqlC,SAASpmC,KAAKsC,MAEnCtC,KAAKsC,KAAK8Y,MAAM9S,SAAStI,KAAK4kC,MAStC3gC,UAAW,WAEPjE,KAAKskC,YAAc,GAkBvB+B,OAAQ,SAAUx+B,EAAQ0U,EAAO+pB,EAAOC,GASpC,IAAIC,EAEJ,YATcpgC,IAAVmW,IAAuBA,EAAQxb,EAAOmjC,OAAOsB,oBACnCp/B,IAAVkgC,IAAuBA,EAAQ,QACrBlgC,IAAVmgC,IAAuBA,EAAQ,GAEnCvmC,KAAK6H,OAASA,EACd7H,KAAKukC,KAAKv9B,IAAIs/B,EAAOC,GAIbhqB,GAEJ,KAAKxb,EAAOmjC,OAAOuB,kBACf,IAAItvB,EAAInW,KAAK0E,MAAQ,EACjB+gB,EAAIzlB,KAAK2E,OAAS,EACtB3E,KAAKmkC,SAAW,IAAIpjC,EAAOS,WAAWxB,KAAK0E,MAAQyR,GAAK,GAAInW,KAAK2E,OAAS8gB,GAAK,EAAQ,IAAJA,EAAUtP,EAAGsP,GAChG,MAEJ,KAAK1kB,EAAOmjC,OAAOwB,eACfc,EAASvjC,KAAK2C,IAAI5F,KAAK0E,MAAO1E,KAAK2E,QAAU,EAC7C3E,KAAKmkC,SAAW,IAAIpjC,EAAOS,WAAWxB,KAAK0E,MAAQ8hC,GAAU,GAAIxmC,KAAK2E,OAAS6hC,GAAU,EAAGA,EAAQA,GACpG,MAEJ,KAAKzlC,EAAOmjC,OAAOyB,qBACfa,EAASvjC,KAAK2C,IAAI5F,KAAK0E,MAAO1E,KAAK2E,QAAU,EAC7C3E,KAAKmkC,SAAW,IAAIpjC,EAAOS,WAAWxB,KAAK0E,MAAQ8hC,GAAU,GAAIxmC,KAAK2E,OAAS6hC,GAAU,EAAGA,EAAQA,GACpG,MAEJ,KAAKzlC,EAAOmjC,OAAOsB,cAInB,QACIxlC,KAAKmkC,SAAW,OAU5BsC,SAAU,WAENzmC,KAAK6H,OAAS,MAQlB6+B,QAAS,SAAUxqB,GAEflc,KAAK2mC,YAAY1jC,KAAK20B,MAAM1b,EAAc5Y,EAAItD,KAAK+X,KAAKihB,WAAY/1B,KAAK20B,MAAM1b,EAAc3Y,EAAIvD,KAAK+X,KAAKkhB,cAS/G2N,UAAW,SAAUtjC,EAAGC,GAEpBvD,KAAK2mC,YAAY1jC,KAAK20B,MAAMt0B,EAAItD,KAAK+X,KAAKihB,WAAY/1B,KAAK20B,MAAMr0B,EAAIvD,KAAK+X,KAAKkhB,cAkBnF4N,MAAO,SAAU7B,EAAWC,EAAU6B,EAAOC,EAAW3B,GAQpD,YANkBh/B,IAAd4+B,IAA2BA,EAAY,UAC1B5+B,IAAb6+B,IAA0BA,EAAW,UAC3B7+B,IAAV0gC,IAAuBA,GAAQ,QACjB1gC,IAAd2gC,IAA2BA,EAAYhmC,EAAOmjC,OAAO0B,iBACrCx/B,IAAhBg/B,IAA6BA,GAAc,MAE1C0B,GAAgC,EAAvB9mC,KAAK+b,OAAOkpB,YAM1BjlC,KAAK+b,OAAOipB,UAAYA,EACxBhlC,KAAK+b,OAAOkpB,SAAWA,EACvBjlC,KAAK+b,OAAOqpB,YAAcA,EAE1BplC,KAAK+b,OAAOzY,EAAI,EAChBtD,KAAK+b,OAAOxY,EAAI,EAEhBvD,KAAK+b,OAAOmpB,WAAc6B,IAAchmC,EAAOmjC,OAAO0B,YAAcmB,IAAchmC,EAAOmjC,OAAO2B,iBAChG7lC,KAAK+b,OAAOopB,SAAY4B,IAAchmC,EAAOmjC,OAAO0B,YAAcmB,IAAchmC,EAAOmjC,OAAO4B,gBAEvF,IAkBXkB,MAAO,SAAU7vB,EAAO8tB,EAAU6B,EAAOtmC,GAOrC,YALc4F,IAAV+Q,IAAuBA,EAAQ,eAClB/Q,IAAb6+B,IAA0BA,EAAW,UAC3B7+B,IAAV0gC,IAAuBA,GAAQ,QACrB1gC,IAAV5F,IAAuBA,EAAQ,MAE9BR,KAAK4kC,KAAQkC,GAA4B,EAAnB9mC,KAAKqlC,eAKhCrlC,KAAK4kC,GAAGhpB,QAER5b,KAAK4kC,GAAGqC,UAAU9vB,EAAO3W,GACzBR,KAAK4kC,GAAGsC,SAAS,EAAG,EAAGlnC,KAAK0E,MAAO1E,KAAK2E,QACxC3E,KAAK4kC,GAAGuC,UAERnnC,KAAK4kC,GAAGpkC,MAAQ,EAEhBR,KAAKqlC,YAAcJ,IACnBjlC,KAAKslC,QAAU,KAyBnB8B,KAAM,SAAUjwB,EAAO8tB,EAAU6B,EAAOtmC,GAEpC,OAAOR,KAAKqnC,WAAWlwB,EAAO8tB,EAAU6B,EAAOtmC,EAAOO,EAAOmjC,OAAO+B,WAgBxEqB,OAAQ,SAAUnwB,EAAO8tB,EAAU6B,EAAOtmC,GAEtC,OAAOR,KAAKqnC,WAAWlwB,EAAO8tB,EAAU6B,EAAOtmC,EAAOO,EAAOmjC,OAAOgC,UAexEmB,WAAY,SAAUlwB,EAAO8tB,EAAU6B,EAAOtmC,EAAOuT,GAOjD,QALc3N,IAAV+Q,IAAuBA,EAAQ,QAClB/Q,IAAb6+B,IAA0BA,EAAW,UAC3B7+B,IAAV0gC,IAAuBA,GAAQ,QACrB1gC,IAAV5F,IAAuBA,EAAQ,IAE9BR,KAAK4kC,KAAQkC,GAA4B,EAAnB9mC,KAAKqlC,YAE5B,OAAO,EASX,GANArlC,KAAK4kC,GAAGhpB,QAER5b,KAAK4kC,GAAGqC,UAAU9vB,EAAO3W,GACzBR,KAAK4kC,GAAGsC,SAAS,EAAG,EAAGlnC,KAAK0E,MAAO1E,KAAK2E,QACxC3E,KAAK4kC,GAAGuC,UAEJpzB,EAAO,GAAY,EAAPA,EAAY,MAAM,IAAInL,MAAM,yBAO5C,OALA5I,KAAK4kC,GAAGpkC,MAASuT,IAAShT,EAAOmjC,OAAOgC,QAAW,EAAI,EAEvDlmC,KAAKqlC,YAAcJ,EACnBjlC,KAAKslC,QAAUvxB,GAER,GASXwzB,OAAQ,WAEmB,EAAnBvnC,KAAKqlC,aAELrlC,KAAKwnC,WAGkB,EAAvBxnC,KAAK+b,OAAOkpB,UAEZjlC,KAAKynC,cAGLznC,KAAKsE,QAELtE,KAAK0nC,cAGL1nC,KAAKokC,UAELpkC,KAAK+X,KAAKoa,QACVnyB,KAAK+b,OAAOzY,EAAIL,KAAKkvB,MAAMnyB,KAAK+b,OAAOzY,GACvCtD,KAAK+b,OAAOxY,EAAIN,KAAKkvB,MAAMnyB,KAAK+b,OAAOxY,IAG3CvD,KAAKkc,cAAc/b,SAASmD,GAAKtD,KAAK+X,KAAKzU,EAC3CtD,KAAKkc,cAAc/b,SAASoD,GAAKvD,KAAK+X,KAAKxU,GAS/CikC,SAAU,WAEFxnC,KAAKslC,UAAYvkC,EAAOmjC,OAAO8B,OAG/BhmC,KAAK4kC,GAAGpkC,OAASR,KAAKsC,KAAKqlC,KAAKC,MAAQ5nC,KAAKqlC,YAEzCrlC,KAAK4kC,GAAGpkC,OAAS,IAEjBR,KAAKqlC,YAAc,EACnBrlC,KAAK4kC,GAAGpkC,MAAQ,EAChBR,KAAK0kC,gBAAgBmD,aAGpB7nC,KAAKslC,UAAYvkC,EAAOmjC,OAAOgC,SAGpClmC,KAAK4kC,GAAGpkC,OAASR,KAAKsC,KAAKqlC,KAAKC,MAAQ5nC,KAAKqlC,YAEzCrlC,KAAK4kC,GAAGpkC,OAAS,IAEjBR,KAAKqlC,YAAc,EACnBrlC,KAAK4kC,GAAGpkC,MAAQ,EAChBR,KAAK2kC,eAAekD,cAMxB7nC,KAAK4kC,GAAGpkC,OAASR,KAAKsC,KAAKqlC,KAAKC,MAAQ5nC,KAAKqlC,YAExB,GAAjBrlC,KAAK4kC,GAAGpkC,QAERR,KAAKqlC,YAAc,EACnBrlC,KAAK4kC,GAAGpkC,MAAQ,EAChBR,KAAK2kC,eAAekD,cAWhCJ,YAAa,WAETznC,KAAK+b,OAAOkpB,UAAYjlC,KAAKsC,KAAKqlC,KAAKC,MAEnC5nC,KAAK+b,OAAOkpB,UAAY,GAExBjlC,KAAKwkC,gBAAgBqD,WACrB7nC,KAAK+b,OAAOzY,EAAI,EAChBtD,KAAK+b,OAAOxY,EAAI,IAIZvD,KAAK+b,OAAOmpB,aAEZllC,KAAK+b,OAAOzY,EAAItD,KAAKsC,KAAKwlC,IAAIC,OAAS/nC,KAAK+b,OAAOipB,UAAYhlC,KAAK+X,KAAKrT,MAAQ,EAAI1E,KAAK+b,OAAOipB,UAAYhlC,KAAK+X,KAAKrT,OAGvH1E,KAAK+b,OAAOopB,WAEZnlC,KAAK+b,OAAOxY,EAAIvD,KAAKsC,KAAKwlC,IAAIC,OAAS/nC,KAAK+b,OAAOipB,UAAYhlC,KAAK+X,KAAKpT,OAAS,EAAI3E,KAAK+b,OAAOipB,UAAYhlC,KAAK+X,KAAKpT,UAWpIqjC,aAAc,WAEVhoC,KAAK6kC,gBAAgBvhC,EAAItD,KAAK+X,KAAKzU,EAAItD,KAAK6H,OAAO5G,cAAcqC,EACjEtD,KAAK6kC,gBAAgBthC,EAAIvD,KAAK+X,KAAKxU,EAAIvD,KAAK6H,OAAO5G,cAAcsC,EAE7DvD,KAAKmkC,UAELnkC,KAAK8kC,MAAQ9kC,KAAK6kC,gBAAgBvhC,EAAItD,KAAK+X,KAAKzU,EAE5CtD,KAAK8kC,MAAQ9kC,KAAKmkC,SAAS3L,KAE3Bx4B,KAAK+X,KAAKzU,EAAItD,KAAKsC,KAAK2lC,KAAK5P,OAAOr4B,KAAK+X,KAAKzU,EAAGtD,KAAK6kC,gBAAgBvhC,EAAItD,KAAKmkC,SAAS3L,KAAMx4B,KAAKukC,KAAKjhC,GAEnGtD,KAAK8kC,MAAQ9kC,KAAKmkC,SAASrO,QAEhC91B,KAAK+X,KAAKzU,EAAItD,KAAKsC,KAAK2lC,KAAK5P,OAAOr4B,KAAK+X,KAAKzU,EAAGtD,KAAK6kC,gBAAgBvhC,EAAItD,KAAKmkC,SAASrO,MAAO91B,KAAKukC,KAAKjhC,IAG7GtD,KAAK8kC,MAAQ9kC,KAAK6kC,gBAAgBthC,EAAIvD,KAAK+X,KAAKxU,EAE5CvD,KAAK8kC,MAAQ9kC,KAAKmkC,SAAS1L,IAE3Bz4B,KAAK+X,KAAKxU,EAAIvD,KAAKsC,KAAK2lC,KAAK5P,OAAOr4B,KAAK+X,KAAKxU,EAAGvD,KAAK6kC,gBAAgBthC,EAAIvD,KAAKmkC,SAAS1L,IAAKz4B,KAAKukC,KAAKhhC,GAElGvD,KAAK8kC,MAAQ9kC,KAAKmkC,SAASzL,SAEhC14B,KAAK+X,KAAKxU,EAAIvD,KAAKsC,KAAK2lC,KAAK5P,OAAOr4B,KAAK+X,KAAKxU,EAAGvD,KAAK6kC,gBAAgBthC,EAAIvD,KAAKmkC,SAASzL,OAAQ14B,KAAKukC,KAAKhhC,MAK9GvD,KAAK+X,KAAKzU,EAAItD,KAAKsC,KAAK2lC,KAAK5P,OAAOr4B,KAAK+X,KAAKzU,EAAGtD,KAAK6kC,gBAAgBvhC,EAAItD,KAAK+X,KAAKihB,UAAWh5B,KAAKukC,KAAKjhC,GACzGtD,KAAK+X,KAAKxU,EAAIvD,KAAKsC,KAAK2lC,KAAK5P,OAAOr4B,KAAK+X,KAAKxU,EAAGvD,KAAK6kC,gBAAgBthC,EAAIvD,KAAK+X,KAAKkhB,WAAYj5B,KAAKukC,KAAKhhC,IAG1GvD,KAAKsE,QAELtE,KAAK0nC,cAGL1nC,KAAKokC,SAELpkC,KAAK+X,KAAKoa,QAGdnyB,KAAKkc,cAAc/b,SAASmD,GAAKtD,KAAK+X,KAAKzU,EAC3CtD,KAAKkc,cAAc/b,SAASoD,GAAKvD,KAAK+X,KAAKxU,GAQ/C2kC,iBAAkB,WAEVloC,KAAKsE,QAELtE,KAAKsE,OAAOkzB,SAASx3B,KAAKsC,KAAKE,MAAM8B,SAW7CojC,YAAa,WAET1nC,KAAKqkC,QAAQ/gC,GAAI,EACjBtD,KAAKqkC,QAAQ9gC,GAAI,EAEjB,IAAI4kC,EAAKnoC,KAAK+X,KAAKzU,EAAItD,KAAK+b,OAAOzY,EAC/B8kC,EAAKpoC,KAAK+X,KAAK+d,MAAQ91B,KAAK+b,OAAOzY,EACnC+kC,EAAKroC,KAAK+X,KAAKxU,EAAIvD,KAAK+b,OAAOxY,EAC/B+kC,EAAKtoC,KAAK+X,KAAK2gB,OAAS14B,KAAK+b,OAAOxY,EAGpC4kC,GAAMnoC,KAAKsE,OAAOhB,EAAItD,KAAKK,MAAMiD,GAEjCtD,KAAKqkC,QAAQ/gC,GAAI,EACjBtD,KAAK+X,KAAKzU,EAAItD,KAAKsE,OAAOhB,EAAItD,KAAKK,MAAMiD,EAEpCtD,KAAK+b,OAAOqpB,cAGbplC,KAAK+b,OAAOzY,EAAI,IAGf8kC,GAAMpoC,KAAKsE,OAAOwxB,MAAQ91B,KAAKK,MAAMiD,IAE1CtD,KAAKqkC,QAAQ/gC,GAAI,EACjBtD,KAAK+X,KAAKzU,EAAKtD,KAAKsE,OAAOwxB,MAAQ91B,KAAKK,MAAMiD,EAAKtD,KAAK0E,MAEnD1E,KAAK+b,OAAOqpB,cAGbplC,KAAK+b,OAAOzY,EAAI,IAIpB+kC,GAAMroC,KAAKsE,OAAOm0B,IAAMz4B,KAAKK,MAAMkD,GAEnCvD,KAAKqkC,QAAQ9gC,GAAI,EACjBvD,KAAK+X,KAAKxU,EAAIvD,KAAKsE,OAAOm0B,IAAMz4B,KAAKK,MAAMkD,EAEtCvD,KAAK+b,OAAOqpB,cAGbplC,KAAK+b,OAAOxY,EAAI,IAGf+kC,GAAMtoC,KAAKsE,OAAOo0B,OAAS14B,KAAKK,MAAMkD,IAE3CvD,KAAKqkC,QAAQ9gC,GAAI,EACjBvD,KAAK+X,KAAKxU,EAAKvD,KAAKsE,OAAOo0B,OAAS14B,KAAKK,MAAMkD,EAAKvD,KAAK2E,OAEpD3E,KAAK+b,OAAOqpB,cAGbplC,KAAK+b,OAAOxY,EAAI,KAa5BojC,YAAa,SAAUrjC,EAAGC,GAEtBvD,KAAK+X,KAAKzU,EAAIA,EACdtD,KAAK+X,KAAKxU,EAAIA,EAEVvD,KAAKsE,QAELtE,KAAK0nC,eAWba,QAAS,SAAU7jC,EAAOC,GAEtB3E,KAAK+X,KAAKrT,MAAQA,EAClB1E,KAAK+X,KAAKpT,OAASA,GAUvB6jC,MAAO,WAEHxoC,KAAK6H,OAAS,KAEd7H,KAAK+X,KAAKzU,EAAI,EACdtD,KAAK+X,KAAKxU,EAAI,EAEdvD,KAAK+b,OAAOkpB,SAAW,EACvBjlC,KAAK+b,OAAOzY,EAAI,EAChBtD,KAAK+b,OAAOxY,EAAI,EAEhBvD,KAAKyoC,WASTA,QAAS,WAEDzoC,KAAK4kC,KAEL5kC,KAAK4kC,GAAGhpB,QACR5b,KAAK4kC,GAAGpkC,MAAQ,GAGpBR,KAAKqlC,YAAc,IAK3BtkC,EAAOmjC,OAAOriC,UAAUC,YAAcf,EAAOmjC,OAO7Cr9B,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,IAAK,CAEhDkF,IAAK,WAED,OAAO/G,KAAK+X,KAAKzU,GAGrB0D,IAAK,SAAUC,GAEXjH,KAAK+X,KAAKzU,EAAI2D,EAEVjH,KAAKsE,QAELtE,KAAK0nC,iBAWjB7gC,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,IAAK,CAEhDkF,IAAK,WAED,OAAO/G,KAAK+X,KAAKxU,GAGrByD,IAAK,SAAUC,GAEXjH,KAAK+X,KAAKxU,EAAI0D,EAEVjH,KAAKsE,QAELtE,KAAK0nC,iBAWjB7gC,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,WAAY,CAEvDkF,IAAK,WAID,OAFA/G,KAAK+kC,UAAU/9B,IAAIhH,KAAK+X,KAAKzU,EAAGtD,KAAK+X,KAAKxU,GAEnCvD,KAAK+kC,WAGhB/9B,IAAK,SAAUC,QAEY,IAAZA,EAAM3D,IAAqBtD,KAAK+X,KAAKzU,EAAI2D,EAAM3D,QACnC,IAAZ2D,EAAM1D,IAAqBvD,KAAK+X,KAAKxU,EAAI0D,EAAM1D,GAEtDvD,KAAKsE,QAELtE,KAAK0nC,iBAWjB7gC,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,QAAS,CAEpDkF,IAAK,WAED,OAAO/G,KAAK+X,KAAKrT,OAGrBsC,IAAK,SAAUC,GAEXjH,KAAK+X,KAAKrT,MAAQuC,KAU1BJ,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,SAAU,CAErDkF,IAAK,WAED,OAAO/G,KAAK+X,KAAKpT,QAGrBqC,IAAK,SAAUC,GAEXjH,KAAK+X,KAAKpT,OAASsC,KAU3BJ,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,iBAAkB,CAE7DkF,IAAK,WAED,OAAO/G,KAAK+b,OAAOipB,WAGvBh+B,IAAK,SAAUC,GAEXjH,KAAK+b,OAAOipB,UAAY/9B,KAWhCJ,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,YAAa,CAExDkF,IAAK,WAID,OAFA/G,KAAKulC,WAAWhO,MAAM,EAAG,EAAGv3B,KAAK+X,KAAKrT,MAAO1E,KAAK+X,KAAKpT,QAEhD3E,KAAKulC,cAWpB1+B,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,UAAW,CAEtDkF,IAAK,WAED,OAAQ/G,KAAKsD,EAAK,GAAMtD,KAAK0E,SAWrCmC,OAAOyF,eAAevL,EAAOmjC,OAAOriC,UAAW,UAAW,CAEtDkF,IAAK,WAED,OAAQ/G,KAAKuD,EAAK,GAAMvD,KAAK2E,UAmCrC5D,EAAO2nC,MAAQ,WAKX1oC,KAAKsC,KAAO,KAKZtC,KAAKsT,IAAM,GAKXtT,KAAKq7B,IAAM,KAKXr7B,KAAK2oC,KAAO,KAKZ3oC,KAAK8b,OAAS,KAKd9b,KAAK8a,MAAQ,KAKb9a,KAAK4oC,MAAQ,KAKb5oC,KAAK6oC,KAAO,KAKZ7oC,KAAKioC,KAAO,KAKZjoC,KAAK8oC,MAAQ,KAKb9oC,KAAKK,MAAQ,KAKbL,KAAKob,MAAQ,KAKbpb,KAAK+oC,MAAQ,KAKb/oC,KAAK2nC,KAAO,KAKZ3nC,KAAKgpC,OAAS,KAKdhpC,KAAKwC,MAAQ,KAKbxC,KAAKipC,UAAY,KAKjBjpC,KAAKkpC,QAAU,KAKflpC,KAAK8nC,IAAM,MAGf/mC,EAAO2nC,MAAM7mC,UAAY,CAUrB6P,KAAM,aAYNy3B,QAAS,aAUTC,WAAY,aAWZC,WAAY,aAWZhhC,OAAQ,aAYRk/B,OAAQ,aAaR+B,WAAY,aAUZC,UAAW,aAYX1kC,OAAQ,aAWRkB,OAAQ,aAURyjC,OAAQ,aAURC,QAAS,aAUTC,YAAa,aAUbC,SAAU,cAMd5oC,EAAO2nC,MAAM7mC,UAAUC,YAAcf,EAAO2nC,MAgB5C3nC,EAAO6oC,aAAe,SAAUtnC,EAAMunC,GAKlC7pC,KAAKsC,KAAOA,EAKZtC,KAAK8pC,OAAS,IAMd9pC,KAAK+pC,cAAgB,OAEVF,IAEP7pC,KAAK+pC,cAAgBF,GAOzB7pC,KAAKgqC,aAAc,EAMnBhqC,KAAKiqC,aAAc,EAMnBjqC,KAAKkqC,UAAW,EAMhBlqC,KAAKmqC,MAAQ,GAMbnqC,KAAKoqC,QAAU,GAcfpqC,KAAKqqC,cAAgB,IAAItpC,EAAO0jC,OAMhCzkC,KAAKsqC,eAAiB,KAMtBtqC,KAAKuqC,kBAAoB,KAMzBvqC,KAAKwqC,iBAAmB,KAMxBxqC,KAAKyqC,iBAAmB,KAMxBzqC,KAAK0qC,iBAAmB,KAMxB1qC,KAAK2qC,iBAAmB,KAMxB3qC,KAAK4qC,oBAAsB,KAM3B5qC,KAAK6qC,qBAAuB,KAM5B7qC,KAAK8qC,qBAAuB,KAM5B9qC,KAAK+qC,iBAAmB,KAMxB/qC,KAAKgrC,kBAAoB,KAMzBhrC,KAAKirC,sBAAwB,KAM7BjrC,KAAKkrC,mBAAqB,MAG9BnqC,EAAO6oC,aAAa/nC,UAAY,CAO5BskC,KAAM,WAEFnmC,KAAKsC,KAAK6oC,QAAQ9P,IAAIr7B,KAAKorC,MAAOprC,MAClCA,KAAKsC,KAAK+oC,SAAShQ,IAAIr7B,KAAKsrC,OAAQtrC,MAET,OAAvBA,KAAK+pC,eAAwD,iBAAvB/pC,KAAK+pC,eAE3C/pC,KAAKq7B,IAAI,UAAWr7B,KAAK+pC,eAAe,IAqBhD1O,IAAK,SAAU/nB,EAAKy1B,EAAOwC,GAIvB,IAAIC,EA8BJ,YAhCkBplC,IAAdmlC,IAA2BA,GAAY,GAIvCxC,aAAiBhoC,EAAO2nC,MAExB8C,EAAWzC,EAEW,iBAAVA,GAEZyC,EAAWzC,GACFzmC,KAAOtC,KAAKsC,KAEC,mBAAVymC,IAEZyC,EAAW,IAAIzC,EAAM/oC,KAAKsC,OAG9BtC,KAAK8pC,OAAOx2B,GAAOk4B,EAEfD,IAEIvrC,KAAKsC,KAAKmpC,SAEVzrC,KAAKmM,MAAMmH,GAIXtT,KAAK+pC,cAAgBz2B,GAItBk4B,GAQXnuB,OAAQ,SAAU/J,GAEVtT,KAAKoqC,UAAY92B,IAEjBtT,KAAK0rC,gBAAkB,KAEvB1rC,KAAKsqC,eAAiB,KACtBtqC,KAAKkrC,mBAAqB,KAE1BlrC,KAAKuqC,kBAAoB,KACzBvqC,KAAK8qC,qBAAuB,KAC5B9qC,KAAK6qC,qBAAuB,KAC5B7qC,KAAKwqC,iBAAmB,KACxBxqC,KAAKyqC,iBAAmB,KACxBzqC,KAAK4qC,oBAAsB,KAC3B5qC,KAAK0qC,iBAAmB,KACxB1qC,KAAK2qC,iBAAmB,KACxB3qC,KAAK+qC,iBAAmB,KACxB/qC,KAAKgrC,kBAAoB,KACzBhrC,KAAKirC,sBAAwB,aAG1BjrC,KAAK8pC,OAAOx2B,IAYvBnH,MAAO,SAAUmH,EAAKq4B,EAAYC,QAEXxlC,IAAfulC,IAA4BA,GAAa,QAC1BvlC,IAAfwlC,IAA4BA,GAAa,GAEzC5rC,KAAK6rC,WAAWv4B,KAGhBtT,KAAK+pC,cAAgBz2B,EACrBtT,KAAKgqC,YAAc2B,EACnB3rC,KAAKiqC,YAAc2B,EAEI,EAAnBpZ,UAAUtwB,SAEVlC,KAAKmqC,MAAQ7iC,MAAMzF,UAAU8G,OAAO5E,KAAKyuB,UAAW,MAahEsZ,QAAS,SAAUH,EAAYC,QAERxlC,IAAfulC,IAA4BA,GAAa,QAC1BvlC,IAAfwlC,IAA4BA,GAAa,GAG7C5rC,KAAK+pC,cAAgB/pC,KAAKoqC,QAC1BpqC,KAAKgqC,YAAc2B,EACnB3rC,KAAKiqC,YAAc2B,EAEI,EAAnBpZ,UAAUtwB,SAEVlC,KAAKmqC,MAAQ7iC,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,KAS3DuZ,MAAO,aASP9nC,UAAW,WAEP,GAAIjE,KAAK+pC,eAAiB/pC,KAAKsC,KAAKmpC,SACpC,CAMI,GAJAzrC,KAAKgsC,oBAELhsC,KAAKisC,gBAAgBjsC,KAAK+pC,eAEtB/pC,KAAKoqC,UAAYpqC,KAAK+pC,cAEtB,OAIA/pC,KAAK+pC,cAAgB,KAOrB/pC,KAAKuqC,mBAELvqC,KAAKsC,KAAKumC,KAAKL,OAAM,GACrBxoC,KAAKuqC,kBAAkBxmC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,MAGb,IAAtCtC,KAAKsC,KAAKumC,KAAKqD,oBAAkE,IAAtClsC,KAAKsC,KAAKumC,KAAKsD,mBAE1DnsC,KAAKosC,eAKLpsC,KAAKsC,KAAKumC,KAAK18B,SAMnBnM,KAAKosC,iBAWjBJ,kBAAmB,WAEXhsC,KAAKoqC,UAEDpqC,KAAKkrC,oBAELlrC,KAAKkrC,mBAAmBnnC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,MAG5DtC,KAAKsC,KAAK0mC,OAAOqD,YAEjBrsC,KAAKsC,KAAKwZ,OAAO0sB,QAEjBxoC,KAAKsC,KAAKsmC,MAAMJ,OAAM,GAEtBxoC,KAAKsC,KAAK4mC,QAAQttB,QAElB5b,KAAKsC,KAAKqlC,KAAK0E,YAEfrsC,KAAKsC,KAAKjC,MAAMmoC,MAAMxoC,KAAKgqC,aAEvBhqC,KAAKsC,KAAKgqC,OAEVtsC,KAAKsC,KAAKgqC,MAAM9D,QAGhBxoC,KAAKgqC,cAELhqC,KAAKsC,KAAKE,MAAMmnC,WAEZ3pC,KAAKiqC,aAELjqC,KAAKsC,KAAKwY,MAAM/Y,aAahC8pC,WAAY,SAAUv4B,GAElB,IAAIy1B,EAAQ/oC,KAAK8pC,OAAOx2B,GAExB,OAAIy1B,KAEIA,EAAMI,SAAWJ,EAAM1gC,QAAU0gC,EAAMxB,QAAUwB,EAAMlkC,UAMvDuL,QAAQ+K,KAAK,8HACN,IAKX/K,QAAQ+K,KAAK,sDAAwD7H,IAC9D,IAWfi5B,KAAM,SAAUj5B,GAEZ,IAAIy1B,EAAQ/oC,KAAK8pC,OAAOx2B,GAExBy1B,EAAMzmC,KAAOtC,KAAKsC,KAClBymC,EAAM1N,IAAMr7B,KAAKsC,KAAK+4B,IACtB0N,EAAMJ,KAAO3oC,KAAKsC,KAAKqmC,KACvBI,EAAMjtB,OAAS9b,KAAKsC,KAAKwZ,OACzBitB,EAAMjuB,MAAQ9a,KAAKsC,KAAKwY,MACxBiuB,EAAMH,MAAQ5oC,KAAKsC,KAAKsmC,MACxBG,EAAMF,KAAO7oC,KAAKsC,KAAKumC,KACvBE,EAAMd,KAAOjoC,KAAKsC,KAAK2lC,KACvBc,EAAMD,MAAQ9oC,KAAKsC,KAAKwmC,MACxBC,EAAM1oC,MAAQL,KAAKsC,KAAKjC,MACxB0oC,EAAMA,MAAQ/oC,KACd+oC,EAAM3tB,MAAQpb,KAAKsC,KAAK8Y,MACxB2tB,EAAMpB,KAAO3nC,KAAKsC,KAAKqlC,KACvBoB,EAAMC,OAAShpC,KAAKsC,KAAK0mC,OACzBD,EAAMvmC,MAAQxC,KAAKsC,KAAKE,MACxBumC,EAAME,UAAYjpC,KAAKsC,KAAK2mC,UAC5BF,EAAMjB,IAAM9nC,KAAKsC,KAAKwlC,IACtBiB,EAAMG,QAAUlpC,KAAKsC,KAAK4mC,QAC1BH,EAAMz1B,IAAMA,GAUhBk5B,OAAQ,SAAUl5B,GAEd,IAAIy1B,EAAQ/oC,KAAK8pC,OAAOx2B,GAEpBy1B,IAEAA,EAAMzmC,KAAO,KACbymC,EAAM1N,IAAM,KACZ0N,EAAMJ,KAAO,KACbI,EAAMjtB,OAAS,KACfitB,EAAMjuB,MAAQ,KACdiuB,EAAMH,MAAQ,KACdG,EAAMF,KAAO,KACbE,EAAMd,KAAO,KACbc,EAAMD,MAAQ,KACdC,EAAM1oC,MAAQ,KACd0oC,EAAMA,MAAQ,KACdA,EAAM3tB,MAAQ,KACd2tB,EAAMpB,KAAO,KACboB,EAAMC,OAAS,KACfD,EAAMvmC,MAAQ,KACdumC,EAAME,UAAY,KAClBF,EAAMjB,IAAM,KACZiB,EAAMG,QAAU,OAWxB+C,gBAAiB,SAAU34B,GAEvB,IAAIm5B,EAAmBzsC,KAAKoqC,QACxBrB,EAAQ/oC,KAAK8pC,OAAOx2B,GAExBtT,KAAK0rC,gBAAkB3C,EAEvB/oC,KAAKusC,KAAKj5B,GAGVtT,KAAKsqC,eAAiBvB,EAAMr3B,MAAQ1R,KAAK+rC,MAEzC/rC,KAAKuqC,kBAAoBxB,EAAMI,SAAW,KAC1CnpC,KAAK8qC,qBAAuB/B,EAAMM,YAAc,KAChDrpC,KAAK6qC,qBAAuB9B,EAAMK,YAAc,KAChDppC,KAAKwqC,iBAAmBzB,EAAM1gC,QAAU,KACxCrI,KAAKyqC,iBAAmB1B,EAAMxB,QAAU,KACxCvnC,KAAK0sC,qBAAuB3D,EAAMO,YAAc,KAChDtpC,KAAK4qC,oBAAsB7B,EAAMQ,WAAa,KAC9CvpC,KAAK0qC,iBAAmB3B,EAAMlkC,QAAU,KACxC7E,KAAK2qC,iBAAmB5B,EAAMhjC,QAAU,KACxC/F,KAAK+qC,iBAAmBhC,EAAMS,QAAU,KACxCxpC,KAAKgrC,kBAAoBjC,EAAMU,SAAW,KAC1CzpC,KAAKirC,sBAAwBlC,EAAMW,aAAe,KAGlD1pC,KAAKkrC,mBAAqBnC,EAAMY,UAAY3pC,KAAK+rC,MAG5B,KAAjB/rC,KAAKoqC,SAELpqC,KAAKsC,KAAK4mC,QAAQV,QAGtBxoC,KAAKoqC,QAAU92B,EACftT,KAAKkqC,UAAW,EAEhBlqC,KAAKqqC,cAAcxC,SAAS7nC,KAAKoqC,QAASqC,GAG1CzsC,KAAKsqC,eAAerlC,MAAMjF,KAAK0rC,gBAAiB1rC,KAAKmqC,OAGjD72B,IAAQtT,KAAK+pC,gBAEb/pC,KAAKmqC,MAAQ,IAGjBnqC,KAAKsC,KAAKqqC,YAAa,GAU3BC,gBAAiB,WAEb,OAAO5sC,KAAK8pC,OAAO9pC,KAAKoqC,UAQ5BgC,aAAc,YAEY,IAAlBpsC,KAAKkqC,UAAsBlqC,KAAKwqC,kBAEhCxqC,KAAKkqC,UAAW,EAChBlqC,KAAKwqC,iBAAiBzmC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAItDtC,KAAKkqC,UAAW,GASxBd,WAAY,YAEc,IAAlBppC,KAAKkqC,UAAsBlqC,KAAK6qC,sBAEhC7qC,KAAK6qC,qBAAqB9mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAQlE8oC,MAAO,WAECprC,KAAKkqC,UAAYlqC,KAAK+qC,kBAEtB/qC,KAAK+qC,iBAAiBhnC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAQ9DgpC,OAAQ,WAEAtrC,KAAKkqC,UAAYlqC,KAAKgrC,mBAEtBhrC,KAAKgrC,kBAAkBjnC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAQ/DilC,OAAQ,WAEAvnC,KAAKkqC,SAEDlqC,KAAKyqC,kBAELzqC,KAAKyqC,iBAAiB1mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,MAI1DtC,KAAK6qC,sBAEL7qC,KAAK6qC,qBAAqB9mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAIlEgnC,WAAY,WAEJtpC,KAAKkqC,UAAYlqC,KAAK0sC,sBAEtB1sC,KAAK0sC,qBAAqB3oC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAQlEonC,YAAa,WAEL1pC,KAAKkqC,SAEDlqC,KAAKirC,uBAELjrC,KAAKirC,sBAAsBlnC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,MAI/DtC,KAAK6qC,sBAEL7qC,KAAK6qC,qBAAqB9mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAQlEinC,UAAW,WAEHvpC,KAAKkqC,UAAYlqC,KAAK4qC,qBAEtB5qC,KAAK4qC,oBAAoB7mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAQjEyD,OAAQ,SAAUrB,EAAOC,GAEjB3E,KAAK2qC,kBAEL3qC,KAAK2qC,iBAAiB5mC,KAAK/D,KAAK0rC,gBAAiBhnC,EAAOC,IAQhEE,OAAQ,WAEA7E,KAAKkqC,SAEDlqC,KAAK0qC,mBAED1qC,KAAKsC,KAAKuqC,aAAe9rC,EAAO6qB,QAEhC5rB,KAAKsC,KAAKqL,QAAQ4c,OAClBvqB,KAAKsC,KAAKqL,QAAQiB,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GAC9C5O,KAAK0qC,iBAAiB3mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,MACtDtC,KAAKsC,KAAKqL,QAAQkd,WAIlB7qB,KAAK0qC,iBAAiB3mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OAK9DtC,KAAK8qC,sBAEL9qC,KAAK8qC,qBAAqB/mC,KAAK/D,KAAK0rC,gBAAiB1rC,KAAKsC,OASlEP,QAAS,WAEL/B,KAAKgqC,aAAc,EACnBhqC,KAAKiqC,aAAc,EAEnBjqC,KAAKgsC,oBAELhsC,KAAK0rC,gBAAkB,KAEvB1rC,KAAKsqC,eAAiB,KACtBtqC,KAAKkrC,mBAAqB,KAE1BlrC,KAAKuqC,kBAAoB,KACzBvqC,KAAK8qC,qBAAuB,KAC5B9qC,KAAK6qC,qBAAuB,KAC5B7qC,KAAKwqC,iBAAmB,KACxBxqC,KAAKyqC,iBAAmB,KACxBzqC,KAAK0sC,qBAAuB,KAC5B1sC,KAAK0qC,iBAAmB,KACxB1qC,KAAK+qC,iBAAmB,KACxB/qC,KAAKgrC,kBAAoB,KACzBhrC,KAAKirC,sBAAwB,KAE7BjrC,KAAKsC,KAAO,KACZtC,KAAK8pC,OAAS,GACd9pC,KAAK+pC,cAAgB,KACrB/pC,KAAKoqC,QAAU,KAKvBrpC,EAAO6oC,aAAa/nC,UAAUC,YAAcf,EAAO6oC,aAOnD/iC,OAAOyF,eAAevL,EAAO6oC,aAAa/nC,UAAW,UAAW,CAE5DkF,IAAK,WAED,OAAO/G,KAAKkqC,YAwEpBnpC,EAAO0jC,OAAS,aAEhB1jC,EAAO0jC,OAAO5iC,UAAY,CAMtBirC,UAAW,KAMXC,YAAa,KAUbC,UAAU,EAMVC,kBAAkB,EAUlBC,QAAQ,EAMRC,gBAAgB,EAQhBC,iBAAkB,SAAUC,EAAUC,GAElC,GAAwB,mBAAbD,EAEP,MAAM,IAAIzkC,MAAM,kFAAkF6tB,QAAQ,OAAQ6W,KAa1HC,kBAAmB,SAAUF,EAAUG,EAAQC,EAAiBC,EAAU/a,GAEtE,IACIgb,EADAC,EAAY5tC,KAAK6tC,iBAAiBR,EAAUI,GAGhD,IAAmB,IAAfG,GAIA,IAFAD,EAAU3tC,KAAK8sC,UAAUc,IAEbJ,WAAaA,EAErB,MAAM,IAAI5kC,MAAM,kBAAoB4kC,EAAS,GAAK,QAAU,eAAkBA,EAAc,OAAL,IAAe,sEAK1GG,EAAU,IAAI5sC,EAAO+sC,cAAc9tC,KAAMqtC,EAAUG,EAAQC,EAAiBC,EAAU/a,GACtF3yB,KAAK+tC,YAAYJ,GAQrB,OALI3tC,KAAKgtC,UAAYhtC,KAAK+sC,aAEtBY,EAAQK,QAAQhuC,KAAK+sC,aAGlBY,GAQXI,YAAa,SAAUJ,GAEd3tC,KAAK8sC,YAEN9sC,KAAK8sC,UAAY,IAMrB,IAFA,IAAIrT,EAAIz5B,KAAK8sC,UAAU5qC,OAInBu3B,IAEGz5B,KAAK8sC,UAAUrT,IAAMkU,EAAQM,WAAajuC,KAAK8sC,UAAUrT,GAAGwU,YAEnEjuC,KAAK8sC,UAAUnkC,OAAO8wB,EAAI,EAAG,EAAGkU,IAUpCE,iBAAkB,SAAUR,EAAU1/B,GAElC,IAAK3N,KAAK8sC,UAEN,OAAQ,OAGI1mC,IAAZuH,IAAyBA,EAAU,MAKvC,IAHA,IACIugC,EADAzU,EAAIz5B,KAAK8sC,UAAU5qC,OAGhBu3B,KAIH,IAFAyU,EAAMluC,KAAK8sC,UAAUrT,IAEb0U,YAAcd,GAAYa,EAAIvgC,UAAYA,EAE9C,OAAO8rB,EAIf,OAAQ,GAWZ2U,IAAK,SAAUf,EAAU1/B,GAErB,OAAqD,IAA9C3N,KAAK6tC,iBAAiBR,EAAU1/B,IA6B3C0tB,IAAK,SAAUgS,EAAUI,EAAiBC,GAEtC1tC,KAAKotC,iBAAiBC,EAAU,OAEhC,IAAI1a,EAAO,GAEX,GAAuB,EAAnBH,UAAUtwB,OAEV,IAAK,IAAID,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5B,OAAOjC,KAAKutC,kBAAkBF,GAAU,EAAOI,EAAiBC,EAAU/a,IAgB9E0b,QAAS,SAAUhB,EAAUI,EAAiBC,GAE1C1tC,KAAKotC,iBAAiBC,EAAU,WAEhC,IAAI1a,EAAO,GAEX,GAAuB,EAAnBH,UAAUtwB,OAEV,IAAK,IAAID,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5B,OAAOjC,KAAKutC,kBAAkBF,GAAU,EAAMI,EAAiBC,EAAU/a,IAW7EtV,OAAQ,SAAUgwB,EAAU1/B,GAExB3N,KAAKotC,iBAAiBC,EAAU,UAEhC,IAAIprC,EAAIjC,KAAK6tC,iBAAiBR,EAAU1/B,GAQxC,OANW,IAAP1L,IAEAjC,KAAK8sC,UAAU7qC,GAAGqsC,WAClBtuC,KAAK8sC,UAAUnkC,OAAO1G,EAAG,IAGtBorC,GASXhB,UAAW,SAAU1+B,GAIjB,QAFgBvH,IAAZuH,IAAyBA,EAAU,MAElC3N,KAAK8sC,UAAV,CAOA,IAFA,IAAIrT,EAAIz5B,KAAK8sC,UAAU5qC,OAEhBu3B,KAEC9rB,EAEI3N,KAAK8sC,UAAUrT,GAAG9rB,UAAYA,IAE9B3N,KAAK8sC,UAAUrT,GAAG6U,WAClBtuC,KAAK8sC,UAAUnkC,OAAO8wB,EAAG,IAK7Bz5B,KAAK8sC,UAAUrT,GAAG6U,WAIrB3gC,IAED3N,KAAK8sC,UAAU5qC,OAAS,KAUhCqsC,gBAAiB,WAEb,OAAOvuC,KAAK8sC,UAAY9sC,KAAK8sC,UAAU5qC,OAAS,GAWpDssC,KAAM,WAEFxuC,KAAKitC,kBAAmB,GAW5BpF,SAAU,WAEN,GAAK7nC,KAAKktC,SAAYltC,KAAK8sC,WAAc9sC,KAAKgtC,UAA9C,CAKA,IAAIyB,EAAYnnC,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,WAEvCxyB,KAAKgtC,WAELhtC,KAAK+sC,YAAc0B,GAGvB,IAAIhV,EAAIz5B,KAAK8sC,UAAY9sC,KAAK8sC,UAAU5qC,OAAS,EAEjD,GAAKu3B,EAAL,CAMA,IAAIiV,EAAW1uC,KAAK8sC,UAAUjf,QAO9B,IANA7tB,KAAKitC,kBAAmB,EAUjByB,IAFHjV,IAEkBz5B,KAAKitC,mBAAuD,IAAnCyB,EAASjV,GAAGuU,QAAQS,SAQvEE,OAAQ,WAEA3uC,KAAK+sC,cAEL/sC,KAAK+sC,YAAc,OAY3B6B,QAAS,WAEL5uC,KAAKqsC,YAELrsC,KAAK8sC,UAAY,KACb9sC,KAAK+sC,cAEL/sC,KAAK+sC,YAAc,OAU3B9hB,SAAU,WAEN,MAAO,yBAA2BjrB,KAAKktC,OAAS,iBAAmBltC,KAAKuuC,kBAAoB,MAcpG1nC,OAAOyF,eAAevL,EAAO0jC,OAAO5iC,UAAW,gBAAiB,CAE5DkF,IAAK,WAED,IAAI8nC,EAAQ7uC,KACZ,OAAOA,KAAKmtC,iBAAmBntC,KAAKmtC,eAAiB,WAEjD,OAAO0B,EAAMhH,SAAS5iC,MAAM4pC,EAAOrc,gBAM/CzxB,EAAO0jC,OAAO5iC,UAAUC,YAAcf,EAAO0jC,OAuB7C1jC,EAAO+sC,cAAgB,SAAUgB,EAAQzB,EAAUG,EAAQC,EAAiBC,EAAU/a,GAMlF3yB,KAAKmuC,UAAYd,EAEbG,IAEAxtC,KAAK+uC,SAAU,GAGI,MAAnBtB,IAEAztC,KAAK2N,QAAU8/B,GAOnBztC,KAAKgvC,QAAUF,EAEXpB,IAEA1tC,KAAKiuC,UAAYP,GAGjB/a,GAAQA,EAAKzwB,SAEblC,KAAKmqC,MAAQxX,IAIrB5xB,EAAO+sC,cAAcjsC,UAAY,CAK7B8L,QAAS,KAMTohC,SAAS,EAMTd,UAAW,EAMX9D,MAAO,KAKP8E,UAAW,EAOX/B,QAAQ,EAORgC,OAAQ,KASRlB,QAAS,SAAUS,GAEf,IAAIU,EAAeD,EAqBnB,OAnBIlvC,KAAKktC,QAAYltC,KAAKmuC,YAEtBe,EAASlvC,KAAKkvC,OAASlvC,KAAKkvC,OAAOtc,OAAO6b,GAAaA,EAEnDzuC,KAAKmqC,QAEL+E,EAASA,EAAOtc,OAAO5yB,KAAKmqC,QAGhCgF,EAAgBnvC,KAAKmuC,UAAUlpC,MAAMjF,KAAK2N,QAASuhC,GAEnDlvC,KAAKivC,YAEDjvC,KAAK+uC,SAEL/uC,KAAKovC,UAIND,GASXC,OAAQ,WAEJ,OAAOpvC,KAAKqvC,UAAYrvC,KAAKgvC,QAAQ3xB,OAAOrd,KAAKmuC,UAAWnuC,KAAK2N,SAAW,MAOhF0hC,QAAS,WAEL,QAAUrvC,KAAKgvC,WAAahvC,KAAKmuC,WAOrCX,OAAQ,WAEJ,OAAOxtC,KAAK+uC,SAOhBO,YAAa,WAET,OAAOtvC,KAAKmuC,WAOhBoB,UAAW,WAEP,OAAOvvC,KAAKgvC,SAQhBV,SAAU,kBAECtuC,KAAKgvC,eACLhvC,KAAKmuC,iBACLnuC,KAAK2N,SAOhBsd,SAAU,WAEN,MAAO,gCAAkCjrB,KAAK+uC,QAAU,aAAe/uC,KAAKqvC,UAAY,YAAcrvC,KAAKktC,OAAS,MAK5HnsC,EAAO+sC,cAAcjsC,UAAUC,YAAcf,EAAO+sC,cAoCpD/sC,EAAOmjB,OAAS,SAAU5hB,EAAMkR,EAAU/C,GAKtCzQ,KAAKsC,KAAOA,EAMZtC,KAAK+T,KAAOhT,EAAOwuB,aAQnBvvB,KAAKwH,OAAS,CAAExH,MAMhBA,KAAKgkB,QAAU,GAMfhkB,KAAKwR,OAAQ,EAMbxR,KAAK0nB,QAAU,EAKf1nB,KAAKwvC,UAAY,IAAIzuC,EAAOX,MAM5B,IAAIwC,EAAI,IAAI6sC,KAoBZ,GAfAzvC,KAAKwT,SAAW,CAEZrP,WAAY,CAAE4P,KAAM,KAAM9M,MAAO,CAAE3D,EAAG,IAAKC,EAAG,MAC9CokC,KAAM,CAAE5zB,KAAM,KAAM9M,MAAO,GAC3ByoC,MAAO,CAAE37B,KAAM,KAAM9M,MAAO,CAAE3D,EAAG,EAAKC,EAAG,IACzCosC,KAAM,CAAE57B,KAAM,MAAO9M,MAAO,CAAErE,EAAEgtC,cAAehtC,EAAEitC,WAAYjtC,EAAEktC,UAA0B,GAAfltC,EAAEmtC,WAAkB,GAAsB,GAAjBntC,EAAEotC,aAAoBptC,EAAEqtC,eAC3HC,WAAY,CAAEn8B,KAAM,KAAM9M,MAAO,OACjCkpC,UAAW,CAAEp8B,KAAM,YAAa9M,MAAO,KAAMyN,YAAa,CAAEU,QAAQ,IACpEg7B,UAAW,CAAEr8B,KAAM,YAAa9M,MAAO,KAAMyN,YAAa,CAAEU,QAAQ,IACpEi7B,UAAW,CAAEt8B,KAAM,YAAa9M,MAAO,KAAMyN,YAAa,CAAEU,QAAQ,IACpEk7B,UAAW,CAAEv8B,KAAM,YAAa9M,MAAO,KAAMyN,YAAa,CAAEU,QAAQ,KAKpE5B,EAEA,IAAK,IAAIF,KAAOE,EAEZxT,KAAKwT,SAASF,GAAOE,EAASF,GAKX,iBAAhB7C,IAEPA,EAAcA,EAAYyjB,MAAM,OAMpCl0B,KAAKyQ,YAAcA,GAAe,IAGtC1P,EAAOmjB,OAAOriB,UAAY,CAOtB6P,KAAM,aAcN6+B,cAAe,SAAU7rC,EAAOC,GAE5B3E,KAAKwT,SAASrP,WAAW8C,MAAM3D,EAAIoB,EACnC1E,KAAKwT,SAASrP,WAAW8C,MAAM1D,EAAIoB,GASvC4iC,OAAQ,SAAUiJ,GAEd,GAAIA,EACJ,CACI,IAAIltC,EAAIktC,EAAQltC,EAAItD,KAAKsC,KAAKoC,MAC1BnB,EAAI,EAAIitC,EAAQjtC,EAAIvD,KAAKsC,KAAKqC,OAE9BrB,IAAMtD,KAAKwvC,UAAUlsC,GAAKC,IAAMvD,KAAKwvC,UAAUjsC,IAE/CvD,KAAKwT,SAASk8B,MAAMzoC,MAAM3D,EAAIA,EAAEmtC,QAAQ,GACxCzwC,KAAKwT,SAASk8B,MAAMzoC,MAAM1D,EAAIA,EAAEktC,QAAQ,GACxCzwC,KAAKwvC,UAAUxoC,IAAI1D,EAAGC,IAI9BvD,KAAKwT,SAASm0B,KAAK1gC,MAAQjH,KAAKsC,KAAKqlC,KAAK+I,uBAqB9CC,WAAY,SAAUrtC,EAAGC,EAAGmB,EAAOC,EAAQisC,EAASC,QAEhCzqC,IAAZwqC,IAAyBA,EAAU,QACvBxqC,IAAZyqC,IAAyBA,EAAU,GAEnCnsC,MAAAA,EAEA1E,KAAK0E,MAAQA,EAIbA,EAAQ1E,KAAK0E,MAGbC,MAAAA,EAEA3E,KAAK2E,OAASA,EAIdA,EAAS3E,KAAK2E,OAGlB,IAAIqW,EAAQhb,KAAKsC,KAAK+4B,IAAIrgB,MAAM1X,EAAGC,EAAGxC,EAAO+vC,MAAM/mB,SASnD,OAPA/O,EAAMtW,MAAQA,EACdsW,EAAMrW,OAASA,EAEfqW,EAAMxU,OAAOQ,IAAI4pC,EAASC,GAE1B71B,EAAMzU,QAAU,CAAEvG,MAEXgb,GAQXhF,aAAc,WAEV,IAAK,IAAI/T,EAAI,EAAGA,EAAIjC,KAAKgkB,QAAQ9hB,OAAQD,IAErCjC,KAAKgkB,QAAQ/hB,GAAGuP,OAAQ,GAShCzP,QAAS,WAEL/B,KAAKwH,OAAOtF,OAAS,EACrBlC,KAAKgkB,QAAQ9hB,OAAS,EACtBlC,KAAKyQ,YAAYvO,OAAS,EAE1BlC,KAAKsC,KAAO,KACZtC,KAAKwT,SAAW,KAChBxT,KAAKwvC,UAAY,OAKzBzuC,EAAOmjB,OAAOriB,UAAUC,YAAcf,EAAOmjB,OAM7Crd,OAAOyF,eAAevL,EAAOmjB,OAAOriB,UAAW,QAAS,CAEpDkF,IAAK,WAED,OAAO/G,KAAKwT,SAASrP,WAAW8C,MAAM3D,GAG1C0D,IAAK,SAAUC,GAEXjH,KAAKwT,SAASrP,WAAW8C,MAAM3D,EAAI2D,KAS3CJ,OAAOyF,eAAevL,EAAOmjB,OAAOriB,UAAW,SAAU,CAErDkF,IAAK,WAED,OAAO/G,KAAKwT,SAASrP,WAAW8C,MAAM1D,GAG1CyD,IAAK,SAAUC,GAEXjH,KAAKwT,SAASrP,WAAW8C,MAAM1D,EAAI0D,KA+B3ClG,EAAOgwC,OAAS,SAAUzuC,EAAM1B,QAEbwF,IAAXxF,IAAwBA,EAAS,MAKrCZ,KAAKsC,KAAOA,EAKZtC,KAAKY,OAASA,EAMdZ,KAAKktC,QAAS,EAMdltC,KAAKS,SAAU,EAMfT,KAAKgxC,cAAe,EAMpBhxC,KAAKixC,WAAY,EAMjBjxC,KAAKkxC,eAAgB,EAMrBlxC,KAAKmxC,WAAY,EAMjBnxC,KAAKoxC,eAAgB,GAGzBrwC,EAAOgwC,OAAOlvC,UAAY,CAOtBoC,UAAW,aASXsjC,OAAQ,aASR1iC,OAAQ,aASRoX,WAAY,aAQZla,QAAS,WAEL/B,KAAKsC,KAAO,KACZtC,KAAKY,OAAS,KACdZ,KAAKktC,QAAS,EACdltC,KAAKS,SAAU,IAKvBM,EAAOgwC,OAAOlvC,UAAUC,YAAcf,EAAOgwC,OAe7ChwC,EAAOswC,cAAgB,SAAU/uC,GAK7BtC,KAAKsC,KAAOA,EAKZtC,KAAKsxC,QAAU,GAMftxC,KAAKuxC,KAAO,EAMZvxC,KAAKwxC,GAAK,GAGdzwC,EAAOswC,cAAcxvC,UAAY,CAW7Bw5B,IAAK,SAAUoW,GAEX,IAAI9e,EAAOrrB,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,GAC7CwI,GAAS,EA6Cb,MA1CsB,mBAAXyW,EAEPA,EAAS,IAAIA,EAAOzxC,KAAKsC,KAAMtC,OAI/ByxC,EAAOnvC,KAAOtC,KAAKsC,KACnBmvC,EAAO7wC,OAASZ,MAIY,mBAArByxC,EAAOxtC,YAGd+2B,EADAyW,EAAOT,cAAe,GAIG,mBAAlBS,EAAOlK,SAGdvM,EADAyW,EAAOR,WAAY,GAIU,mBAAtBQ,EAAOnI,aAGdtO,EADAyW,EAAOP,eAAgB,GAIE,mBAAlBO,EAAO5sC,SAGdm2B,EADAyW,EAAON,WAAY,GAIU,mBAAtBM,EAAOx1B,aAGd+e,EADAyW,EAAOL,eAAgB,GAKvBpW,IAEIyW,EAAOT,cAAgBS,EAAOR,WAAaQ,EAAOP,iBAElDO,EAAOvE,QAAS,IAGhBuE,EAAON,WAAaM,EAAOL,iBAE3BK,EAAOhxC,SAAU,GAGrBT,KAAKuxC,KAAOvxC,KAAKsxC,QAAQ3pC,KAAK8pC,GAGH,mBAAhBA,EAAO//B,MAEd+/B,EAAO//B,KAAKzM,MAAMwsC,EAAQ9e,GAGvB8e,GAIA,MAWfp0B,OAAQ,SAAUo0B,EAAQ1vC,GAMtB,SAJgBqE,IAAZrE,IAAyBA,GAAU,GAEvC/B,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAER,GAAIxxC,KAAKsxC,QAAQtxC,KAAKwxC,MAAQC,EAS1B,OAPI1vC,GAEA0vC,EAAO1vC,UAGX/B,KAAKsxC,QAAQ3oC,OAAO3I,KAAKwxC,GAAI,QAC7BxxC,KAAKuxC,QAWjBlF,UAAW,WAIP,IAFArsC,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAERxxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIzvC,UAG1B/B,KAAKsxC,QAAQpvC,OAAS,EACtBlC,KAAKuxC,KAAO,GAShBttC,UAAW,WAIP,IAFAjE,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAEJxxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAItE,QAAUltC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIR,cAEtDhxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIvtC,aAWlCsjC,OAAQ,WAIJ,IAFAvnC,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAEJxxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAItE,QAAUltC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIP,WAEtDjxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIjK,UAYlC+B,WAAY,WAIR,IAFAtpC,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAEJxxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAItE,QAAUltC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIN,eAEtDlxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIlI,cAWlCzkC,OAAQ,WAIJ,IAFA7E,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAEJxxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAI/wC,SAAWT,KAAKsxC,QAAQtxC,KAAKwxC,IAAIL,WAEvDnxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAI3sC,UAWlCoX,WAAY,WAIR,IAFAjc,KAAKwxC,GAAKxxC,KAAKuxC,KAERvxC,KAAKwxC,MAEJxxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAI/wC,SAAWT,KAAKsxC,QAAQtxC,KAAKwxC,IAAIJ,eAEvDpxC,KAAKsxC,QAAQtxC,KAAKwxC,IAAIv1B,cAUlCla,QAAS,WAEL/B,KAAKqsC,YAELrsC,KAAKsC,KAAO,OAKpBvB,EAAOswC,cAAcxvC,UAAUC,YAAcf,EAAOswC,cAiBpDtwC,EAAO2wC,MAAQ,SAAUpvC,GAKrBtC,KAAKsC,KAAOA,EAEZrC,KAAKkI,uBAAuBpE,KAAK/D,MAMjCA,KAAKq0B,KAAO,cAWZr0B,KAAK2xC,yBAA0B,EAM/B3xC,KAAK+M,QAAS,EAOd/M,KAAKc,eAAiB,IAAIC,EAAOC,QAOjChB,KAAKob,MAAQpb,MAKR4xC,qBAAuB,EAM5B5xC,KAAK6xC,WAAa,SAMlB7xC,KAAK8xC,UAAY,KAMjB9xC,KAAK0b,SAAW,CAAEjY,EAAG,EAAGkY,EAAG,EAAGjZ,EAAG,EAAGD,EAAG,EAAG0U,MAAO,EAAGgV,KAAM,WAErDnsB,KAAKsC,KAAKoV,cAGX1X,KAAK0b,SAASjZ,EAAI,GAGlBH,EAAKgV,QAELtX,KAAK+xC,YAAYzvC,EAAKgV,SAI9BvW,EAAO2wC,MAAM7vC,UAAYgF,OAAOwB,OAAOpI,KAAKkI,uBAAuBtG,WACnEd,EAAO2wC,MAAM7vC,UAAUC,YAAcf,EAAO2wC,MAS5C3wC,EAAO2wC,MAAM7vC,UAAUkwC,YAAc,SAAUz6B,GAEvCA,EAAOq6B,0BAEP3xC,KAAK2xC,wBAA0Br6B,EAAOq6B,yBAGtCr6B,EAAO06B,iBAEPhyC,KAAKiyC,mBAAmB36B,EAAO06B,kBASvCjxC,EAAO2wC,MAAM7vC,UAAUskC,KAAO,WAE1BplC,EAAOmxC,IAAIC,UAAUnyC,KAAKsC,KAAK0V,OAAQhY,KAAKuY,QAE5CxX,EAAO+qB,OAAOsmB,cAAcpyC,KAAKsC,KAAK0V,OAAQ,QAC9CjX,EAAO+qB,OAAOumB,eAAeryC,KAAKsC,KAAK0V,OAAQ,QAE/ChY,KAAKsyC,mBASTvxC,EAAO2wC,MAAM7vC,UAAUoC,UAAY,WAO/B,IAFA,IAAIhC,EAHJjC,KAAK4xC,qBAAuB,EAKrB3vC,EAAIjC,KAAKgC,SAASE,QACzB,CACI,IAAIqG,EAAQvI,KAAKgC,SAASC,GAE1BsG,EAAMtE,YAEFjE,OAASuI,EAAM3H,QAEfqB,MAUZlB,EAAO2wC,MAAM7vC,UAAU0lC,OAAS,WAK5B,IAFA,IAAItlC,EAAIjC,KAAKgC,SAASE,OAEfD,KAEHjC,KAAKgC,SAASC,GAAGslC,UAWzBxmC,EAAO2wC,MAAM7vC,UAAUynC,WAAa,WAGhCtpC,KAAKsC,KAAKwZ,OAAOyrB,SAGbvnC,KAAKsC,KAAKwZ,OAAOjU,SAEjB7H,KAAKsC,KAAKwZ,OAAOjU,OAAOyhC,aAExBtpC,KAAKqC,kBAELrC,KAAKsC,KAAKwZ,OAAOksB,gBAGrB,IAAK,IAAI/lC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGqnC,aAGrBtpC,KAAKqC,mBASTtB,EAAO2wC,MAAM7vC,UAAUQ,gBAAkB,WAErCrC,KAAKa,WAAa,EAElB,IAAK,IAAIoB,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGI,mBAUzBtB,EAAO2wC,MAAM7vC,UAAUywC,gBAAkB,gBAEblsC,IAApBmsC,SAASC,OAETxyC,KAAK6xC,WAAa,wBAEazrC,IAA1BmsC,SAASE,aAEdzyC,KAAK6xC,WAAa,8BAEUzrC,IAAvBmsC,SAASG,UAEd1yC,KAAK6xC,WAAa,2BAESzrC,IAAtBmsC,SAASI,SAEd3yC,KAAK6xC,WAAa,qBAIlB7xC,KAAK6xC,WAAa,KAGtB,IAAIhD,EAAQ7uC,KAEZA,KAAK8xC,UAAY,SAAUc,GAEvB,OAAO/D,EAAMgE,iBAAiBD,IAGlC5yC,KAAK8yC,eAAiB,WAElB,OAAOjE,EAAMiD,UAAU,CAAE/9B,KAAM,WAGnC/T,KAAK+yC,gBAAkB,WAEnB,OAAOlE,EAAMiD,UAAU,CAAE/9B,KAAM,YAGnC/T,KAAKgzC,SAAW,SAAUJ,QAEKxsC,IAAtBmsC,SAASU,UAA4BV,SAASU,YAE/CpE,EAAMgE,iBAAiBD,IAK3B5yC,KAAK6xC,YAELU,SAASW,iBAAiBlzC,KAAK6xC,WAAY7xC,KAAK8xC,WAAW,GAG/D3hC,OAAOgjC,OAASnzC,KAAK8xC,UACrB3hC,OAAOijC,QAAUpzC,KAAK8xC,UAEtB3hC,OAAOkjC,WAAarzC,KAAK8xC,UACzB3hC,OAAOmjC,WAAatzC,KAAK8xC,UAEzB3hC,OAAO+iC,iBAAiB,QAASlzC,KAAKgzC,UAElChzC,KAAKsC,KAAKgqB,OAAOinB,aAAeC,SAASC,MAErCD,SAASC,IAAIC,aAEbF,SAASC,IAAIC,YAAYR,iBAAiBlzC,KAAK8yC,gBAG/CU,SAASC,IAAIE,aAEbH,SAASC,IAAIE,YAAYT,iBAAiBlzC,KAAK+yC,iBAG/CS,SAASC,IAAIG,KAEbJ,SAASC,IAAIG,GAAG,YAAa5zC,KAAK+yC,iBAClCS,SAASC,IAAIG,GAAG,YAAa5zC,KAAK8yC,mBAgB9C/xC,EAAO2wC,MAAM7vC,UAAUgxC,iBAAmB,SAAUD,GAIhD,OAAQA,EAAM7+B,MAEV,IAAK,OACL,IAAK,WAED,YADA/T,KAAKsC,KAAKuxC,UAAUjB,GAExB,IAAK,QACL,IAAK,QACL,IAAK,WAED,YADA5yC,KAAKsC,KAAKwxC,UAAUlB,GAIxB5yC,KAAK2xC,0BAKLY,SAASC,QAAUD,SAASG,WAAaH,SAASI,UAAYJ,SAASE,cAA+B,UAAfG,EAAM7+B,KAE7F/T,KAAKsC,KAAKyxC,WAAWnB,GAIrB5yC,KAAKsC,KAAK0xC,YAAYpB,KAkB9B7xC,EAAO2wC,MAAM7vC,UAAUowC,mBAAqB,SAAU96B,GAE9CnX,KAAKsC,KAAKoV,cAEd3W,EAAOsgB,MAAM4yB,aAAa98B,EAAOnX,KAAK0b,UACtC3a,EAAOsgB,MAAM6yB,YAAYl0C,KAAK0b,UAG9B1b,KAAK0b,SAASjY,GAAK,IACnBzD,KAAK0b,SAASC,GAAK,IACnB3b,KAAK0b,SAAShZ,GAAK,IACnB1C,KAAK0b,SAASjZ,EAAI,IAQtB1B,EAAO2wC,MAAM7vC,UAAUE,QAAU,WAEzB/B,KAAK6xC,YAELU,SAAS4B,oBAAoBn0C,KAAK6xC,WAAY7xC,KAAK8xC,WAAW,GAGlE3hC,OAAOkjC,WAAa,KACpBljC,OAAOmjC,WAAa,KAEpBnjC,OAAOgjC,OAAS,KAChBhjC,OAAOijC,QAAU,KAEjBjjC,OAAOgkC,oBAAoB,QAASn0C,KAAKgzC,WAkB7CjyC,EAAO2wC,MAAM7vC,UAAUw5B,IAAM,SAAU9yB,EAAO6rC,EAAQ3rC,GAElD,OAAIF,EAAM3H,SAAWZ,OAKjBuI,EAAM8rC,MAAQ9rC,EAAM3H,QAAU2H,EAAM3H,OAAO0zC,MAE3C/rC,EAAM3H,OAAO2zC,eAAehsC,QAGlBnC,IAAVqC,EAEAzI,KAAKsI,SAASC,GAIdvI,KAAKwI,WAAWD,EAAOE,IAdhBF,GAyBf1B,OAAOyF,eAAevL,EAAO2wC,MAAM7vC,UAAW,kBAAmB,CAE7DkF,IAAK,WAED,OAAO/G,KAAK0b,SAASvE,OAGzBnQ,IAAK,SAAUmQ,GAEXnX,KAAKiyC,mBAAmB96B,MAWhCtQ,OAAOyF,eAAevL,EAAO2wC,MAAM7vC,UAAW,WAAY,CAEtDkF,IAAK,WAED,OAAO9G,KAAK+N,WAAW+b,UAAY9pB,KAAK+N,WAAWC,QAGvDjH,IAAK,SAAUC,GAIPhH,KAAK+N,WAAW+b,QAFhB9iB,EAE0BhH,KAAK+N,WAAWC,OAIhBhO,KAAK+N,WAAW4O,WAgCtD7b,EAAOyzC,MAAQ,SAAUlyC,EAAM1B,EAAQyzB,EAAMogB,EAAYC,EAAYC,QAE9CvuC,IAAfquC,IAA4BA,GAAa,QAC1BruC,IAAfsuC,IAA4BA,GAAa,QACrBtuC,IAApBuuC,IAAiCA,EAAkB5zC,EAAO6zC,QAAQC,QAOtE70C,KAAKsC,KAAOA,OAEG8D,IAAXxF,IAEAA,EAAS0B,EAAKE,OAOlBxC,KAAKq0B,KAAOA,GAAQ,QAQpBr0B,KAAKkW,EAAI,EAETjW,KAAKkI,uBAAuBpE,KAAK/D,MAE7By0C,GAEAz0C,KAAKsC,KAAK8Y,MAAM9S,SAAStI,MACzBA,KAAKkW,EAAIlW,KAAKsC,KAAK8Y,MAAMpZ,SAASE,QAGlCtB,IAEAA,EAAO0H,SAAStI,MAChBA,KAAKkW,EAAItV,EAAOoB,SAASE,QAQ7BlC,KAAK+T,KAAOhT,EAAOguB,MAMnB/uB,KAAK80C,YAAc/zC,EAAOguB,MAO1B/uB,KAAK+0C,OAAQ,EAOb/0C,KAAK+M,QAAS,EAOd/M,KAAKg1C,eAAgB,EAYrBh1C,KAAKi1C,gBAAiB,EAUtBj1C,KAAKk1C,UAAYn0C,EAAO0E,OAQxBzF,KAAKm1C,OAAS,KAWdn1C,KAAKo1C,qBAAsB,EAQ3Bp1C,KAAKq1C,4BAA6B,EAYlCr1C,KAAKs1C,iBAAmB,IAAIv0C,EAAO0jC,OAanCzkC,KAAKu1C,eAAiB,IAAIx0C,EAAO0jC,OAYjCzkC,KAAKw1C,iBAAmB,IAAIz0C,EAAO0jC,OAYnCzkC,KAAKy1C,gBAAkB,IAAI10C,EAAO0jC,OAUlCzkC,KAAK00C,WAAaA,EASlB10C,KAAK01C,iBAAkB,EAQvB11C,KAAK20C,gBAAkBA,EAkBvB30C,KAAK21C,qBAAuB,KAM5B31C,KAAK41C,UAAY,IAAI70C,EAAO0jC,OAM5BzkC,KAAK61C,YAAc,EAUnB71C,KAAK81C,eAAgB,EAOrB91C,KAAK+1C,aAAe,IAAIh1C,EAAOX,MAa/BJ,KAAKs0C,KAAO,GAOZt0C,KAAKg2C,cAAgB,KAGzBj1C,EAAOyzC,MAAM3yC,UAAYgF,OAAOwB,OAAOpI,KAAKkI,uBAAuBtG,WACnEd,EAAOyzC,MAAM3yC,UAAUC,YAAcf,EAAOyzC,MAO5CzzC,EAAOyzC,MAAMyB,YAAc,EAO3Bl1C,EAAOyzC,MAAM0B,aAAe,EAO5Bn1C,EAAOyzC,MAAM2B,aAAe,EAO5Bp1C,EAAOyzC,MAAM4B,WAAa,EAO1Br1C,EAAOyzC,MAAM6B,gBAAkB,EAO/Bt1C,EAAOyzC,MAAM8B,gBAAkB,EAwB/Bv1C,EAAOyzC,MAAM3yC,UAAUw5B,IAAM,SAAU9yB,EAAO6rC,EAAQ3rC,GAIlD,YAFerC,IAAXguC,IAAwBA,GAAS,GAEjC7rC,EAAM3H,SAAWZ,OAKjBuI,EAAM8rC,MAAQ9rC,EAAM3H,QAAU2H,EAAM3H,OAAO0zC,MAE3C/rC,EAAM3H,OAAO2zC,eAAehsC,QAGlBnC,IAAVqC,GAEAF,EAAM2N,EAAIlW,KAAKgC,SAASE,OAExBlC,KAAKsI,SAASC,KAIdvI,KAAKwI,WAAWD,EAAOE,GAEvBzI,KAAKu2C,WAGLv2C,KAAK00C,YAAcnsC,EAAMmrB,eAAe,SAA0B,OAAfnrB,EAAM8rC,KAEzDr0C,KAAKsC,KAAK4mC,QAAQpvB,OAAOvR,EAAOvI,KAAK20C,iBAEhCpsC,EAAM8rC,MAEXr0C,KAAKw2C,UAAUjuC,IAGfvI,KAAKo1C,qBAAyB7sC,EAAMqgC,QAASrgC,EAAMkuC,eAEnDluC,EAAMkuC,cAAe,IAGpBrC,GAAU7rC,EAAMmuC,QAEjBnuC,EAAMmuC,OAAOC,wBAAwBpuC,EAAOvI,MAG5B,OAAhBA,KAAKm1C,SAELn1C,KAAKm1C,OAAS5sC,IA1CPA,GA+DfxH,EAAOyzC,MAAM3yC,UAAU+0C,MAAQ,SAAUruC,EAAOE,EAAO2rC,GAEnD,OAAOp0C,KAAKq7B,IAAI9yB,EAAO6rC,EAAQ3rC,IAWnC1H,EAAOyzC,MAAM3yC,UAAU20C,UAAY,SAAUjuC,GAEzC,GAAIA,EAAM3H,SAAWZ,OAIF,IAFHA,KAAKs0C,KAAKprC,QAAQX,GAK1B,OADAvI,KAAKs0C,KAAK3sC,KAAKY,IACR,EAIf,OAAO,GAWXxH,EAAOyzC,MAAM3yC,UAAU0yC,eAAiB,SAAUhsC,GAE9C,GAAIA,EACJ,CACI,IAAIE,EAAQzI,KAAKs0C,KAAKprC,QAAQX,GAE9B,IAAe,IAAXE,EAGA,OADAzI,KAAKs0C,KAAK3rC,OAAOF,EAAO,IACjB,EAIf,OAAO,GAoBX1H,EAAOyzC,MAAM3yC,UAAUg1C,YAAc,SAAU70C,EAAUoyC,GAErD,GAAIpyC,aAAoBjB,EAAOyzC,MAE3BxyC,EAAS80C,QAAQ92C,KAAMo0C,QAEtB,GAAI9sC,MAAMC,QAAQvF,GAEnB,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAASE,OAAQD,IAEjCjC,KAAKq7B,IAAIr5B,EAASC,GAAImyC,GAI9B,OAAOpyC,GAUXjB,EAAOyzC,MAAM3yC,UAAUk1C,MAAQ,SAAUtuC,GAErC,OAAIA,EAAQ,GAAKA,GAASzI,KAAKgC,SAASE,QAE5B,EAIDlC,KAAKqJ,WAAWZ,IA2B/B1H,EAAOyzC,MAAM3yC,UAAUwG,OAAS,SAAU/E,EAAGC,EAAG+P,EAAKpG,EAAOH,EAAQtE,QAEjDrC,IAAX2G,IAAwBA,GAAS,GAErC,IAAIxE,EAAQ,IAAIvI,KAAKk1C,UAAUl1C,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,GAMrD,OAJA3E,EAAMwE,OAASA,EACfxE,EAAM9H,QAAUsM,EAChBxE,EAAMwsC,MAAQhoC,EAEP/M,KAAKq7B,IAAI9yB,GAAO,EAAOE,IAoDlC1H,EAAOyzC,MAAM3yC,UAAUm1C,eAAiB,SAAUC,EAAU3jC,EAAKpG,EAAOH,EAAQmqC,EAAUxL,QAExEtlC,IAAV8G,IAAuBA,EAAQ,QACpB9G,IAAX2G,IAAwBA,GAAS,GAEhCzF,MAAMC,QAAQ+L,KAEfA,EAAM,CAAEA,IAGPhM,MAAMC,QAAQ2F,KAEfA,EAAQ,CAAEA,IAGd,IAAI2hC,EAAQ7uC,KACRgC,EAAW,GAiBf,OAfAsR,EAAI0f,QAAQ,SAAUmkB,GAElBjqC,EAAM8lB,QAAQ,SAAUokB,GAEpB,IAAK,IAAIn1C,EAAI,EAAGA,EAAIg1C,EAAUh1C,IAC9B,CACI,IAAIsG,EAAQsmC,EAAMxmC,OAAO,EAAG,EAAG8uC,EAAWC,EAAarqC,GAEnDmqC,GAAYA,EAASnzC,KAAK2nC,GAAmBnjC,EAAOA,EAAOtG,GAE/DD,EAAS2F,KAAKY,QAKnBvG,GAWXjB,EAAOyzC,MAAM3yC,UAAU00C,QAAU,WAI7B,IAFA,IAAIt0C,EAAIjC,KAAKgC,SAASE,OAEfD,KAEHjC,KAAKgC,SAASC,GAAGiU,EAAIjU,GAwD7BlB,EAAOyzC,MAAM3yC,UAAUw1C,MAAQ,SAAU3yC,EAAOC,EAAQ2yC,EAAWC,EAAYp3C,EAAUoY,GAKrF,QAHiBnS,IAAbjG,IAA0BA,EAAWY,EAAOmwB,eACjC9qB,IAAXmS,IAAwBA,EAAS,GAER,IAAzBvY,KAAKgC,SAASE,QAAgBqW,EAASvY,KAAKgC,SAASE,SAAsB,IAAXwC,IAA4B,IAAZC,EAEhF,OAAO,EAOX,IAJA,IAAIlB,EAAI,IAAI1C,EAAOS,UAAU,EAAG,EAAG81C,EAAWC,GAC1CphC,EAAKzR,EAAQ4yC,EACb7xB,EAAK9gB,EAAS4yC,EAETt1C,EAAIsW,EAAQtW,EAAIjC,KAAKgC,SAASE,OAAQD,IAC/C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAE1B,GAAIsG,EAAMivC,QASV,GAPIjvC,EAAMivC,QAAQ/zC,EAAGtD,IAON,IAAXuE,EAGAjB,EAAEF,GAAKg0C,EAEH9zC,EAAEF,IAAMkiB,IAERhiB,EAAEH,GAAKg0C,EACP7zC,EAAEF,EAAI,QAGT,IAAgB,IAAZoB,EAGLlB,EAAEH,GAAKg0C,EAEH7zC,EAAEH,IAAM6S,IAER1S,EAAEH,EAAI,EACNG,EAAEF,GAAKg0C,QAQX,GAFA9zC,EAAEH,GAAKg0C,EAEH7zC,EAAEH,IAAM6S,IAER1S,EAAEH,EAAI,EACNG,EAAEF,GAAKg0C,EAEH9zC,EAAEF,IAAMkiB,GAGR,OAAO,EAMvB,OAAO,GAYX1kB,EAAOyzC,MAAM3yC,UAAU41C,YAAc,SAAUhvC,GAS3C,QAPcrC,IAAVqC,IAAuBA,EAAQ,GAE/BA,EAAQzI,KAAKgC,SAASE,OAAS,IAE/BuG,EAAQ,GAGRzI,KAAKm1C,OAIL,OAFAn1C,KAAK61C,YAAcptC,EACnBzI,KAAKm1C,OAASn1C,KAAKgC,SAAShC,KAAK61C,aAC1B71C,KAAKm1C,QAYpBp0C,EAAOyzC,MAAM3yC,UAAU61C,KAAO,WAE1B,GAAI13C,KAAKm1C,OAcL,OAXIn1C,KAAK61C,aAAe71C,KAAKgC,SAASE,OAAS,EAE3ClC,KAAK61C,YAAc,EAInB71C,KAAK61C,cAGT71C,KAAKm1C,OAASn1C,KAAKgC,SAAShC,KAAK61C,aAE1B71C,KAAKm1C,QAYpBp0C,EAAOyzC,MAAM3yC,UAAU81C,SAAW,WAE9B,GAAI33C,KAAKm1C,OAcL,OAXyB,IAArBn1C,KAAK61C,YAEL71C,KAAK61C,YAAc71C,KAAKgC,SAASE,OAAS,EAI1ClC,KAAK61C,cAGT71C,KAAKm1C,OAASn1C,KAAKgC,SAAShC,KAAK61C,aAE1B71C,KAAKm1C,QAapBp0C,EAAOyzC,MAAM3yC,UAAU+1C,KAAO,SAAUC,EAAQ/uC,GAE5C9I,KAAK6I,aAAagvC,EAAQ/uC,GAC1B9I,KAAKu2C,WAUTx1C,EAAOyzC,MAAM3yC,UAAUi2C,WAAa,SAAUvvC,GAQ1C,OANIA,EAAM3H,SAAWZ,MAAQA,KAAK+3C,SAASxvC,GAASvI,KAAKgC,SAASE,SAE9DlC,KAAKqd,OAAO9U,GAAO,GAAO,GAC1BvI,KAAKq7B,IAAI9yB,GAAO,IAGbA,GAOXxH,EAAOyzC,MAAM3yC,UAAU0H,gBAAkBxI,EAAOyzC,MAAM3yC,UAAUi2C,WAShE/2C,EAAOyzC,MAAM3yC,UAAUm2C,WAAa,SAAUzvC,GAQ1C,OANIA,EAAM3H,SAAWZ,MAA+B,EAAvBA,KAAK+3C,SAASxvC,KAEvCvI,KAAKqd,OAAO9U,GAAO,GAAO,GAC1BvI,KAAK42C,MAAMruC,EAAO,GAAG,IAGlBA,GAOXxH,EAAOyzC,MAAM3yC,UAAU2H,gBAAkBzI,EAAOyzC,MAAM3yC,UAAUm2C,WAShEj3C,EAAOyzC,MAAM3yC,UAAUo2C,OAAS,SAAU1vC,GAEtC,GAAIA,EAAM3H,SAAWZ,MAAQA,KAAK+3C,SAASxvC,GAASvI,KAAKgC,SAASE,OAAS,EAC3E,CACI,IAAIO,EAAIzC,KAAK+3C,SAASxvC,GAClB7F,EAAI1C,KAAK+2C,MAAMt0C,EAAI,GAEnBC,GAEA1C,KAAK43C,KAAKrvC,EAAO7F,GAIzB,OAAO6F,GAUXxH,EAAOyzC,MAAM3yC,UAAUq2C,SAAW,SAAU3vC,GAExC,GAAIA,EAAM3H,SAAWZ,MAA+B,EAAvBA,KAAK+3C,SAASxvC,GAC3C,CACI,IAAI9F,EAAIzC,KAAK+3C,SAASxvC,GAClB7F,EAAI1C,KAAK+2C,MAAMt0C,EAAI,GAEnBC,GAEA1C,KAAK43C,KAAKrvC,EAAO7F,GAIzB,OAAO6F,GAWXxH,EAAOyzC,MAAM3yC,UAAUs2C,GAAK,SAAU1vC,EAAOnF,EAAGC,GAE5C,GAAIkF,EAAQ,GAAKA,EAAQzI,KAAKgC,SAASE,OAEnC,OAAQ,EAIRlC,KAAKqJ,WAAWZ,GAAOnF,EAAIA,EAC3BtD,KAAKqJ,WAAWZ,GAAOlF,EAAIA,GAWnCxC,EAAOyzC,MAAM3yC,UAAU2d,QAAU,WAE7Bxf,KAAKgC,SAASwd,UACdxf,KAAKu2C,WAUTx1C,EAAOyzC,MAAM3yC,UAAUk2C,SAAW,SAAUxvC,GAExC,OAAOvI,KAAKgC,SAASkH,QAAQX,IAYjCxH,EAAOyzC,MAAM3yC,UAAUu2C,UAAY,SAAU/jB,GAEzC,OAAOr0B,KAAKq4C,SAAS,OAAQhkB,IAejCtzB,EAAOyzC,MAAM3yC,UAAU40B,QAAU,SAAU6hB,EAAUC,GAEjD,IAAI9vC,EAAQzI,KAAK+3C,SAASO,GAE1B,IAAe,IAAX7vC,EAkBA,OAhBI8vC,EAAS33C,SAEL23C,EAAS33C,kBAAkBG,EAAOyzC,MAElC+D,EAAS33C,OAAOyc,OAAOk7B,GAIvBA,EAAS33C,OAAO8H,YAAY6vC,IAIpCv4C,KAAKqd,OAAOi7B,GAEZt4C,KAAK42C,MAAM2B,EAAU9vC,GAEd6vC,GAcfv3C,EAAOyzC,MAAM3yC,UAAU22C,YAAc,SAAUjwC,EAAO+K,GAElD,IAAI6f,EAAM7f,EAAIpR,OAEd,OAAY,IAARixB,GAAa7f,EAAI,KAAM/K,IAIV,IAAR4qB,GAAa7f,EAAI,KAAM/K,GAAS+K,EAAI,KAAM/K,EAAM+K,EAAI,MAI5C,IAAR6f,GAAa7f,EAAI,KAAM/K,GAAS+K,EAAI,KAAM/K,EAAM+K,EAAI,KAAOA,EAAI,KAAM/K,EAAM+K,EAAI,IAAIA,EAAI,KAI/E,IAAR6f,GAAa7f,EAAI,KAAM/K,GAAS+K,EAAI,KAAM/K,EAAM+K,EAAI,KAAOA,EAAI,KAAM/K,EAAM+K,EAAI,IAAIA,EAAI,KAAOA,EAAI,KAAM/K,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,OA0B/IvS,EAAOyzC,MAAM3yC,UAAU6yB,YAAc,SAAUnsB,EAAO+K,EAAKrM,EAAOwxC,EAAW3R,GAoBzE,QAlBc1gC,IAAV0gC,IAAuBA,GAAQ,GAEnC2R,EAAYA,GAAa,GAgBpBz4C,KAAKw4C,YAAYjwC,EAAO+K,MAAUwzB,GAAqB,EAAZ2R,GAE5C,OAAO,EAGX,IAAItlB,EAAM7f,EAAIpR,OAmCd,OAjCY,IAARixB,EAEkB,IAAdslB,EAAmBlwC,EAAM+K,EAAI,IAAMrM,EAChB,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,KAAOrM,EACtB,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,KAAOrM,EACtB,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,KAAOrM,EACtB,IAAdwxC,IAAmBlwC,EAAM+K,EAAI,KAAOrM,GAEhC,IAARksB,EAEa,IAAdslB,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAMrM,EACxB,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,KAAOrM,EAC9B,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,KAAOrM,EAC9B,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,KAAOrM,EAC9B,IAAdwxC,IAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,KAAOrM,GAExC,IAARksB,EAEa,IAAdslB,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAMrM,EAChC,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,EACtC,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,EACtC,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,EACtC,IAAdwxC,IAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,GAEhD,IAARksB,IAEa,IAAdslB,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAMrM,EACxC,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,EAC9C,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,EAC9C,IAAdwxC,EAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,EAC9C,IAAdwxC,IAAmBlwC,EAAM+K,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAIA,EAAI,KAAOrM,KAGlE,GAaXlG,EAAOyzC,MAAM3yC,UAAU62C,cAAgB,SAAUnwC,EAAO+K,EAAKrM,EAAO6/B,GAIhE,QAFc1gC,IAAV0gC,IAAuBA,GAAQ,GAE/B9mC,OAASuI,EAAM3H,OAEf,OAAO,EAGX,IAAIo6B,EAASj6B,EAAO8yB,MAAMM,YAAY5rB,EAAO+K,GAE7C,aAAiBlN,IAAX40B,GAAyB8L,GAAW9L,IAAW/zB,IAuBzDlG,EAAOyzC,MAAM3yC,UAAUmF,IAAM,SAAUuB,EAAO+K,EAAKrM,EAAO0xC,EAAYC,EAAcH,EAAW3R,GAS3F,QAPc1gC,IAAV0gC,IAAuBA,GAAQ,GAEnCxzB,EAAMA,EAAI4gB,MAAM,UAEG9tB,IAAfuyC,IAA4BA,GAAa,QACxBvyC,IAAjBwyC,IAA8BA,GAAe,KAE7B,IAAfD,GAAyBA,GAAcpwC,EAAMwsC,UAA6B,IAAjB6D,GAA2BA,GAAgBrwC,EAAM9H,SAE3G,OAAOT,KAAK00B,YAAYnsB,EAAO+K,EAAKrM,EAAOwxC,EAAW3R,IAoB9D/lC,EAAOyzC,MAAM3yC,UAAUg3C,OAAS,SAAUvlC,EAAKrM,EAAO0xC,EAAYC,EAAcH,EAAW3R,QAEpE1gC,IAAfuyC,IAA4BA,GAAa,QACxBvyC,IAAjBwyC,IAA8BA,GAAe,QACnCxyC,IAAV0gC,IAAuBA,GAAQ,GAEnCxzB,EAAMA,EAAI4gB,MAAM,KAChBukB,EAAYA,GAAa,EAIzB,IAFA,IAAItlB,EAAMnzB,KAAKgC,SAASE,OAEfD,EAAI,EAAGA,EAAIkxB,EAAKlxB,IACzB,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAEpB02C,IAAcpwC,EAAMwsC,OAAY6D,IAAgBrwC,EAAM9H,SAExDT,KAAK00B,YAAYnsB,EAAO+K,EAAKrM,EAAOwxC,EAAW3R,KAqB3D/lC,EAAOyzC,MAAM3yC,UAAUi3C,eAAiB,SAAUxlC,EAAKrM,EAAO0xC,EAAYC,EAAcH,EAAW3R,QAE5E1gC,IAAfuyC,IAA4BA,GAAa,QACxBvyC,IAAjBwyC,IAA8BA,GAAe,QACnCxyC,IAAV0gC,IAAuBA,GAAQ,GAEnC2R,EAAYA,GAAa,EAIzB,IAFA,IAAItlB,EAAMnzB,KAAKgC,SAASE,OAEfD,EAAI,EAAGA,EAAIkxB,EAAKlxB,IACzB,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAEpB02C,IAAcpwC,EAAMwsC,OAAY6D,IAAgBrwC,EAAM9H,UAEpD8H,aAAiBxH,EAAOyzC,MAExBjsC,EAAMuwC,eAAexlC,EAAKrM,EAAO0xC,EAAYC,EAAcH,EAAW3R,GAItE9mC,KAAK00B,YAAYnsB,EAAO+K,EAAI4gB,MAAM,KAAMjtB,EAAOwxC,EAAW3R,MAmB1E/lC,EAAOyzC,MAAM3yC,UAAUk3C,SAAW,SAAUzlC,EAAKrM,EAAO0xC,EAAYC,EAAc9R,QAE3D1gC,IAAfuyC,IAA4BA,GAAa,QACxBvyC,IAAjBwyC,IAA8BA,GAAe,QACnCxyC,IAAV0gC,IAAuBA,GAAQ,GAEnC,IAAK,IAAI7kC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAE1B,KAAM02C,GAAcpwC,EAAMwsC,UAAY6D,GAAgBrwC,EAAM9H,WAEnDT,KAAK04C,cAAcnwC,EAAO+K,EAAKrM,EAAO6/B,GAEvC,OAAO,EAKnB,OAAO,GAeX/lC,EAAOyzC,MAAM3yC,UAAUm3C,SAAW,SAAU1lC,EAAKrM,EAAO0xC,EAAYC,QAE7CxyC,IAAfuyC,IAA4BA,GAAa,QACxBvyC,IAAjBwyC,IAA8BA,GAAe,GAEjD,IAAK,IAAI32C,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAE1B,KAAM02C,GAAcpwC,EAAMwsC,UAAY6D,GAAgBrwC,EAAM9H,UAEpDT,KAAK04C,cAAcnwC,EAAO+K,EAAKrM,GAE/B,OAAO,EAKnB,OAAO,GAcXlG,EAAOyzC,MAAM3yC,UAAUo3C,OAAS,SAAUC,EAAUC,EAAQR,EAAYC,GAEpE54C,KAAK64C,OAAOK,EAAUC,EAAQR,EAAYC,EAAc,IAc5D73C,EAAOyzC,MAAM3yC,UAAUu3C,OAAS,SAAUF,EAAUC,EAAQR,EAAYC,GAEpE54C,KAAK64C,OAAOK,EAAUC,EAAQR,EAAYC,EAAc,IAc5D73C,EAAOyzC,MAAM3yC,UAAUw3C,YAAc,SAAUH,EAAUC,EAAQR,EAAYC,GAEzE54C,KAAK64C,OAAOK,EAAUC,EAAQR,EAAYC,EAAc,IAc5D73C,EAAOyzC,MAAM3yC,UAAUy3C,UAAY,SAAUJ,EAAUC,EAAQR,EAAYC,GAEvE54C,KAAK64C,OAAOK,EAAUC,EAAQR,EAAYC,EAAc,IAQ5D73C,EAAOyzC,MAAM3yC,UAAU03C,KAAO,WAE1Bv5C,KAAK+0C,OAAQ,EACb/0C,KAAK+M,QAAS,EACd/M,KAAKS,SAAU,GAQnBM,EAAOyzC,MAAM3yC,UAAU23C,QAAU,WAE7Bx5C,KAAKy5C,cAAc,QAAQ,IAQ/B14C,EAAOyzC,MAAM3yC,UAAU63C,OAAS,WAE5B15C,KAAK+0C,OAAQ,EACb/0C,KAAK+M,QAAS,EACd/M,KAAKS,SAAU,GAQnBM,EAAOyzC,MAAM3yC,UAAU83C,UAAY,WAE/B35C,KAAKy5C,cAAc,UAAU,IAajC14C,EAAOyzC,MAAM3yC,UAAU+3C,SAAW,SAAUt2C,EAAGC,EAAG+P,EAAKpG,EAAO2sC,GAE1D75C,KAAKgzB,QAAQhzB,KAAK85C,WAAY95C,KAAM65C,EAAav2C,EAAGC,EAAG+P,EAAKpG,IAahEnM,EAAOyzC,MAAM3yC,UAAU43C,cAAgB,SAAUvC,EAAU6C,GAEvD,IAAIpnB,EAEJ,GAAuB,EAAnBH,UAAUtwB,OACd,CACIywB,EAAO,GAEP,IAAK,IAAI1wB,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5B,IAASA,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAEtBsG,EAAMwE,SAAWgtC,GAAexxC,EAAM2uC,IAEtC3uC,EAAM2uC,GAAUjyC,MAAMsD,EAAOoqB,KAczC5xB,EAAOyzC,MAAM3yC,UAAUm4C,kBAAoB,SAAUzxC,EAAO2uC,EAAUh1C,GAIlE,GAAe,IAAXA,GAEA,GAAIqG,EAAM2uC,EAAS,IAEf,OAAO3uC,EAAM2uC,EAAS,SAGzB,GAAe,IAAXh1C,GAEL,GAAIqG,EAAM2uC,EAAS,IAAIA,EAAS,IAE5B,OAAO3uC,EAAM2uC,EAAS,IAAIA,EAAS,SAGtC,GAAe,IAAXh1C,GAEL,GAAIqG,EAAM2uC,EAAS,IAAIA,EAAS,IAAIA,EAAS,IAEzC,OAAO3uC,EAAM2uC,EAAS,IAAIA,EAAS,IAAIA,EAAS,SAGnD,GAAe,IAAXh1C,GAEL,GAAIqG,EAAM2uC,EAAS,IAAIA,EAAS,IAAIA,EAAS,IAAIA,EAAS,IAEtD,OAAO3uC,EAAM2uC,EAAS,IAAIA,EAAS,IAAIA,EAAS,IAAIA,EAAS,SAGhE,GAAI3uC,EAAM2uC,GAEX,OAAO3uC,EAAM2uC,GAGjB,OAAO,GAcXn2C,EAAOyzC,MAAM3yC,UAAUo4C,QAAU,SAAUC,EAAQvsC,GAE/C,QAAevH,IAAX8zC,EAAJ,CAQA,IAgBIvnB,EAhBAwnB,GAFJD,EAASA,EAAOhmB,MAAM,MAEIhyB,OAE1B,GAAIyL,MAAAA,GAAyD,KAAZA,EAE7CA,EAAU,UAKV,GAAuB,iBAAZA,EAGP,IAAIysC,GADJzsC,EAAUA,EAAQumB,MAAM,MACIhyB,OAMpC,GAAuB,EAAnBswB,UAAUtwB,OACd,CACIywB,EAAO,GAEP,IAAK,IAAI1wB,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5B,IAAIi1C,EAAW,KACXxL,EAAkB,KAEtB,IAASzpC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAE1Bi1C,EAAWl3C,KAAKg6C,kBAAkBzxC,EAAO2xC,EAAQC,GAE7CxsC,GAAWupC,GAEXxL,EAAkB1rC,KAAKg6C,kBAAkBzxC,EAAOoF,EAASysC,GAEzDlD,EAASjyC,MAAMymC,EAAiB/Y,IAE3BukB,GAELA,EAASjyC,MAAMsD,EAAOoqB,MAUlC5xB,EAAOyzC,MAAM3yC,UAAUoC,UAAY,WAE/B,GAAIjE,KAAKi1C,eAGL,OADAj1C,KAAK+B,WACE,EAGX,IAAK/B,KAAK+M,SAAW/M,KAAKY,OAAOmM,OAG7B,QADA/M,KAAKq6C,eAAiB,GAU1B,IAFA,IAAIp4C,EAAI,EAEDA,EAAIjC,KAAKgC,SAASE,QACzB,CACI,IAAIqG,EAAQvI,KAAKgC,SAASC,GAE1BsG,EAAMtE,YAEFjE,OAASuI,EAAM3H,QAEfqB,IAIR,OAAO,GAWXlB,EAAOyzC,MAAM3yC,UAAU0lC,OAAS,WAK5B,IAFA,IAAItlC,EAAIjC,KAAKgC,SAASE,OAEfD,KACP,CACI,IAAIkxB,EAAMnzB,KAAKgC,SAASE,OAEfixB,GAALlxB,IAAYA,EAAIkxB,EAAM,GAE1B,IAAI5qB,EAAQvI,KAAKgC,SAASC,GAErBjC,KAAKq1C,6BAA8B9sC,EAAMwE,QAE1CxE,EAAMg/B,WAUlBxmC,EAAOyzC,MAAM3yC,UAAUynC,WAAa,WAG5BtpC,KAAK81C,gBAEL91C,KAAKsD,GAAKtD,KAAKsC,KAAKwZ,OAAO/D,KAAKzU,EAAItD,KAAK+1C,aAAazyC,GAAKtD,KAAKsC,KAAKwZ,OAAOzb,MAAMiD,EAClFtD,KAAKuD,GAAKvD,KAAKsC,KAAKwZ,OAAO/D,KAAKxU,EAAIvD,KAAK+1C,aAAaxyC,GAAKvD,KAAKsC,KAAKwZ,OAAOzb,MAAMkD,GAGtF,IAAK,IAAItB,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGqnC,cAqBzBvoC,EAAOyzC,MAAM3yC,UAAU2lB,OAAS,SAAU8yB,EAAWT,GAMjD,IAJA,IAAIpxC,GAAS,EACTvG,EAASlC,KAAKgC,SAASE,OACvB85B,EAAU,KAELvzB,EAAQvG,GACjB,CACI,IAAIqG,EAAQvI,KAAKgC,SAASyG,GAErBoxC,IAAetxC,EAAMwE,QAElButC,EAAU/xC,EAAOE,EAAOzI,KAAKgC,WAE7Bg6B,EAAQr0B,KAAKY,GAKzB,OAAO,IAAIxH,EAAOw5C,SAASve,IAoB/Bj7B,EAAOyzC,MAAM3yC,UAAUmxB,QAAU,SAAUkkB,EAAUxL,EAAiBmO,GAIlE,QAFoBzzC,IAAhByzC,IAA6BA,GAAc,GAE3CrnB,UAAUtwB,QAAU,EAEpB,IAAK,IAAID,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAErB43C,IAAetxC,EAAMwE,QAEtBmqC,EAASnzC,KAAK2nC,EAAiBnjC,OAK3C,CAKI,IAAIoqB,EAAO,CAAE,MAEb,IAAS1wB,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAGxB,IAASA,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACQsG,EAAQvI,KAAKgC,SAASC,GAErB43C,IAAetxC,EAAMwE,SAEtB4lB,EAAK,GAAKpqB,EACV2uC,EAASjyC,MAAMymC,EAAiB/Y,OAgBhD5xB,EAAOyzC,MAAM3yC,UAAU24C,cAAgB,SAAUtD,EAAUxL,GAEvD,IAAI/Y,EAEJ,GAAuB,EAAnBH,UAAUtwB,OACd,CACIywB,EAAO,CAAE,MAET,IAAK,IAAI1wB,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5BjC,KAAKy6C,QAAQ,UAAU,EAAM15C,EAAOyzC,MAAM0B,aAAcgB,EAAUxL,EAAiB/Y,IAavF5xB,EAAOyzC,MAAM3yC,UAAU64C,aAAe,SAAUxD,EAAUxL,GAEtD,IAAI/Y,EAEJ,GAAuB,EAAnBH,UAAUtwB,OACd,CACIywB,EAAO,CAAE,MAET,IAAK,IAAI1wB,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5BjC,KAAKy6C,QAAQ,SAAS,EAAM15C,EAAOyzC,MAAM0B,aAAcgB,EAAUxL,EAAiB/Y,IAatF5xB,EAAOyzC,MAAM3yC,UAAU84C,YAAc,SAAUzD,EAAUxL,GAErD,IAAI/Y,EAEJ,GAAuB,EAAnBH,UAAUtwB,OACd,CACIywB,EAAO,CAAE,MAET,IAAK,IAAI1wB,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAElC0wB,EAAKhrB,KAAK6qB,UAAUvwB,IAI5BjC,KAAKy6C,QAAQ,SAAS,EAAO15C,EAAOyzC,MAAM0B,aAAcgB,EAAUxL,EAAiB/Y,IAiBvF5xB,EAAOyzC,MAAM3yC,UAAUs/B,KAAO,SAAU7tB,EAAKsnC,GAErC56C,KAAKgC,SAASE,OAAS,SAMfkE,IAARkN,IAAqBA,EAAM,UACjBlN,IAAVw0C,IAAuBA,EAAQ75C,EAAOyzC,MAAM6B,gBAEhDr2C,KAAKg2C,cAAgB1iC,EAEjBsnC,IAAU75C,EAAOyzC,MAAM6B,eAEvBr2C,KAAKgC,SAASm/B,KAAKnhC,KAAK66C,qBAAqBxoB,KAAKryB,OAIlDA,KAAKgC,SAASm/B,KAAKnhC,KAAK86C,sBAAsBzoB,KAAKryB,OAGvDA,KAAKu2C,YAaTx1C,EAAOyzC,MAAM3yC,UAAUk5C,WAAa,SAAUC,EAAartC,GAEnD3N,KAAKgC,SAASE,OAAS,IAM3BlC,KAAKgC,SAASm/B,KAAK6Z,EAAY3oB,KAAK1kB,IAEpC3N,KAAKu2C,YAWTx1C,EAAOyzC,MAAM3yC,UAAUg5C,qBAAuB,SAAUp4C,EAAGC,GAEvD,OAAID,EAAEzC,KAAKg2C,eAAiBtzC,EAAE1C,KAAKg2C,gBAEvB,EAEHvzC,EAAEzC,KAAKg2C,eAAiBtzC,EAAE1C,KAAKg2C,eAE7B,EAGPvzC,EAAEyT,EAAIxT,EAAEwT,GAEA,EAID,GAYfnV,EAAOyzC,MAAM3yC,UAAUi5C,sBAAwB,SAAUr4C,EAAGC,GAExD,OAAID,EAAEzC,KAAKg2C,eAAiBtzC,EAAE1C,KAAKg2C,eAExB,EAEFvzC,EAAEzC,KAAKg2C,eAAiBtzC,EAAE1C,KAAKg2C,gBAE5B,EAID,GAgCfj1C,EAAOyzC,MAAM3yC,UAAU44C,QAAU,SAAUnnC,EAAKrM,EAAOg0C,EAAY/D,EAAUxL,EAAiB/Y,GAE1F,GAA6B,IAAzB3yB,KAAKgC,SAASE,OAClB,CACI,GAAI+4C,IAAel6C,EAAOyzC,MAAM0B,aAE5B,OAAO,EAEN,GAAI+E,IAAel6C,EAAOyzC,MAAM4B,WAEjC,MAAO,GAIf,IAAI8E,EAAQ,EAEZ,GAAID,IAAel6C,EAAOyzC,MAAM4B,WAE5B,IAAIve,EAAS,GAGjB,IAAK,IAAI51B,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtC,GAAIjC,KAAKgC,SAASC,GAAGqR,KAASrM,EAC9B,CAgBI,GAfAi0C,IAEIhE,IAEIvkB,GAEAA,EAAK,GAAK3yB,KAAKgC,SAASC,GACxBi1C,EAASjyC,MAAMymC,EAAiB/Y,IAIhCukB,EAASnzC,KAAK2nC,EAAiB1rC,KAAKgC,SAASC,KAIjDg5C,IAAel6C,EAAOyzC,MAAM2B,aAE5B,OAAOn2C,KAAKgC,SAASC,GAEhBg5C,IAAel6C,EAAOyzC,MAAM4B,YAEjCve,EAAOlwB,KAAK3H,KAAKgC,SAASC,IAKtC,OAAIg5C,IAAel6C,EAAOyzC,MAAM0B,aAErBgF,EAEFD,IAAel6C,EAAOyzC,MAAM4B,WAE1Bve,EAKA,MAYf92B,EAAOyzC,MAAM3yC,UAAUw2C,SAAW,SAAU/kC,EAAKrM,GAE7C,OAAOjH,KAAKy6C,QAAQnnC,EAAKrM,EAAOlG,EAAOyzC,MAAM2B,eAsBjDp1C,EAAOyzC,MAAM3yC,UAAUs5C,eAAiB,SAAUpuC,EAAQquC,EAAc93C,EAAGC,EAAG+P,EAAKpG,QAE1D9G,IAAjBg1C,IAA8BA,GAAe,GAE3B,kBAAXruC,IAEPA,GAAS,GAGb,IAAIxE,EAAQvI,KAAKq4C,SAAS,SAAUtrC,GAEpC,OAAkB,OAAVxE,GAAkB6yC,EAAgBp7C,KAAKqI,OAAO/E,EAAGC,EAAG+P,EAAKpG,GAASlN,KAAK85C,WAAWvxC,EAAOjF,EAAGC,EAAG+P,EAAKpG,IAuBhHnM,EAAOyzC,MAAM3yC,UAAUw5C,cAAgB,SAAUD,EAAc93C,EAAGC,EAAG+P,EAAKpG,QAEjD9G,IAAjBg1C,IAA8BA,GAAe,GAEjD,IAAI7yC,EAAQvI,KAAKq4C,SAAS,SAAS,GAEnC,OAAkB,OAAV9vC,GAAkB6yC,EAAgBp7C,KAAKqI,OAAO/E,EAAGC,EAAG+P,EAAKpG,GAASlN,KAAK85C,WAAWvxC,EAAOjF,EAAGC,EAAG+P,EAAKpG,IAuBhHnM,EAAOyzC,MAAM3yC,UAAUy5C,aAAe,SAAUF,EAAc93C,EAAGC,EAAG+P,EAAKpG,QAEhD9G,IAAjBg1C,IAA8BA,GAAe,GAEjD,IAAI7yC,EAAQvI,KAAKq4C,SAAS,SAAS,GAEnC,OAAkB,OAAV9vC,GAAkB6yC,EAAgBp7C,KAAKqI,OAAO/E,EAAGC,EAAG+P,EAAKpG,GAASlN,KAAK85C,WAAWvxC,EAAOjF,EAAGC,EAAG+P,EAAKpG,IAkBhHnM,EAAOyzC,MAAM3yC,UAAUi4C,WAAa,SAAUvxC,EAAOjF,EAAGC,EAAG+P,EAAKpG,GAE5D,OAAc,OAAV3E,EAEO,WAGDnC,IAAN9C,IAAmBA,EAAI,WACjB8C,IAAN7C,IAAmBA,EAAI,MAEjB,OAAND,GAAoB,OAANC,GAEdgF,EAAMigC,MAAMllC,EAAGC,QAGP6C,IAARkN,GAEA/K,EAAMgzC,YAAYjoC,EAAKpG,GAGpB3E,IAWXxH,EAAOyzC,MAAM3yC,UAAU25C,OAAS,WAE5B,GAA2B,EAAvBx7C,KAAKgC,SAASE,OAEd,OAAOlC,KAAKgC,SAAShC,KAAKgC,SAASE,OAAS,IAYpDnB,EAAOyzC,MAAM3yC,UAAU45C,UAAY,WAE/B,GAA2B,EAAvBz7C,KAAKgC,SAASE,OAEd,OAAOlC,KAAKgC,SAAS,IAsB7BjB,EAAOyzC,MAAM3yC,UAAU65C,aAAe,SAAUC,EAAQzE,EAAUxL,GAM9D,IAJA,IAAI/T,EAAWsK,OAAOC,UAClB0Z,EAAe,EACf5gB,EAAS,KAEJ/4B,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAEtBsG,EAAMwE,SAEN6uC,EAAe34C,KAAK81B,IAAIh4B,EAAOX,MAAMu3B,SAASgkB,EAAQpzC,KAEnCovB,KAAcuf,GAAYA,EAASnzC,KAAK2nC,EAAiBnjC,EAAOqzC,MAE/EjkB,EAAWikB,EACX5gB,EAASzyB,GAKrB,OAAOyyB,GAqBXj6B,EAAOyzC,MAAM3yC,UAAUg6C,gBAAkB,SAAUF,EAAQzE,EAAUxL,GAMjE,IAJA,IAAI/T,EAAW,EACXikB,EAAe,EACf5gB,EAAS,KAEJ/4B,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAEtBsG,EAAMwE,QAIa4qB,GAFnBikB,EAAe34C,KAAK81B,IAAIh4B,EAAOX,MAAMu3B,SAASgkB,EAAQpzC,QAErB2uC,GAAYA,EAASnzC,KAAK2nC,EAAiBnjC,EAAOqzC,MAE/EjkB,EAAWikB,EACX5gB,EAASzyB,GAKrB,OAAOyyB,GAWXj6B,EAAOyzC,MAAM3yC,UAAU4d,MAAQ,SAAUnM,EAAKrM,GAE1C,OAAOjH,KAAKy6C,QAAQnnC,EAAKrM,EAAOlG,EAAOyzC,MAAM0B,eASjDn1C,EAAOyzC,MAAM3yC,UAAUi6C,YAAc,WAEjC,OAAO97C,KAAKyf,MAAM,SAAS,IAS/B1e,EAAOyzC,MAAM3yC,UAAUk6C,UAAY,WAE/B,OAAO/7C,KAAKyf,MAAM,SAAS,IAW/B1e,EAAOyzC,MAAM3yC,UAAUm6C,UAAY,SAAUp1B,EAAY1kB,GAKrD,YAHmBkE,IAAfwgB,IAA4BA,EAAa,QAC9BxgB,IAAXlE,IAAwBA,EAASlC,KAAKgC,SAASE,QAEpC,IAAXA,EAEO,KAGJnB,EAAOk7C,WAAWC,cAAcl8C,KAAKgC,SAAU4kB,EAAY1kB,IAetEnB,EAAOyzC,MAAM3yC,UAAUs6C,gBAAkB,SAAUv1B,EAAYjd,GAE3D,IAAIyyC,EAAOp8C,KAAKq8C,OAAO,UAAU,EAAMz1B,EAAYjd,GAEnD,OAAO3J,KAAKsC,KAAKwlC,IAAIwU,KAAKF,IAqB9Br7C,EAAOyzC,MAAM3yC,UAAUw6C,OAAS,SAAUnD,EAAUjyC,EAAO2f,EAAYjd,QAEhDvD,IAAfwgB,IAA4BA,EAAa,QAC5BxgB,IAAbuD,IAA0BA,EAAW3J,KAAKgC,SAASE,QAIvD,IAFA,IAAI21B,EAAS,GAEJ51B,EAAI2kB,EAAY3kB,EAAI0H,EAAU1H,IACvC,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAEtBi3C,EAEI3wC,EAAM2wC,KAAcjyC,GAEpB4wB,EAAOlwB,KAAKY,GAKhBsvB,EAAOlwB,KAAKY,GAIpB,OAAOsvB,GAgBX92B,EAAOyzC,MAAM3yC,UAAUwb,OAAS,SAAU9U,EAAOxG,EAASqyC,GAKtD,QAHgBhuC,IAAZrE,IAAyBA,GAAU,QACxBqE,IAAXguC,IAAwBA,GAAS,GAER,IAAzBp0C,KAAKgC,SAASE,SAAkD,IAAlClC,KAAKgC,SAASkH,QAAQX,GAEpD,OAAO,EAGN6rC,IAAU7rC,EAAMmuC,QAAWnuC,EAAMg0C,cAElCh0C,EAAMmuC,OAAO8F,4BAA4Bj0C,EAAOvI,MAGpD,IAAI6J,EAAU7J,KAAK0I,YAAYH,GAgB/B,OAdAvI,KAAKu0C,eAAehsC,GAEpBvI,KAAKu2C,UAEDv2C,KAAKm1C,SAAW5sC,GAEhBvI,KAAK03C,OAGL31C,GAAW8H,GAEXA,EAAQ9H,SAAQ,IAGb,GAWXhB,EAAOyzC,MAAM3yC,UAAUi1C,QAAU,SAAU2F,EAAOrI,GAI9C,QAFehuC,IAAXguC,IAAwBA,GAAS,GAEV,EAAvBp0C,KAAKgC,SAASE,QAAcu6C,aAAiB17C,EAAOyzC,MACxD,CACI,KAEIiI,EAAMphB,IAAIr7B,KAAKgC,SAAS,GAAIoyC,GAEF,EAAvBp0C,KAAKgC,SAASE,SAErBlC,KAAKs0C,KAAO,GAEZt0C,KAAKm1C,OAAS,KAGlB,OAAOsH,GAgBX17C,EAAOyzC,MAAM3yC,UAAUwqC,UAAY,SAAUtqC,EAASqyC,EAAQsI,GAM1D,QAJgBt2C,IAAZrE,IAAyBA,GAAU,QACxBqE,IAAXguC,IAAwBA,GAAS,QACdhuC,IAAnBs2C,IAAgCA,GAAiB,GAExB,IAAzB18C,KAAKgC,SAASE,OAAlB,CAKA,EACA,EACSkyC,GAAUp0C,KAAKgC,SAAS,GAAG00C,QAE5B12C,KAAKgC,SAAS,GAAG00C,OAAO8F,4BAA4Bx8C,KAAKgC,SAAS,GAAIhC,MAG1E,IAAI6J,EAAU7J,KAAK0I,YAAY1I,KAAKgC,SAAS,IAE7ChC,KAAKu0C,eAAe1qC,GAEhB9H,GAAW8H,GAEXA,EAAQ9H,SAAQ,EAAM26C,SAGA,EAAvB18C,KAAKgC,SAASE,QAErBlC,KAAKs0C,KAAO,GAEZt0C,KAAKm1C,OAAS,OAYlBp0C,EAAOyzC,MAAM3yC,UAAU86C,cAAgB,SAAU/1B,EAAYjd,EAAU5H,EAASqyC,GAM5E,QAJiBhuC,IAAbuD,IAA0BA,EAAW3J,KAAKgC,SAASE,OAAS,QAChDkE,IAAZrE,IAAyBA,GAAU,QACxBqE,IAAXguC,IAAwBA,GAAS,GAER,IAAzBp0C,KAAKgC,SAASE,OAAlB,CAKA,GAAiByH,EAAbid,GAAyBA,EAAa,GAAKjd,EAAW3J,KAAKgC,SAASE,OAEpE,OAAO,EAKX,IAFA,IAAID,EAAI0H,EAEIid,GAAL3kB,GACP,EACSmyC,GAAUp0C,KAAKgC,SAASC,GAAGy0C,QAE5B12C,KAAKgC,SAASC,GAAGy0C,OAAO8F,4BAA4Bx8C,KAAKgC,SAASC,GAAIjC,MAG1E,IAAI6J,EAAU7J,KAAK0I,YAAY1I,KAAKgC,SAASC,IAE7CjC,KAAKu0C,eAAe1qC,GAEhB9H,GAAW8H,GAEXA,EAAQ9H,SAAQ,GAGhB/B,KAAKm1C,SAAWn1C,KAAKgC,SAASC,KAE9BjC,KAAKm1C,OAAS,MAGlBlzC,IAGJjC,KAAKu2C,YAUTx1C,EAAOyzC,MAAM3yC,UAAU+6C,QAAU,SAAU5f,EAAM6c,GAEjC,MAAR7c,IAAgBA,EAAOh9B,KAAKsC,KAAKE,MAAM8B,QAE3CtE,KAAKgzB,QAAQ,SAAUzqB,GAEnBA,EAAMpI,SAAS6G,IAAIg2B,EAAK+F,QAAS/F,EAAKgG,UACvC,KAAM6W,IAUb94C,EAAOyzC,MAAM3yC,UAAUg7C,QAAU,WAE7B97C,EAAOk7C,WAAWY,QAAQ78C,KAAKgC,UAC/BhC,KAAKu2C,WAYTx1C,EAAOyzC,MAAM3yC,UAAUE,QAAU,SAAU+6C,EAAiBC,GAEtC,OAAd/8C,KAAKsC,MAAiBtC,KAAKg1C,qBAEP5uC,IAApB02C,IAAiCA,GAAkB,QAC1C12C,IAAT22C,IAAsBA,GAAO,GAEjC/8C,KAAK41C,UAAU/N,SAAS7nC,KAAM88C,EAAiBC,GAE/C/8C,KAAKqsC,UAAUyQ,GAEf98C,KAAKm1C,OAAS,KACdn1C,KAAKuG,QAAU,KACfvG,KAAKi1C,gBAAiB,EAEjB8H,IAEG/8C,KAAKY,QAELZ,KAAKY,OAAO8H,YAAY1I,MAG5BA,KAAKsC,KAAO,KACZtC,KAAK+M,QAAS,KAWtBlG,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,QAAS,CAEnDkF,IAAK,WAED,OAAO/G,KAAKy6C,QAAQ,UAAU,EAAM15C,EAAOyzC,MAAM0B,iBAYzDrvC,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAKgC,SAASE,UAgB7B2E,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,QAAS,CAEnDkF,IAAK,WAED,OAAOhG,EAAOkC,KAAKm8B,SAASp/B,KAAKO,WAGrCyG,IAAK,SAAUC,GAEXjH,KAAKO,SAAWQ,EAAOkC,KAAK41B,SAAS5xB,MAc7CJ,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAO/G,KAAK+J,UAAU/J,KAAKY,QAAQq5B,SAGvCjzB,IAAK,SAAUC,GAEX,IAAIxD,EAAIzD,KAAK+J,UAAU/J,KAAKY,QACxB2X,EAASvY,KAAKsD,EAAIG,EAAEH,EAExBtD,KAAKsD,EAAK2D,EAAQsR,EAAU9U,EAAEu1B,aActCnyB,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAO/G,KAAK+J,UAAU/J,KAAKY,QAAQs5B,SAGvClzB,IAAK,SAAUC,GAEX,IAAIxD,EAAIzD,KAAK+J,UAAU/J,KAAKY,QACxB2X,EAASvY,KAAKuD,EAAIE,EAAEF,EAExBvD,KAAKuD,EAAK0D,EAAQsR,EAAU9U,EAAEw1B,cActCpyB,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,OAAQ,CAElDkF,IAAK,WAED,OAAO/G,KAAK+J,UAAU/J,KAAKY,QAAQ43B,MAGvCxxB,IAAK,SAAUC,GAEX,IAAIxD,EAAIzD,KAAK+J,UAAU/J,KAAKY,QACxB2X,EAASvY,KAAKsD,EAAIG,EAAEH,EAExBtD,KAAKsD,EAAI2D,EAAQsR,KAczB1R,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,QAAS,CAEnDkF,IAAK,WAED,OAAO/G,KAAK+J,UAAU/J,KAAKY,QAAQk1B,OAGvC9uB,IAAK,SAAUC,GAEX,IAAIxD,EAAIzD,KAAK+J,UAAU/J,KAAKY,QACxB2X,EAASvY,KAAKsD,EAAIG,EAAEH,EAExBtD,KAAKsD,EAAK2D,EAAQsR,EAAU9U,EAAEiB,SActCmC,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,MAAO,CAEjDkF,IAAK,WAED,OAAO/G,KAAK+J,UAAU/J,KAAKY,QAAQ63B,KAGvCzxB,IAAK,SAAUC,GAEX,IAAIxD,EAAIzD,KAAK+J,UAAU/J,KAAKY,QACxB2X,EAASvY,KAAKuD,EAAIE,EAAEF,EAExBvD,KAAKuD,EAAK0D,EAAQsR,KAc1B1R,OAAOyF,eAAevL,EAAOyzC,MAAM3yC,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAK+J,UAAU/J,KAAKY,QAAQ83B,QAGvC1xB,IAAK,SAAUC,GAEX,IAAIxD,EAAIzD,KAAK+J,UAAU/J,KAAKY,QACxB2X,EAASvY,KAAKuD,EAAIE,EAAEF,EAExBvD,KAAKuD,EAAK0D,EAAQsR,EAAU9U,EAAEkB,UAmLtC5D,EAAOi8C,MAAQ,SAAU16C,GAErBvB,EAAOyzC,MAAMzwC,KAAK/D,KAAMsC,EAAM,KAAM,WAAW,GAS/CtC,KAAKsE,OAAS,IAAIvD,EAAOS,UAAU,EAAG,EAAGc,EAAKoC,MAAOpC,EAAKqC,QAK1D3E,KAAK8b,OAAS,KAMd9b,KAAKi9C,cAAe,EAKpBj9C,KAAKuM,OAASjK,EAAKoC,MAKnB1E,KAAKwM,QAAUlK,EAAKqC,OAEpB3E,KAAKsC,KAAKymC,MAAMsB,cAAchP,IAAIr7B,KAAKk9C,YAAal9C,OAGxDe,EAAOi8C,MAAMn7C,UAAYgF,OAAOwB,OAAOtH,EAAOyzC,MAAM3yC,WACpDd,EAAOi8C,MAAMn7C,UAAUC,YAAcf,EAAOi8C,MAQ5Cj8C,EAAOi8C,MAAMn7C,UAAUskC,KAAO,WAE1BnmC,KAAK8b,OAAS,IAAI/a,EAAOmjC,OAAOlkC,KAAKsC,KAAM,EAAG,EAAG,EAAGtC,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QAE/E3E,KAAKsC,KAAK8Y,MAAM9S,SAAStI,MAEzBA,KAAK8b,OAAOqqB,QAYhBplC,EAAOi8C,MAAMn7C,UAAUq7C,YAAc,WAEjCl9C,KAAKsD,EAAI,EACTtD,KAAKuD,EAAI,EAETvD,KAAK8b,OAAO0sB,SAahBznC,EAAOi8C,MAAMn7C,UAAUs7C,UAAY,SAAU75C,EAAGC,EAAGmB,EAAOC,GAEtD3E,KAAKi9C,cAAe,EACpBj9C,KAAKuM,OAAS7H,EACd1E,KAAKwM,QAAU7H,EAEf3E,KAAKsE,OAAOizB,MAAMj0B,EAAGC,EAAGmB,EAAOC,GAE/B3E,KAAKsD,EAAIA,EACTtD,KAAKuD,EAAIA,EAELvD,KAAK8b,OAAOxX,QAGZtE,KAAK8b,OAAOxX,OAAOizB,MAAMj0B,EAAGC,EAAGN,KAAK2C,IAAIlB,EAAO1E,KAAKsC,KAAKoC,OAAQzB,KAAK2C,IAAIjB,EAAQ3E,KAAKsC,KAAKqC,SAGhG3E,KAAKsC,KAAK4mC,QAAQhB,oBAatBnnC,EAAOi8C,MAAMn7C,UAAUkE,OAAS,SAAUrB,EAAOC,GAIzC3E,KAAKi9C,eAEDv4C,EAAQ1E,KAAKuM,SAEb7H,EAAQ1E,KAAKuM,QAGb5H,EAAS3E,KAAKwM,UAEd7H,EAAS3E,KAAKwM,UAItBxM,KAAKsE,OAAOI,MAAQA,EACpB1E,KAAKsE,OAAOK,OAASA,EAErB3E,KAAKsC,KAAKwZ,OAAOosB,mBAEjBloC,KAAKsC,KAAK4mC,QAAQhB,oBAQtBnnC,EAAOi8C,MAAMn7C,UAAU8nC,SAAW,WAG9B3pC,KAAK+B,SAAQ,GAAM,IAkBvBhB,EAAOi8C,MAAMn7C,UAAUw6B,KAAO,SAAU7X,EAAQkD,EAAS01B,EAAWlY,EAAYC,QAE5D/+B,IAAZshB,IAAyBA,EAAU,QACrBthB,IAAdg3C,IAA2BA,GAAY,QACxBh3C,IAAf8+B,IAA4BA,GAAa,QAC5B9+B,IAAb++B,IAA0BA,GAAW,GAEpCiY,GAsBD54B,EAAOza,YAEHm7B,IAEK1gB,EAAOlhB,EAAIkhB,EAAO/iB,eAAeiD,MAAS1E,KAAKsE,OAAOhB,EAEvDkhB,EAAOlhB,EAAItD,KAAKsE,OAAOwxB,MAElBtR,EAAOlhB,EAAItD,KAAKsE,OAAOwxB,QAE5BtR,EAAOlhB,EAAItD,KAAKsE,OAAOk0B,OAI3B2M,IAEK3gB,EAAOjhB,EAAIihB,EAAO/iB,eAAekD,OAAU3E,KAAKsE,OAAOm0B,IAExDjU,EAAOjhB,EAAIvD,KAAKsE,OAAOo0B,OAElBlU,EAAOjhB,EAAIvD,KAAKsE,OAAOo0B,SAE5BlU,EAAOjhB,EAAIvD,KAAKsE,OAAOm0B,QA1C3ByM,GAAc1gB,EAAOlhB,EAAIokB,EAAU1nB,KAAKsE,OAAOhB,EAE/CkhB,EAAOlhB,EAAItD,KAAKsE,OAAOwxB,MAAQpO,EAE1Bwd,GAAc1gB,EAAOlhB,EAAIokB,EAAU1nB,KAAKsE,OAAOwxB,QAEpDtR,EAAOlhB,EAAItD,KAAKsE,OAAOk0B,KAAO9Q,GAG9Byd,GAAY3gB,EAAOjhB,EAAImkB,EAAU1nB,KAAKsE,OAAOm0B,IAE7CjU,EAAOjhB,EAAIvD,KAAKsE,OAAOo0B,OAAShR,EAE3Byd,GAAY3gB,EAAOjhB,EAAImkB,EAAU1nB,KAAKsE,OAAOo0B,SAElDlU,EAAOjhB,EAAIvD,KAAKsE,OAAOm0B,IAAM/Q,KA0CzC3mB,EAAOi8C,MAAMn7C,UAAUw7C,QAAU,SAAUZ,EAAO5C,EAAanyB,EAAS01B,EAAWlY,EAAYC,GAE3FsX,EAAMzpB,QAAQhzB,KAAKq8B,KAAMr8B,KAAM65C,EAAanyB,EAAS01B,EAAWlY,EAAYC,IAOhFt+B,OAAOyF,eAAevL,EAAOi8C,MAAMn7C,UAAW,QAAS,CAEnDkF,IAAK,WAED,OAAO/G,KAAKsE,OAAOI,OAGvBsC,IAAK,SAAUC,GAEPA,EAAQjH,KAAKsC,KAAKoC,QAElBuC,EAAQjH,KAAKsC,KAAKoC,OAGtB1E,KAAKsE,OAAOI,MAAQuC,EACpBjH,KAAKuM,OAAStF,EACdjH,KAAKi9C,cAAe,KAS5Bp2C,OAAOyF,eAAevL,EAAOi8C,MAAMn7C,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAKsE,OAAOK,QAGvBqC,IAAK,SAAUC,GAEPA,EAAQjH,KAAKsC,KAAKqC,SAElBsC,EAAQjH,KAAKsC,KAAKqC,QAGtB3E,KAAKsE,OAAOK,OAASsC,EACrBjH,KAAKwM,QAAUvF,EACfjH,KAAKi9C,cAAe,KAU5Bp2C,OAAOyF,eAAevL,EAAOi8C,MAAMn7C,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAO/G,KAAKsE,OAAO00B,UAAYh5B,KAAKsE,OAAOhB,KAUnDuD,OAAOyF,eAAevL,EAAOi8C,MAAMn7C,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAO/G,KAAKsE,OAAO20B,WAAaj5B,KAAKsE,OAAOf,KAUpDsD,OAAOyF,eAAevL,EAAOi8C,MAAMn7C,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAI/G,KAAKsE,OAAOhB,EAAI,EAETtD,KAAKsC,KAAKwlC,IAAIwV,QAAQt9C,KAAKsE,OAAOhB,EAAItD,KAAKsE,OAAOI,MAAQzB,KAAK81B,IAAI/4B,KAAKsE,OAAOhB,IAI/EtD,KAAKsC,KAAKwlC,IAAIwV,QAAQt9C,KAAKsE,OAAOhB,EAAGtD,KAAKsE,OAAOI,UAWpEmC,OAAOyF,eAAevL,EAAOi8C,MAAMn7C,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAI/G,KAAKsE,OAAOf,EAAI,EAETvD,KAAKsC,KAAKwlC,IAAIwV,QAAQt9C,KAAKsE,OAAOf,EAAIvD,KAAKsE,OAAOK,OAAS1B,KAAK81B,IAAI/4B,KAAKsE,OAAOf,IAIhFvD,KAAKsC,KAAKwlC,IAAIwV,QAAQt9C,KAAKsE,OAAOf,EAAGvD,KAAKsE,OAAOK,WA8EpE5D,EAAOw8C,KAAO,SAAU74C,EAAOC,EAAQN,EAAUzD,EAAQmoC,EAAOrxB,EAAaQ,EAAWslC,GAmdpF,OA7cAx9C,KAAKyU,GAAK1T,EAAOgtB,MAAMpmB,KAAK3H,MAAQ,EAKpCA,KAAKsX,OAAS,KAKdtX,KAAKw9C,cAAgBA,EAOrBx9C,KAAKY,OAAS,GAWdZ,KAAK0E,MAAQ,IAWb1E,KAAK2E,OAAS,IASd3E,KAAKmE,WAAa,EAMlBnE,KAAKuM,OAAS,IAMdvM,KAAKwM,QAAU,IAMfxM,KAAK0X,aAAc,EAOnB1X,KAAKkY,WAAY,EAajBlY,KAAKy9C,cAAe,EAMpBz9C,KAAK4X,uBAAwB,EAW7B5X,KAAK6X,mBAAoB,EAMzB7X,KAAKqE,SAAW,KAMhBrE,KAAK6sC,WAAa9rC,EAAOitB,KAKzBhuB,KAAK+oC,MAAQ,KAMb/oC,KAAKyrC,UAAW,EAMhBzrC,KAAK09C,WAAY,EAMjB19C,KAAK29C,IAAM,KAKX39C,KAAKq7B,IAAM,KAKXr7B,KAAK2oC,KAAO,KAKZ3oC,KAAK8a,MAAQ,KAKb9a,KAAK4oC,MAAQ,KAKb5oC,KAAK6oC,KAAO,KAKZ7oC,KAAKioC,KAAO,KAKZjoC,KAAKK,MAAQ,KAKbL,KAAK8oC,MAAQ,KAKb9oC,KAAKob,MAAQ,KAKbpb,KAAK2nC,KAAO,KAKZ3nC,KAAKgpC,OAAS,KAKdhpC,KAAKwC,MAAQ,KAKbxC,KAAKkpC,QAAU,KAKflpC,KAAKsxC,QAAU,KAKftxC,KAAK8nC,IAAM,KAKX9nC,KAAKssB,OAASvrB,EAAO68C,OAKrB59C,KAAK8b,OAAS,KAKd9b,KAAKgY,OAAS,KAKdhY,KAAK2N,QAAU,KAKf3N,KAAKssC,MAAQ,KAKbtsC,KAAKipC,UAAY,KAKjBjpC,KAAKqI,OAAS,KASdrI,KAAK69C,YAAa,EAMlB79C,KAAKi1C,gBAAiB,EAOtBj1C,KAAK89C,UAAW,EAOhB99C,KAAK+9C,aAAc,EAOnB/9C,KAAKg+C,UAAY,EAKjBh+C,KAAKmrC,QAAU,KAKfnrC,KAAKqrC,SAAW,KAKhBrrC,KAAKi+C,OAAS,KAKdj+C,KAAKk+C,QAAU,KAKfl+C,KAAKm+C,OAAS,IAAIp9C,EAAO0jC,OAMzBzkC,KAAKo+C,SAAU,EAMfp+C,KAAKq+C,aAAc,EAMnBr+C,KAAKs+C,cAAe,EAQpBt+C,KAAKu+C,gBAAkB,EAOvBv+C,KAAKw+C,iBAAmB,EAOxBx+C,KAAKy+C,iBAAmB,EAMxBz+C,KAAK0+C,WAAa,EAMlB1+C,KAAK2+C,WAAa,EAMlB3+C,KAAK4+C,WAAa,EAMlB5+C,KAAK2sC,YAAa,EAQlB3sC,KAAK6+C,mBAAqB,IAAI99C,EAAO0jC,OAOrCzkC,KAAK8+C,mBAAoB,EAMzB9+C,KAAK++C,mBAAoB,EAMzB/+C,KAAKg/C,YAAa,EAOlBh/C,KAAK8X,gBAAkB,UAMvB9X,KAAKi/C,qBAAuB,EAGH,IAArBzsB,UAAUtwB,QAAwC,iBAtalCwC,EAwahB1E,KAAK+xC,YAxaWrtC,IA4ahB1E,KAAKsX,OAAS,CAAE4nC,aAAa,QAER,IAAVx6C,IAEP1E,KAAKuM,OAAS7H,QAGI,IAAXC,IAEP3E,KAAKwM,QAAU7H,QAGK,IAAbN,IAEPrE,KAAK6sC,WAAaxoC,QAGA,IAAXzD,IAEPZ,KAAKY,OAASA,QAGS,IAAhB8W,IAEP1X,KAAK0X,YAAcA,QAGE,IAAdQ,IAEPlY,KAAKkY,UAAYA,GAGrBlY,KAAK8nC,IAAM,IAAI/mC,EAAOo+C,oBAAoB,EAAG1P,KAAK2P,MAAQn8C,KAAK+xB,UAAU/J,aAEzEjrB,KAAK+oC,MAAQ,IAAIhoC,EAAO6oC,aAAa5pC,KAAM+oC,IAG/C/oC,KAAKssB,OAAO+yB,UAAUr/C,KAAKmmC,KAAMnmC,MAE1BA,MAmDXe,EAAOw8C,KAAK17C,UAAY,CAQpBkwC,YAAa,SAAUz6B,QAIQlR,KAF3BpG,KAAKsX,OAASA,GAEH4nC,cAEPl/C,KAAKsX,OAAO4nC,aAAc,GAG1B5nC,EAAO5S,QAEP1E,KAAKuM,OAAS+K,EAAO5S,OAGrB4S,EAAO3S,SAEP3E,KAAKwM,QAAU8K,EAAO3S,QAGtB2S,EAAOjT,WAEPrE,KAAK6sC,WAAav1B,EAAOjT,UAGzBiT,EAAO1W,SAEPZ,KAAKY,OAAS0W,EAAO1W,aAGEwF,IAAvBkR,EAAOI,cAEP1X,KAAK0X,YAAcJ,EAAOI,kBAGLtR,IAArBkR,EAAOY,YAEPlY,KAAKkY,UAAYZ,EAAOY,gBAGK9R,IAA7BkR,EAAOO,oBAEP7X,KAAK6X,kBAAoBP,EAAOO,wBAGRzR,IAAxBkR,EAAOmmC,eAEPz9C,KAAKy9C,aAAenmC,EAAOmmC,cAG3BnmC,EAAOnT,aAEPnE,KAAKmE,WAAamT,EAAOnT,iBAGQiC,IAAjCkR,EAAOM,wBAEP5X,KAAK4X,sBAAwBN,EAAOM,4BAGTxR,IAA3BkR,EAAOQ,kBAEP9X,KAAK8X,gBAAkBR,EAAOQ,iBAG9BR,EAAOkmC,gBAEPx9C,KAAKw9C,cAAgBlmC,EAAOkmC,eAGhC,IAAI8B,EAAO,EAAG7P,KAAK2P,MAAQn8C,KAAK+xB,UAAU/J,YAEtC3T,EAAOgoC,OAEPA,EAAOhoC,EAAOgoC,MAGlBt/C,KAAK8nC,IAAM,IAAI/mC,EAAOo+C,oBAAoBG,GAE1C,IAAIvW,EAAQ,KAERzxB,EAAOyxB,QAEPA,EAAQzxB,EAAOyxB,OAGnB/oC,KAAK+oC,MAAQ,IAAIhoC,EAAO6oC,aAAa5pC,KAAM+oC,IAS/C5C,KAAM,WAEF,IAAInmC,KAAKyrC,SAAT,CA2CA,GAtCAzrC,KAAKmrC,QAAU,IAAIpqC,EAAO0jC,OAC1BzkC,KAAKqrC,SAAW,IAAItqC,EAAO0jC,OAC3BzkC,KAAKi+C,OAAS,IAAIl9C,EAAO0jC,OACzBzkC,KAAKk+C,QAAU,IAAIn9C,EAAO0jC,OAE1BzkC,KAAKyrC,UAAW,GAEhBxrC,KAAKqC,KAAOtC,MAEPioC,KAAOlnC,EAAOkC,KAEnBjD,KAAKK,MAAQ,IAAIU,EAAOw+C,aAAav/C,KAAMA,KAAKuM,OAAQvM,KAAKwM,SAC7DxM,KAAKob,MAAQ,IAAIra,EAAO2wC,MAAM1xC,MAE9BA,KAAKw/C,gBAELx/C,KAAKwC,MAAQ,IAAIzB,EAAOi8C,MAAMh9C,MAC9BA,KAAKq7B,IAAM,IAAIt6B,EAAO0+C,kBAAkBz/C,MACxCA,KAAK2oC,KAAO,IAAI5nC,EAAO2+C,kBAAkB1/C,MACzCA,KAAK8a,MAAQ,IAAI/Z,EAAO+vC,MAAM9wC,MAC9BA,KAAK6oC,KAAO,IAAI9nC,EAAO4+C,OAAO3/C,MAC9BA,KAAK2nC,KAAO,IAAI5mC,EAAO6+C,KAAK5/C,MAC5BA,KAAKgpC,OAAS,IAAIjoC,EAAO8+C,aAAa7/C,MACtCA,KAAK4oC,MAAQ,IAAI7nC,EAAO++C,MAAM9/C,MAC9BA,KAAK8oC,MAAQ,IAAI/nC,EAAOg/C,aAAa//C,MACrCA,KAAKkpC,QAAU,IAAInoC,EAAO6zC,QAAQ50C,KAAMA,KAAKw9C,eAC7Cx9C,KAAKipC,UAAY,IAAIloC,EAAOi/C,UAAUhgD,MACtCA,KAAKqI,OAAS,IAAItH,EAAOk/C,OAAOjgD,MAChCA,KAAKsxC,QAAU,IAAIvwC,EAAOswC,cAAcrxC,MAExCA,KAAK2nC,KAAKxB,OACVnmC,KAAKob,MAAM+qB,OACXnmC,KAAKwC,MAAM2jC,OACXnmC,KAAKK,MAAM8lC,OACXnmC,KAAK4oC,MAAMzC,KAAKnmC,KAAKsX,QACrBtX,KAAK8oC,MAAM3C,OACXnmC,KAAK+oC,MAAM5C,OAEPnmC,KAAKsX,OAAO4nC,YAEZl/C,KAAKssC,MAAQ,IAAIvrC,EAAO8yB,MAAMqsB,MAAMlgD,MACpCA,KAAKssC,MAAMnG,WAGf,CACI,IAAIga,EAAO,aAEXngD,KAAKssC,MAAQ,CAAEroC,UAAWk8C,EAAM5Y,OAAQ4Y,EAAM3X,MAAO2X,EAAMp+C,QAASo+C,EAAMC,YAAY,GAG1FpgD,KAAKqgD,kBAELrgD,KAAK09C,WAAY,EAEb19C,KAAKsX,QAAUtX,KAAKsX,OAAOgpC,gBAE3BtgD,KAAK29C,IAAM,IAAI58C,EAAOw/C,sBAAsBvgD,KAAMA,KAAKsX,OAAOgpC,iBAI9DtgD,KAAK29C,IAAM,IAAI58C,EAAOw/C,sBAAsBvgD,MAAM,GAGtDA,KAAK2sC,YAAa,EAElB3sC,KAAKwgD,cAELxgD,KAAKm+C,OAAOtW,SAAS7nC,MAEjBA,KAAKsX,OAAOmpC,eAKZzgD,KAAK8a,MAAM4lC,QAEX1gD,KAAK29C,IAAIxxC,QAITnM,KAAK8a,MAAM6lC,QAAQtS,QAAQ,WAEvBruC,KAAK29C,IAAIxxC,SACVnM,SAUXqgD,gBAAiB,WAEb,IAAIlwC,OAAOywC,eAAgBzwC,OAAOywC,aAAaC,WAA/C,CAKA,IAAIC,EAAI//C,EAAO+sB,QACXrqB,EAAI,SACJhB,EAAI,aACJE,EAAI,EAkBR,GAhBI3C,KAAK6sC,aAAe9rC,EAAO0W,OAE3BhU,EAAI,QACJd,KAEK3C,KAAK6sC,aAAe9rC,EAAOktB,WAEhCxqB,EAAI,YAGJzD,KAAKssB,OAAOy0B,WAEZt+C,EAAI,WACJE,KAGC3C,KAAKssB,OAAO00B,GA0BR7wC,OAAOC,SAEZA,QAAQC,IAAI,WAAaywC,EAAI,gBAAkBr9C,EAAI,MAAQhB,EAAI,2BA3BnE,CAWI,IAVA,IAAIkwB,EAAO,CACP,uBAAyBmuB,EAAI,gBAAkBr9C,EAAI,MAAQhB,EAAI,wCAC/D,sBACA,sBACA,uCACA,sBACA,sBACA,uBAGKR,EAAI,EAAGA,EAAI,EAAGA,IAEfA,EAAIU,EAEJgwB,EAAKhrB,KAAK,oCAIVgrB,EAAKhrB,KAAK,oCAIlByI,QAAQC,IAAIpL,MAAMmL,QAASuiB,MAcnC6sB,cAAe,WAEX,IAAKx/C,KAAKssB,OAAOtU,OAGb,MAAM,IAAIpP,MAAM,4DA0BpB,GAvBI5I,KAAKsX,OAAOU,OAEZhY,KAAKgY,OAAShY,KAAKsX,OAAOU,OAI1BhY,KAAKgY,OAASjX,EAAO+qB,OAAOzjB,OAAOrI,KAAMA,KAAK0E,MAAO1E,KAAK2E,OAAQ3E,KAAKsX,OAAO2pC,UAAU,GAGxFjhD,KAAKsX,OAAO4pC,YAEZlhD,KAAKgY,OAAOuE,MAAQvc,KAAKsX,OAAO4pC,YAIhClhD,KAAKgY,OAAOuE,MAAM,uBAAyB,4BAG3Cvc,KAAKsX,OAAO6pC,OAEZpgD,EAAO+qB,OAAOs1B,uBAAuBphD,KAAKgY,QAGzChY,KAAK6sC,aAAe9rC,EAAO0W,OAC3BzX,KAAK6sC,aAAe9rC,EAAOmtB,aAC3BluB,KAAK6sC,aAAe9rC,EAAOitB,MAAQhuB,KAAKssB,OAAO+0B,MACpD,EACQrhD,KAAKy9C,cAAgBz9C,KAAK6sC,aAAe9rC,EAAOmtB,eAEhDjuB,KAAK4e,qBACL7e,KAAKy9C,cAAe,GAGxB,IAEIz9C,KAAKqE,SAAW,IAAIpE,KAAKoX,cAAcrX,KAAMA,KAAKsX,QAClDtX,KAAK6sC,WAAa9rC,EAAO0W,MACzBzX,KAAK2N,QAAU,KACf3N,KAAKgY,OAAOk7B,iBAAiB,mBAAoBlzC,KAAKqb,YAAYgX,KAAKryB,OAAO,GAC9EA,KAAKgY,OAAOk7B,iBAAiB,uBAAwBlzC,KAAKshD,gBAAgBjvB,KAAKryB,OAAO,GAE1F,MAAOuhD,GAOH,GALAthD,KAAKsX,gBAAkB,KACvBvX,KAAKqE,SAAW,KAChBrE,KAAKy9C,cAAe,EACpBx9C,KAAKiG,2BAA4B,EAE7BlG,KAAK6sC,aAAe9rC,EAAO0W,MAG3B,MAAM8pC,GAKbvhD,KAAKqE,WAENrE,KAAKqE,SAAW,IAAIpE,KAAK0rB,eAAe3rB,KAAMA,KAAKsX,QACnDtX,KAAK2N,QAAU3N,KAAKqE,SAASsJ,QAEzB3N,KAAK6sC,aAAe9rC,EAAOitB,OAE3BhuB,KAAK6sC,WAAa9rC,EAAO6qB,SAI7B5rB,KAAKssB,OAAOk1B,WAEZxhD,KAAKgY,OAAOkU,aAAgBlsB,KAAK6sC,aAAe9rC,EAAO6qB,QAGvD5rB,KAAK6sC,aAAe9rC,EAAOktB,WAE3BjuB,KAAKob,MAAMqmC,SAAWzhD,KAAKkY,UAE3BnX,EAAO+qB,OAAO41B,SAAS1hD,KAAKgY,OAAQhY,KAAKY,QAAQ,GACjDG,EAAO+qB,OAAOumB,eAAeryC,KAAKgY,UAW1CqD,YAAa,SAAUu3B,GAEnBA,EAAM+O,iBAEN3hD,KAAKqE,SAASgX,aAAc,GAShCimC,gBAAiB,WAEbthD,KAAKqE,SAAS+U,cAEdpZ,KAAK8a,MAAM8mC,kBAEX5hD,KAAKqE,SAASgX,aAAc,GAUhCksB,OAAQ,SAAUI,GAEd,GAAI3nC,KAAKi1C,eAELj1C,KAAK+B,eAKT,GAAK/B,KAAKyrC,SAAV,CAQA,GAFAzrC,KAAK2nC,KAAKJ,OAAOI,GAEb3nC,KAAK2sC,WAOL,OALA3sC,KAAK6hD,YAAY7hD,KAAK2nC,KAAKma,gBAC3B9hD,KAAK+hD,oBAEL/hD,KAAK2sC,YAAa,GAKtB,GAAI3sC,KAAKs+C,aAELt+C,KAAKs+C,cAAe,MAFxB,CASA,IAAI0D,EAAUhiD,KAAK2nC,KAAKqa,QAExB,KAAIA,GAAW,GAAf,CAKA,GAAIA,EAAUhiD,KAAK2nC,KAAKsa,SACxB,CAGI,GAAIjiD,KAAKg/C,WAEL,OAIAgD,EAAUhiD,KAAK2nC,KAAKsa,SAI5B,GAAIjiD,KAAK8+C,kBAEL9+C,KAAKw+C,iBAAmB,EACxBx+C,KAAKy+C,iBAAmB,EAExBz+C,KAAK6hD,YAAY,KAAQG,EAAUhiD,KAAK2nC,KAAKua,YAC7CliD,KAAK+hD,oBAEJ,GAAsB,EAAlB/hD,KAAK4+C,WAGV5+C,KAAKw+C,iBAAmB,EACxBx+C,KAAKy+C,iBAAmB,EAGpBz+C,KAAK2nC,KAAKA,KAAO3nC,KAAKi/C,uBAEtBj/C,KAAKi/C,qBAAuBj/C,KAAK2nC,KAAKA,KAAO,IAC7C3nC,KAAK6+C,mBAAmBhX,YAI5B7nC,KAAK0+C,WAAa,EAClB1+C,KAAK4+C,WAAa,MAGtB,CACI,IAAIn/B,EAAQ,EACR0iC,EAAgB,IAAOniD,KAAK2nC,KAAKma,eAOrC,IALA9hD,KAAK0+C,YAAcsD,EAEnBhiD,KAAKw+C,iBAAmBv7C,KAAKkvB,MAAMnyB,KAAK0+C,WAAayD,GACrDniD,KAAKy+C,iBAAmBz+C,KAAK++C,kBAAoB,EAAI97C,KAAKy4B,IAAI,EAAG17B,KAAKw+C,kBAE/Dx+C,KAAK0+C,YAAcyD,GAEtBniD,KAAK0+C,YAAcyD,EACnBniD,KAAKu+C,gBAAkB9+B,EAEvBzf,KAAK6hD,YAAY7hD,KAAK2nC,KAAKma,eAAiB9hD,KAAK2nC,KAAKua,YACtDliD,KAAK2nC,KAAK9b,UAEVpM,IAGAA,EAAQzf,KAAK2+C,WAEb3+C,KAAK4+C,aAEAn/B,EAAQzf,KAAK2+C,aAElB3+C,KAAK4+C,WAAa,GAGtB5+C,KAAK2+C,WAAal/B,EAEU,EAAxBzf,KAAKy+C,kBAELz+C,KAAK+hD,oBAYjBF,YAAa,SAAUja,GAEd5nC,KAAKo+C,SAAYp+C,KAAK+9C,aAgCvB/9C,KAAKK,MAAMqpC,cACX1pC,KAAK+oC,MAAMW,YAAY9B,GACvB5nC,KAAKssC,MAAMroC,YACXjE,KAAK4oC,MAAMc,gBAjCP1pC,KAAK89C,WAEL99C,KAAK+9C,aAAc,GAGvB/9C,KAAK2nC,KAAK1jC,UAAU2jC,GAEpB5nC,KAAKK,MAAM4D,YACXjE,KAAKssC,MAAMroC,YACXjE,KAAK8b,OAAO7X,YACZjE,KAAKkpC,QAAQjlC,YACbjE,KAAK+oC,MAAM9kC,UAAU2jC,GACrB5nC,KAAKsxC,QAAQrtC,UAAU2jC,GACvB5nC,KAAKob,MAAMnX,YAEXjE,KAAK+oC,MAAMxB,SACXvnC,KAAKob,MAAMmsB,SACXvnC,KAAKgpC,OAAOzB,SACZvnC,KAAK8oC,MAAMvB,SACXvnC,KAAK4oC,MAAMrB,SACXvnC,KAAKkpC,QAAQ3B,SACbvnC,KAAKsxC,QAAQ/J,SAEbvnC,KAAKob,MAAMkuB,aACXtpC,KAAK+oC,MAAMO,aACXtpC,KAAKsxC,QAAQhI,cAWjBtpC,KAAKob,MAAM/Y,mBAiBf0/C,aAAc,WAEN/hD,KAAK69C,YAAc79C,KAAK6sC,aAAe9rC,EAAOktB,WAKlDjuB,KAAK2nC,KAAK4B,YACVvpC,KAAK+oC,MAAMQ,YAEXvpC,KAAKqE,SAASQ,OAAO7E,KAAKob,OAC1Bpb,KAAKsxC,QAAQzsC,SACb7E,KAAK+oC,MAAMlkC,SAEX7E,KAAKsxC,QAAQr1B,aACbjc,KAAKqE,SAAS4X,eASlBmmC,WAAY,WAERpiD,KAAK89C,UAAW,EAChB99C,KAAK+9C,aAAc,EACnB/9C,KAAKg+C,UAAY,GAQrBqE,YAAa,WAETriD,KAAK89C,UAAW,EAChB99C,KAAK+9C,aAAc,GASvBuE,KAAM,WAEFtiD,KAAK+9C,aAAc,EACnB/9C,KAAKg+C,aAeTj8C,QAAS,WAEL/B,KAAK29C,IAAI3xC,OAEThM,KAAKssC,MAAMvqC,UACX/B,KAAK+oC,MAAMhnC,UACX/B,KAAK8oC,MAAM/mC,UACX/B,KAAKK,MAAM0B,UACX/B,KAAKob,MAAMrZ,UACX/B,KAAK4oC,MAAM7mC,UACX/B,KAAKkpC,QAAQnnC,UACb/B,KAAKsxC,QAAQvvC,UACb/B,KAAKgpC,OAAOjnC,UAEZ/B,KAAKssC,MAAQ,KACbtsC,KAAK+oC,MAAQ,KACb/oC,KAAK8oC,MAAQ,KACb9oC,KAAKK,MAAQ,KACbL,KAAKob,MAAQ,KACbpb,KAAK4oC,MAAQ,KACb5oC,KAAKkpC,QAAU,KACflpC,KAAKsxC,QAAU,KACftxC,KAAKgpC,OAAS,KAEdhpC,KAAK8a,MAAQ,KACb9a,KAAK6oC,KAAO,KACZ7oC,KAAK2nC,KAAO,KACZ3nC,KAAKwC,MAAQ,KAEbxC,KAAKyrC,UAAW,EAEhBzrC,KAAKqE,SAAStC,SAAQ,GAEtBhB,EAAO+qB,OAAOy2B,cAAcviD,KAAKgY,QAE7B/X,KAAKqC,OAAStC,OAEdC,KAAKqC,KAAO,MAEhBrC,KAAKsX,gBAAkB,KAEvBxW,EAAOgtB,MAAM/tB,KAAKyU,IAAM,MAU5Bs/B,WAAY,SAAUnB,GAGb5yC,KAAKo+C,UAENp+C,KAAKo+C,SAAU,EAEfp+C,KAAK2nC,KAAKoM,aACV/zC,KAAK8oC,MAAMiL,aACX/zC,KAAKmrC,QAAQtD,SAAS+K,GAGlB5yC,KAAKssB,OAAOk2B,SAAWxiD,KAAKssB,OAAOm2B,MAEnCziD,KAAK69C,YAAa,KAY9B7J,YAAa,SAAUpB,GAGf5yC,KAAKo+C,UAAYp+C,KAAKq+C,cAEtBr+C,KAAKo+C,SAAU,EAEfp+C,KAAK2nC,KAAKqM,cACVh0C,KAAK4oC,MAAMJ,QACXxoC,KAAK8oC,MAAMkL,cACXh0C,KAAKqrC,SAASxD,SAAS+K,GAGnB5yC,KAAKssB,OAAOk2B,SAAWxiD,KAAKssB,OAAOm2B,MAEnCziD,KAAK69C,YAAa,KAY9BhK,UAAW,SAAUjB,GAEjB5yC,KAAKi+C,OAAOpW,SAAS+K,GAEhB5yC,KAAKob,MAAMu2B,yBAEZ3xC,KAAK+zC,WAAWnB,IAWxBkB,UAAW,SAAUlB,GAEjB5yC,KAAKs+C,cAAe,EAEpBt+C,KAAKwgD,cAELxgD,KAAKk+C,QAAQrW,SAAS+K,GAEjB5yC,KAAKob,MAAMu2B,yBAEZ3xC,KAAKg0C,YAAYpB,IASzB4N,YAAa,WAELrwC,OAAOuyC,SAEFvyC,OAAOywC,cAAiBzwC,OAAOywC,eAAiBzwC,OAAOywC,aAAa+B,YAErExyC,OAAOuyC,UAOvB3hD,EAAOw8C,KAAK17C,UAAUC,YAAcf,EAAOw8C,KAQ3C12C,OAAOyF,eAAevL,EAAOw8C,KAAK17C,UAAW,SAAU,CAEnDkF,IAAK,WAED,OAAO/G,KAAKo+C,SAGhBp3C,IAAK,SAAUC,IAEG,IAAVA,IAEqB,IAAjBjH,KAAKo+C,UAELp+C,KAAKo+C,SAAU,EACXp+C,KAAK8oC,MAAM8Z,aAEX5iD,KAAK8oC,MAAM+Z,UAEf7iD,KAAK2nC,KAAKoM,aACV/zC,KAAKmrC,QAAQtD,SAAS7nC,OAE1BA,KAAKq+C,aAAc,IAIfr+C,KAAKo+C,UAELp+C,KAAKo+C,SAAU,EACfp+C,KAAK4oC,MAAMJ,QACXxoC,KAAK8oC,MAAMga,YACX9iD,KAAK2nC,KAAKqM,cACVh0C,KAAKqrC,SAASxD,SAAS7nC,OAE3BA,KAAKq+C,aAAc,MA4B/Bt9C,EAAO++C,MAAQ,SAAUx9C,GAKrBtC,KAAKsC,KAAOA,EAMZtC,KAAK+iD,UAAY,KAMjB/iD,KAAKgjD,WAAa,KAQlBhjD,KAAKijD,cAAgB,GAMrBjjD,KAAKkjD,uBAAyB,KAM9BljD,KAAKmjD,8BAAgC,KAMrCnjD,KAAKojD,SAAW,EAShBpjD,KAAKqjD,SAAU,EAMfrjD,KAAKsjD,mBAAqBviD,EAAO++C,MAAMyD,oBAMvCvjD,KAAKG,SAAW,KAKhBH,KAAKwjD,MAAQ,KAObxjD,KAAKyjD,OAAS,KAKdzjD,KAAKK,MAAQ,KAUbL,KAAK0jD,aAAe,EAMpB1jD,KAAK2jD,QAAU,IAMf3jD,KAAK4jD,cAAgB,IAMrB5jD,KAAK6jD,SAAW,IAMhB7jD,KAAK8jD,gBAAkB,IAMvB9jD,KAAK+jD,iBAAmB,IASxB/jD,KAAKgkD,sBAAuB,EAM5BhkD,KAAKikD,WAAa,IAQlBjkD,KAAKkkD,YAAc,IASnBlkD,KAAKmkD,mBAAqB,GAK1BnkD,KAAKokD,SAAW,KAKhBpkD,KAAKqkD,SAAW,KAKhBrkD,KAAKskD,SAAW,KAKhBtkD,KAAKukD,SAAW,KAKhBvkD,KAAKwkD,SAAW,KAKhBxkD,KAAKykD,SAAW,KAKhBzkD,KAAK0kD,SAAW,KAKhB1kD,KAAK2kD,SAAW,KAKhB3kD,KAAK4kD,SAAW,KAKhB5kD,KAAK6kD,UAAY,KAUjB7kD,KAAK8kD,SAAW,GAShB9kD,KAAK+kD,cAAgB,KASrB/kD,KAAKglD,aAAe,KAUpBhlD,KAAK0vC,MAAQ,KAOb1vC,KAAKilD,SAAW,KAUhBjlD,KAAKklD,MAAQ,KAUbllD,KAAKmlD,UAAY,KAOjBnlD,KAAKolD,QAAU,KAQfplD,KAAKqlD,aAAc,EAWnBrlD,KAAKslD,OAAS,KAWdtlD,KAAKulD,KAAO,KAWZvlD,KAAKwlD,MAAQ,KAUbxlD,KAAKylD,OAAS,KAQdzlD,KAAK0lD,cAAgB,EAMrB1lD,KAAK2lD,iBAAmB,IAAI5kD,EAAOw5C,SAMnCv6C,KAAK4lD,YAAc,IAAI7kD,EAAOX,MAM9BJ,KAAK6lD,aAAe,EAMpB7lD,KAAK8lD,aAAe,KAMpB9lD,KAAK+lD,GAAK,EAMV/lD,KAAKgmD,GAAK,GAOdjlD,EAAO++C,MAAMmG,sBAAwB,EAMrCllD,EAAO++C,MAAMoG,sBAAwB,EAMrCnlD,EAAO++C,MAAMyD,oBAAsB,EAOnCxiD,EAAO++C,MAAMqG,aAAe,GAE5BplD,EAAO++C,MAAMj+C,UAAY,CAoBrBskC,KAAM,SAAU7uB,GAER,gBAAiBA,IAEjBtX,KAAK0jD,YAAcpsC,EAAOosC,aAG9B1jD,KAAKglD,aAAe,IAAIjkD,EAAOqlD,QAAQpmD,KAAKsC,KAAM,EAAGvB,EAAOslD,YAAYC,QACxEtmD,KAAKumD,aACLvmD,KAAKumD,aAELvmD,KAAK0vC,MAAQ,IAAI3uC,EAAOylD,MAAMxmD,KAAKsC,MACnCtC,KAAKklD,MAAQ,IAAInkD,EAAO0lD,MAAMzmD,KAAKsC,MACnCtC,KAAKmlD,UAAY,IAAIpkD,EAAO2lD,UAAU1mD,KAAKsC,MAC3CtC,KAAK2mD,WAAa,IAAI5lD,EAAO6lD,WAAW5mD,KAAKsC,MAC7CtC,KAAK6mD,YAAc,IAAI9lD,EAAO+lD,YAAY9mD,KAAKsC,MAE3CvB,EAAOgmD,WAEP/mD,KAAKilD,SAAW,IAAIlkD,EAAOgmD,SAAS/mD,KAAKsC,OAGzCvB,EAAOimD,UAEPhnD,KAAKolD,QAAU,IAAIrkD,EAAOimD,QAAQhnD,KAAKsC,OAG3CtC,KAAKslD,OAAS,IAAIvkD,EAAO0jC,OACzBzkC,KAAKulD,KAAO,IAAIxkD,EAAO0jC,OACvBzkC,KAAKwlD,MAAQ,IAAIzkD,EAAO0jC,OACxBzkC,KAAKylD,OAAS,IAAI1kD,EAAO0jC,OAEzBzkC,KAAKK,MAAQ,IAAIU,EAAOX,MAAM,EAAG,GACjCJ,KAAKwjD,MAAQ,IAAIziD,EAAOX,MACxBJ,KAAKG,SAAW,IAAIY,EAAOX,MAC3BJ,KAAK8lD,aAAe,IAAI/kD,EAAOX,MAE/BJ,KAAKyjD,OAAS,IAAI1iD,EAAO+1B,OAAO,EAAG,EAAG,IAEtC92B,KAAK+kD,cAAgB/kD,KAAKglD,aAE1BhlD,KAAK+iD,UAAYhiD,EAAO2F,WAAW2B,OAAOrI,KAAM,EAAG,GACnDA,KAAKgjD,WAAahjD,KAAK+iD,UAAUzpC,WAAW,MAExCtZ,KAAKsC,KAAKgqB,OAAO64B,YAAmC,IAArB7tC,EAAO6tC,UAEtCnlD,KAAKmlD,UAAUh5C,QAEVnM,KAAKsC,KAAKgqB,OAAO44B,QAA2B,IAAjB5tC,EAAO4tC,OAEvCllD,KAAKklD,MAAM/4C,QAGVnM,KAAKmlD,UAAUjY,SAA4B,IAAjB51B,EAAOo4B,OAElC1vC,KAAK0vC,MAAMvjC,SAGfnM,KAAKglD,aAAa9X,QAAS,KAEvB51B,EAAOqvC,YAEP3mD,KAAK2mD,WAAWx6C,SAGO,IAAvBmL,EAAOuvC,aAEP7mD,KAAK6mD,YAAY16C,QAGjBnM,KAAKilD,WAAiC,IAApB3tC,EAAO2tC,UAEzBjlD,KAAKilD,SAAS94C,QAGlB,IAAI0iC,EAAQ7uC,KAEZA,KAAKinD,mBAAqB,SAAUrU,GAEhC/D,EAAMqY,kBAAkBtU,IAG5B5yC,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,QAASlzC,KAAKinD,oBAAoB,IAQxEllD,QAAS,WAEL/B,KAAK0vC,MAAM1jC,OACXhM,KAAK2mD,WAAW36C,OAChBhM,KAAKklD,MAAMl5C,OACXhM,KAAKmlD,UAAUn5C,OACfhM,KAAK6mD,YAAY76C,OAEbhM,KAAKilD,UAELjlD,KAAKilD,SAASj5C,OAGdhM,KAAKolD,SAELplD,KAAKolD,QAAQp5C,OAGjBhM,KAAKijD,cAAgB,GAErBliD,EAAO2F,WAAW2W,OAAOrd,MAEzBA,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,QAASn0C,KAAKinD,qBAyBvDE,+BAAgC,SAAUjQ,EAAUvpC,GAEhD3N,KAAKkjD,uBAAyBhM,EAC9Bl3C,KAAKmjD,8BAAgCx1C,GAuBzCy5C,gBAAiB,SAAUlQ,EAAUvpC,GAEjC3N,KAAKijD,cAAct7C,KAAK,CAAEuvC,SAAUA,EAAUvpC,QAASA,KAiB3D05C,qBAAsB,SAAUnQ,EAAUvpC,EAAS25C,QAEjClhD,IAAVkhD,IAAuBA,GAAQ,GAEnCtnD,KAAKmkD,mBAAmBx8C,KAAK,CAAEuvC,SAAUA,EAAUvpC,QAASA,EAAS25C,MAAOA,KAWhFC,wBAAyB,SAAUrQ,EAAUvpC,GAIzC,IAFA,IAAI1L,EAAIjC,KAAKmkD,mBAAmBjiD,OAEzBD,KAEH,GAAIjC,KAAKmkD,mBAAmBliD,GAAGi1C,WAAaA,GAAYl3C,KAAKmkD,mBAAmBliD,GAAG0L,UAAYA,EAG3F,OADA3N,KAAKmkD,mBAAmBx7C,OAAO1G,EAAG,IAC3B,EAIf,OAAO,GAWXulD,0BAA2B,SAAUF,EAAO1U,GAIxC,IAFA,IAAI3wC,EAAIjC,KAAKmkD,mBAAmBjiD,OAEzBD,KACP,CACI,IAAIwlD,EAAKznD,KAAKmkD,mBAAmBliD,GAE7BwlD,EAAGH,QAAUA,GAASG,EAAGvQ,SAASnzC,KAAK0jD,EAAG95C,QAAS3N,KAAM4yC,IAEzD5yC,KAAKmkD,mBAAmBx7C,OAAO1G,EAAG,KAY9CylD,mBAAoB,SAAUxQ,EAAUvpC,GAIpC,IAFA,IAAI1L,EAAIjC,KAAKijD,cAAc/gD,OAEpBD,KAEH,GAAIjC,KAAKijD,cAAchhD,GAAGi1C,WAAaA,GAAYl3C,KAAKijD,cAAchhD,GAAG0L,UAAYA,EAGjF,YADA3N,KAAKijD,cAAct6C,OAAO1G,EAAG,IAczCskD,WAAY,WAER,GAAIvmD,KAAK8kD,SAAS5iD,QAAUnB,EAAO++C,MAAMqG,aAGrC,OADA/1C,QAAQ+K,KAAK,6CAA+Cpa,EAAO++C,MAAMqG,aAAe,sBACjF,KAGX,IAAI1xC,EAAKzU,KAAK8kD,SAAS5iD,OAAS,EAC5BsuC,EAAU,IAAIzvC,EAAOqlD,QAAQpmD,KAAKsC,KAAMmS,EAAI1T,EAAOslD,YAAYsB,SAKnE,OAHA3nD,KAAK8kD,SAASn9C,KAAK6oC,GACnBxwC,KAAK,UAAYyU,GAAM+7B,GAW3BjJ,OAAQ,WAOJ,GALIvnC,KAAKilD,UAELjlD,KAAKilD,SAAS1d,SAGE,EAAhBvnC,KAAKojD,UAAgBpjD,KAAK6lD,aAAe7lD,KAAKojD,SAE9CpjD,KAAK6lD,mBAFT,CAMA7lD,KAAKwjD,MAAMlgD,EAAItD,KAAKG,SAASmD,EAAItD,KAAK8lD,aAAaxiD,EACnDtD,KAAKwjD,MAAMjgD,EAAIvD,KAAKG,SAASoD,EAAIvD,KAAK8lD,aAAaviD,EAEnDvD,KAAK8lD,aAAatuB,SAASx3B,KAAKG,UAChCH,KAAKglD,aAAazd,SAEdvnC,KAAKolD,SAAWplD,KAAKolD,QAAQlY,QAE7BltC,KAAKolD,QAAQ7d,SAGjB,IAAK,IAAItlC,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAEtCjC,KAAK8kD,SAAS7iD,GAAGslC,SAGrBvnC,KAAK6lD,aAAe,IASxBnc,YAAa,WAEL1pC,KAAKolD,SAAWplD,KAAKolD,QAAQlY,QAE7BltC,KAAKolD,QAAQ7d,UAerBiB,MAAO,SAAUof,GAEb,GAAK5nD,KAAKsC,KAAKmpC,WAAYzrC,KAAKqlD,YAAhC,MAKaj/C,IAATwhD,IAAsBA,GAAO,GAEjC5nD,KAAKglD,aAAaxc,QAEdxoC,KAAKilD,UAELjlD,KAAKilD,SAASzc,MAAMof,GAGxB,IAAK,IAAI3lD,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAEtCjC,KAAK8kD,SAAS7iD,GAAGumC,QAGiB,SAAlCxoC,KAAKsC,KAAK0V,OAAOuE,MAAM44B,SAEvBn1C,KAAKsC,KAAK0V,OAAOuE,MAAM44B,OAAS,IAGhCyS,IAEA5nD,KAAKslD,OAAO1W,UACZ5uC,KAAKulD,KAAK3W,UACV5uC,KAAKwlD,MAAM5W,UACX5uC,KAAKylD,OAAO7W,UACZ5uC,KAAKslD,OAAS,IAAIvkD,EAAO0jC,OACzBzkC,KAAKulD,KAAO,IAAIxkD,EAAO0jC,OACvBzkC,KAAKwlD,MAAQ,IAAIzkD,EAAO0jC,OACxBzkC,KAAKylD,OAAS,IAAI1kD,EAAO0jC,OACzBzkC,KAAKijD,cAAgB,IAGzBjjD,KAAK6lD,aAAe,IAUxBgC,WAAY,SAAUvkD,EAAGC,GAErBvD,KAAK8lD,aAAavuB,MAAMj0B,EAAGC,GAC3BvD,KAAKwjD,MAAMjsB,MAAM,EAAG,IAYxBuwB,aAAc,SAAUlV,GAEpB,GAAwB,GAApB5yC,KAAK0jD,aAAoB1jD,KAAK+nD,oBAAoB/nD,KAAK0jD,cAAgB1jD,KAAK0jD,YAE5E,OAAO,KAGX,IAAK1jD,KAAKokD,SAASlX,OAEf,OAAOltC,KAAKokD,SAASj4C,MAAMymC,GAG/B,IAAK5yC,KAAKqkD,SAASnX,OAEf,OAAOltC,KAAKqkD,SAASl4C,MAAMymC,GAG/B,IAAK,IAAI3wC,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAC1C,CACI,IAAIuuC,EAAUxwC,KAAK8kD,SAAS7iD,GAE5B,IAAKuuC,EAAQtD,OAET,OAAOsD,EAAQrkC,MAAMymC,GAI7B,OAAO,MAYXoV,cAAe,SAAUpV,GAErB,GAAI5yC,KAAKokD,SAASlX,QAAUltC,KAAKokD,SAAS6D,aAAerV,EAAMqV,WAE3D,OAAOjoD,KAAKokD,SAAS8D,KAAKtV,GAG9B,GAAI5yC,KAAKqkD,SAASnX,QAAUltC,KAAKqkD,SAAS4D,aAAerV,EAAMqV,WAE3D,OAAOjoD,KAAKqkD,SAAS6D,KAAKtV,GAG9B,IAAK,IAAI3wC,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAC1C,CACI,IAAIuuC,EAAUxwC,KAAK8kD,SAAS7iD,GAE5B,GAAIuuC,EAAQtD,QAAUsD,EAAQyX,aAAerV,EAAMqV,WAE/C,OAAOzX,EAAQ0X,KAAKtV,GAI5B,OAAO,MAWXuV,YAAa,SAAUvV,GAEnB,GAAI5yC,KAAKokD,SAASlX,QAAUltC,KAAKokD,SAAS6D,aAAerV,EAAMqV,WAE3D,OAAOjoD,KAAKokD,SAASp4C,KAAK4mC,GAG9B,GAAI5yC,KAAKqkD,SAASnX,QAAUltC,KAAKqkD,SAAS4D,aAAerV,EAAMqV,WAE3D,OAAOjoD,KAAKqkD,SAASr4C,KAAK4mC,GAG9B,IAAK,IAAI3wC,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAC1C,CACI,IAAIuuC,EAAUxwC,KAAK8kD,SAAS7iD,GAE5B,GAAIuuC,EAAQtD,QAAUsD,EAAQyX,aAAerV,EAAMqV,WAE/C,OAAOzX,EAAQxkC,KAAK4mC,GAI5B,OAAO,MAWXmV,oBAAqB,SAAUnoB,QAEbx5B,IAAVw5B,IAAuBA,EAAQ5/B,KAAK8kD,SAAS5iD,QAIjD,IAFA,IAAIud,EAAQmgB,EAEH39B,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,QAAkB,EAARud,EAAWxd,IACvD,CACkBjC,KAAK8kD,SAAS7iD,GAEhBirC,QAERztB,IAIR,OAAQmgB,EAAQngB,GAUpB2oC,WAAY,SAAUC,QAEDjiD,IAAbiiD,IAA0BA,GAAW,GAEzC,IAAK,IAAIpmD,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAC1C,CACI,IAAIuuC,EAAUxwC,KAAK8kD,SAAS7iD,GAE5B,GAAIuuC,EAAQtD,SAAWmb,EAEnB,OAAO7X,EAIf,OAAO,MAcX8X,yBAA0B,SAAUL,GAEhC,IAAK,IAAIhmD,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAC1C,CACI,IAAIuuC,EAAUxwC,KAAK8kD,SAAS7iD,GAE5B,GAAIuuC,EAAQyX,aAAeA,EAEvB,OAAOzX,EAIf,OAAO,MAaX+X,iBAAkB,SAAUC,GAExB,IAAK,IAAIvmD,EAAI,EAAGA,EAAIjC,KAAK8kD,SAAS5iD,OAAQD,IAC1C,CACI,IAAIuuC,EAAUxwC,KAAK8kD,SAAS7iD,GAE5B,GAAIuuC,EAAQgY,YAAcA,EAEtB,OAAOhY,EAIf,OAAO,MAWXiY,iBAAkB,SAAUvsC,EAAes0B,EAAS3Y,QAEjCzxB,IAAXyxB,IAAwBA,EAAS,IAAI92B,EAAOX,OAEhD,IAAI4C,EAAKkZ,EAAcpb,eACnB2T,EAAK,GAAKzR,EAAGP,EAAIO,EAAGJ,EAAII,EAAGL,GAAKK,EAAGN,GAEvC,OAAOm1B,EAAON,MACVv0B,EAAGJ,EAAI6R,EAAK+7B,EAAQltC,GAAKN,EAAGL,EAAI8R,EAAK+7B,EAAQjtC,GAAKP,EAAGF,GAAKE,EAAGL,EAAIK,EAAGH,GAAKG,EAAGJ,GAAK6R,EACjFzR,EAAGP,EAAIgS,EAAK+7B,EAAQjtC,GAAKP,EAAGN,EAAI+R,EAAK+7B,EAAQltC,IAAMN,EAAGF,GAAKE,EAAGP,EAAIO,EAAGH,GAAKG,EAAGN,GAAK+R,IAY1Fi0C,QAAS,SAAUxsC,EAAes0B,EAASmY,GAEvC,IAAKzsC,EAAchV,aAEf,OAAO,EAOX,GAJAlH,KAAKyoD,iBAAiBvsC,EAAes0B,EAASxwC,KAAK4lD,aAEnD+C,EAAWnxB,SAASx3B,KAAK4lD,aAErB1pC,EAAcxb,SAAWwb,EAAcxb,QAAQyJ,SAE/C,OAAQ+R,EAAcxb,QAAQyJ,SAASnK,KAAK4lD,YAAYtiD,EAAGtD,KAAK4lD,YAAYriD,GAE3E,GAAIxC,EAAO6nD,UAAY1sC,aAAyBnb,EAAO6nD,SAC5D,CACI,IAAIlkD,EAAQzB,KAAK81B,IAAI7c,EAAcxX,OAC/BC,EAAS1B,KAAK81B,IAAI7c,EAAcvX,QAChCwG,EAAK+Q,EAAc5Y,EAAKoB,EAAQwX,EAAc00B,QAElD,GAAI5wC,KAAKsC,KAAKwZ,OAAOxY,EAAIktC,EAAQltC,GAAK6H,GAAMnL,KAAKsC,KAAKwZ,OAAOxY,EAAIktC,EAAQltC,EAAI6H,EAAKzG,EAClF,CACI,IAAI0G,EAAK8Q,EAAc3Y,EAAKoB,EAASuX,EAAc20B,QAEnD,GAAI7wC,KAAKsC,KAAKwZ,OAAOvY,EAAIitC,EAAQjtC,GAAK6H,GAAMpL,KAAKsC,KAAKwZ,OAAOvY,EAAIitC,EAAQjtC,EAAI6H,EAAKzG,EAE9E,OAAO,QAId,GAAIuX,aAAyBnb,EAAO8nD,WACzC,CACQnkD,EAAQwX,EAAcxX,MACtBC,EAASuX,EAAcvX,OACvBwG,GAAMzG,EAAQwX,EAAc1V,OAAOlD,EAEvC,GAAItD,KAAK4lD,YAAYtiD,GAAK6H,GAAMnL,KAAK4lD,YAAYtiD,EAAI6H,EAAKzG,EAC1D,CACQ0G,GAAMzG,EAASuX,EAAc1V,OAAOjD,EAExC,GAAIvD,KAAK4lD,YAAYriD,GAAK6H,GAAMpL,KAAK4lD,YAAYriD,EAAI6H,EAAKzG,EAEtD,OAAO,QAId,GAAIuX,aAAyBjc,KAAKwF,OACvC,CACQf,EAAQwX,EAAcpW,QAAQoH,MAAMxI,MAAQwX,EAAcpW,QAAQG,YAAY9B,WAC9EQ,EAASuX,EAAcpW,QAAQoH,MAAMvI,OAASuX,EAAcpW,QAAQG,YAAY9B,WAChFgH,GAAMzG,EAAQwX,EAAc1V,OAAOlD,EAEvC,GAAItD,KAAK4lD,YAAYtiD,GAAK6H,GAAMnL,KAAK4lD,YAAYtiD,EAAI6H,EAAKzG,EAC1D,CACQ0G,GAAMzG,EAASuX,EAAc1V,OAAOjD,EAExC,GAAIvD,KAAK4lD,YAAYriD,GAAK6H,GAAMpL,KAAK4lD,YAAYriD,EAAI6H,EAAKzG,EAEtD,OAAO,QAId,GAAIuX,aAAyBnb,EAAOqlC,SAErC,IAAK,IAAInkC,EAAI,EAAGA,EAAIia,EAAc4sC,aAAa5mD,OAAQD,IACvD,CACI,IAAI0S,EAAOuH,EAAc4sC,aAAa7mD,GAEtC,GAAK0S,EAAKo0C,OAMNp0C,EAAKq0C,OAASr0C,EAAKq0C,MAAM7+C,SAASnK,KAAK4lD,YAAYtiD,EAAGtD,KAAK4lD,YAAYriD,IAEvE,OAAO,EAOnB,IAAStB,EAAI,EAAGA,EAAIia,EAAcla,SAASE,OAAQD,IAE/C,GAAIjC,KAAK0oD,QAAQxsC,EAAcla,SAASC,GAAIuuC,EAASmY,GAEjD,OAAO,EAIf,OAAO,GASXzB,kBAAmB,WAMflnD,KAAK+kD,cAAckE,2BAWvBhP,QAAS,SAAUiP,EAAS1Y,GAKxB,IAHA,IAAI4L,EAAOp8C,KAAK2lD,iBAAiBvJ,KAC7Bn6C,EAAIm6C,EAAKl6C,OAEND,KACP,CACI,IAAIkF,EAAOi1C,EAAKn6C,GAEZkF,GAAQA,EAAKk8C,SAEbl8C,EAAK+hD,GAAS1Y,MAO9BzvC,EAAO++C,MAAMj+C,UAAUC,YAAcf,EAAO++C,MAQ5Cj5C,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,IAAK,CAE/CkF,IAAK,WAED,OAAO/G,KAAK+lD,IAGhB/+C,IAAK,SAAUC,GAEXjH,KAAK+lD,GAAK9iD,KAAKkvB,MAAMlrB,MAW7BJ,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,IAAK,CAE/CkF,IAAK,WAED,OAAO/G,KAAKgmD,IAGhBh/C,IAAK,SAAUC,GAEXjH,KAAKgmD,GAAK/iD,KAAKkvB,MAAMlrB,MAW7BJ,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,aAAc,CAExDkF,IAAK,WAED,OAAwB,EAAhB/G,KAAKojD,UAAgBpjD,KAAK6lD,aAAe7lD,KAAKojD,YAW9Dv8C,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,wBAAyB,CAEnEkF,IAAK,WAED,OAAO/G,KAAK8kD,SAAS5iD,OAASlC,KAAK+nD,yBAW3ClhD,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,sBAAuB,CAEjEkF,IAAK,WAED,OAAO/G,KAAK+nD,yBAWpBlhD,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAKsC,KAAKwZ,OAAO/D,KAAKzU,EAAItD,KAAKsD,KAW9CuD,OAAOyF,eAAevL,EAAO++C,MAAMj+C,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAKsC,KAAKwZ,OAAO/D,KAAKxU,EAAIvD,KAAKuD,KAyB9CxC,EAAOylD,MAAQ,SAAUlkD,GAKrBtC,KAAKsC,KAAOA,EAMZtC,KAAK4oC,MAAQtmC,EAAKsmC,MAKlB5oC,KAAK0rC,gBAAkB1rC,KAAKsC,KAO5BtC,KAAKmpD,kBAAoB,KAOzBnpD,KAAKopD,gBAAkB,KAQvBppD,KAAKqpD,iBAAmB,KAOxBrpD,KAAKspD,kBAAoB,KAKzBtpD,KAAKupD,SAAU,EAQfvpD,KAAKktC,QAAS,EASdltC,KAAKqjD,SAAU,EAQfrjD,KAAKwpD,eAAgB,EAQrBxpD,KAAK4yC,MAAQ,KAMb5yC,KAAKypD,aAAe,KAMpBzpD,KAAK0pD,aAAe,KAMpB1pD,KAAK2pD,WAAa,KAMlB3pD,KAAK4pD,YAAc,KAMnB5pD,KAAK6pD,aAAe,MAOxB9oD,EAAOylD,MAAMsD,WAAa,EAM1B/oD,EAAOylD,MAAMuD,YAAc,EAM3BhpD,EAAOylD,MAAMwD,cAAgB,EAM7BjpD,EAAOylD,MAAMyD,aAAe,EAM5BlpD,EAAOylD,MAAM0D,YAAc,EAM3BnpD,EAAOylD,MAAM2D,eAAiB,EAE9BppD,EAAOylD,MAAM3kD,UAAY,CAOrBsK,MAAO,WAEH,IAAImgB,EAAStsB,KAAKsC,KAAKgqB,OAEvB,GAAIA,EAAO89B,yBAA2BpqD,KAAK4oC,MAAMsc,MAAMhY,OAGnD,OAAO,EAGX,GAA0B,OAAtBltC,KAAKypD,aAGL,OAAO,EAGX,IAAI5a,EAAQ7uC,KAEZA,KAAKypD,aAAe,SAAU7W,GAE1B,OAAO/D,EAAMwb,YAAYzX,IAG7B5yC,KAAK0pD,aAAe,SAAU9W,GAE1B,OAAO/D,EAAMyb,YAAY1X,IAG7B5yC,KAAK2pD,WAAa,SAAU/W,GAExB,OAAO/D,EAAM0b,UAAU3X,IAG3B5yC,KAAKwqD,iBAAmB,SAAU5X,GAE9B,OAAO/D,EAAM4b,gBAAgB7X,IAGjC5yC,KAAK0qD,kBAAoB,SAAU9X,GAE/B,OAAO/D,EAAM8b,iBAAiB/X,IAGlC5yC,KAAK4pD,YAAc,SAAUhX,GAEzB,OAAO/D,EAAM+b,WAAWhY,IAG5B5yC,KAAK6pD,aAAe,SAAUjX,GAE1B,OAAO/D,EAAMgc,YAAYjY,IAG7B,IAAI56B,EAAShY,KAAKsC,KAAK0V,OAgBvB,OAdAA,EAAOk7B,iBAAiB,YAAalzC,KAAKypD,cAAc,GACxDzxC,EAAOk7B,iBAAiB,YAAalzC,KAAK0pD,cAAc,GACxD1xC,EAAOk7B,iBAAiB,UAAWlzC,KAAK2pD,YAAY,GAE/Cr9B,EAAOk1B,WAERrxC,OAAO+iC,iBAAiB,UAAWlzC,KAAKwqD,kBAAkB,GAC1Dr6C,OAAO+iC,iBAAiB,WAAYlzC,KAAK0qD,mBAAmB,GAC5D1yC,EAAOk7B,iBAAiB,YAAalzC,KAAK6pD,cAAc,GACxD7xC,EAAOk7B,iBAAiB,WAAYlzC,KAAK4pD,aAAa,IAG1D5pD,KAAKktC,QAAS,GAUlBmd,YAAa,SAAUzX,GAEnB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGN3hD,KAAKmpD,mBAELnpD,KAAKmpD,kBAAkBplD,KAAK/D,KAAK0rC,gBAAiBkH,GAGjD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCzQ,EAAMqV,WAAa,EAEnBjoD,KAAK4oC,MAAMoc,aAAa74C,MAAMymC,KAQlC0X,YAAa,SAAU1X,GAEnB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGN3hD,KAAK8qD,mBAEL9qD,KAAK8qD,kBAAkB/mD,KAAK/D,KAAK0rC,gBAAiBkH,GAGjD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCzQ,EAAMqV,WAAa,EAEnBjoD,KAAK4oC,MAAMoc,aAAakD,KAAKtV,KAQjC2X,UAAW,SAAU3X,GAEjB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGN3hD,KAAKopD,iBAELppD,KAAKopD,gBAAgBrlD,KAAK/D,KAAK0rC,gBAAiBkH,GAG/C5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCzQ,EAAMqV,WAAa,EAEnBjoD,KAAK4oC,MAAMoc,aAAah5C,KAAK4mC,KASjC6X,gBAAiB,SAAU7X,GAElB5yC,KAAK4oC,MAAMoc,aAAa+F,aAErB/qD,KAAKopD,iBAELppD,KAAKopD,gBAAgBrlD,KAAK/D,KAAK0rC,gBAAiBkH,GAGpDA,EAAMqV,WAAa,EAEnBjoD,KAAK4oC,MAAMoc,aAAah5C,KAAK4mC,KAUrC+X,iBAAkB,SAAU/X,GAExB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGV3hD,KAAK4oC,MAAMoc,aAAa+F,YAAa,EAEhC/qD,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAejCrjD,KAAK4oC,MAAMoc,aAAah5C,KAAK4mC,GAG7B5yC,KAAK4oC,MAAMoc,aAAagG,iBAS5BJ,WAAY,SAAUhY,GAElB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGV3hD,KAAK4oC,MAAMoc,aAAa+F,YAAa,EAEjC/qD,KAAKqpD,kBAELrpD,KAAKqpD,iBAAiBtlD,KAAK/D,KAAK0rC,gBAAiBkH,GAGhD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCrjD,KAAK4oC,MAAMoc,aAAaiG,cAAcrY,GAElC5yC,KAAKwpD,gBAEL5W,EAAMqV,WAAa,EAEnBjoD,KAAK4oC,MAAMoc,aAAah5C,KAAK4mC,GAE7B5yC,KAAK4oC,MAAMqR,QAAQ,qBAAsBj6C,KAAK4oC,MAAMoc,iBAU5D6F,YAAa,SAAUjY,GAEnB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGV3hD,KAAK4oC,MAAMoc,aAAa+F,YAAa,EAEjC/qD,KAAKspD,mBAELtpD,KAAKspD,kBAAkBvlD,KAAK/D,KAAK0rC,gBAAiBkH,GAGjD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,SAKjCrjD,KAAK4oC,MAAMoc,aAAaiG,cAAcrY,IAO1C5mC,KAAM,WAEF,IAAIgM,EAAShY,KAAKsC,KAAK0V,OAEvBA,EAAOm8B,oBAAoB,YAAan0C,KAAKypD,cAAc,GAC3DzxC,EAAOm8B,oBAAoB,YAAan0C,KAAK0pD,cAAc,GAC3D1xC,EAAOm8B,oBAAoB,UAAWn0C,KAAK2pD,YAAY,GACvD3xC,EAAOm8B,oBAAoB,YAAan0C,KAAK6pD,cAAc,GAC3D7xC,EAAOm8B,oBAAoB,WAAYn0C,KAAK4pD,aAAa,GAEzDz5C,OAAOgkC,oBAAoB,UAAWn0C,KAAKwqD,kBAAkB,GAC7Dr6C,OAAOgkC,oBAAoB,WAAYn0C,KAAK0qD,mBAAmB,GAE/D1qD,KAAKktC,QAAS,IAKtBnsC,EAAOylD,MAAM3kD,UAAUC,YAAcf,EAAOylD,MAQ5CzlD,EAAO6lD,WAAa,SAAUtkD,GAM1BtC,KAAKsC,KAAOA,EAMZtC,KAAK4oC,MAAQtmC,EAAKsmC,MAMlB5oC,KAAKkrD,QAAU5oD,EAAK0V,OAOpBhY,KAAK2hD,gBAAiB,EAStB3hD,KAAKktC,QAAS,EAOdltC,KAAKk3C,SAAW,KAOhBl3C,KAAK0rC,gBAAkBppC,EASvBtC,KAAK4nC,MAAQ,EAWb5nC,KAAKmrD,eAAiB7oD,EAAKgqB,OAAO8+B,WAQlCprD,KAAKqrD,oBAAsBrrD,KAAKsrD,eAAej5B,KAAKryB,MAOpDA,KAAKurD,WAAa,MAOtBxqD,EAAO6lD,WAAWt4B,GAAK,EAMvBvtB,EAAO6lD,WAAWr4B,MAAQ,EAO1BxtB,EAAO6lD,WAAW/kD,UAAUsK,MAAQ,WAEhC,SAAKnM,KAAKmrD,gBAAkBnrD,KAAKktC,UAKjCltC,KAAKkrD,QAAQhY,iBAAiBlzC,KAAKmrD,eAAgBnrD,KAAKqrD,qBAAqB,GAEjD,eAAxBrrD,KAAKmrD,eAELnrD,KAAKurD,WAAa,IAAIxqD,EAAOyqD,iBAAgB,KAAS,GAEzB,mBAAxBxrD,KAAKmrD,iBAEVnrD,KAAKurD,WAAa,IAAIxqD,EAAOyqD,gBAAgB,EAAG,IAGpDxrD,KAAKktC,QAAS,IASlBnsC,EAAO6lD,WAAW/kD,UAAUmK,KAAO,WAE1BhM,KAAKktC,SAKVltC,KAAKkrD,QAAQ/W,oBAAoBn0C,KAAKmrD,eAAgBnrD,KAAKqrD,qBAAqB,GAEhFrrD,KAAKktC,QAAS,IASlBnsC,EAAO6lD,WAAW/kD,UAAUypD,eAAiB,SAAU1Y,GAE/C5yC,KAAKurD,aAEL3Y,EAAQ5yC,KAAKurD,WAAWE,UAAU7Y,IAGlC5yC,KAAK2hD,gBAEL/O,EAAM+O,iBAIV3hD,KAAK4nC,MAAQ7mC,EAAOkC,KAAK47B,OAAO+T,EAAM8Y,QAAS,EAAG,GAE9C1rD,KAAKk3C,UAELl3C,KAAKk3C,SAASnzC,KAAK/D,KAAK0rC,gBAAiBkH,IA8BjD7xC,EAAO2lD,UAAY,SAAUpkD,GAKzBtC,KAAKsC,KAAOA,EAMZtC,KAAK4oC,MAAQtmC,EAAKsmC,MAKlB5oC,KAAK0rC,gBAAkB1rC,KAAKsC,KAK5BtC,KAAK2rD,oBAAsB,KAK3B3rD,KAAK4rD,oBAAsB,KAK3B5rD,KAAK6rD,kBAAoB,KAKzB7rD,KAAK8rD,mBAAqB,KAK1B9rD,KAAK+rD,oBAAsB,KAK3B/rD,KAAKgsD,sBAAwB,KAgB7BhsD,KAAKupD,SAAU,EAQfvpD,KAAK4yC,MAAQ,KAQb5yC,KAAKktC,QAAS,EAOdltC,KAAKqjD,SAAU,EAOfrjD,KAAKwpD,eAAgB,EAMrBxpD,KAAKisD,iBAAmB,KAMxBjsD,KAAKksD,iBAAmB,KAMxBlsD,KAAKmsD,eAAiB,KAMtBnsD,KAAKosD,qBAAuB,KAM5BpsD,KAAKqsD,gBAAkB,KAMvBrsD,KAAKssD,iBAAmB,MAG5BvrD,EAAO2lD,UAAU7kD,UAAY,CAMzBsK,MAAO,WAEH,IAAKnM,KAAKsC,KAAKgqB,OAAO64B,UAElB,OAAO,EAGX,GAA8B,OAA1BnlD,KAAKisD,iBAGL,OAAO,EAGX,IAAIpd,EAAQ7uC,KAEZA,KAAKisD,iBAAmB,SAAUrZ,GAE9B,OAAO/D,EAAM0d,cAAc3Z,IAG/B5yC,KAAKksD,iBAAmB,SAAUtZ,GAE9B,OAAO/D,EAAM2d,cAAc5Z,IAG/B5yC,KAAKmsD,eAAiB,SAAUvZ,GAE5B,OAAO/D,EAAM4d,YAAY7Z,IAG7B5yC,KAAKosD,qBAAuB,SAAUxZ,GAElC,OAAO/D,EAAM6d,kBAAkB9Z,IAGnC5yC,KAAKqsD,gBAAkB,SAAUzZ,GAE7B,OAAO/D,EAAM8d,aAAa/Z,IAG9B5yC,KAAKssD,iBAAmB,SAAU1Z,GAE9B,OAAO/D,EAAM+d,cAAcha,IAG/B5yC,KAAK6sD,mBAAqB,SAAUja,GAEhC,OAAO/D,EAAMie,gBAAgBla,IAGjC,IAAI56B,EAAShY,KAAKsC,KAAK0V,OA8BvB,OA5BAA,EAAOk7B,iBAAiB,gBAAiBlzC,KAAKisD,kBAAkB,GAChEj0C,EAAOk7B,iBAAiB,gBAAiBlzC,KAAKksD,kBAAkB,GAChEl0C,EAAOk7B,iBAAiB,cAAelzC,KAAKmsD,gBAAgB,GAC5Dn0C,EAAOk7B,iBAAiB,kBAAmBlzC,KAAK6sD,oBAAoB,GAGpE70C,EAAOk7B,iBAAiB,cAAelzC,KAAKisD,kBAAkB,GAC9Dj0C,EAAOk7B,iBAAiB,cAAelzC,KAAKksD,kBAAkB,GAC9Dl0C,EAAOk7B,iBAAiB,YAAalzC,KAAKmsD,gBAAgB,GAC1Dn0C,EAAOk7B,iBAAiB,gBAAiBlzC,KAAK6sD,oBAAoB,GAElE70C,EAAOuE,MAAM,uBAAyB,OACtCvE,EAAOuE,MAAM,oBAAsB,OAE9Bvc,KAAKsC,KAAKgqB,OAAOk1B,WAElBrxC,OAAO+iC,iBAAiB,cAAelzC,KAAKosD,sBAAsB,GAClEp0C,EAAOk7B,iBAAiB,gBAAiBlzC,KAAKssD,kBAAkB,GAChEt0C,EAAOk7B,iBAAiB,eAAgBlzC,KAAKqsD,iBAAiB,GAG9Dl8C,OAAO+iC,iBAAiB,YAAalzC,KAAKosD,sBAAsB,GAChEp0C,EAAOk7B,iBAAiB,cAAelzC,KAAKssD,kBAAkB,GAC9Dt0C,EAAOk7B,iBAAiB,aAAclzC,KAAKqsD,iBAAiB,IAGhErsD,KAAKktC,QAAS,GAWlBqf,cAAe,SAAU3Z,GAErB5yC,KAAKsC,KAAKsmC,MAAM4e,2BAA0B,EAAO5U,GAEjD5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGN3hD,KAAK2rD,qBAEL3rD,KAAK2rD,oBAAoB5nD,KAAK/D,KAAK0rC,gBAAiBkH,GAGnD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCzQ,EAAMqV,WAAarV,EAAM4V,UAErBxoD,KAAK+sD,oBAAoBna,GAEzB5yC,KAAK4oC,MAAMoc,aAAa74C,MAAMymC,GAI9B5yC,KAAK4oC,MAAMkf,aAAalV,KAShC4Z,cAAe,SAAU5Z,GAErB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGN3hD,KAAK4rD,qBAEL5rD,KAAK4rD,oBAAoB7nD,KAAK/D,KAAK0rC,gBAAiBkH,GAGnD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCzQ,EAAMqV,WAAarV,EAAM4V,UAErBxoD,KAAK+sD,oBAAoBna,GAEzB5yC,KAAK4oC,MAAMoc,aAAakD,KAAKtV,GAI7B5yC,KAAK4oC,MAAMof,cAAcpV,KASjC6Z,YAAa,SAAU7Z,GAEnB5yC,KAAKsC,KAAKsmC,MAAM4e,2BAA0B,EAAM5U,GAEhD5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGN3hD,KAAK6rD,mBAEL7rD,KAAK6rD,kBAAkB9nD,KAAK/D,KAAK0rC,gBAAiBkH,GAGjD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,UAKjCzQ,EAAMqV,WAAarV,EAAM4V,UAErBxoD,KAAK+sD,oBAAoBna,GAEzB5yC,KAAK4oC,MAAMoc,aAAah5C,KAAK4mC,GAI7B5yC,KAAK4oC,MAAMuf,YAAYvV,KAU/B8Z,kBAAmB,SAAU9Z,GAIzB,GAFAA,EAAMqV,WAAarV,EAAM4V,UAErBxoD,KAAK+sD,oBAAoBna,KAAW5yC,KAAK4oC,MAAMoc,aAAa+F,WAE5D/qD,KAAKysD,YAAY7Z,OAGrB,CACI,IAAIpC,EAAUxwC,KAAK4oC,MAAM0f,yBAAyB1V,EAAMqV,YAEpDzX,GAAWA,EAAQua,YAEnB/qD,KAAKysD,YAAY7Z,KAW7B+Z,aAAc,SAAU/Z,GAEpB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGV/O,EAAMqV,WAAarV,EAAM4V,UAEzB,IAAIhY,EAAUxwC,KAAKgtD,oBAAoBpa,GAEnCpC,IAEAA,EAAQua,YAAa,GAGrB/qD,KAAK8rD,oBAEL9rD,KAAK8rD,mBAAmB/nD,KAAK/D,KAAK0rC,gBAAiBkH,GAGlD5yC,KAAK4oC,MAAMya,SAAYrjD,KAAKqjD,SAK7BrjD,KAAKwpD,gBAEL5W,EAAMqV,WAAa,EAEdzX,IAEDA,EAAUxwC,KAAK4oC,MAAMoc,cAGzBxU,EAAQxkC,KAAK4mC,GAEb5yC,KAAK4oC,MAAMqR,QAAQ,qBAAsBzJ,KAUjDoc,cAAe,SAAUha,GAErB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKupD,SAEL3W,EAAM+O,iBAGV/O,EAAMqV,WAAarV,EAAM4V,UAEzB,IAAIhY,EAAUxwC,KAAKgtD,oBAAoBpa,GAEnCpC,IAEAA,EAAQua,YAAa,GAGrB/qD,KAAK+rD,qBAEL/rD,KAAK+rD,oBAAoBhoD,KAAK/D,KAAK0rC,gBAAiBkH,IAU5Dka,gBAAiB,SAAUla,GAEvB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKgsD,uBAELhsD,KAAKgsD,sBAAsBjoD,KAAK/D,KAAK0rC,gBAAiBkH,GAGrD5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,UAKtCzQ,EAAMqV,WAAarV,EAAM4V,UAErBxoD,KAAK+sD,oBAAoBna,GAEzB5yC,KAAK4oC,MAAMoc,aAAah5C,KAAK4mC,GAI7B5yC,KAAK4oC,MAAMuf,YAAYvV,KAQ/B5mC,KAAM,WAEF,IAAIgM,EAAShY,KAAKsC,KAAK0V,OAEvBA,EAAOm8B,oBAAoB,gBAAiBn0C,KAAKisD,kBAAkB,GACnEj0C,EAAOm8B,oBAAoB,gBAAiBn0C,KAAKksD,kBAAkB,GACnEl0C,EAAOm8B,oBAAoB,cAAen0C,KAAKmsD,gBAAgB,GAG/Dn0C,EAAOm8B,oBAAoB,cAAen0C,KAAKisD,kBAAkB,GACjEj0C,EAAOm8B,oBAAoB,cAAen0C,KAAKksD,kBAAkB,GACjEl0C,EAAOm8B,oBAAoB,YAAan0C,KAAKmsD,gBAAgB,GAE7Dh8C,OAAOgkC,oBAAoB,cAAen0C,KAAKosD,sBAAsB,GACrEp0C,EAAOm8B,oBAAoB,gBAAiBn0C,KAAKssD,kBAAkB,GACnEt0C,EAAOm8B,oBAAoB,eAAgBn0C,KAAKqsD,iBAAiB,GAGjEl8C,OAAOgkC,oBAAoB,YAAan0C,KAAKosD,sBAAsB,GACnEp0C,EAAOm8B,oBAAoB,cAAen0C,KAAKssD,kBAAkB,GACjEt0C,EAAOm8B,oBAAoB,aAAcn0C,KAAKqsD,iBAAiB,GAE/DrsD,KAAKktC,QAAS,GAQlB6f,oBAAqB,SAAUna,GAE3B,MAA8B,UAAtBA,EAAMqa,aAAiD,IAAtBra,EAAMqa,aAQnDD,oBAAqB,SAAUpa,GAE3B,OAAO5yC,KAAK+sD,oBAAoBna,GAC1B5yC,KAAK4oC,MAAMoc,aACXhlD,KAAK4oC,MAAM0f,yBAAyB1V,EAAMqV,cAKxDlnD,EAAO2lD,UAAU7kD,UAAUC,YAAcf,EAAO2lD,UAgChD3lD,EAAOmsD,aAAe,SAAUtsD,EAAQusD,GAKpCntD,KAAKY,OAASA,EAKdZ,KAAKsC,KAAO1B,EAAO0B,KAMnBtC,KAAK4yC,MAAQ,KAMb5yC,KAAKotD,QAAS,EAMdptD,KAAKqtD,MAAO,EAMZrtD,KAAKstD,SAAW,EAMhBttD,KAAKutD,OAAS,EAQdvtD,KAAKwtD,QAAU,EAQfxtD,KAAKytD,QAAS,EAQdztD,KAAK0tD,UAAW,EAQhB1tD,KAAK2tD,SAAU,EAMf3tD,KAAKiH,MAAQ,EAKbjH,KAAKmtD,WAAaA,EAQlBntD,KAAKslD,OAAS,IAAIvkD,EAAO0jC,OAQzBzkC,KAAKulD,KAAO,IAAIxkD,EAAO0jC,OAQvBzkC,KAAK4tD,QAAU,IAAI7sD,EAAO0jC,QAG9B1jC,EAAOmsD,aAAarrD,UAAY,CAW5BsK,MAAO,SAAUymC,EAAO3rC,GAEhBjH,KAAKotD,SAKTptD,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EACZrtD,KAAKstD,SAAWttD,KAAKsC,KAAKqlC,KAAKA,KAC/B3nC,KAAKwtD,QAAU,EAEfxtD,KAAK4yC,MAAQA,EACb5yC,KAAKiH,MAAQA,EAET2rC,IAEA5yC,KAAKytD,OAAS7a,EAAM6a,OACpBztD,KAAK0tD,SAAW9a,EAAM8a,SACtB1tD,KAAK2tD,QAAU/a,EAAM+a,SAGzB3tD,KAAKslD,OAAOzd,SAAS7nC,KAAMiH,KAY/B+E,KAAM,SAAU4mC,EAAO3rC,GAEfjH,KAAKqtD,OAKTrtD,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EACZrtD,KAAKutD,OAASvtD,KAAKsC,KAAKqlC,KAAKA,KAE7B3nC,KAAK4yC,MAAQA,EACb5yC,KAAKiH,MAAQA,EAET2rC,IAEA5yC,KAAKytD,OAAS7a,EAAM6a,OACpBztD,KAAK0tD,SAAW9a,EAAM8a,SACtB1tD,KAAK2tD,QAAU/a,EAAM+a,SAGzB3tD,KAAKulD,KAAK1d,SAAS7nC,KAAMiH,KAa7B4mD,UAAW,SAAUC,EAAWlb,EAAO3rC,GAE/B6mD,EAEA9tD,KAAKmM,MAAMymC,EAAO3rC,GAIlBjH,KAAKgM,KAAK4mC,EAAO3rC,IAWzB8mD,SAAU,SAAU9mD,GAEhBjH,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EAEZrtD,KAAKiH,MAAQA,EAEbjH,KAAK4tD,QAAQ/lB,SAAS7nC,KAAMiH,IAWhC+mD,YAAa,SAAU/oB,GAInB,OAFAA,EAAWA,GAAY,IAEfjlC,KAAKotD,QAAWptD,KAAKstD,SAAWroB,EAAYjlC,KAAKsC,KAAKqlC,KAAKA,MAWvEsmB,aAAc,SAAUhpB,GAIpB,OAFAA,EAAWA,GAAY,IAEfjlC,KAAKqtD,MAASrtD,KAAKutD,OAAStoB,EAAYjlC,KAAKsC,KAAKqlC,KAAKA,MAQnEa,MAAO,WAEHxoC,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EAEZrtD,KAAKstD,SAAWttD,KAAKsC,KAAKqlC,KAAKA,KAC/B3nC,KAAKwtD,QAAU,EAEfxtD,KAAKytD,QAAS,EACdztD,KAAK0tD,UAAW,EAChB1tD,KAAK2tD,SAAU,GASnB5rD,QAAS,WAEL/B,KAAKslD,OAAO1W,UACZ5uC,KAAKulD,KAAK3W,UACV5uC,KAAK4tD,QAAQhf,UAEb5uC,KAAKY,OAAS,KACdZ,KAAKsC,KAAO,OAKpBvB,EAAOmsD,aAAarrD,UAAUC,YAAcf,EAAOmsD,aAUnDrmD,OAAOyF,eAAevL,EAAOmsD,aAAarrD,UAAW,WAAY,CAE7DkF,IAAK,WAED,OAAI/G,KAAKqtD,MAEG,EAGLrtD,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKstD,YAoB1CvsD,EAAOqlD,QAAU,SAAU9jD,EAAMmS,EAAIy5C,GAKjCluD,KAAKsC,KAAOA,EAKZtC,KAAKyU,GAAKA,EAMVzU,KAAK+T,KAAOhT,EAAO4uB,QAMnB3vB,KAAK+M,QAAS,EAMd/M,KAAKioD,WAAa,EAMlBjoD,KAAKwoD,UAAY,KAKjBxoD,KAAKkuD,YAAcA,GAAgBntD,EAAOslD,YAAYC,OAASvlD,EAAOslD,YAAYsB,QAMlF3nD,KAAK6H,OAAS,KASd7H,KAAKmuD,OAAS,KAWdnuD,KAAKouD,WAAa,IAAIrtD,EAAOmsD,aAAaltD,KAAMe,EAAOqlD,QAAQ2D,aAa/D/pD,KAAKquD,aAAe,IAAIttD,EAAOmsD,aAAaltD,KAAMe,EAAOqlD,QAAQ4D,eAajEhqD,KAAKsuD,YAAc,IAAIvtD,EAAOmsD,aAAaltD,KAAMe,EAAOqlD,QAAQ6D,cAahEjqD,KAAKuuD,WAAa,IAAIxtD,EAAOmsD,aAAaltD,KAAMe,EAAOqlD,QAAQ8D,aAa/DlqD,KAAKwuD,cAAgB,IAAIztD,EAAOmsD,aAAaltD,KAAMe,EAAOqlD,QAAQ+D,gBAalEnqD,KAAKyuD,aAAe,IAAI1tD,EAAOmsD,aAAaltD,KAAMe,EAAOqlD,QAAQsI,eAOjE1uD,KAAK2uD,WAAY,EAMjB3uD,KAAK4uD,SAAW,GAMhB5uD,KAAK6uD,UAAY,EAMjB7uD,KAAK8uD,aAAc,EAKnB9uD,KAAK+qD,YAAa,EAKlB/qD,KAAK+uD,SAAW,EAKhB/uD,KAAKgvD,SAAW,EAKhBhvD,KAAKivD,OAAS,EAKdjvD,KAAKkvD,OAAS,EAKdlvD,KAAKmvD,SAAW,EAKhBnvD,KAAKovD,SAAW,EAOhBpvD,KAAKqvD,aAAe,EAOpBrvD,KAAKsvD,aAAe,EAMpBtvD,KAAKuvD,UAAY,EAMjBvvD,KAAKwvD,UAAY,EAMjBxvD,KAAKsD,GAAK,EAMVtD,KAAKuD,GAAK,EAKVvD,KAAKyvD,QAAkB,IAAPh7C,EAQhBzU,KAAKotD,QAAS,EAQdptD,KAAKqtD,MAAO,EAMZrtD,KAAKstD,SAAW,EAMhBttD,KAAKutD,OAAS,EAMdvtD,KAAK0vD,gBAAkB,EAMvB1vD,KAAK2vD,aAAe,EAMpB3vD,KAAK4vD,iBAAmB3tB,OAAOC,UAM/BliC,KAAK6vD,aAAe,KAWpB7vD,KAAK8vD,sBAAwB,GAM7B9vD,KAAKktC,QAAS,EAMdltC,KAAKwR,OAAQ,EAKbxR,KAAKG,SAAW,IAAIY,EAAOX,MAK3BJ,KAAK+vD,aAAe,IAAIhvD,EAAOX,MAK/BJ,KAAKgwD,WAAa,IAAIjvD,EAAOX,MAO7BJ,KAAKyjD,OAAS,IAAI1iD,EAAO+1B,OAAO,EAAG,EAAG,IAOtC92B,KAAKiwD,kBAAoB,KAQzBjwD,KAAKkwD,wBAA0B,MAQnCnvD,EAAOqlD,QAAQ0D,UAAY,EAO3B/oD,EAAOqlD,QAAQ2D,YAAc,EAO7BhpD,EAAOqlD,QAAQ6D,aAAe,EAO9BlpD,EAAOqlD,QAAQ4D,cAAgB,EAQ/BjpD,EAAOqlD,QAAQ8D,YAAc,EAQ7BnpD,EAAOqlD,QAAQ+D,eAAiB,GAOhCppD,EAAOqlD,QAAQsI,cAAgB,GAE/B3tD,EAAOqlD,QAAQvkD,UAAY,CAQvBmpD,aAAc,WAEVhrD,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EAERrtD,KAAKyvD,UAELzvD,KAAKouD,WAAW5lB,QAChBxoC,KAAKquD,aAAa7lB,QAClBxoC,KAAKsuD,YAAY9lB,QACjBxoC,KAAKuuD,WAAW/lB,QAChBxoC,KAAKwuD,cAAchmB,QACnBxoC,KAAKyuD,aAAajmB,UAY1B2nB,mBAAoB,SAAUhC,EAAQvb,GAElC,OAAQub,GAEJ,KAAMptD,EAAOylD,MAAiB,YAC1BxmD,KAAKouD,WAAWjiD,MAAMymC,GACtB,MAEJ,KAAM7xC,EAAOylD,MAAkB,aAC3BxmD,KAAKsuD,YAAYniD,MAAMymC,GACvB,MAEJ,KAAM7xC,EAAOylD,MAAmB,cAC5BxmD,KAAKquD,aAAaliD,MAAMymC,GACxB,MAEJ,KAAM7xC,EAAOylD,MAAiB,YAC1BxmD,KAAKuuD,WAAWpiD,MAAMymC,GACtB,MAEJ,KAAM7xC,EAAOylD,MAAoB,eAC7BxmD,KAAKwuD,cAAcriD,MAAMymC,KAarCwd,iBAAkB,SAAUjC,EAAQvb,GAEhC,OAAQub,GAEJ,KAAMptD,EAAOylD,MAAiB,YAC1BxmD,KAAKouD,WAAWpiD,KAAK4mC,GACrB,MAEJ,KAAM7xC,EAAOylD,MAAkB,aAC3BxmD,KAAKsuD,YAAYtiD,KAAK4mC,GACtB,MAEJ,KAAM7xC,EAAOylD,MAAmB,cAC5BxmD,KAAKquD,aAAariD,KAAK4mC,GACvB,MAEJ,KAAM7xC,EAAOylD,MAAiB,YAC1BxmD,KAAKuuD,WAAWviD,KAAK4mC,GACrB,MAEJ,KAAM7xC,EAAOylD,MAAoB,eAC7BxmD,KAAKwuD,cAAcxiD,KAAK4mC,KAapCyd,qBAAsB,SAAUC,EAAS1d,GAErC,IAAI7+B,EAAO6+B,EAAM7+B,KAAKw8C,cAAcrlC,QAAQ,GACxCslC,EAAiB,SAATz8C,EACRm0C,EAAiB,SAATn0C,OAEI3N,IAAZkqD,GAGIE,GAAoB,IAAZF,GAAiB1d,EAAM+a,UAE/B2C,EAAU,GAIdtwD,KAAKouD,WAAWP,UAAU9sD,EAAOqlD,QAAQ2D,YAAcuG,EAAS1d,GAChE5yC,KAAKsuD,YAAYT,UAAU9sD,EAAOqlD,QAAQ6D,aAAeqG,EAAS1d,GAClE5yC,KAAKquD,aAAaR,UAAU9sD,EAAOqlD,QAAQ4D,cAAgBsG,EAAS1d,GACpE5yC,KAAKuuD,WAAWV,UAAU9sD,EAAOqlD,QAAQ8D,YAAcoG,EAAS1d,GAChE5yC,KAAKwuD,cAAcX,UAAU9sD,EAAOqlD,QAAQ+D,eAAiBmG,EAAS1d,GACtE5yC,KAAKyuD,aAAaZ,UAAU9sD,EAAOqlD,QAAQsI,cAAgB4B,EAAS1d,SAQ/CxsC,IAAjBwsC,EAAMub,OAGFqC,GAAQ5d,EAAM+a,SAA4B,IAAjB/a,EAAMub,OAE/BnuD,KAAKsuD,YAAYniD,MAAMymC,GAGvB4d,EAEAxwD,KAAKmwD,mBAAmBvd,EAAMub,OAAQvb,GAEhCsV,GAENloD,KAAKowD,iBAAiBxd,EAAMub,OAAQvb,GAIxC4d,EAGI5d,EAAM+a,QAEN3tD,KAAKsuD,YAAYniD,MAAMymC,GAIvB5yC,KAAKouD,WAAWjiD,MAAMymC,IAK1B5yC,KAAKouD,WAAWpiD,KAAK4mC,GACrB5yC,KAAKsuD,YAAYtiD,KAAK4mC,KAalCqY,cAAe,SAAUrY,GAErB5yC,KAAKmuD,OAASvb,EAAMub,OACpBnuD,KAAKqwD,qBAAqBzd,EAAM0d,QAAS1d,GAEzC5yC,KAAKqtD,MAAO,EACZrtD,KAAKotD,QAAS,GAEVptD,KAAKouD,WAAWhB,QAAUptD,KAAKsuD,YAAYlB,QAAUptD,KAAKquD,aAAajB,QAAUptD,KAAKuuD,WAAWnB,QAAUptD,KAAKwuD,cAAcpB,QAAUptD,KAAKyuD,aAAarB,UAE1JptD,KAAKqtD,MAAO,EACZrtD,KAAKotD,QAAS,IAStBjhD,MAAO,SAAUymC,GAEb,IAAIhK,EAAQ5oC,KAAKsC,KAAKsmC,MA2DtB,OAzDIgK,EAAM4V,YAENxoD,KAAKwoD,UAAY5V,EAAM4V,WAG3BxoD,KAAKioD,WAAarV,EAAMqV,WACxBjoD,KAAK6H,OAAS+qC,EAAM/qC,OAEhB7H,KAAKyvD,QAELzvD,KAAKirD,cAAcrY,IAInB5yC,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,GAGhBrtD,KAAKktC,QAAS,EACdltC,KAAK+qD,YAAa,EAClB/qD,KAAKwR,OAAQ,EAEbxR,KAAK4uD,SAAW,GAChB5uD,KAAKiwD,kBAAoB,KACzBjwD,KAAKkwD,wBAA0B,KAG/BlwD,KAAK4vD,iBAAmB5vD,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKstD,SACnDttD,KAAKstD,SAAWttD,KAAKsC,KAAKqlC,KAAKA,KAC/B3nC,KAAK2uD,WAAY,EAGjB3uD,KAAKkoD,KAAKtV,GAAO,GAGjB5yC,KAAK+vD,aAAax4B,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,IAEjCqlC,EAAM0a,qBAAuBviD,EAAO++C,MAAMmG,uBAC1Crd,EAAM0a,qBAAuBviD,EAAO++C,MAAMyD,qBACzC3a,EAAM0a,qBAAuBviD,EAAO++C,MAAMoG,uBAAuD,IAA9Btd,EAAM6nB,uBAE1E7nB,EAAMtlC,EAAItD,KAAKsD,EACfslC,EAAMrlC,EAAIvD,KAAKuD,EACfqlC,EAAMzoC,SAASo3B,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,GAClCqlC,EAAM0c,OAAOzd,SAAS7nC,KAAM4yC,GAC5BhK,EAAMif,WAAW7nD,KAAKsD,EAAGtD,KAAKuD,IAGlCvD,KAAK8uD,aAAc,EAEnB9uD,KAAK2vD,eAEqB,OAAtB3vD,KAAK6vD,cAEL7vD,KAAK6vD,aAAaa,gBAAgB1wD,MAG/BA,MAOXunC,OAAQ,WAEJ,IAAIqB,EAAQ5oC,KAAKsC,KAAKsmC,MAElB5oC,KAAKktC,SAGDltC,KAAKwR,QAE8B,EAA/Bo3B,EAAM+c,iBAAiBzK,OAEvBl7C,KAAK2wD,2BAA0B,GAGnC3wD,KAAKwR,OAAQ,IAGM,IAAnBxR,KAAK2uD,WAAuB3uD,KAAKilC,UAAY2D,EAAMib,YAE/Cjb,EAAM0a,qBAAuBviD,EAAO++C,MAAMmG,uBAC1Crd,EAAM0a,qBAAuBviD,EAAO++C,MAAMyD,qBACzC3a,EAAM0a,qBAAuBviD,EAAO++C,MAAMoG,uBAAuD,IAA9Btd,EAAM6nB,sBAE1E7nB,EAAM6c,OAAO5d,SAAS7nC,MAG1BA,KAAK2uD,WAAY,GAIjB/lB,EAAMob,sBAAwBhkD,KAAKsC,KAAKqlC,KAAKA,MAAQ3nC,KAAK6uD,YAE1D7uD,KAAK6uD,UAAY7uD,KAAKsC,KAAKqlC,KAAKA,KAAOiB,EAAMqb,WAE7CjkD,KAAK4uD,SAASjnD,KAAK,CACfrE,EAAGtD,KAAKG,SAASmD,EACjBC,EAAGvD,KAAKG,SAASoD,IAGjBvD,KAAK4uD,SAAS1sD,OAAS0mC,EAAMsb,aAE7BlkD,KAAK4uD,SAASgC,WAa9B1I,KAAM,SAAUtV,EAAOie,GAEnB,IAAIjoB,EAAQ5oC,KAAKsC,KAAKsmC,MAEtB,IAAIA,EAAMkoB,WAAV,MAKkB1qD,IAAdyqD,IAA2BA,GAAY,QAEtBzqD,IAAjBwsC,EAAMub,SAENnuD,KAAKmuD,OAASvb,EAAMub,QAGpBnuD,KAAKyvD,SAELzvD,KAAKirD,cAAcrY,GAGvB5yC,KAAK+uD,QAAUnc,EAAMmc,QACrB/uD,KAAKgvD,QAAUpc,EAAMoc,QAErBhvD,KAAKivD,MAAQrc,EAAMqc,MACnBjvD,KAAKkvD,MAAQtc,EAAMsc,MAEnBlvD,KAAKmvD,QAAUvc,EAAMuc,QACrBnvD,KAAKovD,QAAUxc,EAAMwc,QAEjBpvD,KAAKyvD,SAAW7mB,EAAMie,YAAYkK,SAAWF,IAE7C7wD,KAAKqvD,aAAezc,EAAM2c,WAAa3c,EAAMoe,cAAgBpe,EAAMqe,iBAAmB,EACtFjxD,KAAKsvD,aAAe1c,EAAM4c,WAAa5c,EAAMse,cAAgBte,EAAMue,iBAAmB,EAEtFnxD,KAAKuvD,WAAavvD,KAAKqvD,aACvBrvD,KAAKwvD,WAAaxvD,KAAKsvD,cAG3BtvD,KAAKsD,GAAKtD,KAAKivD,MAAQjvD,KAAKsC,KAAKjC,MAAMkY,OAAOjV,GAAKslC,EAAMvoC,MAAMiD,EAC/DtD,KAAKuD,GAAKvD,KAAKkvD,MAAQlvD,KAAKsC,KAAKjC,MAAMkY,OAAOhV,GAAKqlC,EAAMvoC,MAAMkD,EAE/DvD,KAAKG,SAASo3B,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,GACjCvD,KAAKyjD,OAAOngD,EAAItD,KAAKsD,EACrBtD,KAAKyjD,OAAOlgD,EAAIvD,KAAKuD,GAEjBqlC,EAAM0a,qBAAuBviD,EAAO++C,MAAMmG,uBAC1Crd,EAAM0a,qBAAuBviD,EAAO++C,MAAMyD,qBACzC3a,EAAM0a,qBAAuBviD,EAAO++C,MAAMoG,uBAAuD,IAA9Btd,EAAM6nB,uBAE1E7nB,EAAMmc,cAAgB/kD,KACtB4oC,EAAMtlC,EAAItD,KAAKsD,EACfslC,EAAMrlC,EAAIvD,KAAKuD,EACfqlC,EAAMzoC,SAASo3B,MAAMqR,EAAMtlC,EAAGslC,EAAMrlC,GACpCqlC,EAAM6a,OAAOngD,EAAIslC,EAAMtlC,EACvBslC,EAAM6a,OAAOlgD,EAAIqlC,EAAMrlC,GAG3BvD,KAAK+qD,WAAa/qD,KAAKsC,KAAKjC,MAAMiE,OAAO6F,SAASnK,KAAKivD,MAAOjvD,KAAKkvD,OAInE,IAFA,IAAIjtD,EAAI2mC,EAAMqa,cAAc/gD,OAErBD,KAEH2mC,EAAMqa,cAAchhD,GAAGi1C,SAASnzC,KAAK6kC,EAAMqa,cAAchhD,GAAG0L,QAAS3N,KAAMA,KAAKsD,EAAGtD,KAAKuD,EAAGstD,EAAWje,GAgB1G,OAZ0B,OAAtB5yC,KAAK6vD,cAA2B7vD,KAAKsC,KAAKknC,SAAUxpC,KAAK6vD,aAAauB,UAA4C,IAAhCpxD,KAAK6vD,aAAawB,UAOhE,EAA/BzoB,EAAM+c,iBAAiBzK,OAE5Bl7C,KAAK2wD,0BAA0BE,IAPQ,IAAnC7wD,KAAK6vD,aAAatoB,OAAOvnC,QAEzBA,KAAK6vD,aAAe,MAQrB7vD,OAWX2wD,0BAA2B,SAAUE,GAGjC,IAAIS,EAAuB,EACvBC,GAA0B,EAC1BC,EAAkB,KAOlBC,EAAczxD,KAAKsC,KAAKsmC,MAAM+c,iBAAiB+L,MAInD,IAFA1xD,KAAK8vD,sBAAwB,GAEtB2B,GAGHA,EAAYE,SAAU,GAElBF,EAAYG,cAAcL,EAAwBD,GAAsB,IAAYtxD,KAAKsC,KAAKknC,SAAUioB,EAAYjtC,OAAO4sC,UAG3HK,EAAYE,SAAU,GAEjBd,GAAaY,EAAYI,iBAAiB7xD,MAAM,KAC/C6wD,GAAaY,EAAYK,iBAAiB9xD,MAAM,MAElDsxD,EAAuBG,EAAYjtC,OAAO61B,cAC1CkX,EAAyBE,EAAYM,WACrCP,EAAkBC,EAClBzxD,KAAK8vD,sBAAsBnoD,KAAK8pD,KAIxCA,EAAczxD,KAAKsC,KAAKsmC,MAAM+c,iBAAiBjO,KAWnD,IAFA+Z,EAAczxD,KAAKsC,KAAKsmC,MAAM+c,iBAAiB+L,MAExCD,IAEEA,EAAYE,SACbF,EAAYG,cAAcL,EAAwBD,GAAsB,KAEnET,GAAaY,EAAYI,iBAAiB7xD,MAAM,KAC/C6wD,GAAaY,EAAYK,iBAAiB9xD,MAAM,MAElDsxD,EAAuBG,EAAYjtC,OAAO61B,cAC1CkX,EAAyBE,EAAYM,WACrCP,EAAkBC,EAClBzxD,KAAK8vD,sBAAsBnoD,KAAK8pD,IAIxCA,EAAczxD,KAAKsC,KAAKsmC,MAAM+c,iBAAiBjO,KAUnD,OAPI13C,KAAKsC,KAAKsmC,MAAMsa,yBAEhBsO,EAAkBxxD,KAAKsC,KAAKsmC,MAAMsa,uBAAuBn/C,KAAK/D,KAAKsC,KAAKsmC,MAAMua,8BAA+BnjD,KAAMA,KAAK8vD,sBAAuB0B,IAGnJxxD,KAAKgyD,WAAWR,GAAiB,GAEH,OAAtBxxD,KAAK6vD,cAejBmC,WAAY,SAAUC,EAAW7d,QAEdhuC,IAAXguC,IAAwBA,GAAS,GAGnB,OAAd6d,EAGIjyD,KAAK6vD,eAEL7vD,KAAK6vD,aAAaqC,mBAAmBlyD,KAAMo0C,GAC3Cp0C,KAAK6vD,aAAe,MAIF,OAAtB7vD,KAAK6vD,cAGL7vD,KAAK6vD,aAAeoC,GACVE,oBAAoBnyD,KAAMo0C,GAKhCp0C,KAAK6vD,eAAiBoC,GAGS,IAA3BA,EAAU1qB,OAAOvnC,QAEjBA,KAAK6vD,aAAe,OAMxB7vD,KAAK6vD,aAAaqC,mBAAmBlyD,KAAMo0C,GAG3Cp0C,KAAK6vD,aAAeoC,EACpBjyD,KAAK6vD,aAAasC,oBAAoBnyD,KAAMo0C,KAWxDge,MAAO,SAAUxf,GAEb5yC,KAAK+qD,YAAa,EAClB/qD,KAAKkoD,KAAKtV,GAAO,IASrB5mC,KAAM,SAAU4mC,GAEZ,IAAIhK,EAAQ5oC,KAAKsC,KAAKsmC,MAEtB,IAAI5oC,KAAK8uD,cAAe9uD,KAAK+qD,WAA7B,CAQA,GAFA/qD,KAAKutD,OAASvtD,KAAKsC,KAAKqlC,KAAKA,MAEzBiB,EAAM0a,qBAAuBviD,EAAO++C,MAAMmG,uBAC1Crd,EAAM0a,qBAAuBviD,EAAO++C,MAAMyD,qBACzC3a,EAAM0a,qBAAuBviD,EAAO++C,MAAMoG,uBAAuD,IAA9Btd,EAAM6nB,uBAE1E7nB,EAAM2c,KAAK1d,SAAS7nC,KAAM4yC,GAGL,GAAjB5yC,KAAKilC,UAAiBjlC,KAAKilC,UAAY2D,EAAM+a,SACjD,CAEI,IAAI0O,EAAaryD,KAAKutD,OAASvtD,KAAK0vD,gBAAkB9mB,EAAMgb,cAE5Dhb,EAAM4c,MAAM3d,SAAS7nC,KAAMqyD,EAAWzf,GAEtC5yC,KAAK0vD,gBAAkB1vD,KAAKutD,OAwCpC,OApCIvtD,KAAKyvD,QAELzvD,KAAKirD,cAAcrY,IAInB5yC,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,GAIF,EAAVrtD,KAAKyU,KAELzU,KAAKktC,QAAS,GAGlBltC,KAAK+qD,WAAa/qD,KAAKsC,KAAKjC,MAAMiE,OAAO6F,SAASyoC,EAAMqc,MAAOrc,EAAMsc,OACrElvD,KAAKwoD,UAAY,KACjBxoD,KAAKioD,WAAa,KAElBjoD,KAAKgwD,WAAWz4B,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,IAEd,IAAjBvD,KAAKyvD,SAEL7mB,EAAM0pB,kBAGV1pB,EAAMqR,QAAQ,mBAAoBj6C,MAE9BA,KAAKiwD,oBAELjwD,KAAKkwD,wBAA0BlwD,KAAK6vD,cAGxC7vD,KAAK6vD,aAAe,KAEb7vD,KA5DH4yC,EAAM+O,kBAuEdqM,YAAa,SAAU/oB,GAInB,OAFAA,EAAWA,GAAYjlC,KAAKsC,KAAKsmC,MAAMkb,iBAEf,IAAhB9jD,KAAKotD,QAAoBptD,KAAKstD,SAAWroB,EAAYjlC,KAAKsC,KAAKqlC,KAAKA,MAWhFsmB,aAAc,SAAUhpB,GAIpB,OAFAA,EAAWA,GAAYjlC,KAAKsC,KAAKsmC,MAAMmb,iBAE/B/jD,KAAKqtD,MAASrtD,KAAKutD,OAAStoB,EAAYjlC,KAAKsC,KAAKqlC,KAAKA,MAoBnE4qB,mBAAoB,SAAUl+B,EAAM6iB,EAAUxL,EAAiB8mB,GAE3D,GAAKxyD,KAAKotD,OAAV,CAOA,IAFA,IAAIqF,EAAezyD,KAAKiwD,kBAAoBjwD,KAAKiwD,mBAAqB,GAE7DhuD,EAAI,EAAGA,EAAIwwD,EAAYvwD,OAAQD,IAEpC,GAAIwwD,EAAYxwD,GAAGoyB,OAASA,EAC5B,CACIo+B,EAAY9pD,OAAO1G,EAAG,GACtB,MAIRwwD,EAAY9qD,KAAK,CACb0sB,KAAMA,EACNw7B,aAAc7vD,KAAK6vD,aACnB3Y,SAAUA,EACVxL,gBAAiBA,EACjB8mB,aAAcA,MAStBvJ,wBAAyB,WAErB,IAAIwJ,EAAczyD,KAAKiwD,kBAEvB,GAAKwC,EAAL,CAKA,IAAK,IAAIxwD,EAAI,EAAGA,EAAIwwD,EAAYvwD,OAAQD,IACxC,CACI,IAAIywD,EAAaD,EAAYxwD,GAEzBywD,EAAW7C,eAAiB7vD,KAAKkwD,yBAEjCwC,EAAWxb,SAASjyC,MAAMytD,EAAWhnB,gBAAiBgnB,EAAWF,cAIzExyD,KAAKiwD,kBAAoB,KACzBjwD,KAAKkwD,wBAA0B,OAOnC1nB,MAAO,YAEkB,IAAjBxoC,KAAKyvD,UAELzvD,KAAKktC,QAAS,GAGlBltC,KAAKwoD,UAAY,KACjBxoD,KAAKioD,WAAa,KAClBjoD,KAAKwR,OAAQ,EACbxR,KAAK2vD,aAAe,EACpB3vD,KAAK2uD,WAAY,EACjB3uD,KAAK4uD,SAAS1sD,OAAS,EACvBlC,KAAK8uD,aAAc,EAEnB9uD,KAAKgrD,eAEDhrD,KAAK6vD,cAEL7vD,KAAK6vD,aAAa8C,iBAAiB3yD,MAGvCA,KAAK6vD,aAAe,MAOxB+C,cAAe,WAEX5yD,KAAKuvD,UAAY,EACjBvvD,KAAKwvD,UAAY,IAKzBzuD,EAAOqlD,QAAQvkD,UAAUC,YAAcf,EAAOqlD,QAW9Cv/C,OAAOyF,eAAevL,EAAOqlD,QAAQvkD,UAAW,WAAY,CAExDkF,IAAK,WAED,OAAI/G,KAAKqtD,MAEG,EAGLrtD,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKstD,YAW1CzmD,OAAOyF,eAAevL,EAAOqlD,QAAQvkD,UAAW,SAAU,CAEtDkF,IAAK,WAED,OAAO/G,KAAKsC,KAAKE,MAAMsZ,OAAOxY,EAAItD,KAAKsD,KAW/CuD,OAAOyF,eAAevL,EAAOqlD,QAAQvkD,UAAW,SAAU,CAEtDkF,IAAK,WAED,OAAO/G,KAAKsC,KAAKE,MAAMsZ,OAAOvY,EAAIvD,KAAKuD,KAe/CxC,EAAOslD,YAAc,CASjBC,OAAQ,EAMRqB,QAAS,GAIb5mD,EAAO8xD,aAAe,GAEtB9xD,EAAO8xD,aAAa9xD,EAAOslD,YAAYC,QAAU,SAEjDvlD,EAAO8xD,aAAa9xD,EAAOslD,YAAYsB,SAAW,UAiBlD5mD,EAAO0lD,MAAQ,SAAUnkD,GAKrBtC,KAAKsC,KAAOA,EAOZtC,KAAKktC,QAAS,EAOdltC,KAAKqjD,SAAU,EAKfrjD,KAAK0rC,gBAAkB1rC,KAAKsC,KAK5BtC,KAAK8yD,mBAAqB,KAK1B9yD,KAAK+yD,kBAAoB,KAKzB/yD,KAAKgzD,iBAAmB,KAKxBhzD,KAAKizD,mBAAqB,KAK1BjzD,KAAKkzD,mBAAqB,KAK1BlzD,KAAKmzD,oBAAsB,KAM3BnzD,KAAK2hD,gBAAiB,EAMtB3hD,KAAK4yC,MAAQ,KAMb5yC,KAAKozD,cAAgB,KAMrBpzD,KAAKqzD,aAAe,KAMpBrzD,KAAKszD,YAAc,KAMnBtzD,KAAKuzD,cAAgB,KAMrBvzD,KAAKwzD,cAAgB,KAMrBxzD,KAAKyzD,eAAiB,KAMtBzzD,KAAKqzD,aAAe,MAGxBtyD,EAAO0lD,MAAM5kD,UAAY,CAMrBsK,MAAO,WAEH,IAAKnM,KAAKsC,KAAKgqB,OAAO44B,MAElB,OAAO,EAGX,GAA2B,OAAvBllD,KAAKozD,cAGL,OAAO,EAGX,IAAIvkB,EAAQ7uC,KA6CZ,OA3CAA,KAAKozD,cAAgB,SAAUxgB,GAE3B,OAAO/D,EAAM6kB,aAAa9gB,IAG9B5yC,KAAKqzD,aAAe,SAAUzgB,GAE1B,OAAO/D,EAAM8kB,YAAY/gB,IAG7B5yC,KAAKszD,YAAc,SAAU1gB,GAEzB,OAAO/D,EAAM+kB,WAAWhhB,IAG5B5yC,KAAKuzD,cAAgB,SAAU3gB,GAE3B,OAAO/D,EAAMglB,aAAajhB,IAG9B5yC,KAAKwzD,cAAgB,SAAU5gB,GAE3B,OAAO/D,EAAMilB,aAAalhB,IAG9B5yC,KAAKyzD,eAAiB,SAAU7gB,GAE5B,OAAO/D,EAAMklB,cAAcnhB,IAG/B5yC,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,aAAclzC,KAAKozD,eAAe,GACpEpzD,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,YAAalzC,KAAKqzD,cAAc,GAClErzD,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,WAAYlzC,KAAKszD,aAAa,GAChEtzD,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,cAAelzC,KAAKyzD,gBAAgB,GAEjEzzD,KAAKsC,KAAKgqB,OAAOk1B,WAElBxhD,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,aAAclzC,KAAKuzD,eAAe,GACpEvzD,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,aAAclzC,KAAKwzD,eAAe,IAGxExzD,KAAKktC,QAAS,GASlB8mB,uBAAwB,WAEpBh0D,KAAKi0D,mBAAqB,SAAUrhB,GAEhCA,EAAM+O,kBAGVpP,SAASW,iBAAiB,YAAalzC,KAAKi0D,oBAAoB,IAQpEP,aAAc,SAAU9gB,GAMpB,GAJA5yC,KAAKsC,KAAKsmC,MAAM4e,2BAA0B,EAAO5U,GAEjD5yC,KAAK4yC,MAAQA,EAER5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,QAAtC,CAKIrjD,KAAK8yD,oBAEL9yD,KAAK8yD,mBAAmB/uD,KAAK/D,KAAK0rC,gBAAiBkH,GAGnD5yC,KAAK2hD,gBAEL/O,EAAM+O,iBAQV,IAAK,IAAI1/C,EAAI,EAAGA,EAAI2wC,EAAMshB,eAAehyD,OAAQD,IAE7CjC,KAAKsC,KAAKsmC,MAAMkf,aAAalV,EAAMshB,eAAejyD,MAU1D8xD,cAAe,SAAUnhB,GASrB,GAPA5yC,KAAK4yC,MAAQA,EAET5yC,KAAKmzD,qBAELnzD,KAAKmzD,oBAAoBpvD,KAAK/D,KAAK0rC,gBAAiBkH,GAGnD5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,QAAtC,CAKIrjD,KAAK2hD,gBAEL/O,EAAM+O,iBAOV,IAAK,IAAI1/C,EAAI,EAAGA,EAAI2wC,EAAMshB,eAAehyD,OAAQD,IAE7CjC,KAAKsC,KAAKsmC,MAAMuf,YAAYvV,EAAMshB,eAAejyD,MAUzD4xD,aAAc,SAAUjhB,GAEpB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKizD,oBAELjzD,KAAKizD,mBAAmBlvD,KAAK/D,KAAK0rC,gBAAiBkH,GAGlD5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,SAKlCrjD,KAAK2hD,gBAEL/O,EAAM+O,kBAUdmS,aAAc,SAAUlhB,GAEpB5yC,KAAK4yC,MAAQA,EAET5yC,KAAKkzD,oBAELlzD,KAAKkzD,mBAAmBnvD,KAAK/D,KAAK0rC,gBAAiBkH,GAGnD5yC,KAAK2hD,gBAEL/O,EAAM+O,kBASdgS,YAAa,SAAU/gB,GAEnB5yC,KAAK4yC,MAAQA,EAET5yC,KAAK+yD,mBAEL/yD,KAAK+yD,kBAAkBhvD,KAAK/D,KAAK0rC,gBAAiBkH,GAGlD5yC,KAAK2hD,gBAEL/O,EAAM+O,iBAGV,IAAK,IAAI1/C,EAAI,EAAGA,EAAI2wC,EAAMshB,eAAehyD,OAAQD,IAE7CjC,KAAKsC,KAAKsmC,MAAMof,cAAcpV,EAAMshB,eAAejyD,KAS3D2xD,WAAY,SAAUhhB,GAElB5yC,KAAKsC,KAAKsmC,MAAM4e,2BAA0B,EAAM5U,GAEhD5yC,KAAK4yC,MAAQA,EAET5yC,KAAKgzD,kBAELhzD,KAAKgzD,iBAAiBjvD,KAAK/D,KAAK0rC,gBAAiBkH,GAGjD5yC,KAAK2hD,gBAEL/O,EAAM+O,iBAQV,IAAK,IAAI1/C,EAAI,EAAGA,EAAI2wC,EAAMshB,eAAehyD,OAAQD,IAE7CjC,KAAKsC,KAAKsmC,MAAMuf,YAAYvV,EAAMshB,eAAejyD,KAQzD+J,KAAM,WAEGhM,KAAKsC,KAAKgqB,OAAO44B,QAKtBllD,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,aAAcn0C,KAAKozD,eACxDpzD,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,YAAan0C,KAAKqzD,cACvDrzD,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,WAAYn0C,KAAKszD,aACtDtzD,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,aAAcn0C,KAAKuzD,eACxDvzD,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,aAAcn0C,KAAKwzD,eACxDxzD,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,cAAen0C,KAAKyzD,gBAEzDzzD,KAAKktC,QAAS,KAKtBnsC,EAAO0lD,MAAM5kD,UAAUC,YAAcf,EAAO0lD,MAe5C1lD,EAAOozD,aAAe,SAAU3vC,GAK5BxkB,KAAKwkB,OAASA,EAKdxkB,KAAKsC,KAAOkiB,EAAOliB,KAMnBtC,KAAKqjD,SAAU,EAMfrjD,KAAK2xD,SAAU,EASf3xD,KAAK+xD,WAAa,EAMlB/xD,KAAKo0D,eAAgB,EAMrBp0D,KAAKq0D,gBAAiB,EAMtBr0D,KAAKqxD,WAAY,EAMjBrxD,KAAKs0D,qBAAsB,EAM3Bt0D,KAAKu0D,mBAAoB,EAMzBv0D,KAAK83C,YAAa,EAMlB93C,KAAKw0D,WAAa,KAMlBx0D,KAAKy0D,YAAa,EAMlBz0D,KAAK00D,eAAgB,EAMrB10D,KAAK20D,MAAQ,EAMb30D,KAAK40D,MAAQ,EAMb50D,KAAK60D,YAAc,EAMnB70D,KAAK80D,YAAc,EAUnB90D,KAAK+0D,kBAAmB,EAUxB/0D,KAAKg1D,mBAAoB,EAMzBh1D,KAAKi1D,kBAAoB,IAMzBj1D,KAAKk1D,WAAY,EAMjBl1D,KAAKm1D,WAAa,KAMlBn1D,KAAKo1D,aAAe,KAKpBp1D,KAAKq1D,YAAa,EAKlBr1D,KAAKs1D,WAAa,IAAIv0D,EAAOX,MAK7BJ,KAAKu1D,gBAAiB,EAKtBv1D,KAAKw1D,uBAAwB,EAK7Bx1D,KAAKy1D,eAAiB,IAAI10D,EAAOX,MAKjCJ,KAAK01D,sBAAwB,EAK7B11D,KAAK21D,kBAAoB,EAKzB31D,KAAK41D,UAAY,IAAI70D,EAAOX,MAK5BJ,KAAK61D,UAAY,IAAI90D,EAAOX,MAM5BJ,KAAK81D,WAAa,IAAI/0D,EAAOX,MAM7BJ,KAAK+1D,YAAa,EAMlB/1D,KAAKg2D,cAAe,EAMpBh2D,KAAKi2D,eAAgB,EAMrBj2D,KAAKk2D,mBAAoB,EAMzBl2D,KAAKm2D,aAAc,EAMnBn2D,KAAKo2D,WAAa,IAAIr1D,EAAOX,MAM7BJ,KAAKq2D,aAAe,GAEpBr2D,KAAKq2D,aAAa1uD,KAAK,CACnB8M,GAAI,EACJnR,EAAG,EACHC,EAAG,EACH+yD,KAAM,EACNC,KAAM,EACNnJ,QAAQ,EACRC,MAAM,EACNmJ,QAAQ,EACRC,OAAO,EACPC,SAAU,EACVC,QAAS,EACTrJ,SAAU,EACVC,OAAQ,EACRqJ,aAAc,EACdvF,WAAW,KAInBtwD,EAAOozD,aAAatyD,UAAY,CAU5BsK,MAAO,SAAUuhC,EAAU0mB,GAMvB,GAJA1mB,EAAWA,GAAY,OACDtnC,IAAlBguD,IAA+BA,GAAgB,IAG9B,IAAjBp0D,KAAKqjD,QACT,CAEIrjD,KAAKsC,KAAKsmC,MAAM+c,iBAAiBtqB,IAAIr7B,MACrCA,KAAKo0D,cAAgBA,EACrBp0D,KAAK+xD,WAAarkB,EAElB,IAAK,IAAIzrC,EAAI,EAAGA,EAAI,GAAIA,IAEpBjC,KAAKq2D,aAAap0D,GAAK,CACnBwS,GAAIxS,EACJqB,EAAG,EACHC,EAAG,EACH6pD,QAAQ,EACRC,MAAM,EACNmJ,QAAQ,EACRC,OAAO,EACPC,SAAU,EACVC,QAAS,EACTrJ,SAAU,EACVC,OAAQ,EACRqJ,aAAc,EACdvF,WAAW,GAInBrxD,KAAKw0D,WAAa,IAAIzzD,EAAOX,MAC7BJ,KAAKqjD,SAAU,EACfrjD,KAAKm2D,aAAc,EAMvB,OAHAn2D,KAAKwkB,OAAOkyB,OAAOmgB,eAAex7B,IAAIr7B,KAAK82D,aAAc92D,MACzDA,KAAKwkB,OAAOkyB,OAAOqgB,mBAAmB17B,IAAIr7B,KAAKg3D,iBAAkBh3D,MAE1DA,KAAKwkB,QAShBsyC,aAAc,WAEN92D,KAAK+1D,YAKL/1D,KAAKm2D,cAAgBn2D,KAAKqjD,SAE1BrjD,KAAKmM,SAUb6qD,iBAAkB,WAEVh3D,KAAK+1D,aAKL/1D,KAAKqjD,SAELrjD,KAAKm2D,aAAc,EACnBn2D,KAAKgM,QAILhM,KAAKm2D,aAAc,IAQ3B3tB,MAAO,WAEHxoC,KAAKqjD,SAAU,EAEf,IAAK,IAAIphD,EAAI,EAAGA,EAAI,GAAIA,IAEpBjC,KAAKq2D,aAAap0D,GAAK,CACnBwS,GAAIxS,EACJqB,EAAG,EACHC,EAAG,EACH6pD,QAAQ,EACRC,MAAM,EACNmJ,QAAQ,EACRC,OAAO,EACPC,SAAU,EACVC,QAAS,EACTrJ,SAAU,EACVC,OAAQ,EACRqJ,aAAc,EACdvF,WAAW,IASvBrlD,KAAM,YAGmB,IAAjBhM,KAAKqjD,UAOLrjD,KAAKqjD,SAAU,EACfrjD,KAAKsC,KAAKsmC,MAAM+c,iBAAiBtoC,OAAOrd,QAQhD+B,QAAS,WAED/B,KAAKwkB,SAEDxkB,KAAKq0D,iBAELr0D,KAAKsC,KAAK0V,OAAOuE,MAAM44B,OAAS,GAChCn1C,KAAKq0D,gBAAiB,GAG1Br0D,KAAKqjD,SAAU,EAEfrjD,KAAKsC,KAAKsmC,MAAM+c,iBAAiBtoC,OAAOrd,MAExCA,KAAKq2D,aAAan0D,OAAS,EAC3BlC,KAAKm1D,WAAa,KAClBn1D,KAAKo1D,aAAe,KACpBp1D,KAAKwkB,OAAS,OAetBotC,cAAe,SAAUqF,EAAWC,EAAiBC,GAIjD,YAF4B/wD,IAAxB+wD,IAAqCA,GAAsB,MAE1Dn3D,KAAKqjD,SACkB,IAAxBrjD,KAAKwkB,OAAOnkB,MAAMiD,GACM,IAAxBtD,KAAKwkB,OAAOnkB,MAAMkD,GAClBvD,KAAK+xD,WAAa/xD,KAAKsC,KAAKsmC,MAAM8c,eACjC1lD,KAAKwkB,OAAO5jB,QAAUZ,KAAKwkB,OAAO5jB,OAAOwH,uBAMzC+uD,IAAwBn3D,KAAKg1D,mBAAqBh1D,KAAK+0D,qBAKxD/0D,KAAK+xD,WAAakF,GAAcj3D,KAAK+xD,aAAekF,GAAaj3D,KAAKwkB,OAAO61B,cAAgB6c,KAcrGE,eAAgB,WAEZ,OAAQp3D,KAAKg1D,mBAAqBh1D,KAAK+0D,kBAW3CsC,SAAU,SAAU7O,GAIhB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAWllD,GAWxCg0D,SAAU,SAAU9O,GAIhB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAWjlD,GAWxCg0D,YAAa,SAAU/O,GAInB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAW4E,QAWxCoK,UAAW,SAAUhP,GAIjB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAW6E,MAUxCoK,gBAAiB,SAAUjP,GAIvB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAW8E,UAUxCoK,cAAe,SAAUlP,GAIrB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAW+E,QAUxCoK,YAAa,SAAUnP,GAEnB,IAAKxoD,KAAKqjD,QAEN,OAAO,EAGX,QAAkBj9C,IAAdoiD,EAcA,OAAOxoD,KAAKq2D,aAAa7N,GAAWgO,OAZpC,IAAK,IAAIv0D,EAAI,EAAGA,EAAI,GAAIA,IAEpB,GAAIjC,KAAKq2D,aAAap0D,GAAGu0D,OAErB,OAAO,EAIf,OAAO,GAefoB,WAAY,SAAUpP,GAElB,IAAKxoD,KAAKqjD,QAEN,OAAO,EAGX,QAAkBj9C,IAAdoiD,EAYA,OAAOxoD,KAAKq2D,aAAa7N,GAAWiO,MAVpC,IAAK,IAAIx0D,EAAI,EAAGA,EAAI,GAAIA,IAEpB,GAAIjC,KAAKq2D,aAAap0D,GAAGw0D,MAErB,OAAO,GAiBvBoB,gBAAiB,SAAUrP,GAIvB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAWkO,UAUxCoB,eAAgB,SAAUtP,GAItB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAWmO,SAUxCoB,eAAgB,SAAUvP,GAItB,OAFAA,EAAYA,GAAa,EAElBxoD,KAAKq2D,aAAa7N,GAAW6I,WAYxCQ,iBAAkB,SAAUrhB,EAASwnB,GAEjC,SAAKxnB,EAAQ4c,QACRptD,KAAKqjD,SACLrjD,KAAKwkB,QACLxkB,KAAKwkB,OAAO5jB,QACZZ,KAAKwkB,OAAO/jB,SACZT,KAAKwkB,OAAO5jB,OAAOH,SACS,IAA7BT,KAAKwkB,OAAOtjB,WAAWoC,GACM,IAA7BtD,KAAKwkB,OAAOtjB,WAAWqC,OAMvBvD,KAAKsC,KAAKsmC,MAAM8f,QAAQ1oD,KAAKwkB,OAAQgsB,EAASxwC,KAAKo2D,mBAElChwD,IAAb4xD,IAEAA,GAAW,MAGVA,GAAYh4D,KAAKg1D,oBAEXh1D,KAAKi4D,WAAWj4D,KAAKo2D,WAAW9yD,EAAGtD,KAAKo2D,WAAW7yD,MAoBtEuuD,iBAAkB,SAAUthB,EAASwnB,GAEjC,SAAKh4D,KAAKqjD,SACLrjD,KAAKwkB,QACLxkB,KAAKwkB,OAAO5jB,QACZZ,KAAKwkB,OAAO/jB,SACZT,KAAKwkB,OAAO5jB,OAAOH,SACS,IAA7BT,KAAKwkB,OAAOtjB,WAAWoC,GACM,IAA7BtD,KAAKwkB,OAAOtjB,WAAWqC,OAMvBvD,KAAKsC,KAAKsmC,MAAM8f,QAAQ1oD,KAAKwkB,OAAQgsB,EAASxwC,KAAKo2D,mBAElChwD,IAAb4xD,IAEAA,GAAW,MAGVA,GAAYh4D,KAAK+0D,mBAEX/0D,KAAKi4D,WAAWj4D,KAAKo2D,WAAW9yD,EAAGtD,KAAKo2D,WAAW7yD,MAqBtE00D,WAAY,SAAU30D,EAAGC,EAAGitC,GAGxB,GAAIxwC,KAAKwkB,OAAO1e,QAAQG,YAAYkJ,OACpC,CACI,GAAU,OAAN7L,GAAoB,OAANC,EAClB,CAEIvD,KAAKsC,KAAKsmC,MAAM6f,iBAAiBzoD,KAAKwkB,OAAQgsB,EAASxwC,KAAKo2D,YAExD9yD,EAAItD,KAAKo2D,WAAW9yD,EACpBC,EAAIvD,KAAKo2D,WAAW7yD,EAgB5B,GAb6B,IAAzBvD,KAAKwkB,OAAOhe,OAAOlD,IAEnBA,IAAMtD,KAAKwkB,OAAO1e,QAAQoH,MAAMxI,MAAQ1E,KAAKwkB,OAAOhe,OAAOlD,GAGlC,IAAzBtD,KAAKwkB,OAAOhe,OAAOjD,IAEnBA,IAAMvD,KAAKwkB,OAAO1e,QAAQoH,MAAMvI,OAAS3E,KAAKwkB,OAAOhe,OAAOjD,GAGhED,GAAKtD,KAAKwkB,OAAO1e,QAAQoH,MAAM5J,EAC/BC,GAAKvD,KAAKwkB,OAAO1e,QAAQoH,MAAM3J,EAE3BvD,KAAKwkB,OAAO1e,QAAQqI,OAEpB7K,GAAKtD,KAAKwkB,OAAO1e,QAAQqI,KAAK7K,EAC9BC,GAAKvD,KAAKwkB,OAAO1e,QAAQqI,KAAK5K,EAG1BD,EAAItD,KAAKwkB,OAAO1e,QAAQ2H,KAAKnK,GAAKA,EAAItD,KAAKwkB,OAAO1e,QAAQ2H,KAAKqoB,OAASvyB,EAAIvD,KAAKwkB,OAAO1e,QAAQ2H,KAAKlK,GAAKA,EAAIvD,KAAKwkB,OAAO1e,QAAQ2H,KAAKirB,QAIvI,OAFA14B,KAAKk4D,IAAM50D,EACXtD,KAAKm4D,IAAM50D,GACJ,EAYf,GARAvD,KAAKk4D,IAAM50D,EACXtD,KAAKm4D,IAAM50D,EAEXvD,KAAKsC,KAAKsmC,MAAMoa,WAAW34B,UAAU,EAAG,EAAG,EAAG,GAC9CrqB,KAAKsC,KAAKsmC,MAAMoa,WAAWh0C,UAAUhP,KAAKwkB,OAAO1e,QAAQG,YAAYkJ,OAAQ7L,EAAGC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAExFvD,KAAKsC,KAAKsmC,MAAMoa,WAAWz3B,aAAa,EAAG,EAAG,EAAG,GAEnD5W,KAAK,IAAM3U,KAAKi1D,kBAEpB,OAAO,EAIf,OAAO,GAYX1tB,OAAQ,SAAUiJ,GAEd,GAAoB,OAAhBxwC,KAAKwkB,aAA0Cpe,IAAvBpG,KAAKwkB,OAAO5jB,OAMxC,OAAKZ,KAAKqjD,SAAYrjD,KAAKwkB,OAAO/jB,SAAYT,KAAKwkB,OAAO5jB,OAAOH,QAM7DT,KAAKg2D,cAEAh2D,KAAKk2D,oBAENl2D,KAAKk2D,kBAAqBn1D,EAAOkC,KAAK00B,SAAS6Y,EAAQltC,EAAGktC,EAAQjtC,EAAGvD,KAAK41D,UAAUtyD,EAAGtD,KAAK41D,UAAUryD,IAAMvD,KAAK01D,uBAGjH11D,KAAKk2D,mBAAqBl2D,KAAKi2D,eAE/Bj2D,KAAKo4D,UAAU5nB,IAGZ,GAEFxwC,KAAKk1D,WAAal1D,KAAKq4D,oBAAsB7nB,EAAQ/7B,GAEnDzU,KAAKs4D,WAAW9nB,GAAS,GAE3BxwC,KAAKq2D,aAAa7lB,EAAQ/7B,IAAI+hD,OAE/Bx2D,KAAK8xD,iBAAiBthB,IAEtBxwC,KAAKq2D,aAAa7lB,EAAQ/7B,IAAInR,EAAIktC,EAAQltC,EAAItD,KAAKwkB,OAAOlhB,EAC1DtD,KAAKq2D,aAAa7lB,EAAQ/7B,IAAIlR,EAAIitC,EAAQjtC,EAAIvD,KAAKwkB,OAAOjhB,GACnD,IAIPvD,KAAKkyD,mBAAmB1hB,IACjB,QAXV,GAtBDxwC,KAAKkyD,mBAAmB1hB,IACjB,IA6Cf2hB,oBAAqB,SAAU3hB,EAAS4D,GAEpC,GAAoB,OAAhBp0C,KAAKwkB,OAAT,CAMA,IAAI7P,EAAO3U,KAAKq2D,aAAa7lB,EAAQ/7B,IAErC,IAAoB,IAAhBE,EAAK6hD,QAAoBhmB,EAAQh/B,MACrC,CACI,IAAI+mD,GAA6B,IAAhB5jD,EAAK6hD,OAEtB7hD,EAAK6hD,QAAS,EACd7hD,EAAK8hD,OAAQ,EACb9hD,EAAK+hD,SAAW12D,KAAKsC,KAAKqlC,KAAKA,KAC/BhzB,EAAKrR,EAAIktC,EAAQltC,EAAItD,KAAKwkB,OAAOlhB,EACjCqR,EAAKpR,EAAIitC,EAAQjtC,EAAIvD,KAAKwkB,OAAOjhB,EAE7BvD,KAAKo0D,gBAAoC,IAAnBz/C,EAAK08C,YAE3BrxD,KAAKsC,KAAK0V,OAAOuE,MAAM44B,OAAS,UAChCn1C,KAAKq0D,gBAAiB,IAGrBjgB,GAAUmkB,GAAav4D,KAAKwkB,QAAUxkB,KAAKwkB,OAAOkyB,QAEnD12C,KAAKwkB,OAAOkyB,OAAO8hB,qBAAqBx4D,KAAKwkB,OAAQgsB,GAGrDxwC,KAAKwkB,OAAO5jB,QAAUZ,KAAKwkB,OAAO5jB,OAAO40C,kBAEzCx1C,KAAKwkB,OAAO5jB,OAAO40C,iBAAiB3N,SAAS7nC,KAAKwkB,OAAQgsB,MAatE0hB,mBAAoB,SAAU1hB,EAAS4D,GAEnC,GAAoB,OAAhBp0C,KAAKwkB,OAAT,CAMA,IAAI7P,EAAO3U,KAAKq2D,aAAa7lB,EAAQ/7B,IAErCE,EAAK6hD,QAAS,EACd7hD,EAAK8hD,OAAQ,EACb9hD,EAAKgiD,QAAU32D,KAAKsC,KAAKqlC,KAAKA,KAE1B3nC,KAAKo0D,gBAAoC,IAAnBz/C,EAAK08C,YAE3BrxD,KAAKsC,KAAK0V,OAAOuE,MAAM44B,OAAS,GAChCn1C,KAAKq0D,gBAAiB,IAGrBjgB,GAAUp0C,KAAKwkB,QAAUxkB,KAAKwkB,OAAOkyB,SAEtC12C,KAAKwkB,OAAOkyB,OAAO+hB,oBAAoBz4D,KAAKwkB,OAAQgsB,GAEhDxwC,KAAKwkB,QAAUxkB,KAAKwkB,OAAO5jB,QAAUZ,KAAKwkB,OAAO5jB,OAAO60C,iBAExDz1C,KAAKwkB,OAAO5jB,OAAO60C,gBAAgB5N,SAAS7nC,KAAKwkB,OAAQgsB,MAYrEkgB,gBAAiB,SAAUlgB,GAEvB,GAAoB,OAAhBxwC,KAAKwkB,OAAT,CAMA,IAAI7P,EAAO3U,KAAKq2D,aAAa7lB,EAAQ/7B,IAErC,IAAKE,EAAKy4C,QAAUz4C,EAAK6hD,OACzB,CACI,GAAIx2D,KAAKg1D,oBAAsBh1D,KAAKi4D,WAAW,KAAM,KAAMznB,GAEvD,OAYJ,GATA77B,EAAKy4C,QAAS,EACdz4C,EAAK04C,MAAO,EACZ14C,EAAK24C,SAAWttD,KAAKsC,KAAKqlC,KAAKA,KAE/B3nC,KAAK41D,UAAU5uD,IAAIwpC,EAAQltC,EAAGktC,EAAQjtC,GAGtCitC,EAAQh/B,OAAQ,EAEZxR,KAAKwkB,QAAUxkB,KAAKwkB,OAAOkyB,SAE3B12C,KAAKwkB,OAAOkyB,OAAOgiB,qBAAqB14D,KAAKwkB,OAAQgsB,GAGjDxwC,KAAKwkB,QAAUxkB,KAAKwkB,OAAO5jB,QAAUZ,KAAKwkB,OAAO5jB,OAAO00C,kBAExDt1C,KAAKwkB,OAAO5jB,OAAO00C,iBAAiBzN,SAAS7nC,KAAKwkB,OAAQgsB,GAI1C,OAAhBxwC,KAAKwkB,QAEL,OAKJxkB,KAAKk1D,YAAgC,IAAnBl1D,KAAKqxD,YAEQ,IAA3BrxD,KAAK21D,mBAA0D,IAA/B31D,KAAK01D,sBAErC11D,KAAKo4D,UAAU5nB,IAIfxwC,KAAKg2D,cAAe,EAEpBh2D,KAAKk2D,kBAAoD,IAA/Bl2D,KAAK01D,sBAEF,EAAzB11D,KAAK21D,mBAEL31D,KAAKi2D,eAAgB,EACrBj2D,KAAKsC,KAAKqlC,KAAK+O,OAAOrb,IAAIr7B,KAAK21D,kBAAmB31D,KAAK24D,gBAAiB34D,KAAMwwC,IAI9ExwC,KAAKi2D,eAAgB,IAK7Bj2D,KAAK83C,YAEL93C,KAAKwkB,OAAOszB,gBAYxB6gB,gBAAiB,SAAUnoB,GAEvBxwC,KAAKi2D,eAAgB,EAEjBj2D,KAAKg2D,cAAgBh2D,KAAKwkB,QAEtBxkB,KAAKk2D,mBAELl2D,KAAKo4D,UAAU5nB,IAW3BmiB,iBAAkB,SAAUniB,GAExB,GAAoB,OAAhBxwC,KAAKwkB,OAAT,CAMA,IAAI7P,EAAO3U,KAAKq2D,aAAa7lB,EAAQ/7B,IAGrC,GAAIE,EAAKy4C,QAAU5c,EAAQ6c,KAC3B,CACI14C,EAAKy4C,QAAS,EACdz4C,EAAK04C,MAAO,EACZ14C,EAAK44C,OAASvtD,KAAKsC,KAAKqlC,KAAKA,KAC7BhzB,EAAKiiD,aAAejiD,EAAK44C,OAAS54C,EAAK24C,SAGvC,IAAIkJ,EAASx2D,KAAK8xD,iBAAiBthB,GAE/BxwC,KAAKwkB,QAAUxkB,KAAKwkB,OAAOkyB,SAEtB12C,KAAKw1D,yBACNx1D,KAAKw1D,uBAA2Bx1D,KAAKk1D,WAAal1D,KAAKqxD,WAAarxD,KAAKq4D,oBAAsB7nB,EAAQ/7B,KAEvGzU,KAAKwkB,OAAOkyB,OAAOkiB,mBAAmB54D,KAAKwkB,OAAQgsB,EAASgmB,GAG5Dx2D,KAAKwkB,QAAUxkB,KAAKwkB,OAAO5jB,QAAUZ,KAAKwkB,OAAO5jB,OAAO20C,gBAExDv1C,KAAKwkB,OAAO5jB,OAAO20C,eAAe1N,SAAS7nC,KAAKwkB,OAAQgsB,EAASgmB,GAIjEA,IAEAA,EAASx2D,KAAK8xD,iBAAiBthB,OAIvC77B,EAAK6hD,OAASA,IAECx2D,KAAKo0D,gBAEhBp0D,KAAKsC,KAAK0V,OAAOuE,MAAM44B,OAAS,UAChCn1C,KAAKq0D,gBAAiB,GAI1B7jB,EAAQh/B,OAAQ,EAEhBxR,KAAKg2D,cAAe,EAGhBh2D,KAAKk1D,WAAal1D,KAAKqxD,WAAarxD,KAAKq4D,oBAAsB7nB,EAAQ/7B,IAEvEzU,KAAK64D,SAASroB,MAc1B8nB,WAAY,SAAU9nB,EAASsoB,GAE3B,IAAIh9C,EAAS9b,KAAKsC,KAAKwZ,OACnBw5C,EAAat1D,KAAKs1D,WAClByD,EAAY/4D,KAAK81D,WACjBkD,EAAch5D,KAAKq2D,aAAa7lB,EAAQ/7B,IACxCohD,EAAY71D,KAAK61D,UACjBrxC,EAASxkB,KAAKwkB,OAIlB,QAFkBpe,IAAd0yD,IAA2BA,GAAY,GAEvCtoB,EAAQ6c,KAGR,OADArtD,KAAK64D,SAASroB,IACP,EAGX,IAAIyoB,EAAoBj5D,KAAKk5D,cAAc1oB,GAE3C,GAAIhsB,EAAOsxB,cAEP,IAAIqjB,EAAKr9C,EAAOzb,MAAMiD,EAAI21D,EAAkB31D,EAAIy1D,EAAUz1D,EAAIgyD,EAAWhyD,EACrE81D,EAAKt9C,EAAOzb,MAAMkD,EAAI01D,EAAkB11D,EAAIw1D,EAAUx1D,EAAI+xD,EAAW/xD,OAIrE41D,EAAKF,EAAkB31D,EAAIy1D,EAAUz1D,EAAIgyD,EAAWhyD,EACpD81D,EAAKH,EAAkB11D,EAAIw1D,EAAUx1D,EAAI+xD,EAAW/xD,EAG5D,GAAIihB,EAAOsxB,cACX,CACI,IAAIC,EAAevxB,EAAOuxB,aACtBsjB,EAAQtjB,EAAazyC,EACrBg2D,EAAQvjB,EAAaxyC,EAErBvD,KAAKs0D,sBAELve,EAAazyC,EAAI61D,EAAKr9C,EAAOxY,GAG7BtD,KAAKu0D,oBAELxe,EAAaxyC,EAAI61D,EAAKt9C,EAAOvY,GAG7BvD,KAAKm1D,YAELn1D,KAAKu5D,kBAGLv5D,KAAKo1D,cAELp1D,KAAKw5D,oBAGLx5D,KAAKy0D,aAEL1e,EAAazyC,EAAIL,KAAK20B,OAAOme,EAAazyC,EAAKtD,KAAK60D,YAAc70D,KAAK20D,OAAU30D,KAAK20D,OAAS30D,KAAK20D,MAAS30D,KAAK60D,YAAc70D,KAAK20D,MACrI5e,EAAaxyC,EAAIN,KAAK20B,OAAOme,EAAaxyC,EAAKvD,KAAK80D,YAAc90D,KAAK40D,OAAU50D,KAAK40D,OAAS50D,KAAK40D,MAAS50D,KAAK80D,YAAc90D,KAAK40D,MACrIiB,EAAU7uD,IAAI+uC,EAAazyC,EAAGyyC,EAAaxyC,IAG/C,IAAI2K,EAAK6nC,EAAazyC,EAAI+1D,EACtBjrD,EAAK2nC,EAAaxyC,EAAI+1D,MAG9B,CACI,IAAIrqD,EAAK6M,EAAOxY,EAAI01D,EAAY1C,KAC5BpnD,EAAK4M,EAAOvY,EAAIy1D,EAAYzC,KAC5B8C,EAAQ70C,EAAOlhB,EACfg2D,EAAQ90C,EAAOjhB,EAEfvD,KAAKs0D,sBAEL9vC,EAAOlhB,EAAI61D,EAAKlqD,GAGhBjP,KAAKu0D,oBAEL/vC,EAAOjhB,EAAI61D,EAAKlqD,GAGhBlP,KAAKm1D,YAELn1D,KAAKu5D,kBAGLv5D,KAAKo1D,cAELp1D,KAAKw5D,oBAGLx5D,KAAKy0D,aAELjwC,EAAOlhB,EAAIL,KAAK20B,OAAOpT,EAAOlhB,EAAKtD,KAAK60D,YAAc70D,KAAK20D,OAAU30D,KAAK20D,OAAS30D,KAAK20D,MAAS30D,KAAK60D,YAAc70D,KAAK20D,MACzHnwC,EAAOjhB,EAAIN,KAAK20B,OAAOpT,EAAOjhB,EAAKvD,KAAK80D,YAAc90D,KAAK40D,OAAU50D,KAAK40D,OAAS50D,KAAK40D,MAAS50D,KAAK80D,YAAc90D,KAAK40D,MACzHiB,EAAU7uD,IAAIwd,EAAOlhB,EAAGkhB,EAAOjhB,IAG/B2K,EAAKsW,EAAOlhB,EAAI+1D,EAChBjrD,EAAKoW,EAAOjhB,EAAI+1D,EAKxB,OAFAt5D,KAAKwkB,OAAOkyB,OAAO+iB,aAAa5xB,SAASrjB,EAAQgsB,EAAS2oB,EAAIC,EAAIvD,EAAWiD,EAAW5qD,EAAIE,IAErF,GAWXsrD,SAAU,SAAUlR,EAAWmR,GAK3B,OAHAnR,EAAYA,GAAa,EACzBmR,EAAQA,GAAS,IAET35D,KAAKq2D,aAAa7N,GAAWgO,QAAUx2D,KAAK45D,aAAapR,GAAamR,GAWlFE,QAAS,SAAUrR,EAAWmR,GAK1B,OAHAnR,EAAYA,GAAa,EACzBmR,EAAQA,GAAS,IAET35D,KAAKq2D,aAAa7N,GAAWiO,OAAUz2D,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKq2D,aAAa7N,GAAWmO,QAAUgD,GAWhH3L,YAAa,SAAUxF,EAAWmR,GAK9B,OAHAnR,EAAYA,GAAa,EACzBmR,EAAQA,GAAS,IAET35D,KAAKq2D,aAAa7N,GAAW4E,QAAUptD,KAAK42D,aAAapO,GAAamR,GAWlF1L,aAAc,SAAUzF,EAAWmR,GAK/B,OAHAnR,EAAYA,GAAa,EACzBmR,EAAQA,GAAS,IAET35D,KAAKq2D,aAAa7N,GAAW6E,MAASrtD,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKq2D,aAAa7N,GAAW+E,OAASoM,GAU9GC,aAAc,SAAUpR,GAIpB,OAFAA,EAAYA,GAAa,EAErBxoD,KAAKq2D,aAAa7N,GAAWgO,OAEtBx2D,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKq2D,aAAa7N,GAAWkO,UAGtD,GAUZE,aAAc,SAAUpO,GAIpB,OAFAA,EAAYA,GAAa,EAErBxoD,KAAKq2D,aAAa7N,GAAW4E,OAEtBptD,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKq2D,aAAa7N,GAAW8E,UAGtD,GA+BZwM,WAAY,SAAUC,EAAYjiB,EAAYkiB,EAAcC,EAAgB9E,EAAYC,QAEjEhvD,IAAf2zD,IAA4BA,GAAa,QAC1B3zD,IAAf0xC,IAA4BA,GAAa,QACxB1xC,IAAjB4zD,IAA8BA,GAAe,QAC1B5zD,IAAnB6zD,IAAgCA,EAAiB,UAClC7zD,IAAf+uD,IAA4BA,EAAa,WACxB/uD,IAAjBgvD,IAA8BA,EAAe,MAEjDp1D,KAAK81D,WAAa,IAAI/0D,EAAOX,MAC7BJ,KAAKk1D,WAAY,EACjBl1D,KAAK83C,WAAaA,EAClB93C,KAAKs1D,WAAa,IAAIv0D,EAAOX,MAC7BJ,KAAKu1D,eAAiBwE,EAEtB/5D,KAAKg1D,kBAAoBgF,EACzBh6D,KAAKi1D,kBAAoBgF,EAErB9E,IAEAn1D,KAAKm1D,WAAaA,GAGlBC,IAEAp1D,KAAKo1D,aAAeA,IAU5B8E,YAAa,WAET,GAAIl6D,KAAKq2D,aAEL,IAAK,IAAIp0D,EAAI,EAAGA,EAAI,GAAIA,IAEpBjC,KAAKq2D,aAAap0D,GAAGovD,WAAY,EAIzCrxD,KAAKk1D,WAAY,EACjBl1D,KAAKqxD,WAAY,EACjBrxD,KAAKq4D,mBAAqB,EAC1Br4D,KAAKg2D,cAAe,GASxBoC,UAAW,SAAU5nB,GAEjB,IAAIltC,EAAItD,KAAKwkB,OAAOlhB,EAChBC,EAAIvD,KAAKwkB,OAAOjhB,EAChB01D,EAAoBj5D,KAAKk5D,cAAc1oB,GAU3C,GARAxwC,KAAKqxD,WAAY,EACjBrxD,KAAKq4D,kBAAoB7nB,EAAQ/7B,GAEjCzU,KAAKq2D,aAAa7lB,EAAQ/7B,IAAI6hD,KAAOt2D,KAAKsC,KAAKwZ,OAAOxY,EACtDtD,KAAKq2D,aAAa7lB,EAAQ/7B,IAAI8hD,KAAOv2D,KAAKsC,KAAKwZ,OAAOvY,EAEtDvD,KAAKq2D,aAAa7lB,EAAQ/7B,IAAI48C,WAAY,EAEtCrxD,KAAKwkB,OAAOsxB,cAChB,CACI,GAAI91C,KAAKu1D,eACT,CACI,IAAIjxD,EAAStE,KAAKwkB,OAAOza,YACrBowD,EAAyBn6D,KAAKk5D,cAAc,IAAIn4D,EAAOX,MAAMkE,EAAO21B,QAAS31B,EAAO41B,UAExFl6B,KAAKwkB,OAAOuxB,aAAazyC,EAAI21D,EAAkB31D,GAAKtD,KAAKwkB,OAAOuxB,aAAazyC,EAAI62D,EAAuB72D,GACxGtD,KAAKwkB,OAAOuxB,aAAaxyC,EAAI01D,EAAkB11D,GAAKvD,KAAKwkB,OAAOuxB,aAAaxyC,EAAI42D,EAAuB52D,GAG5GvD,KAAK81D,WAAWv+B,MAAMv3B,KAAKwkB,OAAOuxB,aAAazyC,EAAIktC,EAAQltC,EAAGtD,KAAKwkB,OAAOuxB,aAAaxyC,EAAIitC,EAAQjtC,OAGvG,CACI,GAAIvD,KAAKu1D,eACT,CACQjxD,EAAStE,KAAKwkB,OAAOza,YACrBowD,EAAyBn6D,KAAKk5D,cAAc,IAAIn4D,EAAOX,MAAMkE,EAAO21B,QAAS31B,EAAO41B,UAExFl6B,KAAKwkB,OAAOlhB,EAAI21D,EAAkB31D,GAAKtD,KAAKwkB,OAAOlhB,EAAI62D,EAAuB72D,GAC9EtD,KAAKwkB,OAAOjhB,EAAI01D,EAAkB11D,GAAKvD,KAAKwkB,OAAOjhB,EAAI42D,EAAuB52D,GAGlFvD,KAAK81D,WAAWv+B,MAAMv3B,KAAKwkB,OAAOlhB,EAAI21D,EAAkB31D,EAAGtD,KAAKwkB,OAAOjhB,EAAI01D,EAAkB11D,GAGjGvD,KAAKs4D,WAAW9nB,GAAS,GAErBxwC,KAAK83C,aAEL93C,KAAK+1D,YAAa,EAClB/1D,KAAKwkB,OAAOszB,cAGhB93C,KAAKy1D,eAAezuD,IAAI1D,EAAGC,GAE3BvD,KAAKwkB,OAAOkyB,OAAO0jB,qBAAqBp6D,KAAKwkB,OAAQgsB,EAASltC,EAAGC,GAEjEvD,KAAKg2D,cAAe,GASxBqE,eAAgB,SAAU/2D,GAQtB,OANItD,KAAKq1D,aAEL/xD,GAAKtD,KAAKsC,KAAKjC,MAAMi6D,KAAKC,YAAYj3D,EACtCA,GAAKtD,KAAKsC,KAAKjC,MAAMi6D,KAAKE,mBAAmBl3D,GAG1CA,GASXm3D,eAAgB,SAAUl3D,GAQtB,OANIvD,KAAKq1D,aAEL9xD,GAAKvD,KAAKsC,KAAKjC,MAAMi6D,KAAKC,YAAYh3D,EACtCA,GAAKvD,KAAKsC,KAAKjC,MAAMi6D,KAAKE,mBAAmBj3D,GAG1CA,GAUX21D,cAAe,SAAUwB,GAErB,OAAI16D,KAAKwkB,OAAO5jB,OAELZ,KAAKsC,KAAKsmC,MAAM6f,iBAAiBzoD,KAAKwkB,OAAO5jB,OAAQ,CAAC0C,EAAGo3D,EAAYp3D,EAAGC,EAAGm3D,EAAYn3D,IAIvFm3D,GAUf7B,SAAU,SAAUroB,GAEhBxwC,KAAKqxD,WAAY,EACjBrxD,KAAKq4D,mBAAqB,EAC1Br4D,KAAKq2D,aAAa7lB,EAAQ/7B,IAAI48C,WAAY,EAC1CrxD,KAAK+1D,YAAa,EAClB/1D,KAAKg2D,cAAe,EAEhBh2D,KAAK00D,gBAED10D,KAAKwkB,OAAOsxB,eAEZ91C,KAAKwkB,OAAOuxB,aAAazyC,EAAIL,KAAK20B,OAAO53B,KAAKwkB,OAAOuxB,aAAazyC,EAAKtD,KAAK60D,YAAc70D,KAAK20D,OAAU30D,KAAK20D,OAAS30D,KAAK20D,MAAS30D,KAAK60D,YAAc70D,KAAK20D,MAC7J30D,KAAKwkB,OAAOuxB,aAAaxyC,EAAIN,KAAK20B,OAAO53B,KAAKwkB,OAAOuxB,aAAaxyC,EAAKvD,KAAK80D,YAAc90D,KAAK40D,OAAU50D,KAAK40D,OAAS50D,KAAK40D,MAAS50D,KAAK80D,YAAc90D,KAAK40D,QAI7J50D,KAAKwkB,OAAOlhB,EAAIL,KAAK20B,OAAO53B,KAAKwkB,OAAOlhB,EAAKtD,KAAK60D,YAAc70D,KAAK20D,OAAU30D,KAAK20D,OAAS30D,KAAK20D,MAAS30D,KAAK60D,YAAc70D,KAAK20D,MACnI30D,KAAKwkB,OAAOjhB,EAAIN,KAAK20B,OAAO53B,KAAKwkB,OAAOjhB,EAAKvD,KAAK80D,YAAc90D,KAAK40D,OAAU50D,KAAK40D,OAAS50D,KAAK40D,MAAS50D,KAAK80D,YAAc90D,KAAK40D,QAI3I50D,KAAKwkB,OAAOkyB,OAAOikB,oBAAoB36D,KAAKwkB,OAAQgsB,IAEb,IAAnCxwC,KAAK8xD,iBAAiBthB,IAEtBxwC,KAAKkyD,mBAAmB1hB,IAWhCoqB,YAAa,SAAUC,EAAiBC,QAEZ10D,IAApBy0D,IAAiCA,GAAkB,QACjCz0D,IAAlB00D,IAA+BA,GAAgB,GAEnD96D,KAAKs0D,oBAAsBuG,EAC3B76D,KAAKu0D,kBAAoBuG,GAe7BC,WAAY,SAAUpG,EAAOC,EAAOoG,EAAQC,EAAWpG,EAAaC,QAEjD1uD,IAAX40D,IAAwBA,GAAS,QACnB50D,IAAd60D,IAA2BA,GAAY,QACvB70D,IAAhByuD,IAA6BA,EAAc,QAC3BzuD,IAAhB0uD,IAA6BA,EAAc,GAE/C90D,KAAK20D,MAAQA,EACb30D,KAAK40D,MAAQA,EACb50D,KAAK60D,YAAcA,EACnB70D,KAAK80D,YAAcA,EACnB90D,KAAKy0D,WAAauG,EAClBh7D,KAAK00D,cAAgBuG,GAQzBC,YAAa,WAETl7D,KAAKy0D,YAAa,EAClBz0D,KAAK00D,eAAgB,GAQzB6E,gBAAiB,WAETv5D,KAAKwkB,OAAOsxB,eAER91C,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKm1D,WAAW38B,KAE7Cx4B,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKm1D,WAAW38B,KAEvCx4B,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKwkB,OAAO9f,MAAS1E,KAAKm1D,WAAWr/B,QAExE91B,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKm1D,WAAWr/B,MAAQ91B,KAAKwkB,OAAO9f,OAGjE1E,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKm1D,WAAW18B,IAE7Cz4B,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKm1D,WAAW18B,IAEvCz4B,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKwkB,OAAO7f,OAAU3E,KAAKm1D,WAAWz8B,SAEzE14B,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKm1D,WAAWz8B,OAAS14B,KAAKwkB,OAAO7f,UAKlE3E,KAAKwkB,OAAOgU,KAAOx4B,KAAKm1D,WAAW38B,KAEnCx4B,KAAKwkB,OAAOlhB,EAAItD,KAAKm1D,WAAW7xD,EAAItD,KAAKwkB,OAAOoB,QAE3C5lB,KAAKwkB,OAAOsR,MAAQ91B,KAAKm1D,WAAWr/B,QAEzC91B,KAAKwkB,OAAOlhB,EAAItD,KAAKm1D,WAAWr/B,OAAS91B,KAAKwkB,OAAO9f,MAAQ1E,KAAKwkB,OAAOoB,UAGzE5lB,KAAKwkB,OAAOiU,IAAMz4B,KAAKm1D,WAAW18B,IAElCz4B,KAAKwkB,OAAOjhB,EAAIvD,KAAKm1D,WAAW18B,IAAMz4B,KAAKwkB,OAAOqB,QAE7C7lB,KAAKwkB,OAAOkU,OAAS14B,KAAKm1D,WAAWz8B,SAE1C14B,KAAKwkB,OAAOjhB,EAAIvD,KAAKm1D,WAAWz8B,QAAU14B,KAAKwkB,OAAO7f,OAAS3E,KAAKwkB,OAAOqB,YAUvF2zC,kBAAmB,WAEXx5D,KAAKwkB,OAAOsxB,eAAiB91C,KAAKo1D,aAAatf,eAE3C91C,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKo1D,aAAarf,aAAazyC,EAE5DtD,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKo1D,aAAarf,aAAazyC,EAEtDtD,KAAKwkB,OAAOuxB,aAAazyC,EAAItD,KAAKwkB,OAAO9f,MAAU1E,KAAKo1D,aAAarf,aAAazyC,EAAItD,KAAKo1D,aAAa1wD,QAE9G1E,KAAKwkB,OAAOuxB,aAAazyC,EAAKtD,KAAKo1D,aAAarf,aAAazyC,EAAItD,KAAKo1D,aAAa1wD,MAAS1E,KAAKwkB,OAAO9f,OAGxG1E,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKo1D,aAAarf,aAAaxyC,EAE5DvD,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKo1D,aAAarf,aAAaxyC,EAEtDvD,KAAKwkB,OAAOuxB,aAAaxyC,EAAIvD,KAAKwkB,OAAO7f,OAAW3E,KAAKo1D,aAAarf,aAAaxyC,EAAIvD,KAAKo1D,aAAazwD,SAE/G3E,KAAKwkB,OAAOuxB,aAAaxyC,EAAKvD,KAAKo1D,aAAarf,aAAaxyC,EAAIvD,KAAKo1D,aAAazwD,OAAU3E,KAAKwkB,OAAO7f,UAKzG3E,KAAKwkB,OAAOgU,KAAOx4B,KAAKo1D,aAAa58B,KAErCx4B,KAAKwkB,OAAOlhB,EAAItD,KAAKo1D,aAAa58B,KAAOx4B,KAAKwkB,OAAOoB,QAEhD5lB,KAAKwkB,OAAOsR,MAAQ91B,KAAKo1D,aAAat/B,QAE3C91B,KAAKwkB,OAAOlhB,EAAItD,KAAKo1D,aAAat/B,OAAS91B,KAAKwkB,OAAO9f,MAAQ1E,KAAKwkB,OAAOoB,UAG3E5lB,KAAKwkB,OAAOiU,IAAMz4B,KAAKo1D,aAAa38B,IAEpCz4B,KAAKwkB,OAAOjhB,EAAIvD,KAAKo1D,aAAa38B,IAAMz4B,KAAKwkB,OAAOqB,QAE/C7lB,KAAKwkB,OAAOkU,OAAS14B,KAAKo1D,aAAa18B,SAE5C14B,KAAKwkB,OAAOjhB,EAAIvD,KAAKo1D,aAAa18B,QAAU14B,KAAKwkB,OAAO7f,OAAS3E,KAAKwkB,OAAOqB,aAO7F9kB,EAAOozD,aAAatyD,UAAUC,YAAcf,EAAOozD,aAQnDpzD,EAAO+lD,YAAc,SAAUxkD,GAM3BtC,KAAKsC,KAAOA,EAMZtC,KAAK4oC,MAAQtmC,EAAKsmC,MAMlB5oC,KAAKkrD,QAAU5oD,EAAK0V,OAOpBhY,KAAKktC,QAAS,EAMdltC,KAAK+wD,QAAS,EAOd/wD,KAAKm7D,SAAW,IAAIp6D,EAAO0jC,OAO3BzkC,KAAKo7D,QAAU,IAAIr6D,EAAO0jC,OAO1BzkC,KAAKq7D,qBAAuBr7D,KAAKs7D,gBAAgBjpC,KAAKryB,MAOtDA,KAAKu7D,oBAAsBv7D,KAAKw7D,eAAenpC,KAAKryB,MAEpD,IAAIssB,EAAShqB,EAAKgqB,OAOlBtsB,KAAKy7D,mBAAqBnvC,EAAOmvC,mBAOjCz7D,KAAK07D,kBAAoBpvC,EAAOovC,kBAOhC17D,KAAK27D,iBAAmBrvC,EAAOqvC,kBAQnC56D,EAAO+lD,YAAYjlD,UAAUsK,MAAQ,WAEjC,SAAKnM,KAAKsC,KAAKgqB,OAAOu6B,aAAe7mD,KAAKktC,UAKrCltC,KAAKkrD,QAAQ0Q,qBAEd57D,KAAKkrD,QAAQ0Q,mBAAqB57D,KAAKkrD,QAAQ2Q,uBAAyB77D,KAAKkrD,QAAQ4Q,0BAGpFvpB,SAASwpB,kBAEVxpB,SAASwpB,gBAAkBxpB,SAASypB,oBAAsBzpB,SAAS0pB,uBAGvE1pB,SAASW,iBAAiBlzC,KAAK07D,kBAAmB17D,KAAKq7D,sBAAsB,GAC7E9oB,SAASW,iBAAiBlzC,KAAK27D,iBAAkB37D,KAAKu7D,qBAAqB,GAE3Ev7D,KAAKktC,QAAS,IASlBnsC,EAAO+lD,YAAYjlD,UAAUmK,KAAO,WAE5BhM,KAAKktC,SAELqF,SAAS4B,oBAAoBn0C,KAAK07D,kBAAmB17D,KAAKq7D,sBAAsB,GAChF9oB,SAAS4B,oBAAoBn0C,KAAK27D,iBAAkB37D,KAAKu7D,qBAAqB,GAE9Ev7D,KAAKktC,QAAS,IAStBnsC,EAAO+lD,YAAYjlD,UAAUq6D,QAAU,WAE9Bl8D,KAAKktC,SAAUltC,KAAK+wD,QAKzB/wD,KAAKkrD,QAAQ0Q,sBAQjB76D,EAAO+lD,YAAYjlD,UAAUs6D,KAAO,WAEhC5pB,SAASwpB,mBAUbh7D,EAAO+lD,YAAYjlD,UAAUy5D,gBAAkB,SAAU1oB,GAErD5yC,KAAK+wD,OAAUxe,SAASvyC,KAAKy7D,sBAAwBz7D,KAAKkrD,QAE1DlrD,KAAKm7D,SAAStzB,SAAS7nC,KAAK+wD,OAAQne,IAUxC7xC,EAAO+lD,YAAYjlD,UAAU25D,eAAiB,SAAU5oB,GAEpD5yC,KAAKo7D,QAAQvzB,SAAS+K,IAuB1B7xC,EAAOimD,QAAU,SAAU1kD,GAKvBtC,KAAKsC,KAAOA,EAMZtC,KAAKo8D,iBAAmB,GAMxBp8D,KAAKq8D,SAAW,GAOhBr8D,KAAKs8D,SAAU,EAOft8D,KAAKqjD,SAAU,EAOfrjD,KAAKu8D,2BAA6BvwC,UAAUwwC,qBAAuBxwC,UAAUywC,iBAAgE,IAA7CzwC,UAAU0wC,UAAUxzD,QAAQ,eAAyB8iB,UAAU2wC,YAQ/J38D,KAAK48D,qBAAuB,GAQ5B58D,KAAK68D,gBAAkB,IAKvB78D,KAAK0rC,gBAAkB1rC,MAKlB88D,kBAAoB,KAKzB98D,KAAK+8D,qBAAuB,KAK5B/8D,KAAKg9D,eAAiB,KAKtBh9D,KAAKi9D,aAAe,KAKpBj9D,KAAKk9D,eAAiB,KAKtBl9D,KAAKm9D,gBAAkB,KAMvBn9D,KAAKo9D,oBAAsB,KAM3Bp9D,KAAKq9D,qBAAuB,KAM5Br9D,KAAKs9D,UAAY,CACb,IAAIv8D,EAAOw8D,UAAUj7D,EAAMtC,MAC3B,IAAIe,EAAOw8D,UAAUj7D,EAAMtC,MAC3B,IAAIe,EAAOw8D,UAAUj7D,EAAMtC,MAC3B,IAAIe,EAAOw8D,UAAUj7D,EAAMtC,QAInCe,EAAOimD,QAAQnlD,UAAY,CAUvB27D,aAAc,SAAU7vD,EAAS8vD,QAEJ,IAAdA,IAEPz9D,KAAK88D,kBAAoD,mBAAxBW,EAAUC,UAA4BD,EAAUC,UAAY19D,KAAK88D,kBAClG98D,KAAK+8D,qBAA0D,mBAA3BU,EAAUE,aAA+BF,EAAUE,aAAe39D,KAAK+8D,qBAC3G/8D,KAAKg9D,eAA8C,mBAArBS,EAAUnY,OAAyBmY,EAAUnY,OAAStlD,KAAKg9D,eACzFh9D,KAAKi9D,aAA0C,mBAAnBQ,EAAUlY,KAAuBkY,EAAUlY,KAAOvlD,KAAKi9D,aACnFj9D,KAAKk9D,eAA8C,mBAArBO,EAAUG,OAAyBH,EAAUG,OAAS59D,KAAKk9D,eACzFl9D,KAAKm9D,gBAAgD,mBAAtBM,EAAU7P,QAA0B6P,EAAU7P,QAAU5tD,KAAKm9D,gBAC5Fn9D,KAAK0rC,gBAAkB/9B,IAU/BxB,MAAO,WAEH,IAAInM,KAAKs8D,QAAT,CAMAt8D,KAAKs8D,SAAU,EAEf,IAAIztB,EAAQ7uC,KAEZA,KAAK69D,oBAAsB,SAAUjrB,GAEjC,OAAO/D,EAAMivB,mBAAmBlrB,IAGpC5yC,KAAK+9D,uBAAyB,SAAUnrB,GAEpC,OAAO/D,EAAMmvB,sBAAsBprB,IAGvCziC,OAAO+iC,iBAAiB,mBAAoBlzC,KAAK69D,qBAAqB,GACtE1tD,OAAO+iC,iBAAiB,sBAAuBlzC,KAAK+9D,wBAAwB,KAUhFD,mBAAoB,SAAUlrB,GAE1B,IAAIqrB,EAASrrB,EAAMwS,QACnBplD,KAAKq8D,SAAS10D,KAAKs2D,GACnBj+D,KAAKs9D,UAAUW,EAAOx1D,OAAOy1D,QAAQD,IAUzCD,sBAAuB,SAAUprB,GAE7B,IAAIurB,EAAavrB,EAAMwS,QAEvB,IAAK,IAAInjD,KAAKjC,KAAKq8D,SAEXr8D,KAAKq8D,SAASp6D,GAAGwG,QAAU01D,EAAW11D,OAEtCzI,KAAKq8D,SAAS1zD,OAAO1G,EAAE,GAI/BjC,KAAKs9D,UAAUa,EAAW11D,OAAO21D,cAQrC72B,OAAQ,WAEJvnC,KAAKq+D,gBAELr+D,KAAKs+D,KAAKC,aACVv+D,KAAKw+D,KAAKD,aACVv+D,KAAKy+D,KAAKF,aACVv+D,KAAK0+D,KAAKH,cASdF,cAAe,WAEX,GAAKr+D,KAAKs8D,QAAV,CAKA,GAAItwC,UAAU2wC,YAEV,IAAIgC,EAAc3yC,UAAU2wC,mBAE3B,GAAI3wC,UAAUwwC,kBAEXmC,EAAc3yC,UAAUwwC,yBAE3B,GAAIxwC,UAAUywC,eAEXkC,EAAc3yC,UAAUywC,iBAGhC,GAAIkC,EACJ,CAKI,IAFA,IAAIC,IAFJ5+D,KAAKq8D,SAAW,IAIPp6D,EAAI,EAAGA,EAAI08D,EAAYz8D,gBAEjBy8D,EAAY18D,KAAOjC,KAAK48D,qBAAqB36D,KAEpD28D,GAAkB,EAClB5+D,KAAK48D,qBAAqB36D,UAAY08D,EAAY18D,IAGlD08D,EAAY18D,IAEZjC,KAAKq8D,SAAS10D,KAAKg3D,EAAY18D,IAIzB,IAANA,GAdgCA,KAoBxC,IAAK,IAAI0Z,EAAI,EAAGA,EAAI3b,KAAKs9D,UAAUp7D,OAAQyZ,IAEvC3b,KAAKs9D,UAAU3hD,GAAGkjD,QAAU7+D,KAAKq8D,SAAS1gD,GAG9C,GAAIijD,EACJ,CAII,IAHA,IACIE,EADAC,EAAmB,CAAEC,WAAY,GAAIC,WAAY,IAG5Cv3D,EAAI,EAAGA,EAAI1H,KAAKs9D,UAAUp7D,OAAQwF,IAIvC,IAFAo3D,EAAY9+D,KAAKs9D,UAAU51D,IAEbw3D,UAEV,IAAK,IAAI3lC,EAAI,EAAGA,EAAIv5B,KAAKq8D,SAASn6D,OAAQq3B,IAElCv5B,KAAKq8D,SAAS9iC,GAAG9wB,QAAUq2D,EAAUr2D,QAErCs2D,EAAiBC,WAAWF,EAAUr2D,QAAS,EAC/Cs2D,EAAiBE,WAAWv3D,IAAK,GAMjD,IAAK,IAAI2xB,EAAI,EAAGA,EAAIr5B,KAAKs9D,UAAUp7D,OAAQm3B,IAIvC,GAFAylC,EAAY9+D,KAAKs9D,UAAUjkC,IAEvB0lC,EAAiBE,WAAW5lC,GAAhC,CAKIr5B,KAAKq8D,SAASn6D,OAAS,GAEvB48D,EAAUV,aAGd,IAAK,IAAI5kC,EAAI,EAAGA,EAAIx5B,KAAKq8D,SAASn6D,SAE1B68D,EAAiBE,WAAW5lC,GAFMG,IAC1C,CAMI,IAAI2lC,EAASn/D,KAAKq8D,SAAS7iC,GAE3B,GAAI2lC,EACJ,CACI,GAAIJ,EAAiBC,WAAWG,EAAO12D,OACvC,CACIq2D,EAAUV,aACV,SAIAU,EAAUZ,QAAQiB,GAClBJ,EAAiBC,WAAWG,EAAO12D,QAAS,EAC5Cs2D,EAAiBE,WAAW5lC,IAAK,OAKrCylC,EAAUV,mBAYlCgB,aAAc,SAAUn4D,GAEpB,IAAK,IAAIhF,EAAI,EAAGA,EAAIjC,KAAKs9D,UAAUp7D,OAAQD,IAEvCjC,KAAKs9D,UAAUr7D,GAAGo9D,SAAWp4D,GASrC+E,KAAM,WAEFhM,KAAKs8D,SAAU,EAEfnsD,OAAOgkC,oBAAoB,mBAAoBn0C,KAAK69D,qBACpD1tD,OAAOgkC,oBAAoB,sBAAuBn0C,KAAK+9D,yBAO3Dv1B,MAAO,WAEHxoC,KAAKunC,SAEL,IAAK,IAAItlC,EAAI,EAAGA,EAAIjC,KAAKs9D,UAAUp7D,OAAQD,IAEvCjC,KAAKs9D,UAAUr7D,GAAGumC,SAW1BwlB,YAAa,SAAUb,EAAYloB,GAE/B,IAAK,IAAIhjC,EAAI,EAAGA,EAAIjC,KAAKs9D,UAAUp7D,OAAQD,IAEvC,IAA4D,IAAxDjC,KAAKs9D,UAAUr7D,GAAG+rD,YAAYb,EAAYloB,GAE1C,OAAO,EAIf,OAAO,GAUXgpB,aAAc,SAAUd,EAAYloB,GAEhC,IAAK,IAAIhjC,EAAI,EAAGA,EAAIjC,KAAKs9D,UAAUp7D,OAAQD,IAEvC,IAA6D,IAAzDjC,KAAKs9D,UAAUr7D,GAAGgsD,aAAad,EAAYloB,GAE3C,OAAO,EAIf,OAAO,GASXmoB,OAAQ,SAAUD,GAEd,IAAK,IAAIlrD,EAAI,EAAGA,EAAIjC,KAAKs9D,UAAUp7D,OAAQD,IAEvC,IAA6C,IAAzCjC,KAAKs9D,UAAUr7D,GAAGmrD,OAAOD,GAEzB,OAAO,EAIf,OAAO,GAQXprD,QAAS,WAEL/B,KAAKgM,OAEL,IAAK,IAAI/J,EAAI,EAAGA,EAAIjC,KAAKs9D,UAAUp7D,OAAQD,IAEvCjC,KAAKs9D,UAAUr7D,GAAGF,YAM9BhB,EAAOimD,QAAQnlD,UAAUC,YAAcf,EAAOimD,QAQ9CngD,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,SAAU,CAEtDkF,IAAK,WAED,OAAO/G,KAAKs8D,WAWpBz1D,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,YAAa,CAEzDkF,IAAK,WAED,OAAO/G,KAAKu8D,4BAWpB11D,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,gBAAiB,CAE7DkF,IAAK,WAED,OAAO/G,KAAKq8D,SAASn6D,UAW7B2E,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,OAAQ,CAEpDkF,IAAK,WAED,OAAO/G,KAAKs9D,UAAU,MAW9Bz2D,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,OAAQ,CAEpDkF,IAAK,WAED,OAAO/G,KAAKs9D,UAAU,MAW9Bz2D,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,OAAQ,CAEpDkF,IAAK,WAED,OAAO/G,KAAKs9D,UAAU,MAW9Bz2D,OAAOyF,eAAevL,EAAOimD,QAAQnlD,UAAW,OAAQ,CAEpDkF,IAAK,WAED,OAAO/G,KAAKs9D,UAAU,MAK9Bv8D,EAAOimD,QAAQsY,SAAW,EAC1Bv+D,EAAOimD,QAAQuY,SAAW,EAC1Bx+D,EAAOimD,QAAQwY,SAAW,EAC1Bz+D,EAAOimD,QAAQyY,SAAW,EAC1B1+D,EAAOimD,QAAQ0Y,SAAW,EAC1B3+D,EAAOimD,QAAQ2Y,SAAW,EAC1B5+D,EAAOimD,QAAQ4Y,SAAW,EAC1B7+D,EAAOimD,QAAQ6Y,SAAW,EAC1B9+D,EAAOimD,QAAQ8Y,SAAW,EAC1B/+D,EAAOimD,QAAQ+Y,SAAW,EAC1Bh/D,EAAOimD,QAAQgZ,UAAY,GAC3Bj/D,EAAOimD,QAAQiZ,UAAY,GAC3Bl/D,EAAOimD,QAAQkZ,UAAY,GAC3Bn/D,EAAOimD,QAAQmZ,UAAY,GAC3Bp/D,EAAOimD,QAAQoZ,UAAY,GAC3Br/D,EAAOimD,QAAQqZ,UAAY,GAE3Bt/D,EAAOimD,QAAQsZ,OAAS,EACxBv/D,EAAOimD,QAAQuZ,OAAS,EACxBx/D,EAAOimD,QAAQwZ,OAAS,EACxBz/D,EAAOimD,QAAQyZ,OAAS,EACxB1/D,EAAOimD,QAAQ0Z,OAAS,EACxB3/D,EAAOimD,QAAQ2Z,OAAS,EACxB5/D,EAAOimD,QAAQ4Z,OAAS,EACxB7/D,EAAOimD,QAAQ6Z,OAAS,EACxB9/D,EAAOimD,QAAQ8Z,OAAS,EACxB//D,EAAOimD,QAAQ+Z,OAAS,EAQxBhgE,EAAOimD,QAAQga,UAAY,EAC3BjgE,EAAOimD,QAAQia,UAAY,EAC3BlgE,EAAOimD,QAAQka,UAAY,EAC3BngE,EAAOimD,QAAQma,UAAY,EAC3BpgE,EAAOimD,QAAQoa,oBAAsB,EACrCrgE,EAAOimD,QAAQqa,qBAAuB,EACtCtgE,EAAOimD,QAAQsa,qBAAuB,EACtCvgE,EAAOimD,QAAQua,sBAAwB,EACvCxgE,EAAOimD,QAAQwa,aAAe,EAC9BzgE,EAAOimD,QAAQya,cAAgB,EAC/B1gE,EAAOimD,QAAQ0a,0BAA4B,GAC3C3gE,EAAOimD,QAAQ2a,2BAA6B,GAE5C5gE,EAAOimD,QAAQ4a,kBAAoB,GACnC7gE,EAAOimD,QAAQ6a,mBAAqB,GACpC9gE,EAAOimD,QAAQ8a,gBAAkB,GACjC/gE,EAAOimD,QAAQ+a,kBAAoB,GAGnChhE,EAAOimD,QAAQgb,qBAAuB,EACtCjhE,EAAOimD,QAAQib,qBAAuB,EACtClhE,EAAOimD,QAAQkb,sBAAwB,EACvCnhE,EAAOimD,QAAQmb,sBAAwB,EAIvCphE,EAAOimD,QAAQob,QAAU,EACzBrhE,EAAOimD,QAAQqb,aAAe,EAC9BthE,EAAOimD,QAAQsb,aAAe,EAC9BvhE,EAAOimD,QAAQub,eAAiB,EAChCxhE,EAAOimD,QAAQwb,SAAW,EAC1BzhE,EAAOimD,QAAQyb,SAAW,EAC1B1hE,EAAOimD,QAAQ0b,SAAW,EAC1B3hE,EAAOimD,QAAQ2b,SAAW,EAC1B5hE,EAAOimD,QAAQ4b,aAAe,EAC9B7hE,EAAOimD,QAAQ6b,YAAc,EAC7B9hE,EAAOimD,QAAQ8b,wBAA0B,GACzC/hE,EAAOimD,QAAQ+b,yBAA2B,GAC1ChiE,EAAOimD,QAAQgc,cAAgB,GAC/BjiE,EAAOimD,QAAQic,gBAAkB,GACjCliE,EAAOimD,QAAQkc,gBAAkB,GACjCniE,EAAOimD,QAAQmc,iBAAmB,GAClCpiE,EAAOimD,QAAQoc,mBAAqB,EACpCriE,EAAOimD,QAAQqc,mBAAqB,EACpCtiE,EAAOimD,QAAQsc,oBAAsB,EACrCviE,EAAOimD,QAAQuc,oBAAsB,EAiBrCxiE,EAAOw8D,UAAY,SAAUj7D,EAAMkhE,GAK/BxjE,KAAKsC,KAAOA,EAMZtC,KAAKyI,MAAQ,KAMbzI,KAAKk/D,WAAY,GAKjBl/D,KAAK0rC,gBAAkB1rC,MAKlB88D,kBAAoB,KAKzB98D,KAAK+8D,qBAAuB,KAK5B/8D,KAAKg9D,eAAiB,KAKtBh9D,KAAKi9D,aAAe,KAKpBj9D,KAAKk9D,eAAiB,KAKtBl9D,KAAKm9D,gBAAkB,KAKvBn9D,KAAKq/D,SAAW,IAMhBr/D,KAAKyjE,WAAaD,EAMlBxjE,KAAK6+D,QAAU,KAMf7+D,KAAK0jE,eAAiB,KAMtB1jE,KAAK2jE,SAAW,GAMhB3jE,KAAK4jE,YAAc,EAMnB5jE,KAAK6jE,MAAQ,GAMb7jE,KAAK8jE,SAAW,GAGpB/iE,EAAOw8D,UAAU17D,UAAY,CAUzB27D,aAAc,SAAU7vD,EAAS8vD,QAEJ,IAAdA,IAEPz9D,KAAK88D,kBAAoD,mBAAxBW,EAAUC,UAA4BD,EAAUC,UAAY19D,KAAK88D,kBAClG98D,KAAK+8D,qBAA0D,mBAA3BU,EAAUE,aAA+BF,EAAUE,aAAe39D,KAAK+8D,qBAC3G/8D,KAAKg9D,eAA8C,mBAArBS,EAAUnY,OAAyBmY,EAAUnY,OAAStlD,KAAKg9D,eACzFh9D,KAAKi9D,aAA0C,mBAAnBQ,EAAUlY,KAAuBkY,EAAUlY,KAAOvlD,KAAKi9D,aACnFj9D,KAAKk9D,eAA8C,mBAArBO,EAAUG,OAAyBH,EAAUG,OAAS59D,KAAKk9D,eACzFl9D,KAAKm9D,gBAAgD,mBAAtBM,EAAU7P,QAA0B6P,EAAU7P,QAAU5tD,KAAKm9D,gBAE5Fn9D,KAAK0rC,gBAAkB/9B,IAY/Bo2D,UAAW,SAAU5W,GAEjB,OAAIntD,KAAK2jE,SAASxW,GAEPntD,KAAK2jE,SAASxW,GAId,MASfoR,WAAY,WAER,GAAKv+D,KAAKk/D,WAAcl/D,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKsC,KAAKsmC,MAAMwc,QAAQ/B,SAAYrjD,KAAK6+D,WAAW7+D,KAAK6+D,QAAQmF,WAAahkE,KAAK6+D,QAAQmF,YAAchkE,KAAK0jE,gBAAlK,CAKA,IAAK,IAAIzhE,EAAI,EAAGA,EAAIjC,KAAK4jE,YAAa3hE,IACtC,CACI,IAAIgiE,EAAeC,MAAMlkE,KAAK6+D,QAAQvO,QAAQruD,IAAMjC,KAAK6+D,QAAQvO,QAAQruD,GAAGgF,MAAQjH,KAAK6+D,QAAQvO,QAAQruD,GAErGgiE,IAAiBjkE,KAAK2jE,SAAS1hE,GAAGgF,QAEb,IAAjBg9D,EAEAjkE,KAAKmkE,kBAAkBliE,EAAGgiE,GAEJ,IAAjBA,EAELjkE,KAAKokE,gBAAgBniE,EAAGgiE,GAIxBjkE,KAAKqkE,mBAAmBpiE,EAAGgiE,IAKvC,IAAK,IAAIx7D,EAAQ,EAAGA,EAAQzI,KAAK8jE,SAAUr7D,IAC3C,CACI,IAAIxB,EAAQjH,KAAK6+D,QAAQyF,KAAK77D,GAEjB,EAARxB,GAAaA,EAAQjH,KAAKq/D,UAAcp4D,EAAQ,GAAKA,GAASjH,KAAKq/D,SAEpEr/D,KAAKukE,kBAAkB97D,EAAOxB,GAI9BjH,KAAKukE,kBAAkB97D,EAAO,GAItCzI,KAAK0jE,eAAiB1jE,KAAK6+D,QAAQmF,YASvC9F,QAAS,SAAUiB,GAEf,IAAIqF,GAAmBxkE,KAAKk/D,UAE5Bl/D,KAAKk/D,WAAY,EACjBl/D,KAAKyI,MAAQ02D,EAAO12D,MAEpBzI,KAAK6+D,QAAUM,EAEfn/D,KAAK2jE,SAAW,GAChB3jE,KAAK4jE,YAAczE,EAAO7O,QAAQpuD,OAElClC,KAAK6jE,MAAQ,GACb7jE,KAAK8jE,SAAW3E,EAAOmF,KAAKpiE,OAE5B,IAAK,IAAIO,EAAI,EAAGA,EAAIzC,KAAK8jE,SAAUrhE,IAE/BzC,KAAK6jE,MAAMphE,GAAK08D,EAAOmF,KAAK7hE,GAGhC,IAAK,IAAI0qD,KAAcgS,EAAO7O,QAE1BnD,EAAa53B,SAAS43B,EAAY,IAClCntD,KAAK2jE,SAASxW,GAAc,IAAIpsD,EAAOmsD,aAAaltD,KAAMmtD,GAG1DqX,GAAmBxkE,KAAKyjE,WAAW3G,mBAEnC98D,KAAKyjE,WAAW3G,kBAAkB/4D,KAAK/D,KAAKyjE,WAAW/3B,gBAAiB1rC,KAAKyI,OAG7E+7D,GAAmBxkE,KAAK88D,mBAExB98D,KAAK88D,kBAAkB/4D,KAAK/D,KAAK0rC,kBASzC0yB,WAAY,WAER,IAAIoG,EAAkBxkE,KAAKk/D,UACvBuF,EAAqBzkE,KAAKyI,MAE9BzI,KAAKk/D,WAAY,EACjBl/D,KAAKyI,MAAQ,KAEbzI,KAAK6+D,aAAUz4D,EAEf,IAAK,IAAInE,EAAI,EAAGA,EAAIjC,KAAK4jE,YAAa3hE,IAElCjC,KAAK2jE,SAAS1hE,GAAGF,UAGrB/B,KAAK2jE,SAAW,GAChB3jE,KAAK4jE,YAAc,EAEnB5jE,KAAK6jE,MAAQ,GACb7jE,KAAK8jE,SAAW,EAEZU,GAAmBxkE,KAAKyjE,WAAW1G,sBAEnC/8D,KAAKyjE,WAAW1G,qBAAqBh5D,KAAK/D,KAAKyjE,WAAW/3B,gBAAiB+4B,GAG3ED,GAAmBxkE,KAAK+8D,sBAExB/8D,KAAK+8D,qBAAqBh5D,KAAK/D,KAAK0rC,kBAS5C3pC,QAAS,WAEL/B,KAAK6+D,aAAUz4D,EAEf,IAAK,IAAInE,EAAI,EAAGA,EAAIjC,KAAK4jE,YAAa3hE,IAElCjC,KAAK2jE,SAAS1hE,GAAGF,UAGrB/B,KAAK2jE,SAAW,GAChB3jE,KAAK4jE,YAAc,EAEnB5jE,KAAK6jE,MAAQ,GACb7jE,KAAK8jE,SAAW,EAEhB9jE,KAAK88D,kBAAoB,KACzB98D,KAAK+8D,qBAAuB,KAC5B/8D,KAAKg9D,eAAiB,KACtBh9D,KAAKi9D,aAAe,KACpBj9D,KAAKk9D,eAAiB,KACtBl9D,KAAKm9D,gBAAkB,MAS3BoH,kBAAmB,SAAU97D,EAAOxB,GAE5BjH,KAAK6jE,MAAMp7D,KAAWxB,IAK1BjH,KAAK6jE,MAAMp7D,GAASxB,EAEhBjH,KAAKyjE,WAAWvG,gBAEhBl9D,KAAKyjE,WAAWvG,eAAen5D,KAAK/D,KAAKyjE,WAAW/3B,gBAAiB1rC,KAAMyI,EAAOxB,GAGlFjH,KAAKk9D,gBAELl9D,KAAKk9D,eAAen5D,KAAK/D,KAAK0rC,gBAAiB1rC,KAAMyI,EAAOxB,KAWpEk9D,kBAAmB,SAAUhX,EAAYlmD,GAEjCjH,KAAK2jE,SAASxW,IAEdntD,KAAK2jE,SAASxW,GAAYhhD,MAAM,KAAMlF,GAGtCjH,KAAKyjE,WAAWzG,gBAEhBh9D,KAAKyjE,WAAWzG,eAAej5D,KAAK/D,KAAKyjE,WAAW/3B,gBAAiByhB,EAAYlmD,EAAOjH,KAAKyI,OAG7FzI,KAAKg9D,gBAELh9D,KAAKg9D,eAAej5D,KAAK/D,KAAK0rC,gBAAiByhB,EAAYlmD,IAWnEm9D,gBAAiB,SAAUjX,EAAYlmD,GAE/BjH,KAAKyjE,WAAWxG,cAEhBj9D,KAAKyjE,WAAWxG,aAAal5D,KAAK/D,KAAKyjE,WAAW/3B,gBAAiByhB,EAAYlmD,EAAOjH,KAAKyI,OAG3FzI,KAAKi9D,cAELj9D,KAAKi9D,aAAal5D,KAAK/D,KAAK0rC,gBAAiByhB,EAAYlmD,GAGzDjH,KAAK2jE,SAASxW,IAEdntD,KAAK2jE,SAASxW,GAAYnhD,KAAK,KAAM/E,IAW7Co9D,mBAAoB,SAAUlX,EAAYlmD,GAElCjH,KAAKyjE,WAAWtG,iBAEhBn9D,KAAKyjE,WAAWtG,gBAAgBp5D,KAAK/D,KAAKyjE,WAAW/3B,gBAAiByhB,EAAYlmD,EAAOjH,KAAKyI,OAG9FzI,KAAKm9D,iBAELn9D,KAAKm9D,gBAAgBp5D,KAAK/D,KAAK0rC,gBAAiByhB,EAAYlmD,GAG5DjH,KAAK2jE,SAASxW,IAEdntD,KAAK2jE,SAASxW,GAAYY,SAAS9mD,IAW3Cy9D,KAAM,SAAUC,GAEZ,QAAI3kE,KAAK6jE,MAAMc,IAEJ3kE,KAAK6jE,MAAMc,IAa1BvX,OAAQ,SAAUD,GAEd,QAAIntD,KAAK2jE,SAASxW,IAEPntD,KAAK2jE,SAASxW,GAAYC,QAazCC,KAAM,SAAUF,GAEZ,QAAIntD,KAAK2jE,SAASxW,IAEPntD,KAAK2jE,SAASxW,GAAYE,MAczCY,aAAc,SAAUd,EAAYloB,GAEhC,GAAIjlC,KAAK2jE,SAASxW,GAEd,OAAOntD,KAAK2jE,SAASxW,GAAYc,aAAahpB,IAYtD+oB,YAAa,SAAUb,EAAYloB,GAE/B,GAAIjlC,KAAK2jE,SAASxW,GAEd,OAAOntD,KAAK2jE,SAASxW,GAAYa,YAAY/oB,IAYrD2/B,YAAa,SAAUzX,GAEnB,OAAIntD,KAAK2jE,SAASxW,GAEPntD,KAAK2jE,SAASxW,GAAYlmD,MAG9B,MAQXuhC,MAAO,WAEH,IAAK,IAAI9gC,EAAI,EAAGA,EAAI1H,KAAK6jE,MAAM3hE,OAAQwF,IAEnC1H,KAAK6jE,MAAMn8D,GAAK,IAM5B3G,EAAOw8D,UAAU17D,UAAUC,YAAcf,EAAOw8D,UAgBhDx8D,EAAO8jE,IAAM,SAAUviE,EAAMwiE,GAKzB9kE,KAAKsC,KAAOA,EAOZtC,KAAK+kE,UAAW,EAMhB/kE,KAAK4yC,MAAQ,KAMb5yC,KAAKotD,QAAS,EAMdptD,KAAKqtD,MAAO,EAMZrtD,KAAKytD,QAAS,EAMdztD,KAAK2tD,SAAU,EAMf3tD,KAAK0tD,UAAW,EAKhB1tD,KAAKstD,SAAW,EAQhBttD,KAAKilC,SAAW,EAMhBjlC,KAAKutD,QAAU,KAQfvtD,KAAKglE,YAAc,KAMnBhlE,KAAKwtD,QAAU,EAKfxtD,KAAKilE,QAAUH,EAKf9kE,KAAKslD,OAAS,IAAIvkD,EAAO0jC,OAKzBzkC,KAAKklE,eAAiB,KAKtBllE,KAAKmlE,cAAgB,KAKrBnlE,KAAKulD,KAAO,IAAIxkD,EAAO0jC,OAMvBzkC,KAAKolE,WAAY,EAMjBplE,KAAKqlE,SAAU,GAGnBtkE,EAAO8jE,IAAIhjE,UAAY,CAQnB0lC,OAAQ,WAECvnC,KAAK+kE,WAEN/kE,KAAKotD,QAELptD,KAAKilC,SAAWjlC,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKstD,SAC3CttD,KAAKwtD,UAEDxtD,KAAKklE,gBAELllE,KAAKklE,eAAenhE,KAAK/D,KAAKmlE,cAAenlE,OAKjDA,KAAKglE,WAAahlE,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKutD,SAWrD+X,eAAgB,SAAU1yB,GAEjB5yC,KAAK+kE,WAEV/kE,KAAK4yC,MAAQA,EAGT5yC,KAAKotD,SAKTptD,KAAKytD,OAAS7a,EAAM6a,OACpBztD,KAAK2tD,QAAU/a,EAAM+a,QACrB3tD,KAAK0tD,SAAW9a,EAAM8a,SAEtB1tD,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EACZrtD,KAAKstD,SAAWttD,KAAKsC,KAAKqlC,KAAKA,KAC/B3nC,KAAKilC,SAAW,EAChBjlC,KAAKglE,WAAahlE,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKutD,OAC7CvtD,KAAKwtD,QAAU,EAMfxtD,KAAKolE,WAAY,EAEjBplE,KAAKslD,OAAOzd,SAAS7nC,SAUzBulE,aAAc,SAAU3yB,GAEf5yC,KAAK+kE,WAEV/kE,KAAK4yC,MAAQA,EAET5yC,KAAKqtD,OAKTrtD,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EACZrtD,KAAKutD,OAASvtD,KAAKsC,KAAKqlC,KAAKA,KAC7B3nC,KAAKilC,SAAWjlC,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKstD,SAC3CttD,KAAKglE,WAAa,EAMlBhlE,KAAKqlE,SAAU,EAEfrlE,KAAKulD,KAAK1d,SAAS7nC,SAYvBwoC,MAAO,SAAUof,QAEAxhD,IAATwhD,IAAsBA,GAAO,GAEjC5nD,KAAKotD,QAAS,EACdptD,KAAKqtD,MAAO,EACZrtD,KAAKutD,OAASvtD,KAAKsC,KAAKqlC,KAAKA,KAC7B3nC,KAAKilC,SAAW,EAChBjlC,KAAKglE,YAAc,KACnBhlE,KAAK+kE,UAAW,EAChB/kE,KAAKolE,WAAY,EACjBplE,KAAKqlE,SAAU,EAEXzd,IAEA5nD,KAAKslD,OAAOjZ,YACZrsC,KAAKulD,KAAKlZ,YACVrsC,KAAKklE,eAAiB,KACtBllE,KAAKmlE,cAAgB,OAY7BvO,aAAc,SAAU3xB,GAIpB,YAFiB7+B,IAAb6+B,IAA0BA,EAAW,IAEjCjlC,KAAKotD,QAAUptD,KAAKilC,SAAWA,GAW3CugC,WAAY,SAAUvgC,GAIlB,YAFiB7+B,IAAb6+B,IAA0BA,EAAW,KAEhCjlC,KAAKotD,QAAYptD,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAKutD,OAAUtoB,GAUnE+oB,YAAa,WAET,OAAQhuD,KAAKotD,QAA4B,IAAlBptD,KAAKilC,UAUhCgpB,aAAc,WAEV,OAASjuD,KAAKotD,QAA8B,IAApBptD,KAAKglE,aAgBrCn+D,OAAOyF,eAAevL,EAAO8jE,IAAIhjE,UAAW,WAAY,CAEpDkF,IAAK,WAED,IAAIqjC,EAAUpqC,KAAKolE,UAEnB,OADAplE,KAAKolE,WAAY,EACVh7B,KAgBfvjC,OAAOyF,eAAevL,EAAO8jE,IAAIhjE,UAAW,SAAU,CAElDkF,IAAK,WAED,IAAIqjC,EAAUpqC,KAAKqlE,QAEnB,OADArlE,KAAKqlE,SAAU,EACRj7B,KAafvjC,OAAOyF,eAAevL,EAAO8jE,IAAIhjE,UAAW,UAAW,CAEnDkF,IAAK,WAED,OAAO/G,KAAK+kE,UAGhB/9D,IAAK,SAAUC,IAEXA,IAAUA,KAEIjH,KAAK+kE,WAEV99D,GAEDjH,KAAKwoC,OAAM,GAGfxoC,KAAK+kE,SAAW99D,MAM5BlG,EAAO8jE,IAAIhjE,UAAUC,YAAcf,EAAO8jE,IAsB1C9jE,EAAOgmD,SAAW,SAAUzkD,GAKxBtC,KAAKsC,KAAOA,EAOZtC,KAAKktC,QAAS,EAOdltC,KAAKqjD,SAAU,EAKfrjD,KAAK4yC,MAAQ,KAKb5yC,KAAKylE,WAAa,MAKlBzlE,KAAK0rC,gBAAkB1rC,MAKlBg9D,eAAiB,KAKtBh9D,KAAK0lE,gBAAkB,KAKvB1lE,KAAKi9D,aAAe,KAMpBj9D,KAAK2lE,MAAQ,GAMb3lE,KAAK4lE,SAAW,GAOhB5lE,KAAK6lE,WAAa,KAOlB7lE,KAAK8lE,YAAc,KAOnB9lE,KAAK+lE,SAAW,KAMhB/lE,KAAKwxC,GAAK,EAMVxxC,KAAKgmE,GAAK,GAGdjlE,EAAOgmD,SAASllD,UAAY,CAWxB27D,aAAc,SAAU7vD,EAAS23C,EAAQC,EAAM0gB,GAE3CjmE,KAAK0rC,gBAAkB/9B,EAEnB23C,MAAAA,IAEAtlD,KAAKg9D,eAAiB1X,GAGtBC,MAAAA,IAEAvlD,KAAKi9D,aAAe1X,GAGpB0gB,MAAAA,IAEAjmE,KAAK0lE,gBAAkBO,IAS/BC,gBAAiB,YAEblmE,KAAK0rC,gBAAkB1rC,MAClBg9D,eAAiB,KACtBh9D,KAAKi9D,aAAe,KACpBj9D,KAAK0lE,gBAAkB,MAW3BS,OAAQ,SAAUrB,GASd,OAPK9kE,KAAK2lE,MAAMb,KAEZ9kE,KAAK2lE,MAAMb,GAAW,IAAI/jE,EAAO8jE,IAAI7kE,KAAKsC,KAAMwiE,GAEhD9kE,KAAKomE,cAActB,IAGhB9kE,KAAK2lE,MAAMb,IAgBtBuB,QAAS,SAAUtyC,GAEf,IAAI8D,EAAS,GAEb,IAAK,IAAIvkB,KAAOygB,EAEZ8D,EAAOvkB,GAAOtT,KAAKmmE,OAAOpyC,EAAKzgB,IAGnC,OAAOukB,GASXyuC,UAAW,SAAUxB,GAEb9kE,KAAK2lE,MAAMb,KAEX9kE,KAAK2lE,MAAMb,GAAW,KAEtB9kE,KAAKumE,iBAAiBzB,KAU9B0B,iBAAkB,WAEd,OAAOxmE,KAAKqmE,QAAQ,CAAEI,GAAI1lE,EAAO2lE,QAAQp4C,GAAIkiC,KAAMzvD,EAAO2lE,QAAQn4C,KAAMiK,KAAMz3B,EAAO2lE,QAAQt4C,KAAM0H,MAAO/0B,EAAO2lE,QAAQr4C,SAW7HliB,MAAO,WAEH,GAAInM,KAAKsC,KAAKgqB,OAAOk1B,SAEjB,OAAO,EAGX,GAAIxhD,KAAKktC,OAGL,OAAO,EAGX,IAAI2B,EAAQ7uC,KAuBZ,OArBAA,KAAK6lE,WAAa,SAAUjzB,GAExB,OAAO/D,EAAMy2B,eAAe1yB,IAGhC5yC,KAAK+lE,SAAW,SAAUnzB,GAEtB,OAAO/D,EAAM02B,aAAa3yB,IAG9B5yC,KAAK8lE,YAAc,SAAUlzB,GAEzB,OAAO/D,EAAM83B,gBAAgB/zB,IAGjCziC,OAAO+iC,iBAAiB,UAAWlzC,KAAK6lE,YAAY,GACpD11D,OAAO+iC,iBAAiB,QAASlzC,KAAK+lE,UAAU,GAChD51D,OAAO+iC,iBAAiB,WAAYlzC,KAAK8lE,aAAa,GAEtD9lE,KAAKktC,QAAS,GAUlBlhC,KAAM,WAEFmE,OAAOgkC,oBAAoB,UAAWn0C,KAAK6lE,YAC3C11D,OAAOgkC,oBAAoB,QAASn0C,KAAK+lE,UACzC51D,OAAOgkC,oBAAoB,WAAYn0C,KAAK8lE,aAE5C9lE,KAAK6lE,WAAa,KAClB7lE,KAAK+lE,SAAW,KAChB/lE,KAAK8lE,YAAc,KAEnB9lE,KAAKktC,QAAS,GASlBnrC,QAAS,WAEL/B,KAAKgM,OAELhM,KAAK4mE,gBAEL5mE,KAAK2lE,MAAMzjE,OAAS,EACpBlC,KAAKwxC,GAAK,GAed40B,cAAe,SAAUtB,GAErB,GAAuB,iBAAZA,EAEP,IAAK,IAAIxxD,KAAOwxD,EAEZ9kE,KAAK4lE,SAASd,EAAQxxD,KAAQ,OAKlCtT,KAAK4lE,SAASd,IAAW,GAUjCyB,iBAAkB,SAAUzB,UAEjB9kE,KAAK4lE,SAASd,IAQzB8B,cAAe,WAEX5mE,KAAK4lE,SAAW,IAQpBr+B,OAAQ,WAIJ,IAFAvnC,KAAKwxC,GAAKxxC,KAAK2lE,MAAMzjE,OAEdlC,KAAKwxC,MAEJxxC,KAAK2lE,MAAM3lE,KAAKwxC,KAEhBxxC,KAAK2lE,MAAM3lE,KAAKwxC,IAAIjK,UAYhC+9B,eAAgB,SAAU1yB,GAItB,GAFA5yC,KAAK4yC,MAAQA,EAER5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,QAAtC,CAKA,IAAI/vC,EAAMs/B,EAAMqyB,QAGZjlE,KAAK4lE,SAAStyD,IAEds/B,EAAM+O,iBAGL3hD,KAAK2lE,MAAMryD,KAEZtT,KAAK2lE,MAAMryD,GAAO,IAAIvS,EAAO8jE,IAAI7kE,KAAKsC,KAAMgR,IAGhDtT,KAAK2lE,MAAMryD,GAAKgyD,eAAe1yB,GAE/B5yC,KAAKgmE,GAAK1yD,EAENtT,KAAKg9D,gBAELh9D,KAAKg9D,eAAej5D,KAAK/D,KAAK0rC,gBAAiBkH,KAWvD+zB,gBAAiB,SAAU/zB,GAEvB5yC,KAAKylE,WAAa7yB,EAEb5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,SAKlCrjD,KAAK0lE,iBAEL1lE,KAAK0lE,gBAAgB3hE,KAAK/D,KAAK0rC,gBAAiBm7B,OAAOC,aAAal0B,EAAMm0B,UAAWn0B,IAW7F2yB,aAAc,SAAU3yB,GAIpB,GAFA5yC,KAAK4yC,MAAQA,EAER5yC,KAAKsC,KAAKsmC,MAAMya,SAAYrjD,KAAKqjD,QAAtC,CAKA,IAAI/vC,EAAMs/B,EAAMqyB,QAEZjlE,KAAK4lE,SAAStyD,IAEds/B,EAAM+O,iBAGL3hD,KAAK2lE,MAAMryD,KAEZtT,KAAK2lE,MAAMryD,GAAO,IAAIvS,EAAO8jE,IAAI7kE,KAAKsC,KAAMgR,IAGhDtT,KAAK2lE,MAAMryD,GAAKiyD,aAAa3yB,GAEzB5yC,KAAKi9D,cAELj9D,KAAKi9D,aAAal5D,KAAK/D,KAAK0rC,gBAAiBkH,KAUrDpK,MAAO,SAAUof,QAEAxhD,IAATwhD,IAAsBA,GAAO,GAEjC5nD,KAAK4yC,MAAQ,KAIb,IAFA,IAAI3wC,EAAIjC,KAAK2lE,MAAMzjE,OAEZD,KAECjC,KAAK2lE,MAAM1jE,IAEXjC,KAAK2lE,MAAM1jE,GAAGumC,MAAMof,IAchCgP,aAAc,SAAUkO,EAAS7/B,GAE7B,OAAIjlC,KAAK2lE,MAAMb,GAEJ9kE,KAAK2lE,MAAMb,GAASlO,aAAa3xB,GAIjC,MAafugC,WAAY,SAAUV,EAAS7/B,GAE3B,OAAIjlC,KAAK2lE,MAAMb,GAEJ9kE,KAAK2lE,MAAMb,GAASU,WAAWvgC,GAI/B,MAIf+oB,YAAa,SAAU8W,GAEnB,OAAI9kE,KAAK2lE,MAAMb,GAEJ9kE,KAAK2lE,MAAMb,GAAS9W,cAIpB,MAIfC,aAAc,SAAU6W,GAEpB,OAAI9kE,KAAK2lE,MAAMb,GAEJ9kE,KAAK2lE,MAAMb,GAAS7W,eAIpB,MAWfb,OAAQ,SAAU0X,GAEd,OAAI9kE,KAAK2lE,MAAMb,GAEJ9kE,KAAK2lE,MAAMb,GAAS1X,OAIpB,OAYnBvmD,OAAOyF,eAAevL,EAAOgmD,SAASllD,UAAW,WAAY,CAEzDkF,IAAK,WAED,OAAI/G,KAAK4yC,OAAiC,KAAxB5yC,KAAK4yC,MAAMm0B,SAElB,GAEF/mE,KAAKylE,WAEHoB,OAAOC,aAAa9mE,KAAKylE,WAAWsB,UAIpC,QAYnBlgE,OAAOyF,eAAevL,EAAOgmD,SAASllD,UAAW,UAAW,CAExDkF,IAAK,WAED,OAAO/G,KAAK2lE,MAAM3lE,KAAKgmE,OAK/BjlE,EAAOgmD,SAASllD,UAAUC,YAAcf,EAAOgmD,SAiB/ChmD,EAAO2lE,QAAU,CAEbM,EAAG,IAAIC,WAAW,GAGlBC,EAAG,IAAID,WAAW,GAGlBE,EAAG,IAAIF,WAAW,GAGlBG,EAAG,IAAIH,WAAW,GAGlBI,EAAG,IAAIJ,WAAW,GAGlBp0C,EAAG,IAAIo0C,WAAW,GAGlBK,EAAG,IAAIL,WAAW,GAGlBM,EAAG,IAAIN,WAAW,GAGlBO,EAAG,IAAIP,WAAW,GAGlBQ,EAAG,IAAIR,WAAW,GAGlBS,EAAG,IAAIT,WAAW,GAGlBU,EAAG,IAAIV,WAAW,GAGlBW,EAAG,IAAIX,WAAW,GAGlBY,EAAG,IAAIZ,WAAW,GAGlBa,EAAG,IAAIb,WAAW,GAGlBc,EAAG,IAAId,WAAW,GAGlBe,EAAG,IAAIf,WAAW,GAGlBgB,EAAG,IAAIhB,WAAW,GAGlBiB,EAAG,IAAIjB,WAAW,GAGlBkB,EAAG,IAAIlB,WAAW,GAGlBmB,EAAG,IAAInB,WAAW,GAGlBoB,EAAG,IAAIpB,WAAW,GAGlBqB,EAAG,IAAIrB,WAAW,GAGlBsB,EAAG,IAAItB,WAAW,GAGlBuB,EAAG,IAAIvB,WAAW,GAGlBwB,EAAG,IAAIxB,WAAW,GAGlByB,KAAM,IAAIzB,WAAW,GAGrBzpD,IAAK,IAAIypD,WAAW,GAGpB0B,IAAK,IAAI1B,WAAW,GAGpB2B,MAAO,IAAI3B,WAAW,GAGtB4B,KAAM,IAAI5B,WAAW,GAGrB6B,KAAM,IAAI7B,WAAW,GAGrB8B,IAAK,IAAI9B,WAAW,GAGpB+B,MAAO,IAAI/B,WAAW,GAGtBgC,MAAO,IAAIhC,WAAW,GAGtBiC,KAAM,IAAIjC,WAAW,GAGrBkC,SAAU,GAGVC,SAAU,GAGVC,SAAU,GAGVC,SAAU,GAGVC,SAAU,IAGVC,SAAU,IAGVC,SAAU,IAGVC,SAAU,IAGVC,SAAU,IAGVC,SAAU,IAGVC,gBAAiB,IAGjBC,WAAY,IAGZC,aAAc,IAGdC,gBAAiB,IAGjBC,eAAgB,IAGhBC,cAAe,IAGfC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,GAAI,IAGJC,IAAK,IAGLC,IAAK,IAGLC,IAAK,IAGLC,IAAK,IAGLC,IAAK,IAGLC,IAAK,IAGLC,MAAO,IAGPC,OAAQ,IAGRC,MAAO,IAGPC,WAAY,IAGZC,OAAQ,IAGRC,cAAe,IAGfC,MAAO,IAGPC,aAAc,IAGdC,eAAgB,IAGhBC,eAAgB,IAGhBC,OAAQ,IAGRC,UAAW,EAGXC,IAAK,EAGLC,MAAO,GAGPC,MAAO,GAGPC,MAAO,GAGPC,QAAS,GAGTC,IAAK,GAGLC,UAAW,GAGXC,IAAK,GAGLC,SAAU,GAGVC,QAAS,GAGTC,UAAW,GAGXC,IAAK,GAGLC,KAAM,GAGNt+C,KAAM,GAGNE,GAAI,GAGJD,MAAO,GAGPE,KAAM,GAGNo+C,KAAM,GAGNC,MAAO,GAGPC,OAAQ,GAGRC,OAAQ,GAGRC,KAAM,GAGNC,SAAU,KAIEjsE,EAAO2lE,QAEf3lE,EAAO2lE,QAAQhzC,eAAepgB,KAASA,EAAI25D,MAAM,WAEjDlsE,EAAOgmD,SAASzzC,GAAOvS,EAAO2lE,QAAQpzD,IAynD9C,IAAK,IAAI45D,KA/mDTnsE,EAAOosE,UAAY,aAanBpsE,EAAOosE,UAAUC,MAAQ,aAEzBrsE,EAAOosE,UAAUC,MAAMvrE,UAAY,CAe/Bk2B,MAAO,CAEHhxB,IAAK,WAED,OAAOhG,EAAOkC,KAAKoqE,UAAUtsE,EAAOkC,KAAKm8B,SAASp/B,KAAKO,YAG3DyG,IAAK,SAAUC,GAEXjH,KAAKO,SAAWQ,EAAOkC,KAAK41B,SAAS93B,EAAOkC,KAAKoqE,UAAUpmE,OAkBvElG,EAAOosE,UAAUG,UAAY,aAE7BvsE,EAAOosE,UAAUG,UAAUzrE,UAAY,CAiBnC0rE,KAAM,SAAUl5C,EAAMm5C,EAAWC,EAAMC,GAEnC,GAAI1tE,KAAK2tE,WAEL,OAAO3tE,KAAK2tE,WAAWJ,KAAKl5C,EAAMm5C,EAAWC,EAAMC,KAkB/D3sE,EAAOosE,UAAUS,SAAW,aAE5B7sE,EAAOosE,UAAUS,SAAS/rE,UAAY,CAalCgsE,UAAU,EASVC,SAAU,CAEN/mE,IAAK,WASD,OAPK/G,KAAK6tE,UAAa7tE,KAAK+tE,mBAExB/tE,KAAKuB,QAAQi2B,SAASx3B,KAAK+J,aAC3B/J,KAAKuB,QAAQ+B,GAAKtD,KAAKsC,KAAKwZ,OAAO/D,KAAKzU,EACxCtD,KAAKuB,QAAQgC,GAAKvD,KAAKsC,KAAKwZ,OAAO/D,KAAKxU,GAGrCvD,KAAKsC,KAAKE,MAAMsZ,OAAO/D,KAAK6gB,WAAW54B,KAAKuB,YAkB/DR,EAAOosE,UAAUa,OAAS,aAE1BjtE,EAAOosE,UAAUa,OAAOnsE,UAAY,CAUhC+jB,QAAS,CAEL7e,IAAK,WAED,OAAO/G,KAAKwG,OAAOlD,EAAItD,KAAK0E,QAapCmhB,QAAS,CAEL9e,IAAK,WAED,OAAO/G,KAAKwG,OAAOjD,EAAIvD,KAAK2E,SAWpCs1B,QAAS,CAELlzB,IAAK,WAED,OAAQ/G,KAAKsD,EAAItD,KAAK4lB,QAAyB,GAAb5lB,KAAK0E,OAG3CsC,IAAK,SAAUC,GAEXjH,KAAKsD,EAAK2D,EAAQjH,KAAK4lB,QAAyB,GAAb5lB,KAAK0E,QAWhDw1B,QAAS,CAELnzB,IAAK,WAED,OAAQ/G,KAAKuD,EAAIvD,KAAK6lB,QAA0B,GAAd7lB,KAAK2E,QAG3CqC,IAAK,SAAUC,GAEXjH,KAAKuD,EAAK0D,EAAQjH,KAAK6lB,QAA0B,GAAd7lB,KAAK2E,SAWhD6zB,KAAM,CAEFzxB,IAAK,WAED,OAAO/G,KAAKsD,EAAItD,KAAK4lB,SAGzB5e,IAAK,SAAUC,GAEXjH,KAAKsD,EAAI2D,EAAQjH,KAAK4lB,UAW9BkQ,MAAO,CAEH/uB,IAAK,WAED,OAAQ/G,KAAKsD,EAAItD,KAAK0E,MAAS1E,KAAK4lB,SAGxC5e,IAAK,SAAUC,GAEXjH,KAAKsD,EAAI2D,EAASjH,KAAU,MAAIA,KAAK4lB,UAW7C6S,IAAK,CAED1xB,IAAK,WAED,OAAO/G,KAAKuD,EAAIvD,KAAK6lB,SAGzB7e,IAAK,SAAUC,GAEXjH,KAAKuD,EAAI0D,EAAQjH,KAAK6lB,UAW9B6S,OAAQ,CAEJ3xB,IAAK,WAED,OAAQ/G,KAAKuD,EAAIvD,KAAK2E,OAAU3E,KAAK6lB,SAGzC7e,IAAK,SAAUC,GAEXjH,KAAKuD,EAAI0D,EAASjH,KAAW,OAAIA,KAAK6lB,UA4C9C2xB,QAAS,SAAUy2B,EAAW9tE,EAAUylB,EAASC,GAK7C,YAHgBzf,IAAZwf,IAAyBA,EAAU,QACvBxf,IAAZyf,IAAyBA,EAAU,GAE/B1lB,GAEJ,QACA,KAAKY,EAAOmwB,SACRlxB,KAAKw4B,KAAOy1C,EAAUz1C,KAAO5S,EAC7B5lB,KAAKy4B,IAAMw1C,EAAUx1C,IAAM5S,EAC3B,MAEJ,KAAK9kB,EAAOowB,WACRnxB,KAAKi6B,QAAUg0C,EAAUh0C,QAAUrU,EACnC5lB,KAAKy4B,IAAMw1C,EAAUx1C,IAAM5S,EAC3B,MAEJ,KAAK9kB,EAAOqwB,UACRpxB,KAAK81B,MAAQm4C,EAAUn4C,MAAQlQ,EAC/B5lB,KAAKy4B,IAAMw1C,EAAUx1C,IAAM5S,EAC3B,MAEJ,KAAK9kB,EAAOuwB,YACRtxB,KAAKw4B,KAAOy1C,EAAUz1C,KAAO5S,EAC7B5lB,KAAKk6B,QAAU+zC,EAAU/zC,QAAUrU,EACnC,MAEJ,KAAK9kB,EAAOywB,OACRxxB,KAAKi6B,QAAUg0C,EAAUh0C,QAAUrU,EACnC5lB,KAAKk6B,QAAU+zC,EAAU/zC,QAAUrU,EACnC,MAEJ,KAAK9kB,EAAO2wB,aACR1xB,KAAK81B,MAAQm4C,EAAUn4C,MAAQlQ,EAC/B5lB,KAAKk6B,QAAU+zC,EAAU/zC,QAAUrU,EACnC,MAEJ,KAAK9kB,EAAO6wB,YACR5xB,KAAKw4B,KAAOy1C,EAAUz1C,KAAO5S,EAC7B5lB,KAAK04B,OAASu1C,EAAUv1C,OAAS7S,EACjC,MAEJ,KAAK9kB,EAAO8wB,cACR7xB,KAAKi6B,QAAUg0C,EAAUh0C,QAAUrU,EACnC5lB,KAAK04B,OAASu1C,EAAUv1C,OAAS7S,EACjC,MAEJ,KAAK9kB,EAAO+wB,aACR9xB,KAAK81B,MAAQm4C,EAAUn4C,MAAQlQ,EAC/B5lB,KAAK04B,OAASu1C,EAAUv1C,OAAS7S,EAIzC,OAAO7lB,MA2CXkuE,QAAS,SAAUttE,EAAQT,EAAUylB,EAASC,GAK1C,YAHgBzf,IAAZwf,IAAyBA,EAAU,QACvBxf,IAAZyf,IAAyBA,EAAU,GAE/B1lB,GAEJ,QACA,KAAKY,EAAOmwB,SACRlxB,KAAKw4B,KAAO53B,EAAO43B,KAAO5S,EAC1B5lB,KAAK04B,OAAS93B,EAAO63B,IAAM5S,EAC3B,MAEJ,KAAK9kB,EAAOowB,WACRnxB,KAAKi6B,QAAUr5B,EAAOq5B,QAAUrU,EAChC5lB,KAAK04B,OAAS93B,EAAO63B,IAAM5S,EAC3B,MAEJ,KAAK9kB,EAAOqwB,UACRpxB,KAAK81B,MAAQl1B,EAAOk1B,MAAQlQ,EAC5B5lB,KAAK04B,OAAS93B,EAAO63B,IAAM5S,EAC3B,MAEJ,KAAK9kB,EAAOswB,SACRrxB,KAAK81B,MAAQl1B,EAAO43B,KAAO5S,EAC3B5lB,KAAKy4B,IAAM73B,EAAO63B,IAAM5S,EACxB,MAEJ,KAAK9kB,EAAOuwB,YACRtxB,KAAK81B,MAAQl1B,EAAO43B,KAAO5S,EAC3B5lB,KAAKk6B,QAAUt5B,EAAOs5B,QAAUrU,EAChC,MAEJ,KAAK9kB,EAAOwwB,YACRvxB,KAAK81B,MAAQl1B,EAAO43B,KAAO5S,EAC3B5lB,KAAK04B,OAAS93B,EAAO83B,OAAS7S,EAC9B,MAEJ,KAAK9kB,EAAO0wB,UACRzxB,KAAKw4B,KAAO53B,EAAOk1B,MAAQlQ,EAC3B5lB,KAAKy4B,IAAM73B,EAAO63B,IAAM5S,EACxB,MAEJ,KAAK9kB,EAAO2wB,aACR1xB,KAAKw4B,KAAO53B,EAAOk1B,MAAQlQ,EAC3B5lB,KAAKk6B,QAAUt5B,EAAOs5B,QAAUrU,EAChC,MAEJ,KAAK9kB,EAAO4wB,aACR3xB,KAAKw4B,KAAO53B,EAAOk1B,MAAQlQ,EAC3B5lB,KAAK04B,OAAS93B,EAAO83B,OAAS7S,EAC9B,MAEJ,KAAK9kB,EAAO6wB,YACR5xB,KAAKw4B,KAAO53B,EAAO43B,KAAO5S,EAC1B5lB,KAAKy4B,IAAM73B,EAAO83B,OAAS7S,EAC3B,MAEJ,KAAK9kB,EAAO8wB,cACR7xB,KAAKi6B,QAAUr5B,EAAOq5B,QAAUrU,EAChC5lB,KAAKy4B,IAAM73B,EAAO83B,OAAS7S,EAC3B,MAEJ,KAAK9kB,EAAO+wB,aACR9xB,KAAK81B,MAAQl1B,EAAOk1B,MAAQlQ,EAC5B5lB,KAAKy4B,IAAM73B,EAAO83B,OAAS7S,EAInC,OAAO7lB,OAOfe,EAAOyzC,MAAM3yC,UAAU21C,QAAUz2C,EAAOosE,UAAUa,OAAOnsE,UAAU21C,QACnEz2C,EAAOyzC,MAAM3yC,UAAUqsE,QAAUntE,EAAOosE,UAAUa,OAAOnsE,UAAUqsE,QAanEntE,EAAOosE,UAAUgB,WAAa,aAY9BptE,EAAOosE,UAAUgB,WAAWtsE,UAAUi2C,WAAa,WAO/C,OALI93C,KAAKY,QAAUZ,KAAKY,OAAO2I,iBAE3BvJ,KAAKY,OAAO2I,gBAAgBvJ,MAGzBA,MAaXe,EAAOosE,UAAUgB,WAAWtsE,UAAUm2C,WAAa,WAO/C,OALIh4C,KAAKY,QAAUZ,KAAKY,OAAO4I,iBAE3BxJ,KAAKY,OAAO4I,gBAAgBxJ,MAGzBA,MAaXe,EAAOosE,UAAUgB,WAAWtsE,UAAUo2C,OAAS,WAO3C,OALIj4C,KAAKY,QAELZ,KAAKY,OAAOq3C,OAAOj4C,MAGhBA,MAaXe,EAAOosE,UAAUgB,WAAWtsE,UAAUq2C,SAAW,WAO7C,OALIl4C,KAAKY,QAELZ,KAAKY,OAAOs3C,SAASl4C,MAGlBA,MAcXe,EAAOosE,UAAUiB,KAAO,aAUxBrtE,EAAOosE,UAAUiB,KAAKC,QAAU,SAAUC,GAGtCvtE,EAAO8yB,MAAM0C,eAAev2B,KAAMe,EAAOosE,UAAUiB,KAAKvsE,WAExD7B,KAAKsuE,WAAa,GAElB,IAAK,IAAIrsE,EAAI,EAAGA,EAAIqsE,EAAWpsE,OAAQD,IACvC,CACI,IAAIwS,EAAK65D,EAAWrsE,GAChBw0B,GAAU,EAEH,YAAPhiB,IAEAgiB,GAAU,GAGd11B,EAAO8yB,MAAM0C,eAAev2B,KAAMe,EAAOosE,UAAU14D,GAAI5S,UAAW40B,GAElEz2B,KAAKsuE,WAAW75D,IAAM,IAY9B1T,EAAOosE,UAAUiB,KAAK18D,KAAO,SAAUpP,EAAMgB,EAAGC,EAAG+P,EAAKpG,GAEpDlN,KAAKsC,KAAOA,EACZtC,KAAKsT,IAAMA,EACXtT,KAAK2U,KAAO,GAEZ3U,KAAKG,SAAS6G,IAAI1D,EAAGC,GACrBvD,KAAKwC,MAAQ,IAAIzB,EAAOX,MAAMkD,EAAGC,GACjCvD,KAAKuuE,iBAAmB,IAAIxtE,EAAOX,MAAMkD,EAAGC,GAE5CvD,KAAK02C,OAAS,IAAI31C,EAAOytE,OAAOxuE,MAEhCA,KAAKuB,QAAU,IAAIR,EAAOS,UAEtBxB,KAAKsuE,WAAWG,cAIhBzuE,KAAKq0C,KAAOr0C,KAAKq0C,MAGjBr0C,KAAKsuE,WAAWhB,YAEhBttE,KAAK2tE,WAAa,IAAI5sE,EAAO2tE,iBAAiB1uE,OAG9CA,KAAKsuE,WAAWK,aAAuB,OAARr7D,GAE/BtT,KAAKu7C,YAAYjoC,EAAKpG,GAGtBlN,KAAKsuE,WAAWM,gBAEhB5uE,KAAK+1C,aAAe,IAAIh1C,EAAOX,MAAMkD,EAAGC,KAIhDxC,EAAOosE,UAAUiB,KAAKnqE,UAAY,WAE9B,OAAIjE,KAAKi1C,gBAELj1C,KAAK+B,WACE,IAGX/B,KAAKuuE,iBAAiBvnE,IAAIhH,KAAKwC,MAAMc,EAAGtD,KAAKwC,MAAMe,GACnDvD,KAAK6uE,iBAAmB7uE,KAAKO,SAExBP,KAAK+M,QAAW/M,KAAKY,OAAOmM,QAMjC/M,KAAKwC,MAAM+0B,MAAMv3B,KAAKsC,KAAKwZ,OAAOxY,EAAItD,KAAKc,eAAe+B,GAAI7C,KAAKsC,KAAKwZ,OAAOvY,EAAIvD,KAAKc,eAAegC,IAEnG9C,KAAKS,UAELT,KAAKq6C,cAAgBr6C,KAAKsC,KAAK8Y,MAAMw2B,wBAGrC5xC,KAAK2tE,YAEL3tE,KAAK2tE,WAAWpmC,SAGhBvnC,KAAKq0C,MAELr0C,KAAKq0C,KAAKpwC,YAGdjE,KAAK8uE,qBAEE,KAvBH9uE,KAAKq6C,eAAiB,KA0B9Bt5C,EAAOosE,UAAUiB,KAAKvsE,UAAY,CAM9BS,KAAM,KAQN+xB,KAAM,GAUN1f,KAAM,GAON25D,WAAY,GAUZp4D,EAAG,EAQHwgC,YAAQtwC,EAQRunE,gBAAYvnE,EAUZkN,IAAK,GAQL9Q,MAAO,KAOP8pC,OAAO,EAOPiiC,iBAAkB,KAOlBM,iBAAkB,EAQlBx0B,cAAe,EAQf00B,OAAO,EAWP95B,gBAAgB,EAMhB1zC,QAAS,KAMTytE,SAAS,EAaTjiE,OAAQ,CAEJhG,IAAK,WAED,OAAO/G,KAAKgvE,SAGhBhoE,IAAK,SAAUC,GAEPA,GAEAjH,KAAKgvE,SAAU,EAEXhvE,KAAKq0C,MAAQr0C,KAAKq0C,KAAKtgC,OAAShT,EAAO6zC,QAAQq6B,MAE/CjvE,KAAKq0C,KAAK1D,aAGd3wC,KAAKS,SAAU,IAIfT,KAAKgvE,SAAU,EAEXhvE,KAAKq0C,MAAQr0C,KAAKq0C,KAAKtgC,OAAShT,EAAO6zC,QAAQq6B,MAE/CjvE,KAAKq0C,KAAK66B,kBAGdlvE,KAAKS,SAAU,KAY3BquE,kBAAmB,WAKf,IAFA,IAAI7sE,EAAI,EAEDA,EAAIjC,KAAKgC,SAASE,QACzB,CACI,IAAIqG,EAAQvI,KAAKgC,SAASC,GAE1BsG,EAAMtE,YAEFjE,OAASuI,EAAM3H,QAEfqB,MAYZslC,OAAQ,aAWR+B,WAAY,WAEJtpC,KAAKmvE,cAELnvE,KAAKsT,IAAIzO,SAGT7E,KAAKsuE,WAAWG,aAEhB1tE,EAAOosE,UAAUsB,YAAYnlC,WAAWvlC,KAAK/D,MAG7CA,KAAKsuE,WAAWM,eAEhB7tE,EAAOosE,UAAUyB,cAActlC,WAAWvlC,KAAK/D,MAGnD,IAAK,IAAIiC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGqnC,eAkB7BvoC,EAAOosE,UAAUiC,KAAO,aAExBruE,EAAOosE,UAAUiC,KAAKvtE,UAAY,CAS9BwtE,SAAU,KAMVC,MAAO,KAmBP7hE,KAAM,SAAUuvB,EAAM7G,QAEL/vB,IAAT+vB,IAAsBA,GAAO,GAE7B6G,GAEI7G,GAA0B,OAAlBn2B,KAAKqvE,SAEbrvE,KAAKqvE,SAAS93C,MAAMyF,EAAK15B,EAAG05B,EAAKz5B,EAAGy5B,EAAKt4B,MAAOs4B,EAAKr4B,QAEhDwxB,GAA0B,OAAlBn2B,KAAKqvE,SAElBrvE,KAAKqvE,SAAW,IAAItuE,EAAOS,UAAUw7B,EAAK15B,EAAG05B,EAAKz5B,EAAGy5B,EAAKt4B,MAAOs4B,EAAKr4B,QAItE3E,KAAKqvE,SAAWryC,EAGpBh9B,KAAKuvE,eAILvvE,KAAKsvE,MAAQ,KACbtvE,KAAKqvE,SAAW,KAEhBrvE,KAAKwvE,eAUbD,WAAY,WAER,GAAKvvE,KAAKqvE,SAAV,CAKA,IAAII,EAAOzvE,KAAK8F,QAAQ2H,KAAKnK,EACzBosE,EAAO1vE,KAAK8F,QAAQ2H,KAAKlK,EACzBosE,EAAO3vE,KAAK8F,QAAQ2H,KAAK/I,MACzBkrE,EAAO5vE,KAAK8F,QAAQ2H,KAAK9I,OAE7B3E,KAAKsvE,MAAQvuE,EAAOS,UAAU60B,MAAMr2B,KAAKqvE,SAAUrvE,KAAKsvE,OACxDtvE,KAAKsvE,MAAMhsE,GAAKtD,KAAK6vE,OAAOvsE,EAC5BtD,KAAKsvE,MAAM/rE,GAAKvD,KAAK6vE,OAAOtsE,EAE5B,IAAI0L,EAAKhM,KAAK2C,IAAI5F,KAAK6vE,OAAOvsE,EAAGtD,KAAKsvE,MAAMhsE,GACxC4L,EAAKjM,KAAK2C,IAAI5F,KAAK6vE,OAAOtsE,EAAGvD,KAAKsvE,MAAM/rE,GACxCgL,EAAKtL,KAAKy4B,IAAI17B,KAAK6vE,OAAO/5C,MAAO91B,KAAKsvE,MAAMx5C,OAAS7mB,EACrDT,EAAKvL,KAAKy4B,IAAI17B,KAAK6vE,OAAOn3C,OAAQ14B,KAAKsvE,MAAM52C,QAAUxpB,EAE3DlP,KAAK8F,QAAQ2H,KAAKnK,EAAI2L,EACtBjP,KAAK8F,QAAQ2H,KAAKlK,EAAI2L,EACtBlP,KAAK8F,QAAQ2H,KAAK/I,MAAQ6J,EAC1BvO,KAAK8F,QAAQ2H,KAAK9I,OAAS6J,EAE3BxO,KAAK8F,QAAQoH,MAAMxI,MAAQzB,KAAKy4B,IAAIntB,EAAIvO,KAAKqvE,SAAS3qE,OACtD1E,KAAK8F,QAAQoH,MAAMvI,OAAS1B,KAAKy4B,IAAIltB,EAAIxO,KAAKqvE,SAAS1qE,QAEvD3E,KAAK8F,QAAQpB,MAAQ1E,KAAK8F,QAAQoH,MAAMxI,MACxC1E,KAAK8F,QAAQnB,OAAS3E,KAAK8F,QAAQoH,MAAMvI,OAEzC3E,KAAK8F,QAAQwnB,aAEK,WAAdttB,KAAK4M,MAAsB6iE,IAASxgE,GAAMygE,IAASxgE,GAAMygE,IAASphE,GAAMqhE,IAASphE,IAEjFxO,KAAK8F,QAAQ+I,gBAAiB,MAiB1C9N,EAAOosE,UAAU2C,MAAQ,aAEzB/uE,EAAOosE,UAAU2C,MAAMjuE,UAAY,CAU/BkuE,OAAQ,CAEJhpE,IAAK,WAED,OAAO/G,KAAKwC,MAAMc,EAAItD,KAAKuuE,iBAAiBjrE,IAapDooD,OAAQ,CAEJ3kD,IAAK,WAED,OAAO/G,KAAKwC,MAAMe,EAAIvD,KAAKuuE,iBAAiBhrE,IAWpDysE,OAAQ,CAEJjpE,IAAK,WAED,OAAO/G,KAAKO,SAAWP,KAAK6uE,oBAkBxC9tE,EAAOosE,UAAU8C,QAAU,aAE3BlvE,EAAOosE,UAAU8C,QAAQpuE,UAAY,CAQjC06C,cAAc,EAedx6C,QAAS,SAAU+6C,EAAiBJ,GAEhC,GAAkB,OAAd18C,KAAKsC,OAAiBtC,KAAKu8C,aAA/B,MAEwBn2C,IAApB02C,IAAiCA,GAAkB,QAChC12C,IAAnBs2C,IAAgCA,GAAiB,GAErD18C,KAAKu8C,cAAe,EAEhBv8C,KAAK02C,QAEL12C,KAAK02C,OAAOw5B,mBAAmBlwE,MAG/BA,KAAKY,SAEDZ,KAAKY,kBAAkBG,EAAOyzC,MAE9Bx0C,KAAKY,OAAOyc,OAAOrd,MAInBA,KAAKY,OAAO8H,YAAY1I,OAI5BA,KAAK4oC,OAEL5oC,KAAK4oC,MAAM7mC,UAGX/B,KAAK2tE,YAEL3tE,KAAK2tE,WAAW5rE,UAGhB/B,KAAKq0C,MAELr0C,KAAKq0C,KAAKtyC,UAGV/B,KAAK02C,QAEL12C,KAAK02C,OAAO30C,UAGhB/B,KAAKsC,KAAK0mC,OAAOmnC,WAAWnwE,MAE5B,IAAIiC,EAAIjC,KAAKgC,SAASE,OAEtB,GAAI46C,EAEA,KAAO76C,KAEHjC,KAAKgC,SAASC,GAAGF,QAAQ+6C,QAK7B,KAAO76C,KAEHjC,KAAK0I,YAAY1I,KAAKgC,SAASC,IAInCjC,KAAKsvE,QAELtvE,KAAKsvE,MAAQ,KACbtvE,KAAKqvE,SAAW,MAGhBrvE,KAAK6vE,SAEL7vE,KAAK6vE,OAAS,MAGd9uE,EAAOqvE,OAASpwE,KAAKsT,eAAevS,EAAOqvE,OAE3CpwE,KAAKsT,IAAI+8D,eAAehzD,OAAOrd,KAAKswE,YAAatwE,MAGjDe,EAAOwvE,YAAcvwE,KAAKwwE,UAE1BxwE,KAAKwwE,QAAU,IAGnBxwE,KAAK+0C,OAAQ,EACb/0C,KAAK+M,QAAS,EACd/M,KAAKS,SAAU,EAEfT,KAAKuG,QAAU,KACfvG,KAAKoH,KAAO,KACZpH,KAAKsC,KAAO,KAEZtC,KAAK2U,KAAO,GAGZ3U,KAAKW,YAAa,EAEdX,KAAK8D,oBAEL9D,KAAK8D,kBAAoB,KACzB9D,KAAKgE,yBAA2B,MAIpChE,KAAKU,QAAU,KACfV,KAAKY,OAAS,KACdZ,KAAKob,MAAQ,KACbpb,KAAKc,eAAiB,KACtBd,KAAKoB,WAAa,KAClBpB,KAAKuB,QAAU,KACfvB,KAAKyB,eAAiB,KACtBzB,KAAK0B,MAAQ,KAEb1B,KAAKmC,uBACLnC,KAAKoC,wBAGDs6C,GAEA18C,KAAK8F,QAAQ/D,SAAQ,GAGzB/B,KAAKu8C,cAAe,EACpBv8C,KAAKi1C,gBAAiB,KAkC9Bl0C,EAAOytE,OAAS,SAAUhqD,GAKtBxkB,KAAKY,OAAS4jB,GAKlBzjB,EAAOytE,OAAO3sE,UAAY,CAOtBE,QAAS,WAEL/B,KAAKywE,QAAU,KAEXzwE,KAAK0wE,YAAc1wE,KAAK0wE,WAAW9hC,UACnC5uC,KAAK2wE,iBAAmB3wE,KAAK2wE,gBAAgB/hC,UAC7C5uC,KAAK4wE,qBAAuB5wE,KAAK4wE,oBAAoBhiC,UACrD5uC,KAAK6wE,WAAa7wE,KAAK6wE,UAAUjiC,UACjC5uC,KAAK8wE,YAAc9wE,KAAK8wE,WAAWliC,UACnC5uC,KAAK+wE,gBAAkB/wE,KAAK+wE,eAAeniC,UAC3C5uC,KAAKgxE,gBAAkBhxE,KAAKgxE,eAAepiC,UAE3C5uC,KAAKixE,cAAgBjxE,KAAKixE,aAAariC,UACvC5uC,KAAKkxE,aAAelxE,KAAKkxE,YAAYtiC,UACrC5uC,KAAKmxE,cAAgBnxE,KAAKmxE,aAAaviC,UACvC5uC,KAAKoxE,YAAcpxE,KAAKoxE,WAAWxiC,UACnC5uC,KAAKqxE,cAAgBrxE,KAAKqxE,aAAaziC,UACvC5uC,KAAKsxE,eAAiBtxE,KAAKsxE,cAAc1iC,UACzC5uC,KAAKuxE,aAAevxE,KAAKuxE,YAAY3iC,UAErC5uC,KAAKwxE,mBAAqBxxE,KAAKwxE,kBAAkB5iC,UACjD5uC,KAAKyxE,sBAAwBzxE,KAAKyxE,qBAAqB7iC,UACvD5uC,KAAK0xE,kBAAoB1xE,KAAK0xE,iBAAiB9iC,WAcvDioB,eAAgB,KAWhBE,mBAAoB,KAWpBnhB,UAAW,KAYX+7B,SAAU,KAWVC,UAAW,KAWXC,cAAe,KAWfC,cAAe,KAYfC,YAAa,KAYbC,WAAY,KAaZC,YAAa,KAcbC,UAAW,KAeXC,YAAa,KAiBb1Y,aAAc,KAYd2Y,WAAY,KAaZC,iBAAkB,KAalBC,oBAAqB,KAarBC,gBAAiB,MAIrBxxE,EAAOytE,OAAO3sE,UAAUC,YAAcf,EAAOytE,OAO5BztE,EAAOytE,OAAO3sE,UAEtBd,EAAOytE,OAAO3sE,UAAU6xB,eAAew5C,IACjB,IAAvBA,EAAKhkE,QAAQ,OACqB,OAAlCnI,EAAOytE,OAAO3sE,UAAUqrE,IAK5B,SAAWA,EAAMsF,GAEb,aAGA3rE,OAAOyF,eAAevL,EAAOytE,OAAO3sE,UAAWqrE,EAAM,CACjDnmE,IAAK,WAED,OAAO/G,KAAKwyE,KAAaxyE,KAAKwyE,GAAW,IAAIzxE,EAAO0jC,WAK5D1jC,EAAOytE,OAAO3sE,UAAUqrE,EAAO,aAAe,WAE1C,OAAOltE,KAAKwyE,GAAWxyE,KAAKwyE,GAAS3qC,SAAS5iC,MAAMjF,KAAKwyE,GAAUhgD,WAAa,MAfxF,CAiBG06C,EAAM,IAAMA,GAenBnsE,EAAOosE,UAAUyB,cAAgB,aAQjC7tE,EAAOosE,UAAUyB,cAActlC,WAAa,WAEpCtpC,KAAK81C,gBAEL91C,KAAKG,SAASmD,GAAKtD,KAAKsC,KAAKwZ,OAAO/D,KAAKzU,EAAItD,KAAK+1C,aAAazyC,GAAKtD,KAAKsC,KAAKwZ,OAAOzb,MAAMiD,EAC3FtD,KAAKG,SAASoD,GAAKvD,KAAKsC,KAAKwZ,OAAO/D,KAAKxU,EAAIvD,KAAK+1C,aAAaxyC,GAAKvD,KAAKsC,KAAKwZ,OAAOzb,MAAMkD,IAInGxC,EAAOosE,UAAUyB,cAAc/sE,UAAY,CAMvC4wE,gBAAgB,EAkBhB38B,cAAe,CAEX/uC,IAAK,WAED,OAAO/G,KAAKyyE,gBAGhBzrE,IAAK,SAAUC,GAEPA,GAEAjH,KAAKyyE,gBAAiB,EACtBzyE,KAAK+1C,aAAa/uC,IAAIhH,KAAKsD,EAAGtD,KAAKuD,IAInCvD,KAAKyyE,gBAAiB,IAYlC18B,aAAc,IAAIh1C,EAAOX,OAiB7BW,EAAOosE,UAAUuF,OAAS,aAE1B3xE,EAAOosE,UAAUuF,OAAO7wE,UAAY,CAUhC8wE,OAAQ,EASRC,UAAW,IAWXC,OAAQ,SAAU15B,GAYd,OAVIn5C,KAAK+0C,QAEL/0C,KAAK2yE,QAAUx5B,EAEXn5C,KAAK2yE,QAAU,GAEf3yE,KAAKu5C,QAINv5C,MAWX8yE,UAAW,SAAU35B,GASjB,OAPAn5C,KAAK2yE,OAASx5B,EAEVn5C,KAAK2yE,OAAS3yE,KAAK4yE,YAEnB5yE,KAAK2yE,OAAS3yE,KAAK4yE,WAGhB5yE,MAUX+yE,KAAM,SAAU55B,GAYZ,OAVIn5C,KAAK+0C,QAEL/0C,KAAK2yE,QAAUx5B,EAEXn5C,KAAK2yE,OAAS3yE,KAAK4yE,YAEnB5yE,KAAK2yE,OAAS3yE,KAAK4yE,YAIpB5yE,OAgBfe,EAAOosE,UAAU6F,SAAW,aAE5BjyE,EAAOosE,UAAU6F,SAASnxE,UAAY,CAYlCisE,SAAU,CAEN/mE,IAAK,WAED,OAAO/G,KAAKsC,KAAKE,MAAMsZ,OAAO/D,KAAK6gB,WAAW54B,KAAKuB,YAkB/DR,EAAOosE,UAAU8F,aAAe,aAEhClyE,EAAOosE,UAAU8F,aAAapxE,UAAY,CAUtC+mC,MAAO,KAkBP6N,aAAc,CAEV1vC,IAAK,WAED,OAAQ/G,KAAK4oC,OAAS5oC,KAAK4oC,MAAMya,SAGrCr8C,IAAK,SAAUC,GAEPA,EAEmB,OAAfjH,KAAK4oC,OAEL5oC,KAAK4oC,MAAQ,IAAI7nC,EAAOozD,aAAan0D,MACrCA,KAAK4oC,MAAMz8B,SAENnM,KAAK4oC,QAAU5oC,KAAK4oC,MAAMya,SAE/BrjD,KAAK4oC,MAAMz8B,QAIfnM,KAAK4oC,OAAS5oC,KAAK4oC,MAAMya,SAEzBrjD,KAAK4oC,MAAM58B,UAqB3BjL,EAAOosE,UAAU+F,QAAU,aAQ3BnyE,EAAOosE,UAAU+F,QAAQjvE,UAAY,WAEjC,GAAIjE,KAAKi1C,eAGL,OADAj1C,KAAK+B,WACE,EAIX,GAAI/B,KAAK6tE,UAAY7tE,KAAK+tE,iBAC1B,CAMI,GALA/tE,KAAKuB,QAAQi2B,SAASx3B,KAAK+J,aAE3B/J,KAAKuB,QAAQ+B,GAAKtD,KAAKsC,KAAKwZ,OAAO/D,KAAKzU,EACxCtD,KAAKuB,QAAQgC,GAAKvD,KAAKsC,KAAKwZ,OAAO/D,KAAKxU,EAEpCvD,KAAK6tE,SAGL,GAAI7tE,KAAKsC,KAAKE,MAAMsZ,OAAO/D,KAAK6gB,WAAW54B,KAAKuB,SAE5CvB,KAAKW,YAAa,EAClBX,KAAKsC,KAAKE,MAAMsZ,OAAOwoB,mBAMvB,GAFAtkC,KAAKW,YAAa,EAEdX,KAAKmzE,sBAGL,OADAnzE,KAAKu5C,QACE,EAKnB,GAAIv5C,KAAK+tE,iBAGL,GAAI/tE,KAAKozE,mBAAqBpzE,KAAKsC,KAAKE,MAAM8B,OAAOs0B,WAAW54B,KAAKuB,SAEjEvB,KAAKozE,mBAAoB,EACzBpzE,KAAK02C,OAAO28B,uBAAuBrzE,WAElC,IAAKA,KAAKozE,oBAAsBpzE,KAAKsC,KAAKE,MAAM8B,OAAOs0B,WAAW54B,KAAKuB,WAGxEvB,KAAKozE,mBAAoB,EACzBpzE,KAAK02C,OAAO48B,uBAAuBtzE,MAE/BA,KAAKuzE,iBAGL,OADAvzE,KAAKu5C,QACE,EAMvB,OAAO,GAGXx4C,EAAOosE,UAAU+F,QAAQrxE,UAAY,CAmBjCksE,kBAAkB,EAQlBwF,iBAAiB,EASjBJ,uBAAuB,EAMvBC,mBAAmB,EAQnBI,QAAS,CAELzsE,IAAK,WAED,OAAO/G,KAAKsC,KAAKE,MAAM8B,OAAOs0B,WAAW54B,KAAK+J,gBAkB1DhJ,EAAOosE,UAAUsG,SAAW,aAQ5B1yE,EAAOosE,UAAUsG,SAASxvE,UAAY,WAElC,OAAIjE,KAAKi1C,gBAELj1C,KAAK+B,WACE,KAGS,EAAhB/B,KAAK0zE,WAEL1zE,KAAK0zE,UAAY1zE,KAAKsC,KAAKqlC,KAAKC,MAE5B5nC,KAAK0zE,UAAY,MAEjB1zE,KAAKu5C,QACE,IAOnBx4C,EAAOosE,UAAUsG,SAAS5xE,UAAY,CAalCkzC,OAAO,EAeP2+B,SAAU,EAaVh6B,OAAQ,SAAUi5B,GAkBd,YAhBevsE,IAAXusE,IAAwBA,EAAS,KAErC3yE,KAAK+0C,OAAQ,EACb/0C,KAAK+M,QAAS,EACd/M,KAAKS,SAAU,EAEe,mBAAnBT,KAAK8yE,WAEZ9yE,KAAK8yE,UAAUH,GAGf3yE,KAAK02C,QAEL12C,KAAK02C,OAAOi9B,mBAAmB3zE,MAG5BA,MAgBXu5C,KAAM,WAWF,OATAv5C,KAAK+0C,OAAQ,EACb/0C,KAAK+M,QAAS,EACd/M,KAAKS,SAAU,EAEXT,KAAK02C,QAEL12C,KAAK02C,OAAOk9B,kBAAkB5zE,MAG3BA,OAgBfe,EAAOosE,UAAUwB,YAAc,aAE/B5tE,EAAOosE,UAAUwB,YAAY9sE,UAAY,CAMrCstE,cAAc,EAMdU,OAAQ,KAyBRt0B,YAAa,SAAUjoC,EAAKpG,EAAO2mE,GAK3B3mE,EAHAoG,IAAQvS,EAAOsvB,eAEf/c,EAAMpG,EACE,GAIAA,GAAS,GAGhB2mE,QAAmCztE,IAAlBytE,IAAgC7zE,KAAK2tE,YAEvD3tE,KAAK2tE,WAAW3hE,OAGpBhM,KAAKsT,IAAMA,EACXtT,KAAKmvE,cAAe,EACpB,IAAIr0D,EAAQ9a,KAAKsC,KAAKwY,MAElBsS,GAAW,EACXq0B,EAAWzhD,KAAK8F,QAAQG,YAAY7B,YAAcnE,KAAK+N,WAAWC,OAEtE,GAAIlN,EAAO0D,eAAiB6O,aAAevS,EAAO0D,cAE9CzE,KAAKsT,IAAMA,EAAIA,IACftT,KAAKmN,WAAWmG,QAEf,GAAIvS,EAAO+yE,YAAcxgE,aAAevS,EAAO+yE,WAEhD9zE,KAAKmvE,cAAe,EAEpBnvE,KAAKmN,WAAWmG,EAAIxN,SAIhBsnB,EAFAtS,EAAMi5D,aAAazgE,EAAIA,IAAKvS,EAAO+vC,MAAMzhB,aAE7BrvB,KAAK2tE,WAAWqG,cAAcl5D,EAAMm5D,aAAa3gE,EAAIA,IAAKvS,EAAO+vC,MAAMzhB,YAAaniB,IAIpFlN,KAAK2tE,WAAWqG,cAAc1gE,EAAI4gE,UAAW,QAG5D,GAAInzE,EAAOqvE,OAAS98D,aAAevS,EAAOqvE,MAC/C,CACIpwE,KAAKmvE,cAAe,EAGpB,IAAI7hE,EAAQgG,EAAIxN,QAAQwH,MACxBtN,KAAKmN,WAAWmG,EAAIxN,SACpB9F,KAAKotB,SAAS9Z,EAAIxN,QAAQoH,MAAMmpB,SAChC/iB,EAAI+8D,eAAeh1C,IAAIr7B,KAAKswE,YAAatwE,MACzCA,KAAK8F,QAAQwH,MAAQA,OAEpB,GAAIvM,EAAOozE,SAAW7gE,aAAevS,EAAOqzE,aAI7Cp0E,KAAKmN,WAAWlN,KAAKyM,QAAQqgB,WAAWzZ,EAAI0E,cAE3C,GAAI1E,aAAerT,KAAKyM,QAEzB+0C,EAAWnuC,EAAIrN,YAAY7B,YAAcnE,KAAK+N,WAAWC,OAEzDjO,KAAKmN,WAAWmG,OAGpB,CACI,IAAI+gE,EAAMv5D,EAAMw5D,SAAShhE,GAAK,GAE9BtT,KAAKsT,IAAM+gE,EAAI/gE,IACftT,KAAKmN,WAAW,IAAIlN,KAAKyM,QAAQ2nE,EAAIn5D,OAIjClb,KAAK8F,QAAQG,YAAYoH,WAFjB,cAARiG,EASJ8Z,GAAYptB,KAAK2tE,WAAWqG,cAAcK,EAAIH,UAAWhnE,GAGzDkgB,IAEAptB,KAAK6vE,OAAS9uE,EAAOS,UAAU60B,MAAMr2B,KAAK8F,QAAQoH,QAGjDu0C,IAEDzhD,KAAK8F,QAAQG,YAAY7B,UAAY,IAY7CgpB,SAAU,SAAUlgB,GAEhBlN,KAAK6vE,OAAS3iE,EAEdlN,KAAK8F,QAAQoH,MAAM5J,EAAI4J,EAAM5J,EAC7BtD,KAAK8F,QAAQoH,MAAM3J,EAAI2J,EAAM3J,EAC7BvD,KAAK8F,QAAQoH,MAAMxI,MAAQwI,EAAMxI,MACjC1E,KAAK8F,QAAQoH,MAAMvI,OAASuI,EAAMvI,OAElC3E,KAAK8F,QAAQ2H,KAAKnK,EAAI4J,EAAM5J,EAC5BtD,KAAK8F,QAAQ2H,KAAKlK,EAAI2J,EAAM3J,EAC5BvD,KAAK8F,QAAQ2H,KAAK/I,MAAQwI,EAAMxI,MAChC1E,KAAK8F,QAAQ2H,KAAK9I,OAASuI,EAAMvI,OAE7BuI,EAAMqnE,SAEFv0E,KAAK8F,QAAQqI,MAEbnO,KAAK8F,QAAQqI,KAAK7K,EAAI4J,EAAMsnE,kBAC5Bx0E,KAAK8F,QAAQqI,KAAK5K,EAAI2J,EAAMunE,kBAC5Bz0E,KAAK8F,QAAQqI,KAAKzJ,MAAQwI,EAAMwnE,YAChC10E,KAAK8F,QAAQqI,KAAKxJ,OAASuI,EAAMynE,aAIjC30E,KAAK8F,QAAQqI,KAAO,CAAE7K,EAAG4J,EAAMsnE,kBAAmBjxE,EAAG2J,EAAMunE,kBAAmB/vE,MAAOwI,EAAMwnE,YAAa/vE,OAAQuI,EAAMynE,aAG1H30E,KAAK8F,QAAQpB,MAAQwI,EAAMwnE,YAC3B10E,KAAK8F,QAAQnB,OAASuI,EAAMynE,YAC5B30E,KAAK8F,QAAQoH,MAAMxI,MAAQwI,EAAMwnE,YACjC10E,KAAK8F,QAAQoH,MAAMvI,OAASuI,EAAMynE,cAE5BznE,EAAMqnE,SAAWv0E,KAAK8F,QAAQqI,OAEpCnO,KAAK8F,QAAQqI,KAAO,MAGpBjB,EAAMuB,UAENzO,KAAK8F,QAAQ2I,SAAU,GAGvBzO,KAAKqvE,UAELrvE,KAAKuvE,aAGTvvE,KAAK8F,QAAQ+I,gBAAiB,EAE9B7O,KAAK8F,QAAQwnB,aAETttB,KAAKulB,gBAELvlB,KAAK40E,gBAAiB,IAe9BtE,YAAa,SAAU1vE,EAAQ8D,EAAOC,GAElC3E,KAAK8F,QAAQoH,MAAMnH,OAAOrB,EAAOC,GACjC3E,KAAK8F,QAAQsnB,SAASptB,KAAK8F,QAAQoH,QAQvCsiE,WAAY,WAEJxvE,KAAK6vE,QAEL7vE,KAAKotB,SAASptB,KAAK6vE,SAiB3B3iE,MAAO,CAEHnG,IAAK,WAED,OAAO/G,KAAK2tE,WAAWzgE,OAG3BlG,IAAK,SAAUC,GAEXjH,KAAK2tE,WAAWzgE,MAAQjG,IAkBhC4tE,UAAW,CAEP9tE,IAAK,WAED,OAAO/G,KAAK2tE,WAAWkH,WAG3B7tE,IAAK,SAAUC,GAEXjH,KAAK2tE,WAAWkH,UAAY5tE,KAkBxClG,EAAOosE,UAAU2H,QAAU,aAE3B/zE,EAAOosE,UAAU2H,QAAQjzE,UAAY,CAejCkzE,QAAS,SAAU74D,GAEf,OAAOnb,EAAOS,UAAUo3B,WAAW54B,KAAK+J,YAAamS,EAAcnS,eAiB3EhJ,EAAOosE,UAAUsB,YAAc,aAQ/B1tE,EAAOosE,UAAUsB,YAAYxqE,UAAY,WAErC,OAAIjE,KAAKi1C,gBAELj1C,KAAK+B,WACE,GAGP/B,KAAK+uE,OAAS/uE,KAAK+M,QAEnB/M,KAAKwC,MAAM+0B,MAAMv3B,KAAKY,OAAOT,SAASmD,EAAItD,KAAKG,SAASmD,EAAGtD,KAAKY,OAAOT,SAASoD,EAAIvD,KAAKG,SAASoD,GAClGvD,KAAKc,eAAe+B,GAAK7C,KAAKwC,MAAMc,EACpCtD,KAAKc,eAAegC,GAAK9C,KAAKwC,MAAMe,EAEpCvD,KAAKuuE,iBAAiBvnE,IAAIhH,KAAKwC,MAAMc,EAAGtD,KAAKwC,MAAMe,GACnDvD,KAAK6uE,iBAAmB7uE,KAAKO,SAEzBP,KAAKq0C,MAELr0C,KAAKq0C,KAAKpwC,YAGdjE,KAAK+uE,OAAQ,EAEb/uE,KAAK8uE,qBAEE,IAGX9uE,KAAKuuE,iBAAiBvnE,IAAIhH,KAAKwC,MAAMc,EAAGtD,KAAKwC,MAAMe,GACnDvD,KAAK6uE,iBAAmB7uE,KAAKO,YAExBP,KAAKgvE,UAAYhvE,KAAKY,OAAOmM,WAE9B/M,KAAKq6C,eAAiB,KAa9Bt5C,EAAOosE,UAAUsB,YAAYnlC,WAAa,WAElCtpC,KAAK+M,QAAU/M,KAAKq0C,MAEpBr0C,KAAKq0C,KAAK/K,cAIlBvoC,EAAOosE,UAAUsB,YAAY5sE,UAAY,CAqBrCwyC,KAAM,KAON/wC,EAAG,CAECyD,IAAK,WAED,OAAO/G,KAAKG,SAASmD,GAGzB0D,IAAK,SAAUC,GAEXjH,KAAKG,SAASmD,EAAI2D,EAEdjH,KAAKq0C,OAASr0C,KAAKq0C,KAAK7iC,QAExBxR,KAAKq0C,KAAK2gC,QAAS,KAW/BzxE,EAAG,CAECwD,IAAK,WAED,OAAO/G,KAAKG,SAASoD,GAGzByD,IAAK,SAAUC,GAEXjH,KAAKG,SAASoD,EAAI0D,EAEdjH,KAAKq0C,OAASr0C,KAAKq0C,KAAK7iC,QAExBxR,KAAKq0C,KAAK2gC,QAAS,MAmBnCj0E,EAAOosE,UAAU8H,MAAQ,aAkBzBl0E,EAAOosE,UAAU8H,MAAMpzE,UAAU2mC,MAAQ,SAAUllC,EAAGC,EAAGovE,GA+BrD,YA7BevsE,IAAXusE,IAAwBA,EAAS,GAErC3yE,KAAKwC,MAAMwE,IAAI1D,EAAGC,GAClBvD,KAAKG,SAAS6G,IAAI1D,EAAGC,GAErBvD,KAAK+uE,OAAQ,EACb/uE,KAAK+M,QAAS,EACd/M,KAAKS,SAAU,EACfT,KAAKW,YAAa,EAEdX,KAAKsuE,WAAW4E,UAEhBlzE,KAAKozE,mBAAoB,GAGzBpzE,KAAKsuE,WAAWmF,WAEhBzzE,KAAK+0C,OAAQ,EACb/0C,KAAK2yE,OAASA,GAGd3yE,KAAKsuE,WAAWG,aAEZzuE,KAAKq0C,MAELr0C,KAAKq0C,KAAK7L,MAAMllC,EAAGC,GAAG,GAAO,GAI9BvD,MAcXe,EAAOosE,UAAU+H,YAAc,aAE/Bn0E,EAAOosE,UAAU+H,YAAYrzE,UAAY,CAMrCiC,kBAAmB,KAMnBE,yBAA0BhE,KAU1Bm1E,SAAU,KAUVC,SAAU,KASVC,eAAgB,SAAUryE,GAElBhD,KAAKm1E,WAEDnyE,EAAGP,EAAIzC,KAAKm1E,SAAS7xE,IAErBN,EAAGP,EAAIzC,KAAKm1E,SAAS7xE,GAGrBN,EAAGJ,EAAI5C,KAAKm1E,SAAS5xE,IAErBP,EAAGJ,EAAI5C,KAAKm1E,SAAS5xE,IAIzBvD,KAAKo1E,WAEDpyE,EAAGP,EAAIzC,KAAKo1E,SAAS9xE,IAErBN,EAAGP,EAAIzC,KAAKo1E,SAAS9xE,GAGrBN,EAAGJ,EAAI5C,KAAKo1E,SAAS7xE,IAErBP,EAAGJ,EAAI5C,KAAKo1E,SAAS7xE,KA8BjC+xE,eAAgB,SAAU7qE,EAAME,EAAMC,EAAMC,QAE3BzE,IAATuE,EAGAA,EAAOC,EAAOC,EAAOJ,OAEPrE,IAATwE,IAGLA,EAAOC,EAAOF,EACdA,EAAOF,GAGE,OAATA,EAEAzK,KAAKm1E,SAAW,KAGhBn1E,KAAKm1E,SAELn1E,KAAKm1E,SAASnuE,IAAIyD,EAAME,GAIxB3K,KAAKm1E,SAAW,IAAIp0E,EAAOX,MAAMqK,EAAME,GAG9B,OAATC,EAEA5K,KAAKo1E,SAAW,KAGhBp1E,KAAKo1E,SAELp1E,KAAKo1E,SAASpuE,IAAI4D,EAAMC,GAIxB7K,KAAKo1E,SAAW,IAAIr0E,EAAOX,MAAMwK,EAAMC,GAGrB,OAAlB7K,KAAKm1E,SAELn1E,KAAK8D,kBAAoB,MAIzB9D,KAAK8D,kBAAoB9D,KAAKq1E,eAC9Br1E,KAAKgE,yBAA2BhE,QAiB5Ce,EAAOosE,UAAUoI,SAAW,aAE5Bx0E,EAAOosE,UAAUoI,SAAS1zE,UAAY,CAWlC4/C,SAAU,CAEN16C,IAAK,WAED,OAAQ/G,KAAK8F,QAAQG,YAAY7B,WAGrC4C,IAAK,SAAUC,GAEPA,EAEIjH,KAAK8F,SAEsC,IAAvC9F,KAAK8F,QAAQG,YAAY7B,YAEzBpE,KAAK8F,QAAQG,YAAY7B,UAAY,EACrCpE,KAAK8F,QAAQG,YAAYuL,SAI5BxR,KAAK8F,SAEiC,IAAvC9F,KAAK8F,QAAQG,YAAY7B,YAEzBpE,KAAK8F,QAAQG,YAAY7B,UAAY,EACrCpE,KAAK8F,QAAQG,YAAYuL,YAyB7CzQ,EAAO0+C,kBAAoB,SAAUn9C,GAMjCtC,KAAKsC,KAAOA,EAMZtC,KAAKwC,MAAQxC,KAAKsC,KAAKE,OAG3BzB,EAAO0+C,kBAAkB59C,UAAY,CASjC2zE,SAAU,SAAU75B,GAEhB,OAAO37C,KAAKwC,MAAM64B,IAAIsgB,IAwB1B85B,OAAQ,SAAUx+B,EAAU3jC,EAAKpG,EAAOuvC,EAAOi5B,GAE3C,IAAID,EAASz1E,KAAKsC,KAAKgvC,QAAQjW,IAAIt6B,EAAO40E,QAS1C,OAPID,IAEAD,EAAOC,YAAcA,GAGzBD,EAAOG,cAAc3+B,EAAU3jC,EAAKpG,EAAOuvC,GAEpCg5B,GAmBXz6D,MAAO,SAAU1X,EAAGC,EAAG+P,EAAKpG,EAAOuvC,GAI/B,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAO80E,MAAM71E,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,KAkB5DsX,OAAQ,SAAUlhB,EAAGC,EAAG+P,EAAKpG,EAAOuvC,GAIhC,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAO0E,OAAOzF,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,KA2B7D4oE,SAAU,SAAUxyE,EAAGC,EAAG+P,EAAKyiE,EAAMt5B,EAAOu5B,EAAWC,QAErC7vE,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAExC,IAAI4xB,EAAM,IAAIrzB,EAAO6nD,SAAS5oD,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKyiE,EAAMC,EAAWC,GAIrE,OAFAx5B,EAAMphB,IAAIjH,GAEHA,GAYX8hD,MAAO,SAAUv6B,GAEb,OAAO37C,KAAKsC,KAAK0mC,OAAO3gC,OAAOszC,IAcnCc,MAAO,SAAU77C,EAAQyzB,EAAMogB,EAAYC,EAAYC,GAEnD,OAAO,IAAI5zC,EAAOyzC,MAAMx0C,KAAKsC,KAAM1B,EAAQyzB,EAAMogB,EAAYC,EAAYC,IAgB7EwhC,aAAc,SAAUxhC,EAAiB/zC,EAAQyzB,EAAMogB,GAEnD,OAAO,IAAI1zC,EAAOyzC,MAAMx0C,KAAKsC,KAAM1B,EAAQyzB,EAAMogB,GAAY,EAAME,IAcvE/oC,YAAa,SAAUhL,EAAQyzB,EAAMogB,GAMjC,YAJeruC,IAAXxF,IAAwBA,EAAS,WACxBwF,IAATiuB,IAAsBA,EAAO,cACdjuB,IAAfquC,IAA4BA,GAAa,GAEtC,IAAI1zC,EAAOq1E,YAAYp2E,KAAKsC,KAAM1B,EAAQyzB,EAAMogB,IAa3D4hC,MAAO,SAAU/iE,EAAKqwB,EAAQ8pC,EAAMvP,GAEhC,OAAOl+D,KAAKsC,KAAKwmC,MAAMzN,IAAI/nB,EAAKqwB,EAAQ8pC,EAAMvP,IAalDp1B,MAAO,SAAUx1B,EAAKqwB,EAAQ8pC,EAAMvP,GAEhC,OAAOl+D,KAAKsC,KAAKwmC,MAAMzN,IAAI/nB,EAAKqwB,EAAQ8pC,EAAMvP,IAUlDoY,YAAa,SAAUhjE,GAEnB,OAAOtT,KAAKsC,KAAKwmC,MAAMytC,UAAUjjE,IAgBrCkjE,WAAY,SAAUlzE,EAAGC,EAAGmB,EAAOC,EAAQ2O,EAAKpG,EAAOuvC,GAInD,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAO8nD,WAAW7oD,KAAKsC,KAAMgB,EAAGC,EAAGmB,EAAOC,EAAQ2O,EAAKpG,KAiBhFupE,KAAM,SAAUnzE,EAAGC,EAAG+P,EAAKpG,EAAOwzB,EAAQ+b,GAItC,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAO21E,KAAK12E,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,EAAOwzB,KAclEi2C,KAAM,SAAUrzE,EAAGC,EAAGozE,EAAMp6D,EAAOkgC,GAI/B,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAO61E,KAAK52E,KAAKsC,KAAMgB,EAAGC,EAAGozE,EAAMp6D,KAmB5D4xC,OAAQ,SAAU7qD,EAAGC,EAAG+P,EAAK4jC,EAAUxL,EAAiBmrC,EAAWC,EAAUC,EAAWC,EAASv6B,GAI7F,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAOk2E,OAAOj3E,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAK4jC,EAAUxL,EAAiBmrC,EAAWC,EAAUC,EAAWC,KAYxHt3D,SAAU,SAAUpc,EAAGC,EAAGk5C,GAItB,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAOqlC,SAASpmC,KAAKsC,KAAMgB,EAAGC,KAgBvD2zE,QAAS,SAAU5zE,EAAGC,EAAG4zE,GAErB,OAAOn3E,KAAKsC,KAAK2mC,UAAU5N,IAAI,IAAIt6B,EAAOi/C,UAAUo3B,OAAOC,QAAQr3E,KAAKsC,KAAMgB,EAAGC,EAAG4zE,KAyBxFG,UAAW,SAAUC,EAAMC,EAAgBC,EAAiBC,EAAOC,EAAaC,EAAUC,EAAUC,EAASC,GAEzG,OAAO,IAAIh3E,EAAOi3E,UAAUh4E,KAAKsC,KAAMi1E,EAAMC,EAAgBC,EAAiBC,EAAOC,EAAaC,EAAUC,EAAUC,EAASC,IA+BnIE,WAAY,SAAU30E,EAAGC,EAAGg0E,EAAMZ,EAAM3zD,EAAMy5B,GAI1C,YAFcr2C,IAAVq2C,IAAuBA,EAAQz8C,KAAKwC,OAEjCi6C,EAAMphB,IAAI,IAAIt6B,EAAOwvE,WAAWvwE,KAAKsC,KAAMgB,EAAGC,EAAGg0E,EAAMZ,EAAM3zD,KAoBxEk1D,QAAS,SAAU5kE,EAAK6kE,EAAWC,EAAY1zE,EAAOC,GAElD,OAAO,IAAI5D,EAAOozE,QAAQn0E,KAAKsC,KAAMgR,EAAK6kE,EAAWC,EAAY1zE,EAAOC,IAa5EH,cAAe,SAAUE,EAAOC,EAAQ2O,EAAK+kE,QAE7BjyE,IAARkN,GAA6B,KAARA,IAAcA,EAAMtT,KAAKsC,KAAKwlC,IAAIwwC,aACxClyE,IAAfiyE,IAA4BA,GAAa,GAE7C,IAAIvyE,EAAU,IAAI/E,EAAO0D,cAAczE,KAAKsC,KAAMoC,EAAOC,EAAQ2O,GAOjE,OALI+kE,GAEAr4E,KAAKsC,KAAKwY,MAAMy9D,iBAAiBjlE,EAAKxN,GAGnCA,GAaX0yE,MAAO,SAAUllE,EAAKmlE,GAElB,OAAO,IAAI13E,EAAOqvE,MAAMpwE,KAAKsC,KAAMgR,EAAKmlE,IAe5CC,WAAY,SAAUh0E,EAAOC,EAAQ2O,EAAK+kE,QAEnBjyE,IAAfiyE,IAA4BA,GAAa,QACjCjyE,IAARkN,GAA6B,KAARA,IAAcA,EAAMtT,KAAKsC,KAAKwlC,IAAIwwC,QAE3D,IAAIxyE,EAAU,IAAI/E,EAAO+yE,WAAW9zE,KAAKsC,KAAMgR,EAAK5O,EAAOC,GAO3D,OALI0zE,GAEAr4E,KAAKsC,KAAKwY,MAAM69D,cAAcrlE,EAAKxN,GAGhCA,GAWX0hB,OAAQ,SAAUA,GAEd,IAAImL,EAAOrrB,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,GAMjD,OAJIhL,EAAS,IAAIzmB,EAAOmjB,OAAOsD,GAAQxnB,KAAKsC,OAErCoP,KAAKzM,MAAMuiB,EAAQmL,GAEnBnL,GAaXiqB,OAAQ,WAEJ,OAAOzxC,KAAKsC,KAAKgvC,QAAQjW,IAAIp2B,MAAMjF,KAAKsC,KAAKgvC,QAAS9e,aAK9DzxB,EAAO0+C,kBAAkB59C,UAAUC,YAAcf,EAAO0+C,kBAgBxD1+C,EAAO2+C,kBAAoB,SAAUp9C,GAMjCtC,KAAKsC,KAAOA,EAMZtC,KAAKwC,MAAQxC,KAAKsC,KAAKE,OAG3BzB,EAAO2+C,kBAAkB79C,UAAY,CAejCmZ,MAAO,SAAU1X,EAAGC,EAAG+P,EAAKpG,GAExB,OAAO,IAAInM,EAAO80E,MAAM71E,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,IAalDsX,OAAQ,SAAUlhB,EAAGC,EAAG+P,EAAKpG,GAEzB,OAAO,IAAInM,EAAO0E,OAAOzF,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,IAYnDgpE,MAAO,SAAU9hD,GAEb,OAAO,IAAIrzB,EAAO63E,MAAMxkD,EAAKp0B,KAAKsC,KAAMtC,KAAKsC,KAAK0mC,SActDyT,MAAO,SAAU77C,EAAQyzB,EAAMogB,EAAYC,EAAYC,GAEnD,OAAO,IAAI5zC,EAAOyzC,MAAMx0C,KAAKsC,KAAM1B,GAAU,KAAMyzB,EAAMogB,EAAYC,EAAYC,IAYrF/oC,YAAa,SAAUhL,EAAQyzB,EAAMogB,GAKjC,YAHaruC,IAATiuB,IAAsBA,EAAO,cACdjuB,IAAfquC,IAA4BA,GAAa,GAEtC,IAAI1zC,EAAOq1E,YAAYp2E,KAAKsC,KAAM1B,EAAQyzB,EAAMogB,IAa3D4hC,MAAO,SAAU/iE,EAAKqwB,EAAQ8pC,EAAMvP,GAEhC,OAAOl+D,KAAKsC,KAAKwmC,MAAMzN,IAAI/nB,EAAKqwB,EAAQ8pC,EAAMvP,IAUlDoY,YAAa,SAAUhjE,GAEnB,OAAOtT,KAAKsC,KAAKwmC,MAAMytC,UAAUjjE,IAarCw1B,MAAO,SAAUx1B,EAAKqwB,EAAQ8pC,EAAMvP,GAEhC,OAAOl+D,KAAKsC,KAAKwmC,MAAMzN,IAAI/nB,EAAKqwB,EAAQ8pC,EAAMvP,IAelDsY,WAAY,SAAUlzE,EAAGC,EAAGmB,EAAOC,EAAQ2O,EAAKpG,GAE5C,OAAO,IAAInM,EAAO8nD,WAAW7oD,KAAKsC,KAAMgB,EAAGC,EAAGmB,EAAOC,EAAQ2O,EAAKpG,IAetEupE,KAAM,SAAUnzE,EAAGC,EAAG+P,EAAKpG,EAAOwzB,GAE9B,OAAO,IAAI3/B,EAAO21E,KAAK12E,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAKpG,EAAOwzB,IAaxDi2C,KAAM,SAAUrzE,EAAGC,EAAGozE,EAAMp6D,GAExB,OAAO,IAAIxb,EAAO61E,KAAK52E,KAAKsC,KAAMgB,EAAGC,EAAGozE,EAAMp6D,IAkBlD4xC,OAAQ,SAAU7qD,EAAGC,EAAG+P,EAAK4jC,EAAUxL,EAAiBmrC,EAAWC,EAAUC,EAAWC,GAEpF,OAAO,IAAIj2E,EAAOk2E,OAAOj3E,KAAKsC,KAAMgB,EAAGC,EAAG+P,EAAK4jC,EAAUxL,EAAiBmrC,EAAWC,EAAUC,EAAWC,IAW9Gt3D,SAAU,SAAUpc,EAAGC,GAEnB,OAAO,IAAIxC,EAAOqlC,SAASpmC,KAAKsC,KAAMgB,EAAGC,IAgB7C2zE,QAAS,SAAU5zE,EAAGC,EAAG4zE,GAErB,OAAO,IAAIp2E,EAAOi/C,UAAUo3B,OAAOC,QAAQr3E,KAAKsC,KAAMgB,EAAGC,EAAG4zE,IAyBhEG,UAAW,SAAUC,EAAMC,EAAgBC,EAAiBC,EAAOC,EAAaC,EAAUC,EAAUC,EAASC,GAEzG,OAAO,IAAIh3E,EAAOi3E,UAAUh4E,KAAKsC,KAAMi1E,EAAMC,EAAgBC,EAAiBC,EAAOC,EAAaC,EAAUC,EAAUC,EAASC,IA+BnIE,WAAY,SAAU30E,EAAGC,EAAGg0E,EAAMZ,EAAM3zD,EAAMq0B,GAE1C,OAAO,IAAIt2C,EAAOwvE,WAAWvwE,KAAKsC,KAAMgB,EAAGC,EAAGg0E,EAAMZ,EAAM3zD,EAAMq0B,IAmBpE6gC,QAAS,SAAU5kE,EAAK6kE,EAAWC,EAAY1zE,EAAOC,GAElD,OAAO,IAAI5D,EAAOozE,QAAQn0E,KAAKsC,KAAMgR,EAAK6kE,EAAWC,EAAY1zE,EAAOC,IAa5EH,cAAe,SAAUE,EAAOC,EAAQ2O,EAAK+kE,QAE7BjyE,IAARkN,GAA6B,KAARA,IAAcA,EAAMtT,KAAKsC,KAAKwlC,IAAIwwC,aACxClyE,IAAfiyE,IAA4BA,GAAa,GAE7C,IAAIvyE,EAAU,IAAI/E,EAAO0D,cAAczE,KAAKsC,KAAMoC,EAAOC,EAAQ2O,GAOjE,OALI+kE,GAEAr4E,KAAKsC,KAAKwY,MAAMy9D,iBAAiBjlE,EAAKxN,GAGnCA,GAeX4yE,WAAY,SAAUh0E,EAAOC,EAAQ2O,EAAK+kE,QAEnBjyE,IAAfiyE,IAA4BA,GAAa,QACjCjyE,IAARkN,GAA6B,KAARA,IAAcA,EAAMtT,KAAKsC,KAAKwlC,IAAIwwC,QAE3D,IAAIxyE,EAAU,IAAI/E,EAAO+yE,WAAW9zE,KAAKsC,KAAMgR,EAAK5O,EAAOC,GAO3D,OALI0zE,GAEAr4E,KAAKsC,KAAKwY,MAAM69D,cAAcrlE,EAAKxN,GAGhCA,GAWX0hB,OAAQ,SAAUA,GAEd,IAAImL,EAAOrrB,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,GAMjD,OAJIhL,EAAS,IAAIzmB,EAAOmjB,OAAOsD,GAAQxnB,KAAKsC,OAErCoP,KAAKzM,MAAMuiB,EAAQmL,GAEnBnL,IAKfzmB,EAAO2+C,kBAAkB79C,UAAUC,YAAcf,EAAO2+C,kBA6CxD3+C,EAAO0E,OAAS,SAAUnD,EAAMgB,EAAGC,EAAG+P,EAAKpG,GAEvC5J,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACT+P,EAAMA,GAAO,KACbpG,EAAQA,GAAS,KAMjBlN,KAAK+T,KAAOhT,EAAOytB,OAMnBxuB,KAAK80C,YAAc/zC,EAAOytB,OAE1BvuB,KAAKwF,OAAO1B,KAAK/D,KAAMe,EAAO+vC,MAAM/mB,SAEpChpB,EAAOosE,UAAUiB,KAAK18D,KAAK3N,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG+P,EAAKpG,IAG3DnM,EAAO0E,OAAO5D,UAAYgF,OAAOwB,OAAOpI,KAAKwF,OAAO5D,WACpDd,EAAO0E,OAAO5D,UAAUC,YAAcf,EAAO0E,OAE7C1E,EAAOosE,UAAUiB,KAAKC,QAAQtqE,KAAKhD,EAAO0E,OAAO5D,UAAW,CACxD,QACA,YACA,WACA,SACA,aACA,OACA,QACA,UACA,gBACA,SACA,WACA,eACA,UACA,WACA,cACA,UACA,cACA,QACA,cACA,aAGJd,EAAO0E,OAAO5D,UAAUg3E,iBAAmB93E,EAAOosE,UAAUsB,YAAYxqE,UACxElD,EAAO0E,OAAO5D,UAAUi3E,kBAAoB/3E,EAAOosE,UAAUsG,SAASxvE,UACtElD,EAAO0E,OAAO5D,UAAUk3E,iBAAmBh4E,EAAOosE,UAAU+F,QAAQjvE,UACpElD,EAAO0E,OAAO5D,UAAUm3E,cAAgBj4E,EAAOosE,UAAUiB,KAAKnqE,UAS9DlD,EAAO0E,OAAO5D,UAAUoC,UAAY,WAEhC,SAAKjE,KAAK64E,oBAAuB74E,KAAK84E,qBAAwB94E,KAAK+4E,qBAK5D/4E,KAAKg5E,iBAuChBj4E,EAAO80E,MAAQ,SAAUvzE,EAAMgB,EAAGC,EAAG+P,EAAKpG,GAEtC5J,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACT+P,EAAMA,GAAO,KACbpG,EAAQA,GAAS,KAMjBlN,KAAK+T,KAAOhT,EAAO2tB,MAEnBzuB,KAAKwF,OAAO1B,KAAK/D,KAAMe,EAAO+vC,MAAM/mB,SAEpChpB,EAAOosE,UAAUiB,KAAK18D,KAAK3N,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG+P,EAAKpG,IAG3DnM,EAAO80E,MAAMh0E,UAAYgF,OAAOwB,OAAOpI,KAAKwF,OAAO5D,WACnDd,EAAO80E,MAAMh0E,UAAUC,YAAcf,EAAO80E,MAE5C90E,EAAOosE,UAAUiB,KAAKC,QAAQtqE,KAAKhD,EAAO80E,MAAMh0E,UAAW,CACvD,QACA,YACA,WACA,SACA,aACA,OACA,UACA,gBACA,eACA,WACA,cACA,UACA,QACA,cACA,aAGJd,EAAO80E,MAAMh0E,UAAUi3E,kBAAoB/3E,EAAOosE,UAAUsG,SAASxvE,UACrElD,EAAO80E,MAAMh0E,UAAUk3E,iBAAmBh4E,EAAOosE,UAAU+F,QAAQjvE,UACnElD,EAAO80E,MAAMh0E,UAAUm3E,cAAgBj4E,EAAOosE,UAAUiB,KAAKnqE,UAQ7DlD,EAAO80E,MAAMh0E,UAAUoC,UAAY,WAE/B,SAAKjE,KAAK+4E,qBAAuB/4E,KAAK84E,sBAK/B94E,KAAKg5E,iBAqChBj4E,EAAOk2E,OAAS,SAAU30E,EAAMgB,EAAGC,EAAG+P,EAAK4jC,EAAUxL,EAAiBmrC,EAAWC,EAAUC,EAAWC,GAElG1zE,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACT+P,EAAMA,GAAO,KACb4jC,EAAWA,GAAY,KACvBxL,EAAkBA,GAAmB1rC,KAErCe,EAAO80E,MAAM9xE,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG+P,EAAKwjE,GAOzC92E,KAAK+T,KAAOhT,EAAO0tB,OAMnBzuB,KAAK80C,YAAc/zC,EAAOytB,OAO1BxuB,KAAKi5E,aAAe,KAOpBj5E,KAAKk5E,YAAc,KAOnBl5E,KAAKm5E,aAAe,KAOpBn5E,KAAKo5E,WAAa,KAOlBp5E,KAAKq5E,YAAc,KAOnBr5E,KAAKs5E,WAAa,KAOlBt5E,KAAKu5E,YAAc,KAOnBv5E,KAAKw5E,UAAY,KAOjBx5E,KAAKy5E,kBAAoB,GAOzBz5E,KAAK05E,iBAAmB,GAOxB15E,KAAK25E,kBAAoB,GAOzB35E,KAAK45E,gBAAkB,GAOvB55E,KAAK+xE,YAAc,IAAIhxE,EAAO0jC,OAO9BzkC,KAAKgyE,WAAa,IAAIjxE,EAAO0jC,OAO7BzkC,KAAKiyE,YAAc,IAAIlxE,EAAO0jC,OAO9BzkC,KAAKkyE,UAAY,IAAInxE,EAAO0jC,OAS5BzkC,KAAK65E,iBAAkB,EASvB75E,KAAK85E,yBAA2B/4E,EAAOslD,YAAYsB,QAOnD3nD,KAAK+5E,cAAe,EAUpB/5E,KAAKg6E,UAAW,EAEhBh6E,KAAKy2C,cAAe,EAEpBz2C,KAAK4oC,MAAMz8B,MAAM,GAAG,GAEpBnM,KAAK4oC,MAAMwrB,eAAgB,EAE3Bp0D,KAAKi6E,UAAUpD,EAAWC,EAAUC,EAAWC,GAE9B,OAAb9/B,GAEAl3C,KAAKkyE,UAAU72C,IAAI6b,EAAUxL,GAIjC1rC,KAAK02C,OAAOq7B,YAAY12C,IAAIr7B,KAAKk6E,mBAAoBl6E,MACrDA,KAAK02C,OAAOs7B,WAAW32C,IAAIr7B,KAAKm6E,kBAAmBn6E,MACnDA,KAAK02C,OAAOu7B,YAAY52C,IAAIr7B,KAAKo6E,mBAAoBp6E,MACrDA,KAAK02C,OAAOw7B,UAAU72C,IAAIr7B,KAAKq6E,iBAAkBr6E,OAGrDe,EAAOk2E,OAAOp1E,UAAYgF,OAAOwB,OAAOtH,EAAO80E,MAAMh0E,WACrDd,EAAOk2E,OAAOp1E,UAAUC,YAAcf,EAAOk2E,OAG7C,IAAIqD,EAAa,OACbC,EAAY,MACZC,EAAa,OACbC,EAAW,KAuivCX,OAhivCJ15E,EAAOk2E,OAAOp1E,UAAU64E,YAAc,WAElC16E,KAAKi6E,UAAU,KAAM,KAAM,KAAM,OAYrCl5E,EAAOk2E,OAAOp1E,UAAU84E,cAAgB,SAAU5xC,EAAO77B,EAAO0tE,GAE5D,IAAIC,EAAW,MAAQ9xC,EAAQ,QAEjB,OAAV77B,GAEAlN,KAAK66E,GAAY3tE,EAEb0tE,GAEA56E,KAAK86E,iBAAiB/xC,IAK1B/oC,KAAK66E,GAAY,MAYzB95E,EAAOk2E,OAAOp1E,UAAUi5E,iBAAmB,SAAU/xC,GAEjD,GAAI/oC,KAAK+5E,aAEL,OAAO,EAGX,IACI7sE,EAAQlN,KADG,MAAQ+oC,EAAQ,SAG/B,MAAqB,iBAAV77B,GAEPlN,KAAK60E,UAAY3nE,GACV,GAEe,iBAAVA,IAEZlN,KAAKkN,MAAQA,GACN,IAoBfnM,EAAOk2E,OAAOp1E,UAAUo4E,UAAY,SAAUpD,EAAWC,EAAUC,EAAWC,GAE1Eh3E,KAAK26E,cAAcL,EAAYzD,EAAW72E,KAAK4oC,MAAM+uB,eACrD33D,KAAK26E,cAAcJ,EAAWzD,GAAW92E,KAAK4oC,MAAM+uB,eACpD33D,KAAK26E,cAAcH,EAAYzD,EAAW/2E,KAAK4oC,MAAM2uB,eACrDv3D,KAAK26E,cAAcF,EAAUzD,EAASh3E,KAAK4oC,MAAM4uB,cAYrDz2D,EAAOk2E,OAAOp1E,UAAUk5E,cAAgB,SAAUhyC,EAAOD,EAAOkyC,GAE5D,IAAIC,EAAW,KAAOlyC,EAAQ,QAC1BmyC,EAAY,KAAOnyC,EAAQ,cAE3BD,aAAiB/nC,EAAOo6E,OAASryC,aAAiB/nC,EAAOq6E,aAEzDp7E,KAAKi7E,GAAYnyC,EACjB9oC,KAAKk7E,GAA+B,iBAAXF,EAAsBA,EAAS,KAIxDh7E,KAAKi7E,GAAY,KACjBj7E,KAAKk7E,GAAa,KAY1Bn6E,EAAOk2E,OAAOp1E,UAAUw5E,eAAiB,SAAUtyC,GAE/C,IACID,EAAQ9oC,KADG,KAAO+oC,EAAQ,SAG9B,GAAID,EACJ,CACI,IACIkyC,EAASh7E,KADG,KAAO+oC,EAAQ,eAI/B,OADAD,EAAMykC,KAAKyN,IACJ,EAIP,OAAO,GAqBfj6E,EAAOk2E,OAAOp1E,UAAUy5E,UAAY,SAAUC,EAAWC,EAAYC,EAAWC,EAAYC,EAAUC,EAAWC,EAASC,GAEtH97E,KAAK+6E,cAAcT,EAAYiB,EAAWC,GAC1Cx7E,KAAK+6E,cAAcR,EAAWoB,EAAUC,GACxC57E,KAAK+6E,cAAcP,EAAYiB,EAAWC,GAC1C17E,KAAK+6E,cAAcN,EAAUoB,EAASC,IAW1C/6E,EAAOk2E,OAAOp1E,UAAUk6E,aAAe,SAAUjzC,EAAOkyC,GAEpDh7E,KAAK+6E,cAAcT,EAAYxxC,EAAOkyC,IAW1Cj6E,EAAOk2E,OAAOp1E,UAAUm6E,YAAc,SAAUlzC,EAAOkyC,GAEnDh7E,KAAK+6E,cAAcR,EAAWzxC,EAAOkyC,IAWzCj6E,EAAOk2E,OAAOp1E,UAAUo6E,aAAe,SAAUnzC,EAAOkyC,GAEpDh7E,KAAK+6E,cAAcP,EAAY1xC,EAAOkyC,IAW1Cj6E,EAAOk2E,OAAOp1E,UAAUq6E,WAAa,SAAUpzC,EAAOkyC,GAElDh7E,KAAK+6E,cAAcN,EAAU3xC,EAAOkyC,IAWxCj6E,EAAOk2E,OAAOp1E,UAAUq4E,mBAAqB,SAAU11D,EAAQgsB,GAEvDA,EAAQyd,iBACPjuD,KAAK85E,yBAA2BtpC,EAAQ0d,eAAiB1d,EAAQ0d,cAMtEluD,KAAK86E,iBAAiBR,GAElBt6E,KAAK65E,kBAAoBrpC,EAAQif,UAKrCzvD,KAAKq7E,eAAef,GAEhBt6E,KAAK+xE,aAEL/xE,KAAK+xE,YAAYlqC,SAAS7nC,KAAMwwC,MAYxCzvC,EAAOk2E,OAAOp1E,UAAUs4E,kBAAoB,SAAU31D,EAAQgsB,GAE1DxwC,KAAK86E,iBAAiBP,GAEtBv6E,KAAKq7E,eAAed,GAEhBv6E,KAAKgyE,YAELhyE,KAAKgyE,WAAWnqC,SAAS7nC,KAAMwwC,IAYvCzvC,EAAOk2E,OAAOp1E,UAAUu4E,mBAAqB,SAAU51D,EAAQgsB,GAE3DxwC,KAAK86E,iBAAiBN,GAEtBx6E,KAAKq7E,eAAeb,GAEhBx6E,KAAKiyE,aAELjyE,KAAKiyE,YAAYpqC,SAAS7nC,KAAMwwC,IAaxCzvC,EAAOk2E,OAAOp1E,UAAUw4E,iBAAmB,SAAU71D,EAAQgsB,EAASgmB,IAElEx2D,KAAKq7E,eAAeZ,GAGhBz6E,KAAKkyE,WAELlyE,KAAKkyE,UAAUrqC,SAAS7nC,KAAMwwC,EAASgmB,GAGvCx2D,KAAK+5E,iBAKa,IAAlB/5E,KAAKg6E,WAAsBh6E,KAAKg6E,SAAWxpC,EAAQ0d,eAAiB1d,EAAQ0d,YAE5EluD,KAAK86E,iBAAiBP,GAINv6E,KAAK86E,iBAAiBL,KAI9BjkB,EAEAx2D,KAAK86E,iBAAiBR,GAItBt6E,KAAK86E,iBAAiBP,MA4BtCx5E,EAAOq1E,YAAc,SAAU9zE,EAAM1B,EAAQyzB,EAAMogB,GAE3C7zC,MAAAA,IAA2CA,EAAS0B,EAAKE,OAE7DzB,EAAOyzC,MAAMzwC,KAAK/D,KAAMsC,EAAM1B,EAAQyzB,EAAMogB,GAM5Cz0C,KAAK+T,KAAOhT,EAAO0uB,YAMnBzvB,KAAKm8E,gBAAkB,KAMvBn8E,KAAKo8E,OAAQ,GAGjBr7E,EAAOq1E,YAAYv0E,UAAYgF,OAAOwB,OAAOtH,EAAOyzC,MAAM3yC,WAE1Dd,EAAOq1E,YAAYv0E,UAAUC,YAAcf,EAAOq1E,YAUlDr1E,EAAOq1E,YAAYv0E,UAAU6D,aAAe,SAAUJ,IAE7CtF,KAAKS,SAAWT,KAAKQ,OAAS,IAAMR,KAAKgC,SAASE,SAKlDlC,KAAKo8E,QAENp8E,KAAKm8E,gBAAkB,IAAIl8E,KAAK8mB,qBAAqBzhB,EAAcE,IAEnExF,KAAKo8E,OAAQ,GAGbp8E,KAAKm8E,gBAAgB32E,KAAOF,EAAcE,IAE1CxF,KAAKm8E,gBAAgBniE,WAAW1U,EAAcE,IAGlDF,EAAcsG,YAAYI,OAE1B1G,EAAckT,cAAcwI,UAAU1b,EAAckT,cAAc4J,YAElEpiB,KAAKm8E,gBAAgB9/D,MAAMrc,KAAMsF,GACjCtF,KAAKm8E,gBAAgBt3E,OAAO7E,MAE5BsF,EAAcsG,YAAYO,UAW9BpL,EAAOq1E,YAAYv0E,UAAU8D,cAAgB,SAAUL,GAEnD,GAAKtF,KAAKS,WAAWT,KAAKQ,OAAS,IAAMR,KAAKgC,SAASE,OAAvD,CAKA,IAAIyL,EAAUrI,EAAcqI,QAE5BA,EAAQG,YAAc9N,KAAKa,WAE3Bb,KAAK4G,+BAML,IAJA,IAAI6jB,EAAYzqB,KAAKc,eAEjBu7E,GAAY,EAEPp6E,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAC1C,CACI,IAAIsG,EAAQvI,KAAKgC,SAASC,GAE1B,GAAKsG,EAAM9H,QAAX,CAKA,IAAIqF,EAAUyC,EAAMzC,QAChBoH,EAAQpH,EAAQoH,MAIpB,GAFAS,EAAQG,YAAc9N,KAAKa,WAAa0H,EAAM/H,MAE1C+H,EAAMhI,UAAsB,EAAV0C,KAAKk0B,KAAY,EAI/BklD,IAEA1uE,EAAQiB,aAAa6b,EAAUhoB,EAAGgoB,EAAU/nB,EAAG+nB,EAAU9nB,EAAG8nB,EAAU7nB,EAAG6nB,EAAU5nB,GAAI4nB,EAAU3nB,IACjGu5E,GAAY,GAGhB1uE,EAAQqB,UACJlJ,EAAQG,YAAYkJ,OACpBjC,EAAM5J,EACN4J,EAAM3J,EACN2J,EAAMxI,MACNwI,EAAMvI,OACJ4D,EAAM/B,OAAQ,IAAM0G,EAAMxI,MAAQ6D,EAAMlI,MAAMiD,GAAKiF,EAAMpI,SAASmD,EAAI,GAAMgC,EAAc+I,OAAU,EACpG9F,EAAM/B,OAAQ,IAAM0G,EAAMvI,OAAS4D,EAAMlI,MAAMkD,GAAKgF,EAAMpI,SAASoD,EAAI,GAAM+B,EAAcgJ,OAAU,EACvGpB,EAAMxI,MAAQ6D,EAAMlI,MAAMiD,EAC1B4J,EAAMvI,OAAS4D,EAAMlI,MAAMkD,OAGnC,CACS84E,IAEDA,GAAY,GAGhB9zE,EAAM3B,+BAEN,IAAI01E,EAAiB/zE,EAAMzH,eACvB+B,EAAMy5E,EAAez5E,GAAKyC,EAAcnB,WAAcmB,EAAc+I,OACpEvL,EAAMw5E,EAAex5E,GAAKwC,EAAcnB,WAAcmB,EAAcgJ,OAIpEhJ,EAAcqJ,YAEdhB,EAAQiB,aAAa0tE,EAAe75E,EAAG65E,EAAe55E,EAAG45E,EAAe35E,EAAG25E,EAAe15E,EAAQ,EAALC,EAAa,EAALC,GAIrG6K,EAAQiB,aAAa0tE,EAAe75E,EAAG65E,EAAe55E,EAAG45E,EAAe35E,EAAG25E,EAAe15E,EAAGC,EAAIC,GAGrG6K,EAAQqB,UACJlJ,EAAQG,YAAYkJ,OACpBjC,EAAM5J,EACN4J,EAAM3J,EACN2J,EAAMxI,MACNwI,EAAMvI,OACJ4D,EAAM/B,OAAQ,GAAM0G,EAAMxI,MAAS,GAAO,EAC1C6D,EAAM/B,OAAQ,GAAM0G,EAAMvI,OAAU,GAAO,EAC7CuI,EAAMxI,MACNwI,EAAMvI,aA4BtB5D,EAAO+yE,WAAa,SAAUxxE,EAAMgR,EAAK5O,EAAOC,EAAQ43E,QAEtCn2E,IAAV1B,GAAiC,IAAVA,IAAeA,EAAQ,UACnC0B,IAAXzB,GAAmC,IAAXA,IAAgBA,EAAS,UACpCyB,IAAbm2E,IAA0BA,GAAW,GAKzCv8E,KAAKsC,KAAOA,EAKZtC,KAAKsT,IAAMA,EAKXtT,KAAK0E,MAAQA,EAKb1E,KAAK2E,OAASA,EAMd3E,KAAKgY,OAASjX,EAAO+qB,OAAOzjB,OAAOrI,KAAM0E,EAAOC,EAAQ,KAAM43E,GAM9Dv8E,KAAK2N,QAAU3N,KAAKgY,OAAOsB,WAAW,KAAM,CAAE9Y,OAAO,IAKrDR,KAAKw8E,IAAMx8E,KAAK2N,QAKhB3N,KAAK+N,eAAkBzL,EAAKuqC,aAAe9rC,EAAO6qB,OAAUtpB,EAAK+B,SAASiB,cAAcyI,eAAiBhN,EAAO+qB,OAAOC,mBAAmB/rB,KAAK2N,SAO/I3N,KAAKy8E,UAAYz8E,KAAK2N,QAAQ4d,aAAa,EAAG,EAAG7mB,EAAOC,GAOxD3E,KAAK2U,KAAO,KAER3U,KAAKy8E,YAELz8E,KAAK2U,KAAO3U,KAAKy8E,UAAU9nE,MAM/B3U,KAAKwrB,OAAS,KAKVxrB,KAAK2U,OAED3U,KAAKy8E,UAAU9nE,KAAKwH,QAEpBnc,KAAKmc,OAASnc,KAAKy8E,UAAU9nE,KAAKwH,OAClCnc,KAAKwrB,OAAS,IAAI/H,YAAYzjB,KAAKmc,SAGnChM,OAAOkT,aAEPrjB,KAAKmc,OAAS,IAAIkH,YAAYrjB,KAAKy8E,UAAU9nE,KAAKzS,QAClDlC,KAAKwrB,OAAS,IAAI/H,YAAYzjB,KAAKmc,SAInCnc,KAAKwrB,OAASxrB,KAAKy8E,UAAU9nE,MAQrC3U,KAAKiG,YAAc,IAAIhG,KAAKusB,YAAYxsB,KAAKgY,OAAQ,KAAMhY,KAAKsC,KAAK6B,YAMrEnE,KAAK8F,QAAU,IAAI7F,KAAKyM,QAAQ1M,KAAKiG,aAKrCjG,KAAKk0E,UAAY,IAAInzE,EAAO27E,UAM5B18E,KAAK28E,aAAe38E,KAAKk0E,UAAU0I,SAAS,IAAI77E,EAAO87E,MAAM,EAAG,EAAG,EAAGn4E,EAAOC,EAAQ,eAErF3E,KAAK8F,QAAQoH,MAAQlN,KAAK28E,aAM1B38E,KAAK+T,KAAOhT,EAAOsuB,WAKnBrvB,KAAK88E,sBAAuB,EAK5B98E,KAAKwR,OAAQ,EAGbxR,KAAK+8E,IAAM/8E,KAAK4b,MAMhB5b,KAAKg9E,OAAS,KAMdh9E,KAAKi9E,KAAO,IAAIl8E,EAAOX,MAMvBJ,KAAKk9E,MAAQ,IAAIn8E,EAAOX,MAMxBJ,KAAKm9E,OAAS,IAAIp8E,EAAOX,MAMzBJ,KAAKo9E,QAAU,EAMfp9E,KAAKq9E,OAAS,CAAEC,KAAM,EAAGlzC,QAAS,GAMlCpqC,KAAKu9E,QAAU,IAAIx8E,EAAOX,MAM1BJ,KAAKw9E,OAAS,EAMdx9E,KAAKy9E,OAAS,EAMdz9E,KAAK09E,OAAS,EAMd19E,KAAK29E,QAAU,IAAI58E,EAAO+1B,OAM1B92B,KAAK49E,iBAAcx3E,GAGvBrF,EAAO+yE,WAAWjyE,UAAY,CAa1BqmD,KAAM,SAAU5kD,EAAGC,EAAG84B,GAYlB,OAVU,IAAN/4B,GAEAtD,KAAK69E,MAAMv6E,EAAG+4B,GAGR,IAAN94B,GAEAvD,KAAK89E,MAAMv6E,EAAG84B,GAGXr8B,MAaX69E,MAAO,SAAUlmD,EAAU0E,QAEVj2B,IAATi2B,IAAsBA,GAAO,QAERj2B,IAArBpG,KAAK49E,cAEL59E,KAAK49E,YAAc78E,EAAO2F,WAAW2B,OAAOrI,KAAMA,KAAK0E,MAAO1E,KAAK2E,SAGvE,IACI63E,EADIx8E,KAAK49E,YACDtkE,WAAW,MACnBmM,EAAIzlB,KAAK2E,OACTiL,EAAM5P,KAAKgY,OAIf,GAFAwkE,EAAInyD,UAAU,EAAG,EAAGrqB,KAAK0E,MAAO1E,KAAK2E,QAEjCgzB,EAAW,EACf,CACIA,EAAW10B,KAAK81B,IAAIpB,GAGpB,IAAIxhB,EAAInW,KAAK0E,MAAQizB,EAGjB0E,GAEAmgD,EAAIxtE,UAAUY,EAAK,EAAG,EAAG+nB,EAAUlS,EAAGtP,EAAG,EAAGwhB,EAAUlS,GAI1D+2D,EAAIxtE,UAAUY,EAAK+nB,EAAU,EAAGxhB,EAAGsP,EAAG,EAAG,EAAGtP,EAAGsP,OAGnD,CAEQtP,EAAInW,KAAK0E,MAAQizB,EAGjB0E,GAEAmgD,EAAIxtE,UAAUY,EAAKuG,EAAG,EAAGwhB,EAAUlS,EAAG,EAAG,EAAGkS,EAAUlS,GAI1D+2D,EAAIxtE,UAAUY,EAAK,EAAG,EAAGuG,EAAGsP,EAAGkS,EAAU,EAAGxhB,EAAGsP,GAKnD,OAFAzlB,KAAK4b,QAEE5b,KAAKm2B,KAAKn2B,KAAK49E,cAa1BE,MAAO,SAAUnmD,EAAU0E,QAEVj2B,IAATi2B,IAAsBA,GAAO,QAERj2B,IAArBpG,KAAK49E,cAEL59E,KAAK49E,YAAc78E,EAAO2F,WAAW2B,OAAOrI,KAAMA,KAAK0E,MAAO1E,KAAK2E,SAGvE,IACI63E,EADIx8E,KAAK49E,YACDtkE,WAAW,MACnBnD,EAAInW,KAAK0E,MACTkL,EAAM5P,KAAKgY,OAIf,GAFAwkE,EAAInyD,UAAU,EAAG,EAAGrqB,KAAK0E,MAAO1E,KAAK2E,QAEjCgzB,EAAW,EACf,CACIA,EAAW10B,KAAK81B,IAAIpB,GAGpB,IAAIlS,EAAIzlB,KAAK2E,OAASgzB,EAGlB0E,GAEAmgD,EAAIxtE,UAAUY,EAAK,EAAG,EAAGuG,EAAGwhB,EAAU,EAAGlS,EAAGtP,EAAGwhB,GAInD6kD,EAAIxtE,UAAUY,EAAK,EAAG+nB,EAAUxhB,EAAGsP,EAAG,EAAG,EAAGtP,EAAGsP,OAGnD,CAEQA,EAAIzlB,KAAK2E,OAASgzB,EAGlB0E,GAEAmgD,EAAIxtE,UAAUY,EAAK,EAAG6V,EAAGtP,EAAGwhB,EAAU,EAAG,EAAGxhB,EAAGwhB,GAInD6kD,EAAIxtE,UAAUY,EAAK,EAAG,EAAGuG,EAAGsP,EAAG,EAAGkS,EAAUxhB,EAAGsP,GAKnD,OAFAzlB,KAAK4b,QAEE5b,KAAKm2B,KAAKn2B,KAAK49E,cAW1BviD,IAAK,SAAUsgB,GAEX,GAAIr0C,MAAMC,QAAQo0C,GAEd,IAAK,IAAI15C,EAAI,EAAGA,EAAI05C,EAAOz5C,OAAQD,IAE3B05C,EAAO15C,GAAGs5C,aAEVI,EAAO15C,GAAGs5C,YAAYv7C,WAM9B27C,EAAOJ,YAAYv7C,MAGvB,OAAOA,MAaX6oC,KAAM,SAAU15B,GAOZ,GALsB,iBAAXA,IAEPA,EAASnP,KAAKsC,KAAKwY,MAAMw5D,SAASnlE,IAGlCA,EAcJ,OAZInP,KAAK+F,OAAOoJ,EAAOzK,MAAOyK,EAAOxK,QACjC3E,KAAK+8E,MAOT/8E,KAAK+9E,KAAK5uE,GAEVnP,KAAKunC,SAEEvnC,MAyBX4b,MAAO,SAAUtY,EAAGC,EAAGmB,EAAOC,GAW1B,YATUyB,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACb6C,IAAV1B,IAAuBA,EAAQ1E,KAAK0E,YACzB0B,IAAXzB,IAAwBA,EAAS3E,KAAK2E,QAE1C3E,KAAK2N,QAAQ0c,UAAU/mB,EAAGC,EAAGmB,EAAOC,GAEpC3E,KAAKwR,OAAQ,EAENxR,MAaX+oD,KAAM,SAAUtlD,EAAGkY,EAAGjZ,EAAGD,GAQrB,YANU2D,IAAN3D,IAAmBA,EAAI,GAE3BzC,KAAK2N,QAAQqd,UAAY,QAAUvnB,EAAI,IAAMkY,EAAI,IAAMjZ,EAAI,IAAMD,EAAI,IACrEzC,KAAK2N,QAAQwd,SAAS,EAAG,EAAGnrB,KAAK0E,MAAO1E,KAAK2E,QAC7C3E,KAAKwR,OAAQ,EAENxR,MAaXg+E,UAAW,SAAUjqE,EAAMkqE,GAEvB,OAAOj+E,KAAKgY,OAAOkmE,UAAUnqE,EAAMkqE,IAkBvC3J,SAAU,SAAUvgE,EAAMkqE,EAAgBE,EAAgBC,GAEtD,IAAIpjE,EAAQ,IAAI66D,MAOhB,OALIsI,IAAkBnjE,EAAMqjE,OAASF,GACjCC,IAAmBpjE,EAAMsjE,QAAUF,GAEvCpjE,EAAMpL,IAAM5P,KAAKg+E,UAAUjqE,EAAMkqE,GAE1BjjE,GA+CX9W,gBAAiB,SAAUoP,EAAK4jC,EAAUxL,GAEtC,IAAI5wB,EAAQ9a,KAAKsC,KAAKwY,MAClBE,EAAQ,IAAI66D,MAiBhB,GAfI3+B,IAEAl8B,EAAMqjE,OAAS,WAEX,IAAIjqD,EAAMtZ,EAAMyjE,SAASjrE,EAAK,GAAI0H,GAC9BlV,EAAU,IAAI7F,KAAKyM,QAAQ0nB,EAAIlZ,MAEnCg8B,EAASnzC,KAAK2nC,GAAmB,KAAM5lC,GAEvCkV,EAAMqjE,OAAS,OAIvBrjE,EAAMpL,IAAM5P,KAAKg+E,YAEZ9mC,EAOL,OAAO,KALH,IAAI9iB,EAAMtZ,EAAMyjE,SAASjrE,EAAK,GAAI0H,GAElC,OAAO,IAAI/a,KAAKyM,QAAQ0nB,EAAIlZ,OAcpCnV,OAAQ,SAAUrB,EAAOC,GAgCrB,OA9BID,IAAU1E,KAAK0E,OAASC,IAAW3E,KAAK2E,SAExC3E,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEd3E,KAAKgY,OAAOtT,MAAQA,EACpB1E,KAAKgY,OAAOrT,OAASA,OAEIyB,IAArBpG,KAAK49E,cAEL59E,KAAK49E,YAAYl5E,MAAQA,EACzB1E,KAAK49E,YAAYj5E,OAASA,GAG9B3E,KAAKiG,YAAYvB,MAAQA,EACzB1E,KAAKiG,YAAYtB,OAASA,EAE1B3E,KAAK28E,aAAaj4E,MAAQA,EAC1B1E,KAAK28E,aAAah4E,OAASA,EAE3B3E,KAAK8F,QAAQpB,MAAQA,EACrB1E,KAAK8F,QAAQnB,OAASA,EAEtB3E,KAAK8F,QAAQ2H,KAAK/I,MAAQA,EAC1B1E,KAAK8F,QAAQ2H,KAAK9I,OAASA,EAE3B3E,KAAKunC,SACLvnC,KAAKwR,OAAQ,GAGVxR,MAiBXunC,OAAQ,SAAUjkC,EAAGC,EAAGmB,EAAOC,GA0B3B,YAxBUyB,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACb6C,IAAV1B,IAAuBA,EAAQzB,KAAK2C,IAAI,EAAG5F,KAAK0E,aACrC0B,IAAXzB,IAAwBA,EAAS1B,KAAK2C,IAAI,EAAG5F,KAAK2E,SAEtD3E,KAAKy8E,UAAYz8E,KAAK2N,QAAQ4d,aAAajoB,EAAGC,EAAGmB,EAAOC,GACxD3E,KAAK2U,KAAO3U,KAAKy8E,UAAU9nE,KAEvB3U,KAAKy8E,UAAU9nE,KAAKwH,QAEpBnc,KAAKmc,OAASnc,KAAKy8E,UAAU9nE,KAAKwH,OAClCnc,KAAKwrB,OAAS,IAAI/H,YAAYzjB,KAAKmc,SAGnChM,OAAOkT,aAEPrjB,KAAKmc,OAAS,IAAIkH,YAAYrjB,KAAKy8E,UAAU9nE,KAAKzS,QAClDlC,KAAKwrB,OAAS,IAAI/H,YAAYzjB,KAAKmc,SAInCnc,KAAKwrB,OAASxrB,KAAKy8E,UAAU9nE,KAG1B3U,MAsBXw+E,gBAAiB,SAAUtnC,EAAUxL,EAAiBpoC,EAAGC,EAAGmB,EAAOC,QAErDyB,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACb6C,IAAV1B,IAAuBA,EAAQ1E,KAAK0E,YACzB0B,IAAXzB,IAAwBA,EAAS3E,KAAK2E,QAQ1C,IANA,IAAIwR,EAAI7S,EAAIoB,EACR+gB,EAAIliB,EAAIoB,EACR85E,EAAQ19E,EAAOsgB,MAAMq9D,cACrB1jD,EAAS,CAAEv3B,EAAG,EAAGkY,EAAG,EAAGjZ,EAAG,EAAGD,EAAG,GAChC+O,GAAQ,EAEH1O,EAAKS,EAAGT,EAAK2iB,EAAG3iB,IAErB,IAAK,IAAID,EAAKS,EAAGT,EAAKsT,EAAGtT,IAErB9B,EAAOsgB,MAAMs9D,YAAY3+E,KAAK4+E,WAAW/7E,EAAIC,GAAK27E,IAInC,KAFfzjD,EAASkc,EAASnzC,KAAK2nC,EAAiB+yC,EAAO57E,EAAIC,KAE/Ck4B,MAAoBA,IAEpBh7B,KAAK6+E,WAAWh8E,EAAIC,EAAIk4B,EAAOv3B,EAAGu3B,EAAOrf,EAAGqf,EAAOt4B,EAAGs4B,EAAOv4B,GAAG,GAChE+O,GAAQ,GAWpB,OANIA,IAEAxR,KAAK2N,QAAQ+d,aAAa1rB,KAAKy8E,UAAW,EAAG,GAC7Cz8E,KAAKwR,OAAQ,GAGVxR,MAmBX8+E,aAAc,SAAU5nC,EAAUxL,EAAiBpoC,EAAGC,EAAGmB,EAAOC,QAElDyB,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACb6C,IAAV1B,IAAuBA,EAAQ1E,KAAK0E,YACzB0B,IAAXzB,IAAwBA,EAAS3E,KAAK2E,QAQ1C,IANA,IAAIwR,EAAI7S,EAAIoB,EACR+gB,EAAIliB,EAAIoB,EACR85E,EAAQ,EACRzjD,EAAS,EACTxpB,GAAQ,EAEH1O,EAAKS,EAAGT,EAAK2iB,EAAG3iB,IAErB,IAAK,IAAID,EAAKS,EAAGT,EAAKsT,EAAGtT,IAErB47E,EAAQz+E,KAAK4+E,WAAW/7E,EAAIC,IAC5Bk4B,EAASkc,EAASnzC,KAAK2nC,EAAiB+yC,EAAO57E,EAAIC,MAEpC27E,IAEXz+E,KAAKwrB,OAAO1oB,EAAK9C,KAAK0E,MAAQ7B,GAAMm4B,EACpCxpB,GAAQ,GAWpB,OANIA,IAEAxR,KAAK2N,QAAQ+d,aAAa1rB,KAAKy8E,UAAW,EAAG,GAC7Cz8E,KAAKwR,OAAQ,GAGVxR,MAmBX++E,WAAY,SAAUC,EAAIC,EAAIziD,EAAIF,EAAI4iD,EAAIC,EAAI1iD,EAAIF,EAAI6iD,GAElD,IAAInjD,EAAK,EACLC,EAAK,EACL/lB,EAAInW,KAAK0E,MACT+gB,EAAIzlB,KAAK2E,OACTwK,EAASpO,EAAOsgB,MAAMg+D,UAAUL,EAAIC,EAAIziD,EAAIF,QAEjCl2B,IAAXg5E,GAAwBA,aAAkBr+E,EAAOS,YAEjDy6B,EAAKmjD,EAAO97E,EACZ44B,EAAKkjD,EAAO77E,EACZ4S,EAAIipE,EAAO16E,MACX+gB,EAAI25D,EAAOz6E,QAGf,IAAK,IAAIpB,EAAI,EAAGA,EAAIkiB,EAAGliB,IAEnB,IAAK,IAAID,EAAI,EAAGA,EAAI6S,EAAG7S,IAEftD,KAAK4+E,WAAW3iD,EAAK34B,EAAG44B,EAAK34B,KAAO4L,GAEpCnP,KAAK6+E,WAAW5iD,EAAK34B,EAAG44B,EAAK34B,EAAG27E,EAAIC,EAAI1iD,EAAIF,GAAI,GAQ5D,OAHAv8B,KAAK2N,QAAQ+d,aAAa1rB,KAAKy8E,UAAW,EAAG,GAC7Cz8E,KAAKwR,OAAQ,EAENxR,MAaXs/E,OAAQ,SAAU75D,EAAG7hB,EAAGy1B,EAAG+lD,GAEvB,IAAIG,EAAS95D,GAAW,IAANA,EACd+5D,EAAS57E,GAAW,IAANA,EACd67E,EAASpmD,GAAW,IAANA,EAElB,GAAKkmD,GAAWC,GAAWC,EAA3B,MAKer5E,IAAXg5E,IAEAA,EAAS,IAAIr+E,EAAOS,UAAU,EAAG,EAAGxB,KAAK0E,MAAO1E,KAAK2E,SAKzD,IAFA,IAAI85E,EAAQ19E,EAAOsgB,MAAMq9D,cAEhBn7E,EAAI67E,EAAO77E,EAAGA,EAAI67E,EAAO1mD,OAAQn1B,IAEtC,IAAK,IAAID,EAAI87E,EAAO97E,EAAGA,EAAI87E,EAAOtpD,MAAOxyB,IAErCvC,EAAOsgB,MAAMs9D,YAAY3+E,KAAK4+E,WAAWt7E,EAAGC,GAAIk7E,GAAO,GAEnDc,IAEAd,EAAMh5D,EAAIA,GAGV+5D,IAEAf,EAAM76E,EAAIA,GAGV67E,IAEAhB,EAAMplD,EAAIA,GAGdt4B,EAAOsgB,MAAMq+D,SAASjB,EAAMh5D,EAAGg5D,EAAM76E,EAAG66E,EAAMplD,EAAGolD,GACjDz+E,KAAK6+E,WAAWv7E,EAAGC,EAAGk7E,EAAMh7E,EAAGg7E,EAAM9iE,EAAG8iE,EAAM/7E,EAAG+7E,EAAMh8E,GAAG,GAOlE,OAHAzC,KAAK2N,QAAQ+d,aAAa1rB,KAAKy8E,UAAW,EAAG,GAC7Cz8E,KAAKwR,OAAQ,EAENxR,OAeX2/E,SAAU,SAAUl6D,EAAG7hB,EAAGy1B,EAAG+lD,GAMzB,GAJI35D,MAAAA,IAAiCA,GAAI,GACrC7hB,MAAAA,IAAiCA,GAAI,GACrCy1B,MAAAA,IAAiCA,GAAI,GAEpC5T,GAAM7hB,GAAMy1B,EAAjB,MAKejzB,IAAXg5E,IAEAA,EAAS,IAAIr+E,EAAOS,UAAU,EAAG,EAAGxB,KAAK0E,MAAO1E,KAAK2E,SAKzD,IAFA,IAAI85E,EAAQ19E,EAAOsgB,MAAMq9D,cAEhBn7E,EAAI67E,EAAO77E,EAAGA,EAAI67E,EAAO1mD,OAAQn1B,IAEtC,IAAK,IAAID,EAAI87E,EAAO97E,EAAGA,EAAI87E,EAAOtpD,MAAOxyB,IAErCvC,EAAOsgB,MAAMs9D,YAAY3+E,KAAK4+E,WAAWt7E,EAAGC,GAAIk7E,GAAO,GAEnDh5D,IAEAg5D,EAAMh5D,EAAIzlB,KAAKsC,KAAK2lC,KAAK5L,KAAKoiD,EAAMh5D,EAAIA,EAAG,EAAG,IAG9C7hB,IAEA66E,EAAM76E,EAAI5D,KAAKsC,KAAK2lC,KAAKpJ,MAAM4/C,EAAM76E,EAAIA,EAAG,EAAG,IAG/Cy1B,IAEAolD,EAAMplD,EAAIr5B,KAAKsC,KAAK2lC,KAAKpJ,MAAM4/C,EAAMplD,EAAIA,EAAG,EAAG,IAGnDt4B,EAAOsgB,MAAMq+D,SAASjB,EAAMh5D,EAAGg5D,EAAM76E,EAAG66E,EAAMplD,EAAGolD,GACjDz+E,KAAK6+E,WAAWv7E,EAAGC,EAAGk7E,EAAMh7E,EAAGg7E,EAAM9iE,EAAG8iE,EAAM/7E,EAAG+7E,EAAMh8E,GAAG,GAOlE,OAHAzC,KAAK2N,QAAQ+d,aAAa1rB,KAAKy8E,UAAW,EAAG,GAC7Cz8E,KAAKwR,OAAQ,EAENxR,OAgBX6+E,WAAY,SAAUv7E,EAAGC,EAAGq8E,EAAKC,EAAOC,EAAMt/E,EAAOu/E,GAsBjD,YApBkB35E,IAAd25E,IAA2BA,GAAY,GAElC,GAALz8E,GAAUA,GAAKtD,KAAK0E,OAAc,GAALnB,GAAUA,GAAKvD,KAAK2E,SAE7C5D,EAAO68C,OAAOoiC,cAEdhgF,KAAKwrB,OAAOjoB,EAAIvD,KAAK0E,MAAQpB,GAAM9C,GAAS,GAAOs/E,GAAQ,GAAOD,GAAS,EAAKD,EAIhF5/E,KAAKwrB,OAAOjoB,EAAIvD,KAAK0E,MAAQpB,GAAMs8E,GAAO,GAAOC,GAAS,GAAOC,GAAQ,EAAKt/E,EAG9Eu/E,IAEA//E,KAAK2N,QAAQ+d,aAAa1rB,KAAKy8E,UAAW,EAAG,GAC7Cz8E,KAAKwR,OAAQ,IAIdxR,MAeXigF,SAAU,SAAU38E,EAAGC,EAAGq8E,EAAKC,EAAOC,EAAMC,GAExC,OAAO//E,KAAK6+E,WAAWv7E,EAAGC,EAAGq8E,EAAKC,EAAOC,EAAM,IAAKC,IAcxDG,SAAU,SAAU58E,EAAGC,EAAG6zB,GAEjBA,IAEDA,EAAMr2B,EAAOsgB,MAAMq9D,eAGvB,IAAIj2E,KAAWnF,EAAKC,EAAIvD,KAAK0E,OAS7B,OAPA+D,GAAS,EAET2uB,EAAI3zB,EAAIzD,KAAK2U,KAAKlM,GAClB2uB,EAAIzb,EAAI3b,KAAK2U,OAAOlM,GACpB2uB,EAAI10B,EAAI1C,KAAK2U,OAAOlM,GACpB2uB,EAAI30B,EAAIzC,KAAK2U,OAAOlM,GAEb2uB,GAcXwnD,WAAY,SAAUt7E,EAAGC,GAErB,GAAS,GAALD,GAAUA,GAAKtD,KAAK0E,OAAc,GAALnB,GAAUA,GAAKvD,KAAK2E,OAEjD,OAAO3E,KAAKwrB,OAAOjoB,EAAIvD,KAAK0E,MAAQpB,IAiB5C68E,YAAa,SAAU78E,EAAGC,EAAG6zB,EAAKgpD,EAAKC,GAEnC,OAAOt/E,EAAOsgB,MAAMs9D,YAAY3+E,KAAK4+E,WAAWt7E,EAAGC,GAAI6zB,EAAKgpD,EAAKC,IAUrEC,UAAW,SAAUtjD,GAEjB,OAAOh9B,KAAK2N,QAAQ4d,aAAayR,EAAK15B,EAAG05B,EAAKz5B,EAAGy5B,EAAKt4B,MAAOs4B,EAAKr4B,SAkBtE47E,cAAe,SAAUx5C,QAEH3gC,IAAd2gC,IAA2BA,EAAY,GAE3C,IAAI03C,EAAQ19E,EAAOsgB,MAAMq9D,cAErBp7E,EAAI,EACJC,EAAI,EACJu9C,EAAI,EACJ0/B,GAAO,EAaX,IAXkB,IAAdz5C,GAEA+Z,GAAK,EACLv9C,EAAIvD,KAAK2E,QAEU,IAAdoiC,IAEL+Z,GAAK,EACLx9C,EAAItD,KAAK0E,OAKT3D,EAAOsgB,MAAMs9D,YAAY3+E,KAAK4+E,WAAWt7E,EAAGC,GAAIk7E,GAE9B,IAAd13C,GAAiC,IAAdA,IAGnBzjC,IAEUtD,KAAK0E,QAEXpB,EAAI,IACJC,GAAKu9C,IAEI9gD,KAAK2E,QAAUpB,GAAK,KAEzBi9E,GAAO,IAII,IAAdz5C,GAAiC,IAAdA,KAGxBxjC,IAEUvD,KAAK2E,SAEXpB,EAAI,IACJD,GAAKw9C,IAEI9gD,KAAK0E,OAASpB,GAAK,KAExBk9E,GAAO,IAKJ,IAAZ/B,EAAMh8E,IAAY+9E,IAKzB,OAHA/B,EAAMn7E,EAAIA,EACVm7E,EAAMl7E,EAAIA,EAEHk7E,GAWX10E,UAAW,SAAUizB,GAOjB,YALa52B,IAAT42B,IAAsBA,EAAO,IAAIj8B,EAAOS,WAE5Cw7B,EAAK15B,EAAItD,KAAKugF,cAAc,GAAGj9E,EAG3B05B,EAAK15B,IAAMtD,KAAK0E,MAETs4B,EAAKzF,MAAM,EAAG,EAAG,EAAG,IAG/ByF,EAAKz5B,EAAIvD,KAAKugF,cAAc,GAAGh9E,EAC/By5B,EAAKt4B,MAAS1E,KAAKugF,cAAc,GAAGj9E,EAAI05B,EAAK15B,EAAK,EAClD05B,EAAKr4B,OAAU3E,KAAKugF,cAAc,GAAGh9E,EAAIy5B,EAAKz5B,EAAK,EAE5Cy5B,IAeX2T,WAAY,SAAUrtC,EAAGC,EAAGqtC,EAASC,EAAS/qB,EAAQE,GAElDF,EAASA,GAAU,EACnBE,EAASA,GAAU,EAEnB,IAAIhL,EAAQhb,KAAKsC,KAAK+4B,IAAIrgB,MAAM1X,EAAGC,EAAGvD,MAKtC,OAHAgb,EAAMxU,OAAOQ,IAAI4pC,EAASC,GAC1B71B,EAAM3a,MAAM2G,IAAI8e,EAAQE,GAEjBhL,GAsCXmb,KAAM,SAAUhnB,EAAQ7L,EAAGC,EAAGmB,EAAOC,EAAQ9B,EAAIC,EAAI29E,EAAUC,EAAW9lD,EAAQgW,EAASC,EAAS/qB,EAAQE,EAAQxlB,EAAOsH,EAAWs8B,GAWlI,GATIj1B,MAAAA,IAA2CA,EAASnP,MAEpDmP,aAAkBpO,EAAO0D,gBAEzB0K,EAASA,EAAOwxE,cAGpB3gF,KAAKg9E,OAAS7tE,aAEQpO,EAAO0E,QAAU0J,aAAkBpO,EAAO80E,OAAS1mE,aAAkBpO,EAAO61E,MAAQznE,aAAkBlP,KAAKwF,OAG7HzF,KAAKi9E,KAAKj2E,IAAImI,EAAOrJ,QAAQ2H,KAAKnK,EAAG6L,EAAOrJ,QAAQ2H,KAAKlK,GACzDvD,KAAKk9E,MAAMl2E,IAAImI,EAAOrJ,QAAQ2H,KAAK/I,MAAOyK,EAAOrJ,QAAQ2H,KAAK9I,QAC9D3E,KAAKm9E,OAAOn2E,IAAImI,EAAO9O,MAAMiD,EAAG6L,EAAO9O,MAAMkD,GAC7CvD,KAAKu9E,QAAQv2E,IAAImI,EAAO3I,OAAOlD,EAAG6L,EAAO3I,OAAOjD,GAChDvD,KAAKo9E,QAAUjuE,EAAO5O,SACtBP,KAAKq9E,OAAOjzC,QAAUj7B,EAAO3O,MAEzB2O,EAAOrJ,mBAAmB/E,EAAO0D,cAEjCzE,KAAKg9E,OAAS7tE,EAAOrJ,QAAQ66E,YAI7B3gF,KAAKg9E,OAAS7tE,EAAOrJ,QAAQG,YAAYkJ,OAGzCtM,MAAAA,IAAmCA,EAAKsM,EAAO7L,GAC/CR,MAAAA,IAAmCA,EAAKqM,EAAO5L,GAE/C4L,EAAOrJ,QAAQqI,OAGftL,GAAMsM,EAAOrJ,QAAQqI,KAAK7K,EAAI6L,EAAO3I,OAAOlD,EAAI6L,EAAOrJ,QAAQqI,KAAKzJ,MACpE5B,GAAMqM,EAAOrJ,QAAQqI,KAAK5K,EAAI4L,EAAO3I,OAAOjD,EAAI4L,EAAOrJ,QAAQqI,KAAKxJ,QAGpD,WAAhBwK,EAAOvC,OAEHuC,EAAOtC,aAAesC,EAAOvC,OAE7BuC,EAAOtC,WAAasC,EAAOvC,KAC3BuC,EAAO1I,cAAgBxG,KAAK6O,aAAaC,iBAAiBI,EAAQA,EAAOvC,OAG7E5M,KAAKg9E,OAAS7tE,EAAO1I,cACrBzG,KAAKi9E,KAAKj2E,IAAI,QAItB,CAQI,GANAhH,KAAKi9E,KAAKj2E,IAAI,GACdhH,KAAKm9E,OAAOn2E,IAAI,GAChBhH,KAAKu9E,QAAQv2E,IAAI,GACjBhH,KAAKo9E,QAAU,EACfp9E,KAAKq9E,OAAOjzC,QAAU,EAElBj7B,aAAkBpO,EAAO+yE,WAEzB9zE,KAAKg9E,OAAS7tE,EAAO6I,YAEpB,GAAsB,iBAAX7I,EAChB,CAGI,GAAe,QAFfA,EAASnP,KAAKsC,KAAKwY,MAAMw5D,SAASnlE,IAI9B,OAAOnP,KAIPA,KAAKg9E,OAAS7tE,EAItBnP,KAAKk9E,MAAMl2E,IAAIhH,KAAKg9E,OAAOt4E,MAAO1E,KAAKg9E,OAAOr4E,QA6DlD,GAzDIrB,MAAAA,IAAiCA,EAAI,GACrCC,MAAAA,IAAiCA,EAAI,GAGrCmB,IAEA1E,KAAKk9E,MAAM55E,EAAIoB,GAGfC,IAEA3E,KAAKk9E,MAAM35E,EAAIoB,GAIf9B,MAAAA,IAAmCA,EAAKS,GACxCR,MAAAA,IAAmCA,EAAKS,GACxCk9E,MAAAA,IAA+CA,EAAWzgF,KAAKk9E,MAAM55E,GACrEo9E,MAAAA,IAAiDA,EAAY1gF,KAAKk9E,MAAM35E,GAGtD,iBAAXq3B,IAEP56B,KAAKo9E,QAAUxiD,GAII,iBAAZgW,IAEP5wC,KAAKu9E,QAAQj6E,EAAIstC,GAGE,iBAAZC,IAEP7wC,KAAKu9E,QAAQh6E,EAAIstC,GAIC,iBAAX/qB,IAEP9lB,KAAKm9E,OAAO75E,EAAIwiB,GAGE,iBAAXE,IAEPhmB,KAAKm9E,OAAO55E,EAAIyiB,GAIC,iBAAVxlB,IAEPR,KAAKq9E,OAAOjzC,QAAU5pC,QAGR4F,IAAd0B,IAA2BA,EAAY,WAC3B1B,IAAZg+B,IAAyBA,GAAU,GAEnCpkC,KAAKq9E,OAAOjzC,SAAW,GAAuB,IAAlBpqC,KAAKm9E,OAAO75E,GAA6B,IAAlBtD,KAAKm9E,OAAO55E,GAA4B,IAAjBvD,KAAKk9E,MAAM55E,GAA4B,IAAjBtD,KAAKk9E,MAAM35E,EAG3G,OAAOvD,KAGX,IAAIw8E,EAAMx8E,KAAK2N,QAoCf,OAlCA3N,KAAKq9E,OAAOC,KAAOd,EAAI1uE,YAEvB0uE,EAAIjyD,OAEJiyD,EAAI1uE,YAAc9N,KAAKq9E,OAAOjzC,QAE1BtiC,IAEA9H,KAAK4gF,GAAK94E,GAGVs8B,IAEAvhC,GAAM,EACNC,GAAM,GAIV05E,EAAIv+C,UAAUp7B,EAAIC,GAElB05E,EAAIn8E,MAAML,KAAKm9E,OAAO75E,EAAGtD,KAAKm9E,OAAO55E,GAErCi5E,EAAI5hD,OAAO56B,KAAKo9E,SAEhBZ,EAAIxtE,UAAUhP,KAAKg9E,OAAQh9E,KAAKi9E,KAAK35E,EAAIA,EAAGtD,KAAKi9E,KAAK15E,EAAIA,EAAGvD,KAAKk9E,MAAM55E,EAAGtD,KAAKk9E,MAAM35E,GAAIk9E,EAAWzgF,KAAKu9E,QAAQj6E,GAAIo9E,EAAY1gF,KAAKu9E,QAAQh6E,EAAGk9E,EAAUC,GAI5JlE,EAAI3xD,UAEJ2xD,EAAI1uE,YAAc9N,KAAKq9E,OAAOC,KAE9Bt9E,KAAKwR,OAAQ,EAENxR,MAgBX6gF,cAAe,SAAU1xE,EAAQrH,EAAWs8B,GAKxC,QAHkBh+B,IAAd0B,IAA2BA,EAAY,WAC3B1B,IAAZg+B,IAAyBA,GAAU,IAElCj1B,EAAOukB,eAAe,oBAAsBvkB,EAAOjI,cAAsC,IAAtBiI,EAAOtO,WAE3E,OAAOb,KAGX,IAAIgD,EAAKmM,EAAOrO,eAKhB,GAHAd,KAAKi9E,KAAKj2E,IAAImI,EAAOrJ,QAAQ2H,KAAKnK,EAAG6L,EAAOrJ,QAAQ2H,KAAKlK,GACzDvD,KAAKk9E,MAAMl2E,IAAImI,EAAOrJ,QAAQ2H,KAAK/I,MAAOyK,EAAOrJ,QAAQ2H,KAAK9I,QAEjD,IAAT3B,EAAGP,GAAoB,IAATO,EAAGJ,GAA4B,IAAjB5C,KAAKk9E,MAAM55E,GAA4B,IAAjBtD,KAAKk9E,MAAM35E,EAG7D,OAAOvD,KAGPmP,EAAOrJ,mBAAmB/E,EAAO0D,cAEjCzE,KAAKg9E,OAAS7tE,EAAOrJ,QAAQ66E,YAI7B3gF,KAAKg9E,OAAS7tE,EAAOrJ,QAAQG,YAAYkJ,OAG7C,IAAItM,EAAKG,EAAGH,GACRC,EAAKE,EAAGF,GAERqM,EAAOrJ,QAAQqI,OAGftL,GAAMsM,EAAOrJ,QAAQqI,KAAK7K,EAAI6L,EAAO3I,OAAOlD,EAAI6L,EAAOrJ,QAAQqI,KAAKzJ,MACpE5B,GAAMqM,EAAOrJ,QAAQqI,KAAK5K,EAAI4L,EAAO3I,OAAOjD,EAAI4L,EAAOrJ,QAAQqI,KAAKxJ,QAGpD,WAAhBwK,EAAOvC,OAEHuC,EAAOtC,aAAesC,EAAOvC,OAE7BuC,EAAOtC,WAAasC,EAAOvC,KAC3BuC,EAAO1I,cAAgBxG,KAAK6O,aAAaC,iBAAiBI,EAAQA,EAAOvC,OAG7E5M,KAAKg9E,OAAS7tE,EAAO1I,cACrBzG,KAAKi9E,KAAKj2E,IAAI,IAGdo9B,IAEAvhC,GAAM,EACNC,GAAM,GAGV,IAAI05E,EAAMx8E,KAAK2N,QAiCf,OA/BA3N,KAAKq9E,OAAOC,KAAOd,EAAI1uE,YAEvB0uE,EAAIjyD,OAEJiyD,EAAI1uE,YAAc9N,KAAKq9E,OAAOjzC,QAE1BtiC,IAEA9H,KAAK4gF,GAAK94E,GAGd00E,EAAIx8E,KAAK+N,gBAAmBoB,EAAOrJ,QAAQG,YAAY7B,YAAcnE,KAAK+N,WAAWC,OAErFuuE,EAAI5tE,aAAa5L,EAAGP,EAAGO,EAAGN,EAAGM,EAAGL,EAAGK,EAAGJ,EAAGC,EAAIC,GAE7C05E,EAAIxtE,UAAUhP,KAAKg9E,OACfh9E,KAAKi9E,KAAK35E,EACVtD,KAAKi9E,KAAK15E,EACVvD,KAAKk9E,MAAM55E,EACXtD,KAAKk9E,MAAM35E,GACVvD,KAAKk9E,MAAM55E,EAAI6L,EAAO3I,OAAOlD,GAC7BtD,KAAKk9E,MAAM35E,EAAI4L,EAAO3I,OAAOjD,EAC9BvD,KAAKk9E,MAAM55E,EACXtD,KAAKk9E,MAAM35E,GAEfi5E,EAAI3xD,UAEJ2xD,EAAI1uE,YAAc9N,KAAKq9E,OAAOC,KAE9Bt9E,KAAKwR,OAAQ,EAENxR,MAgBX8gF,SAAU,SAAU3xE,EAAQmyB,EAAMh+B,EAAGC,EAAG/C,EAAOsH,EAAWs8B,GAEtD,OAAOpkC,KAAKm2B,KAAKhnB,EAAQmyB,EAAKh+B,EAAGg+B,EAAK/9B,EAAG+9B,EAAK58B,MAAO48B,EAAK38B,OAAQrB,EAAGC,EAAG+9B,EAAK58B,MAAO48B,EAAK38B,OAAQ,EAAG,EAAG,EAAG,EAAG,EAAGnE,EAAOsH,EAAWs8B,IAwBtI25C,KAAM,SAAU5uE,EAAQ7L,EAAGC,EAAGmB,EAAOC,EAAQmD,EAAWs8B,GAGpD,OAAOpkC,KAAKm2B,KAAKhnB,EAAQ,KAAM,KAAM,KAAM,KAAM7L,EAAGC,EAAGmB,EAAOC,EAAQ,KAAM,KAAM,KAAM,KAAM,KAAM,KAAMmD,EAAWs8B,IAuBzH28C,UAAW,SAAUtkC,EAAO30C,EAAWs8B,GAOnC,OALkB,EAAdqY,EAAMvB,OAENuB,EAAMjC,cAAcx6C,KAAKghF,eAAgBhhF,KAAM8H,EAAWs8B,GAGvDpkC,MAYXghF,eAAgB,SAAUz4E,EAAOT,EAAWs8B,GAOxC,GALI77B,EAAMmrB,eAAe,YAErB1zB,KAAK6gF,cAAct4E,EAAOT,EAAWs8B,GAGrC77B,EAAMwL,OAAShT,EAAOguB,OAASxmB,EAAMwE,OAErC/M,KAAK+gF,UAAUx4E,EAAOT,EAAWs8B,QAGrC,GAAI77B,EAAMmrB,eAAe,aAAuC,EAAxBnrB,EAAMvG,SAASE,OAEnD,IAAK,IAAID,EAAI,EAAGA,EAAIsG,EAAMvG,SAASE,OAAQD,IAEnCsG,EAAMvG,SAASC,GAAG8K,QAElB/M,KAAK6gF,cAAct4E,EAAMvG,SAASC,GAAI6F,EAAWs8B,IA6BjE68C,SAAU,SAAUrgF,EAAQkH,EAAWs8B,GAEnC,IAA4B,IAAxBxjC,EAAOsG,cAAgD,IAAtBtG,EAAOC,YAAqBD,EAAO8yB,eAAe,YAA+B,IAAlB9yB,EAAOmM,OAEvG,OAAO/M,KAGX,GAAIY,EAAOmT,OAAShT,EAAOguB,OAASnuB,EAAOmT,OAAShT,EAAOouB,SAAWvuB,EAAOmT,OAAShT,EAAO+tB,WAEzF,GAAIluB,EAAOmT,OAAShT,EAAO4tB,SAC3B,CACI,IAAIrqB,EAAS1D,EAAOmJ,YACpB/J,KAAKw8E,IAAIjyD,OACTvqB,KAAKw8E,IAAIv+C,UAAU35B,EAAOhB,EAAGgB,EAAOf,GACpCtD,KAAKyqB,eAAew2D,eAAetgF,EAAQZ,KAAKw8E,KAChDx8E,KAAKw8E,IAAI3xD,eAIT7qB,KAAKm2B,KAAKv1B,EAAQ,KAAM,KAAM,KAAM,KAAMA,EAAOK,cAAcqC,EAAG1C,EAAOK,cAAcsC,EAAG,KAAM,KAAM3C,EAAOO,cAAe,KAAM,KAAMP,EAAOM,WAAWoC,EAAG1C,EAAOM,WAAWqC,EAAG3C,EAAOC,WAAYiH,EAAWs8B,GAIxN,GAAIxjC,EAAOoB,SAEP,IAAK,IAAIC,EAAI,EAAGA,EAAIrB,EAAOoB,SAASE,OAAQD,IAExCjC,KAAKihF,SAASrgF,EAAOoB,SAASC,GAAI6F,EAAWs8B,GAIrD,OAAOpkC,MAeXmhF,OAAQ,SAAUhqE,EAAOiqE,EAAM99E,EAAGC,GAE9B,IAAIi5E,EAAMx8E,KAAK2N,QAcf,OAZIwJ,MAAAA,EAEAqlE,EAAI6E,YAAc,iBAIlB7E,EAAI6E,YAAclqE,EAClBqlE,EAAI8E,WAAuB,IAATF,EAAc,EAAIA,GAAQ,EAC5C5E,EAAI+E,cAAuB,IAANj+E,EAAW,EAAIA,GAAK,GACzCk5E,EAAIgF,cAAuB,IAANj+E,EAAW,EAAIA,GAAK,IAGtCvD,MAaXyhF,UAAW,SAAUtyE,EAAQ/H,EAAMs6E,EAAYC,GAoB3C,OAlBIA,MAAAA,EAEA3hF,KAAK+9E,KAAK32E,GAAMw6E,kBAIhB5hF,KAAK+9E,KAAK32E,EAAMu6E,EAASr+E,EAAGq+E,EAASp+E,EAAGo+E,EAASj9E,MAAOi9E,EAASh9E,QAAQi9E,kBAGzEF,MAAAA,EAEA1hF,KAAK+9E,KAAK5uE,GAAQ0yE,aAIlB7hF,KAAK+9E,KAAK5uE,EAAQuyE,EAAWp+E,EAAGo+E,EAAWn+E,EAAGm+E,EAAWh9E,MAAOg9E,EAAW/8E,QAAQk9E,aAGhF7hF,MAyBX8hF,QAAS,SAAUC,EAAat+E,EAAGkY,EAAGjZ,EAAGD,EAAGsD,EAAQm5E,EAAIC,EAAI1iD,GA2BxD,YAzBUr2B,IAAN3D,IAAmBA,EAAI,UACZ2D,IAAXL,IAAwBA,GAAS,QAC1BK,IAAP84E,IAAoBA,EAAKz7E,QAClB2C,IAAP+4E,IAAoBA,EAAKxjE,QAClBvV,IAAPq2B,IAAoBA,EAAK/5B,GAEzBqD,GAEAg8E,EAAYh8E,OAAO/F,KAAK0E,MAAO1E,KAAK2E,QAGxC3E,KAAKw+E,gBACD,SAAUC,EAAOn7E,EAAGC,GAMhB,OAJIk7E,EAAMh7E,IAAMA,GAAKg7E,EAAM9iE,IAAMA,GAAK8iE,EAAM/7E,IAAMA,GAE9Cq/E,EAAYlD,WAAWv7E,EAAGC,EAAG27E,EAAIC,EAAI1iD,EAAIh6B,GAAG,IAEzC,GAEXzC,MAEJ+hF,EAAYp0E,QAAQ+d,aAAaq2D,EAAYtF,UAAW,EAAG,GAC3DsF,EAAYvwE,OAAQ,EAEbuwE,GAcX/kD,KAAM,SAAU15B,EAAGC,EAAGmB,EAAOC,EAAQqmB,GASjC,YAPyB,IAAdA,IAEPhrB,KAAK2N,QAAQqd,UAAYA,GAG7BhrB,KAAK2N,QAAQwd,SAAS7nB,EAAGC,EAAGmB,EAAOC,GAE5B3E,MAiBX22E,KAAM,SAAUA,EAAMrzE,EAAGC,EAAGg0E,EAAMpgE,EAAOgqE,QAE3B/6E,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACd6C,IAATmxE,IAAsBA,EAAO,qBACnBnxE,IAAV+Q,IAAuBA,EAAQ,yBACpB/Q,IAAX+6E,IAAwBA,GAAS,GAErC,IAAI3E,EAAMx8E,KAAK2N,QACXq0E,EAAWxF,EAAIjF,KAenB,OAbAiF,EAAIjF,KAAOA,EAEP4J,IAEA3E,EAAIxxD,UAAY,aAChBwxD,EAAIyF,SAAStL,EAAMrzE,EAAI,EAAGC,EAAI,IAGlCi5E,EAAIxxD,UAAY7T,EAChBqlE,EAAIyF,SAAStL,EAAMrzE,EAAGC,GAEtBi5E,EAAIjF,KAAOyK,EAEJhiF,MAaXyjD,OAAQ,SAAUngD,EAAGC,EAAG+zB,EAAQtM,GAE5B,IAAIwxD,EAAMx8E,KAAK2N,QAaf,YAXkBvH,IAAd4kB,IAEAwxD,EAAIxxD,UAAYA,GAGpBwxD,EAAI0F,YACJ1F,EAAI2F,IAAI7+E,EAAGC,EAAG+zB,EAAQ,EAAa,EAAVr0B,KAAKk0B,IAAQ,GACtCqlD,EAAI4F,YAEJ5F,EAAIzzB,OAEG/oD,MAeX86B,KAAM,SAAU3vB,EAAIC,EAAIC,EAAIC,EAAI6L,EAAOzS,QAErB0B,IAAV+Q,IAAuBA,EAAQ,aACrB/Q,IAAV1B,IAAuBA,EAAQ,GAEnC,IAAI83E,EAAMx8E,KAAK2N,QAaf,OAXA6uE,EAAI0F,YAEJ1F,EAAI6F,OAAOl3E,EAAIC,GACfoxE,EAAI8F,OAAOj3E,EAAIC,GAEfkxE,EAAI+F,UAAY79E,EAChB83E,EAAIgG,YAAcrrE,EAClBqlE,EAAIiG,SAEJjG,EAAI4F,YAEGpiF,MAaX0iF,QAAS,SAAUhiD,EAAQ1V,EAAWu3D,EAAWC,QAIzBp8E,IAAhBo8E,IAA6BA,EAAc,aAC7Bp8E,IAAdm8E,IAA2BA,EAAY,GAE3C,IAAI/F,EAAMx8E,KAAK2N,QAEXqd,IAEAwxD,EAAIxxD,UAAYA,GAGhBu3D,IAEA/F,EAAI+F,UAAYA,EAChB/F,EAAIgG,YAAcA,GAGtBhG,EAAI0F,YAEJ1F,EAAI6F,OAAO3hD,EAAO,GAAGp9B,EAAGo9B,EAAO,GAAGn9B,GAElC,IAAK,IAAItB,EAAI,EAAGkxB,EAAMuN,EAAOx+B,OAAQD,EAAIkxB,EAAKlxB,IAC9C,CACI,IAAIs2B,EAAQmI,EAAOz+B,GACnBu6E,EAAI8F,OAAO/pD,EAAMj1B,EAAGi1B,EAAMh1B,GAQ9B,OALAi5E,EAAI4F,YAEAp3D,GAAawxD,EAAIzzB,OACjBw5B,GAAa/F,EAAIiG,SAEdziF,MAYX2iF,YAAa,SAAU7nD,EAAM9f,EAAO5F,GAIhC,QAFehP,IAAXgP,IAAwBA,EAAS,YAEhB,iBAAV4F,IAEPA,EAAQhb,KAAKsC,KAAKwY,MAAMw5D,SAASt5D,IAFrC,CAUA,IAAItW,EAAQo2B,EAAK54B,OAEF,cAAXkT,GAA0B1Q,EAAQsW,EAAMtW,QAExCA,EAAQsW,EAAMtW,OAGlB,IAAI83E,EAAMx8E,KAAK2N,QAgBf,OAdA6uE,EAAIxxD,UAAYwxD,EAAIoG,cAAc5nE,EAAO5F,GAEzCpV,KAAK29E,QAAU,IAAI58E,EAAO+1B,OAAOgE,EAAK3uB,MAAM7I,EAAGw3B,EAAK3uB,MAAM5I,EAAGyX,EAAMrW,QAEnE3E,KAAK29E,QAAQ7lD,mBAAmBgD,EAAK/C,MAAQ,oBAAoB,EAAO/3B,KAAKi9E,MAE7ET,EAAIjyD,OACJiyD,EAAIv+C,UAAUj+B,KAAKi9E,KAAK35E,EAAGtD,KAAKi9E,KAAK15E,GACrCi5E,EAAI5hD,OAAOE,EAAK/C,OAChBykD,EAAIrxD,SAAS,EAAG,EAAGzmB,EAAOsW,EAAMrW,QAChC63E,EAAI3xD,UAEJ7qB,KAAKwR,OAAQ,EAENxR,OAWX6E,OAAQ,WAQJ,OANK7E,KAAK88E,sBAAwB98E,KAAKwR,QAEnCxR,KAAKiG,YAAYuL,QACjBxR,KAAKwR,OAAQ,GAGVxR,MAQX+B,QAAS,WAEL/B,KAAKk0E,UAAUnyE,UAEf/B,KAAK8F,QAAQ/D,SAAQ,GAErBhB,EAAO2F,WAAW2W,OAAOrd,OAS7B6hF,WAAY,WAGR,OADA7hF,KAAK4gF,GAAK,cACH5gF,MASX6iF,gBAAiB,WAGb,OADA7iF,KAAK4gF,GAAK,cACH5gF,MASX8iF,cAAe,WAGX,OADA9iF,KAAK4gF,GAAK,YACH5gF,MASX+iF,eAAgB,WAGZ,OADA/iF,KAAK4gF,GAAK,aACH5gF,MASX4hF,gBAAiB,WAGb,OADA5hF,KAAK4gF,GAAK,cACH5gF,MASXgjF,qBAAsB,WAGlB,OADAhjF,KAAK4gF,GAAK,mBACH5gF,MASXijF,mBAAoB,WAGhB,OADAjjF,KAAK4gF,GAAK,iBACH5gF,MASXkjF,oBAAqB,WAGjB,OADAljF,KAAK4gF,GAAK,kBACH5gF,MASXmjF,qBAAsB,WAGlB,OADAnjF,KAAK4gF,GAAK,mBACH5gF,MASXojF,SAAU,WAGN,OADApjF,KAAK4gF,GAAK,MACH5gF,MASXqjF,SAAU,WAGN,OADArjF,KAAK4gF,GAAK,UACH5gF,MASXsjF,cAAe,WAGX,OADAtjF,KAAK4gF,GAAK,WACH5gF,MASXujF,YAAa,WAGT,OADAvjF,KAAK4gF,GAAK,SACH5gF,MASXwjF,aAAc,WAGV,OADAxjF,KAAK4gF,GAAK,UACH5gF,MASXyjF,YAAa,WAGT,OADAzjF,KAAK4gF,GAAK,SACH5gF,MASX0jF,aAAc,WAGV,OADA1jF,KAAK4gF,GAAK,UACH5gF,MASX2jF,gBAAiB,WAGb,OADA3jF,KAAK4gF,GAAK,cACH5gF,MASX4jF,eAAgB,WAGZ,OADA5jF,KAAK4gF,GAAK,aACH5gF,MASX6jF,eAAgB,WAGZ,OADA7jF,KAAK4gF,GAAK,aACH5gF,MASX8jF,eAAgB,WAGZ,OADA9jF,KAAK4gF,GAAK,aACH5gF,MASX+jF,gBAAiB,WAGb,OADA/jF,KAAK4gF,GAAK,aACH5gF,MASXgkF,eAAgB,WAGZ,OADAhkF,KAAK4gF,GAAK,YACH5gF,MASXikF,SAAU,WAGN,OADAjkF,KAAK4gF,GAAK,MACH5gF,MASXkkF,gBAAiB,WAGb,OADAlkF,KAAK4gF,GAAK,aACH5gF,MASXmkF,WAAY,WAGR,OADAnkF,KAAK4gF,GAAK,QACH5gF,MASXokF,gBAAiB,WAGb,OADApkF,KAAK4gF,GAAK,aACH5gF,MAeXqkF,eAAgB,SAAUl1E,EAAQ7L,EAAGC,GAEjC4L,EAAOo4B,SACP,IAAK,IAAW+8C,EAAPriF,EAAI,EAAiBA,EAAIkN,EAAOxK,OAAQ1C,IACjD,CACIqiF,GAAgB/gF,EAAItB,GAAKjC,KAAK0E,MAAQpB,EACtC,IAAK,IAAIoE,EAAI,EAAGA,EAAIyH,EAAOzK,MAAOgD,IAE9B1H,KAAKwrB,OAAO84D,EAAe58E,GAAKyH,EAAOqc,OAAOvpB,EAAIkN,EAAOzK,MAAQgD,GAGzE,OAAO1H,OASf6G,OAAOyF,eAAevL,EAAO+yE,WAAWjyE,UAAW,WAAY,CAE3DkF,IAAK,WAED,OAAOhG,EAAO+qB,OAAOy4D,oBAAoBvkF,KAAK2N,UAGlD3G,IAAK,SAAUC,GAEXlG,EAAO+qB,OAAO04D,oBAAoBxkF,KAAK2N,QAAS1G,MASxDJ,OAAOyF,eAAevL,EAAO+yE,WAAWjyE,UAAW,KAAM,CAErDkF,IAAK,WAED,OAAO/G,KAAK2N,QAAQC,0BAGxB5G,IAAK,SAAUC,GAEXjH,KAAK2N,QAAQC,yBAA2B3G,KAiBhDlG,EAAO+yE,WAAW2Q,aAAe,SAAUC,EAAYC,EAAY7+D,EAAQE,EAAQ4+D,EAAOC,GAStF,MAP0B,iBAAfH,IAA2BA,EAAa,GACzB,iBAAfC,IAA2BA,EAAa,GAC7B,iBAAX7+D,IAAuBA,EAAS,GACrB,iBAAXE,IAAuBA,EAAS,GACtB,iBAAV4+D,IAAsBA,EAAQ,GACpB,iBAAVC,IAAsBA,EAAQ,GAElC,CAAE5oD,GAAInW,EAAQoW,GAAIlW,EAAQF,OAAQA,EAAQE,OAAQA,EAAQ4+D,MAAOA,EAAOC,MAAOA,EAAOH,WAAYA,EAAYC,WAAYA,EAAY9hF,GAAI6hF,EAAY5hF,GAAI6hF,IAGrK5jF,EAAO+yE,WAAWjyE,UAAUC,YAAcf,EAAO+yE,WAqBjD/yE,EAAO+jF,OAAS,GAEhB/jF,EAAO+jF,OAAOC,YAAc,SAAUpwE,EAAMqwE,EAAaC,GAErDA,EAAMA,GAAO,EAEb,IAOIx6E,EAAME,EAAMC,EAAMC,EAAMvH,EAAGC,EAAGyf,EAP9BkiE,EAAWF,GAAeA,EAAY9iF,OACtCijF,EAAWD,EAAWF,EAAY,GAAKC,EAAMtwE,EAAKzS,OAClDkjF,EAAYrkF,EAAO+jF,OAAOO,WAAW1wE,EAAM,EAAGwwE,EAAUF,GAAK,GAC7DK,EAAY,GAEhB,IAAKF,EAAa,OAAOE,EAOzB,GAHIJ,IAAYE,EAAYrkF,EAAO+jF,OAAOS,eAAe5wE,EAAMqwE,EAAaI,EAAWH,IAGnFtwE,EAAKzS,OAAS,GAAK+iF,EACvB,CACIx6E,EAAOG,EAAO+J,EAAK,GACnBhK,EAAOE,EAAO8J,EAAK,GAEnB,IAAK,IAAI1S,EAAIgjF,EAAKhjF,EAAIkjF,EAAUljF,GAAKgjF,GAEjC3hF,EAAIqR,EAAK1S,IAEDwI,IAAQA,EAAOnH,IADvBC,EAAIoR,EAAK1S,EAAI,IAEL0I,IAAQA,EAAOpH,GACfqH,EAAJtH,IAAYsH,EAAOtH,GACfuH,EAAJtH,IAAYsH,EAAOtH,GAI3Byf,EAAO/f,KAAK2C,IAAIgF,EAAOH,EAAMI,EAAOF,GAKxC,OAFA5J,EAAO+jF,OAAOU,aAAaJ,EAAWE,EAAWL,EAAKx6E,EAAME,EAAMqY,GAE3DsiE,GAKXvkF,EAAO+jF,OAAOO,WAAa,SAAU1wE,EAAMxI,EAAOmQ,EAAK2oE,EAAKQ,GAExD,IACIxjF,EAAGyF,EAAGg+E,EADNC,EAAM,EAIV,IAAK1jF,EAAIkK,EAAOzE,EAAI4U,EAAM2oE,EAAKhjF,EAAIqa,EAAKra,GAAKgjF,EAEzCU,IAAQhxE,EAAKjN,GAAKiN,EAAK1S,KAAO0S,EAAK1S,EAAI,GAAK0S,EAAKjN,EAAI,IACrDA,EAAIzF,EAIR,GAAIwjF,IAAqB,EAANE,EAEf,IAAK1jF,EAAIkK,EAAOlK,EAAIqa,EAAKra,GAAKgjF,EAAOS,EAAO3kF,EAAO+jF,OAAOc,WAAW3jF,EAAG0S,EAAK1S,GAAI0S,EAAK1S,EAAI,GAAIyjF,QAI9F,IAAKzjF,EAAIqa,EAAM2oE,EAAU94E,GAALlK,EAAYA,GAAKgjF,EAAOS,EAAO3kF,EAAO+jF,OAAOc,WAAW3jF,EAAG0S,EAAK1S,GAAI0S,EAAK1S,EAAI,GAAIyjF,GAGzG,OAAOA,GAKX3kF,EAAO+jF,OAAOe,aAAe,SAAU15E,EAAOmQ,GAE1C,IAAKnQ,EAAS,OAAOA,EAChBmQ,IAAOA,EAAMnQ,GAElB,IACI25E,EADAvjF,EAAI4J,EAER,GAII,GAFA25E,GAAQ,EAEHvjF,EAAEwjF,UAAYhlF,EAAO+jF,OAAOnsD,OAAOp2B,EAAGA,EAAEm1C,OAAmD,IAA1C32C,EAAO+jF,OAAOxjD,KAAK/+B,EAAE+6E,KAAM/6E,EAAGA,EAAEm1C,MASlFn1C,EAAIA,EAAEm1C,SARV,CAGI,GAFA32C,EAAO+jF,OAAOkB,WAAWzjF,IACzBA,EAAI+Z,EAAM/Z,EAAE+6E,QACF/6E,EAAEm1C,KAAQ,OAAO,KAC3BouC,GAAQ,SAMPA,GAASvjF,IAAM+Z,GAExB,OAAOA,GAKXvb,EAAO+jF,OAAOU,aAAe,SAAUS,EAAKX,EAAWL,EAAKx6E,EAAME,EAAMqY,EAAMkjE,GAE1E,GAAKD,EAAL,EAGKC,GAAQljE,GAAQjiB,EAAO+jF,OAAOqB,WAAWF,EAAKx7E,EAAME,EAAMqY,GAM/D,IAJA,IACIs6D,EAAM5lC,EADN1rC,EAAOi6E,EAIJA,EAAI3I,OAAS2I,EAAIvuC,MAKpB,GAHA4lC,EAAO2I,EAAI3I,KACX5lC,EAAOuuC,EAAIvuC,KAEP10B,EAAOjiB,EAAO+jF,OAAOsB,YAAYH,EAAKx7E,EAAME,EAAMqY,GAAQjiB,EAAO+jF,OAAOuB,MAAMJ,GAG9EX,EAAU39E,KAAK21E,EAAKr7E,EAAIgjF,GACxBK,EAAU39E,KAAKs+E,EAAIhkF,EAAIgjF,GACvBK,EAAU39E,KAAK+vC,EAAKz1C,EAAIgjF,GAExBlkF,EAAO+jF,OAAOkB,WAAWC,GAGzBA,EAAMvuC,EAAKA,KACX1rC,EAAO0rC,EAAKA,UAQhB,IAHAuuC,EAAMvuC,KAGM1rC,EACZ,CAESk6E,EAMa,IAATA,GAELD,EAAMllF,EAAO+jF,OAAOwB,uBAAuBL,EAAKX,EAAWL,GAC3DlkF,EAAO+jF,OAAOU,aAAaS,EAAKX,EAAWL,EAAKx6E,EAAME,EAAMqY,EAAM,IAIpD,IAATkjE,GAELnlF,EAAO+jF,OAAOyB,YAAYN,EAAKX,EAAWL,EAAKx6E,EAAME,EAAMqY,GAb3DjiB,EAAO+jF,OAAOU,aAAazkF,EAAO+jF,OAAOe,aAAaI,GAAMX,EAAWL,EAAKx6E,EAAME,EAAMqY,EAAM,GAgBlG,SAOZjiB,EAAO+jF,OAAOuB,MAAQ,SAAUJ,GAE5B,IAAIxjF,EAAIwjF,EAAI3I,KACR56E,EAAIujF,EACJtjF,EAAIsjF,EAAIvuC,KAEZ,GAAmC,GAA/B32C,EAAO+jF,OAAOxjD,KAAK7+B,EAAGC,EAAGC,GAAW,OAAO,EAK/C,IAFA,IAAIJ,EAAI0jF,EAAIvuC,KAAKA,KAEVn1C,IAAM0jF,EAAI3I,MACjB,CACI,GAAIv8E,EAAO+jF,OAAO0B,gBAAgB/jF,EAAEa,EAAGb,EAAEc,EAAGb,EAAEY,EAAGZ,EAAEa,EAAGZ,EAAEW,EAAGX,EAAEY,EAAGhB,EAAEe,EAAGf,EAAEgB,IAC1B,GAAzCxC,EAAO+jF,OAAOxjD,KAAK/+B,EAAE+6E,KAAM/6E,EAAGA,EAAEm1C,MAAc,OAAO,EACzDn1C,EAAIA,EAAEm1C,KAGV,OAAO,GAGX32C,EAAO+jF,OAAOsB,YAAc,SAAUH,EAAKx7E,EAAME,EAAMqY,GAEnD,IAAIvgB,EAAIwjF,EAAI3I,KACR56E,EAAIujF,EACJtjF,EAAIsjF,EAAIvuC,KAEZ,GAAmC,GAA/B32C,EAAO+jF,OAAOxjD,KAAK7+B,EAAGC,EAAGC,GAAW,OAAO,EAe/C,IAZA,IAAI8jF,EAAQhkF,EAAEa,EAAIZ,EAAEY,EAAKb,EAAEa,EAAIX,EAAEW,EAAIb,EAAEa,EAAIX,EAAEW,EAAMZ,EAAEY,EAAIX,EAAEW,EAAIZ,EAAEY,EAAIX,EAAEW,EACnEojF,EAAQjkF,EAAEc,EAAIb,EAAEa,EAAKd,EAAEc,EAAIZ,EAAEY,EAAId,EAAEc,EAAIZ,EAAEY,EAAMb,EAAEa,EAAIZ,EAAEY,EAAIb,EAAEa,EAAIZ,EAAEY,EACnEojF,EAAQlkF,EAAEa,EAAIZ,EAAEY,EAAKb,EAAEa,EAAIX,EAAEW,EAAIb,EAAEa,EAAIX,EAAEW,EAAMZ,EAAEY,EAAIX,EAAEW,EAAIZ,EAAEY,EAAIX,EAAEW,EACnEsjF,EAAQnkF,EAAEc,EAAIb,EAAEa,EAAKd,EAAEc,EAAIZ,EAAEY,EAAId,EAAEc,EAAIZ,EAAEY,EAAMb,EAAEa,EAAIZ,EAAEY,EAAIb,EAAEa,EAAIZ,EAAEY,EAGnEsjF,EAAO9lF,EAAO+jF,OAAOgC,OAAOL,EAAOC,EAAOj8E,EAAME,EAAMqY,GACtD+jE,EAAOhmF,EAAO+jF,OAAOgC,OAAOH,EAAOC,EAAOn8E,EAAME,EAAMqY,GAGtDzgB,EAAI0jF,EAAIe,MAELzkF,GAAKA,EAAE2T,GAAK6wE,GACnB,CACI,GAAIxkF,IAAM0jF,EAAI3I,MAAQ/6E,IAAM0jF,EAAIvuC,MAC5B32C,EAAO+jF,OAAO0B,gBAAgB/jF,EAAEa,EAAGb,EAAEc,EAAGb,EAAEY,EAAGZ,EAAEa,EAAGZ,EAAEW,EAAGX,EAAEY,EAAGhB,EAAEe,EAAGf,EAAEgB,IAC1B,GAAzCxC,EAAO+jF,OAAOxjD,KAAK/+B,EAAE+6E,KAAM/6E,EAAGA,EAAEm1C,MAAc,OAAO,EACzDn1C,EAAIA,EAAEykF,MAMV,IAFAzkF,EAAI0jF,EAAIgB,MAED1kF,GAAKA,EAAE2T,GAAK2wE,GACnB,CACI,GAAItkF,IAAM0jF,EAAI3I,MAAQ/6E,IAAM0jF,EAAIvuC,MAC5B32C,EAAO+jF,OAAO0B,gBAAgB/jF,EAAEa,EAAGb,EAAEc,EAAGb,EAAEY,EAAGZ,EAAEa,EAAGZ,EAAEW,EAAGX,EAAEY,EAAGhB,EAAEe,EAAGf,EAAEgB,IAC1B,GAAzCxC,EAAO+jF,OAAOxjD,KAAK/+B,EAAE+6E,KAAM/6E,EAAGA,EAAEm1C,MAAc,OAAO,EACzDn1C,EAAIA,EAAE0kF,MAGV,OAAO,GAKXlmF,EAAO+jF,OAAOwB,uBAAyB,SAAUn6E,EAAOm5E,EAAWL,GAE/D,IAAI1iF,EAAI4J,EACR,EACA,CACI,IAAI1J,EAAIF,EAAE+6E,KACN56E,EAAIH,EAAEm1C,KAAKA,KAGX32C,EAAO+jF,OAAOlsD,WAAWn2B,EAAGF,EAAGA,EAAEm1C,KAAMh1C,IAAM3B,EAAO+jF,OAAOoC,cAAczkF,EAAGC,IAAM3B,EAAO+jF,OAAOoC,cAAcxkF,EAAGD,KAEjH6iF,EAAU39E,KAAKlF,EAAER,EAAIgjF,GACrBK,EAAU39E,KAAKpF,EAAEN,EAAIgjF,GACrBK,EAAU39E,KAAKjF,EAAET,EAAIgjF,GAGrBlkF,EAAO+jF,OAAOkB,WAAWzjF,GACzBxB,EAAO+jF,OAAOkB,WAAWzjF,EAAEm1C,MAE3Bn1C,EAAI4J,EAAQzJ,GAEhBH,EAAIA,EAAEm1C,WACDn1C,IAAM4J,GAEf,OAAO5J,GAKXxB,EAAO+jF,OAAOyB,YAAc,SAAUp6E,EAAOm5E,EAAWL,EAAKx6E,EAAME,EAAMqY,GAGrE,IAAIvgB,EAAI0J,EACR,EACA,CAEI,IADA,IAAIzJ,EAAID,EAAEi1C,KAAKA,KACRh1C,IAAMD,EAAE66E,MACf,CACI,GAAI76E,EAAER,IAAMS,EAAET,GAAKlB,EAAO+jF,OAAOqC,gBAAgB1kF,EAAGC,GACpD,CAEI,IAAIC,EAAI5B,EAAO+jF,OAAOsC,aAAa3kF,EAAGC,GAStC,OANAD,EAAI1B,EAAO+jF,OAAOe,aAAapjF,EAAGA,EAAEi1C,MACpC/0C,EAAI5B,EAAO+jF,OAAOe,aAAaljF,EAAGA,EAAE+0C,MAGpC32C,EAAO+jF,OAAOU,aAAa/iF,EAAG6iF,EAAWL,EAAKx6E,EAAME,EAAMqY,QAC1DjiB,EAAO+jF,OAAOU,aAAa7iF,EAAG2iF,EAAWL,EAAKx6E,EAAME,EAAMqY,GAG9DtgB,EAAIA,EAAEg1C,KAEVj1C,EAAIA,EAAEi1C,WACDj1C,IAAM0J,IAKnBpL,EAAO+jF,OAAOS,eAAiB,SAAU5wE,EAAMqwE,EAAaI,EAAWH,GAEnE,IACIhjF,EAAGkxB,EAAKhnB,EAAOmQ,EAAK8/B,EADpBirC,EAAQ,GAGZ,IAAKplF,EAAI,EAAGkxB,EAAM6xD,EAAY9iF,OAAQD,EAAIkxB,EAAKlxB,IAE3CkK,EAAQ64E,EAAY/iF,GAAKgjF,EACzB3oE,EAAMra,EAAIkxB,EAAM,EAAI6xD,EAAY/iF,EAAI,GAAKgjF,EAAMtwE,EAAKzS,QACpDk6C,EAAOr7C,EAAO+jF,OAAOO,WAAW1wE,EAAMxI,EAAOmQ,EAAK2oE,GAAK,MAC1C7oC,EAAK1E,OAAQ0E,EAAK2pC,SAAU,GACzCsB,EAAM1/E,KAAK5G,EAAO+jF,OAAOwC,YAAYlrC,IAMzC,IAHAirC,EAAMlmD,KAAKpgC,EAAO+jF,OAAOyC,UAGpBtlF,EAAI,EAAGA,EAAIolF,EAAMnlF,OAAQD,IAE1BlB,EAAO+jF,OAAO0C,cAAcH,EAAMplF,GAAImjF,GACtCA,EAAYrkF,EAAO+jF,OAAOe,aAAaT,EAAWA,EAAU1tC,MAGhE,OAAO0tC,GAGXrkF,EAAO+jF,OAAOyC,SAAW,SAAU9kF,EAAGC,GAElC,OAAOD,EAAEa,EAAIZ,EAAEY,GAKnBvC,EAAO+jF,OAAO0C,cAAgB,SAAUC,EAAMrC,GAG1C,GADAA,EAAYrkF,EAAO+jF,OAAO4C,eAAeD,EAAMrC,GAE/C,CACI,IAAI1iF,EAAI3B,EAAO+jF,OAAOsC,aAAahC,EAAWqC,GAC9C1mF,EAAO+jF,OAAOe,aAAanjF,EAAGA,EAAEg1C,QAMxC32C,EAAO+jF,OAAO4C,eAAiB,SAAUD,EAAMrC,GAE3C,IAII5rD,EAJAj3B,EAAI6iF,EACJuC,EAAKF,EAAKnkF,EACVskF,EAAKH,EAAKlkF,EACVskF,GAAMn9E,EAAAA,EAOV,EACA,CACI,GAAIk9E,GAAMrlF,EAAEgB,GAAKqkF,GAAMrlF,EAAEm1C,KAAKn0C,EAC9B,CACI,IAAID,EAAIf,EAAEe,GAAKskF,EAAKrlF,EAAEgB,IAAMhB,EAAEm1C,KAAKp0C,EAAIf,EAAEe,IAAMf,EAAEm1C,KAAKn0C,EAAIhB,EAAEgB,GACxDD,GAAKqkF,GAAUE,EAAJvkF,IAEXukF,EAAKvkF,EACLk2B,EAAIj3B,EAAEe,EAAIf,EAAEm1C,KAAKp0C,EAAIf,EAAIA,EAAEm1C,MAGnCn1C,EAAIA,EAAEm1C,WACDn1C,IAAM6iF,GAEf,IAAK5rD,EAAK,OAAO,KAEjB,GAAIiuD,EAAKnkF,IAAMk2B,EAAEl2B,EAAK,OAAOk2B,EAAE8jD,KAQ/B,IAEIwK,EAFA97E,EAAOwtB,EACPuuD,EAASr9E,EAAAA,EAKb,IAFAnI,EAAIi3B,EAAEke,KAECn1C,IAAMyJ,GAEL27E,GAAMplF,EAAEe,GAAKf,EAAEe,GAAKk2B,EAAEl2B,GACtBvC,EAAO+jF,OAAO0B,gBAAgBoB,EAAKpuD,EAAEj2B,EAAIokF,EAAKE,EAAID,EAAIpuD,EAAEl2B,EAAGk2B,EAAEj2B,EAAGqkF,EAAKpuD,EAAEj2B,EAAIskF,EAAKF,EAAIC,EAAIrlF,EAAEe,EAAGf,EAAEgB,MAE/FukF,EAAM7kF,KAAK81B,IAAI6uD,EAAKrlF,EAAEgB,IAAMokF,EAAKplF,EAAEe,IAExBykF,GAAWD,IAAQC,GAAUxlF,EAAEe,EAAIk2B,EAAEl2B,IAAOvC,EAAO+jF,OAAOoC,cAAc3kF,EAAGklF,KAElFjuD,EAAIj3B,EACJwlF,EAASD,GAIjBvlF,EAAIA,EAAEm1C,KAGV,OAAOle,GAKXz4B,EAAO+jF,OAAOqB,WAAa,SAAUh6E,EAAO1B,EAAME,EAAMqY,GAGpD,IADA,IAAIzgB,EAAI4J,EAGQ,OAAR5J,EAAE2T,IAAc3T,EAAE2T,EAAInV,EAAO+jF,OAAOgC,OAAOvkF,EAAEe,EAAGf,EAAEgB,EAAGkH,EAAME,EAAMqY,IACrEzgB,EAAE0kF,MAAQ1kF,EAAE+6E,KACZ/6E,EAAEykF,MAAQzkF,EAAEm1C,MACZn1C,EAAIA,EAAEm1C,QACKvrC,IAEf5J,EAAE0kF,MAAMD,MAAQ,KAChBzkF,EAAE0kF,MAAQ,KAEVlmF,EAAO+jF,OAAOkD,WAAWzlF,IAQ7BxB,EAAO+jF,OAAOkD,WAAa,SAAU5rC,GAEjC,IAAIn6C,EAAGM,EAAG0lF,EAAGv5E,EAAGw5E,EAAMC,EAAWC,EAAOC,EACpCC,EAAS,EAEb,EACA,CAMI,IALA/lF,EAAI65C,EAEJ8rC,EADA9rC,EAAO,KAEP+rC,EAAY,EAEL5lF,GACP,CAII,IAHA4lF,IACAF,EAAI1lF,EAECN,EADLmmF,EAAQ,EACInmF,EAAIqmF,IAEZF,IACAH,EAAIA,EAAEjB,OAHc/kF,KASxB,IAFAomF,EAAQC,EAEO,EAARF,GAAsB,EAARC,GAAaJ,GAEhB,IAAVG,GAGAH,GADAv5E,EAAIu5E,GACEjB,MACNqB,KAEe,IAAVA,GAAgBJ,EAMhB1lF,EAAE2T,GAAK+xE,EAAE/xE,GAGd3T,GADAmM,EAAInM,GACEykF,MACNoB,MAKAH,GADAv5E,EAAIu5E,GACEjB,MACNqB,MAbA9lF,GADAmM,EAAInM,GACEykF,MACNoB,KAeAF,EAAQA,EAAKlB,MAAQt4E,EAClB0tC,EAAO1tC,EAEdA,EAAEu4E,MAAQiB,EACVA,EAAOx5E,EAGXnM,EAAI0lF,EAGRC,EAAKlB,MAAQ,KACbsB,GAAU,QACO,EAAZH,GAET,OAAO/rC,GAKXr7C,EAAO+jF,OAAOgC,OAAS,SAAUxjF,EAAGC,EAAGkH,EAAME,EAAMqY,GAgB/C,OAPA1f,EAAqB,aADrBA,EAAqB,YADrBA,EAAqB,YADrBA,EAAqB,WAHrBA,EAAI,OAASA,EAAImH,GAAQuY,GAGf1f,GAAK,IACLA,GAAK,IACLA,GAAK,IACLA,GAAK,KAKfC,EAAqB,aADrBA,EAAqB,YADrBA,EAAqB,YADrBA,EAAqB,WAPrBA,EAAI,OAASA,EAAIoH,GAAQqY,GAOfzf,GAAK,IACLA,GAAK,IACLA,GAAK,IACLA,GAAK,KAEE,GAKrBxC,EAAO+jF,OAAOwC,YAAc,SAAUn7E,GAIlC,IAFA,IAAI5J,EAAI4J,EACJo8E,EAAWp8E,EAGP5J,EAAEe,EAAIilF,EAASjlF,IAAKilF,EAAWhmF,IACnCA,EAAIA,EAAEm1C,QACKvrC,IAEf,OAAOo8E,GAKXxnF,EAAO+jF,OAAO0B,gBAAkB,SAAUgC,EAAIC,EAAIC,EAAIC,EAAI15E,EAAIC,EAAIiqD,EAAIC,GAElE,OAAwD,IAAhDnqD,EAAKkqD,IAAOsvB,EAAKrvB,IAAOovB,EAAKrvB,IAAOjqD,EAAKkqD,IACI,IAAhDovB,EAAKrvB,IAAOwvB,EAAKvvB,IAAOsvB,EAAKvvB,IAAOsvB,EAAKrvB,IACO,IAAhDsvB,EAAKvvB,IAAOjqD,EAAKkqD,IAAOnqD,EAAKkqD,IAAOwvB,EAAKvvB,IAKlDr4D,EAAO+jF,OAAOqC,gBAAkB,SAAU1kF,EAAGC,GAEzC,OAAO3B,EAAO+jF,OAAOnsD,OAAOl2B,EAAGC,IAAMD,EAAEi1C,KAAKz1C,IAAMS,EAAET,GAAKQ,EAAE66E,KAAKr7E,IAAMS,EAAET,IAAMlB,EAAO+jF,OAAO8D,kBAAkBnmF,EAAGC,IAC7G3B,EAAO+jF,OAAOoC,cAAczkF,EAAGC,IAAM3B,EAAO+jF,OAAOoC,cAAcxkF,EAAGD,IAAM1B,EAAO+jF,OAAO+D,aAAapmF,EAAGC,IAKhH3B,EAAO+jF,OAAOxjD,KAAO,SAAU/+B,EAAG0lF,EAAGxkF,GAEjC,OAAQwkF,EAAE1kF,EAAIhB,EAAEgB,IAAME,EAAEH,EAAI2kF,EAAE3kF,IAAM2kF,EAAE3kF,EAAIf,EAAEe,IAAMG,EAAEF,EAAI0kF,EAAE1kF,IAK9DxC,EAAO+jF,OAAOnsD,OAAS,SAAUiB,EAAIwI,GAEjC,OAAOxI,EAAGt2B,IAAM8+B,EAAG9+B,GAAKs2B,EAAGr2B,IAAM6+B,EAAG7+B,GAKxCxC,EAAO+jF,OAAOlsD,WAAa,SAAUgB,EAAIkvD,EAAI1mD,EAAI2mD,GAE7C,OAAwC,EAAjChoF,EAAO+jF,OAAOxjD,KAAK1H,EAAIkvD,EAAI1mD,IAA6C,EAAjCrhC,EAAO+jF,OAAOxjD,KAAK1H,EAAIkvD,EAAIC,IACpC,EAAjChoF,EAAO+jF,OAAOxjD,KAAKc,EAAI2mD,EAAInvD,IAA6C,EAAjC74B,EAAO+jF,OAAOxjD,KAAKc,EAAI2mD,EAAID,IAK1E/nF,EAAO+jF,OAAO8D,kBAAoB,SAAUnmF,EAAGC,GAE3C,IAAIH,EAAIE,EACR,EACA,CACI,GAAIF,EAAEN,IAAMQ,EAAER,GAAKM,EAAEm1C,KAAKz1C,IAAMQ,EAAER,GAAKM,EAAEN,IAAMS,EAAET,GAAKM,EAAEm1C,KAAKz1C,IAAMS,EAAET,GACjElB,EAAO+jF,OAAOlsD,WAAWr2B,EAAGA,EAAEm1C,KAAMj1C,EAAGC,GAAM,OAAO,EACxDH,EAAIA,EAAEm1C,WACDn1C,IAAME,GAEf,OAAO,GAKX1B,EAAO+jF,OAAOoC,cAAgB,SAAUzkF,EAAGC,GAEvC,OAAO3B,EAAO+jF,OAAOxjD,KAAK7+B,EAAE66E,KAAM76E,EAAGA,EAAEi1C,MAAQ,EACP,GAApC32C,EAAO+jF,OAAOxjD,KAAK7+B,EAAGC,EAAGD,EAAEi1C,OAAkD,GAApC32C,EAAO+jF,OAAOxjD,KAAK7+B,EAAGA,EAAE66E,KAAM56E,GACvE3B,EAAO+jF,OAAOxjD,KAAK7+B,EAAGC,EAAGD,EAAE66E,MAAQ,GAAKv8E,EAAO+jF,OAAOxjD,KAAK7+B,EAAGA,EAAEi1C,KAAMh1C,GAAK,GAKnF3B,EAAO+jF,OAAO+D,aAAe,SAAUpmF,EAAGC,GAMtC,IAJA,IAAIH,EAAIE,EACJm/B,GAAS,EACTu3B,GAAM12D,EAAEa,EAAIZ,EAAEY,GAAK,EACnB81D,GAAM32D,EAAEc,EAAIb,EAAEa,GAAK,EAGbhB,EAAEgB,EAAI61D,GAAS72D,EAAEm1C,KAAKn0C,EAAI61D,GAASD,GAAM52D,EAAEm1C,KAAKp0C,EAAIf,EAAEe,IAAM81D,EAAK72D,EAAEgB,IAAMhB,EAAEm1C,KAAKn0C,EAAIhB,EAAEgB,GAAKhB,EAAEe,IACjGs+B,GAAUA,IACZr/B,EAAIA,EAAEm1C,QACKj1C,IAEf,OAAOm/B,GAQX7gC,EAAO+jF,OAAOsC,aAAe,SAAU3kF,EAAGC,GAEtC,IAAI65B,EAAK,IAAIx7B,EAAO+jF,OAAOkE,KAAKvmF,EAAER,EAAGQ,EAAEa,EAAGb,EAAEc,GACxCk5B,EAAK,IAAI17B,EAAO+jF,OAAOkE,KAAKtmF,EAAET,EAAGS,EAAEY,EAAGZ,EAAEa,GACxC0lF,EAAKxmF,EAAEi1C,KACPwxC,EAAKxmF,EAAE46E,KAcX,OAZA76E,EAAEi1C,KAAOh1C,GACP46E,KAAO76E,GAET85B,EAAGmb,KAAOuxC,GACP3L,KAAO/gD,GAEVE,EAAGib,KAAOnb,GACP+gD,KAAO7gD,GAEVysD,EAAGxxC,KAAOjb,GACP6gD,KAAO4L,EAEHzsD,GAKX17B,EAAO+jF,OAAOc,WAAa,SAAU3jF,EAAGqB,EAAGC,EAAGmiF,GAE1C,IAAInjF,EAAI,IAAIxB,EAAO+jF,OAAOkE,KAAK/mF,EAAGqB,EAAGC,GAcrC,OAZKmiF,GAODnjF,EAAEm1C,KAAOguC,EAAKhuC,MACdn1C,EAAE+6E,KAAOoI,GACJhuC,KAAK4lC,KAAO/6E,EACjBmjF,EAAKhuC,KAAOn1C,IARZA,EAAE+6E,KAAO/6E,GACPm1C,KAAOn1C,EASNA,GAGXxB,EAAO+jF,OAAOkB,WAAa,SAAUzjF,GAEjCA,EAAEm1C,KAAK4lC,KAAO/6E,EAAE+6E,KAChB/6E,EAAE+6E,KAAK5lC,KAAOn1C,EAAEm1C,KAEZn1C,EAAE0kF,QAAS1kF,EAAE0kF,MAAMD,MAAQzkF,EAAEykF,OAC7BzkF,EAAEykF,QAASzkF,EAAEykF,MAAMC,MAAQ1kF,EAAE0kF,QAGrClmF,EAAO+jF,OAAOkE,KAAO,SAAU/mF,EAAGqB,EAAGC,GAGjCvD,KAAKiC,EAAIA,EAGTjC,KAAKsD,EAAIA,EACTtD,KAAKuD,EAAIA,EAGTvD,KAAKs9E,KAAO,KACZt9E,KAAK03C,KAAO,KAGZ13C,KAAKkW,EAAI,KAGTlW,KAAKinF,MAAQ,KACbjnF,KAAKgnF,MAAQ,KAGbhnF,KAAK+lF,SAAU,GAenB9lF,KAAKif,cAAgB,aASrBjf,KAAKif,cAAciqE,mBAAqB,EAWxClpF,KAAKif,cAAcgiE,eAAiB,SAAUxhE,EAAUpa,GAEpD,IAIIqa,EAJAna,EAAKF,EAAcE,GACnB8S,EAAahT,EAAcgT,WAC3BC,EAASjT,EAAciT,OACvBzL,EAASxH,EAAckT,cAAcmJ,gBAGtCjC,EAASlO,OAERvR,KAAKif,cAAcC,eAAeO,EAAUla,GAGhD,IAAI67C,EAAQ3hC,EAASN,OAAO5Z,EAAGiP,IAG/B,GAAI4sC,EAOJ,IAAK,IAAIp/C,EAAI,EAAGA,EAAIo/C,EAAM1sC,KAAKzS,OAAQD,IAET,IAAvBo/C,EAAM1sC,KAAK1S,GAAGqe,MAEbX,EAAY0hC,EAAM1sC,KAAK1S,GAEvBqD,EAAcuT,eAAewG,YAAYK,EAAUC,EAAWra,GAG9DE,EAAG+a,aAAa/a,EAAGgb,aAAc,EAAGhb,EAAGib,eAAiD,GAAhCd,EAAU/M,QAAQ1Q,OAAS,IAEnFoD,EAAcuT,eAAeyG,WAAWI,EAAUC,EAAWra,KAI7Dqa,EAAY0hC,EAAM1sC,KAAK1S,GAEvBqD,EAAckT,cAAcwI,UAAUlU,GACtCA,EAASxH,EAAckT,cAAcmJ,gBACrCnc,EAAG8O,iBAAiBxH,EAAOgK,mBAAmB,EAAO4I,EAAS5e,eAAeogB,SAAQ,IAErF1b,EAAGyb,UAAUnU,EAAO0I,MAAO,GAE3BhQ,EAAG2b,UAAUrU,EAAOsF,iBAAkBkG,EAAWhV,GAAIgV,EAAW/U,GAChEiC,EAAG2b,UAAUrU,EAAOuF,cAAekG,EAAOjV,GAAIiV,EAAOhV,GAErDiC,EAAG4b,WAAWtU,EAAOmK,UAAWlW,EAAOsgB,MAAMC,cAAc5B,EAAS9S,OAEpEpH,EAAGyb,UAAUnU,EAAOtM,MAAOkf,EAAS7e,YAEpC2E,EAAG+b,WAAW/b,EAAGgc,aAAc7B,EAAUxD,QAEzC3W,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO,GAAO,GAC1Elc,EAAGic,oBAAoB3U,EAAO4F,eAAgB,EAAGlN,EAAGkc,OAAO,EAAM,GAAO,GAGxElc,EAAG+b,WAAW/b,EAAGoc,qBAAsBjC,EAAUkC,aACjDrc,EAAG+a,aAAa/a,EAAGqb,eAAgBlB,EAAU/M,QAAQ1Q,OAAQsD,EAAGib,eAAgB,KAc5FxgB,KAAKif,cAAcC,eAAiB,SAAUO,EAAUla,GAGpD,IAQIvD,EAoBA0d,EA5BA0hC,EAAQ3hC,EAASN,OAAO5Z,EAAGiP,IAW/B,GARI4sC,IAASA,EAAQ3hC,EAASN,OAAO5Z,EAAGiP,IAAM,CAAC20E,UAAW,EAAGz0E,KAAM,GAAInP,GAAIA,IAG3Eka,EAASlO,OAAQ,EAKdkO,EAAS2pE,WACZ,CAII,IAHA3pE,EAAS2pE,YAAa,EAGjBpnF,EAAI,EAAGA,EAAIo/C,EAAM1sC,KAAKzS,OAAQD,IACnC,CACI,IAAI6mD,EAAezH,EAAM1sC,KAAK1S,GAC9B6mD,EAAatgB,QACbvoC,KAAKif,cAAcoqE,iBAAiB3hF,KAAKmhD,GAI7CzH,EAAM1sC,KAAO,GACb0sC,EAAM+nC,UAAY,EAUtB,IAAKnnF,EAAIo/C,EAAM+nC,UAAWnnF,EAAIyd,EAASopC,aAAa5mD,OAAQD,IAC5D,CACI,IAAI0S,EAAO+K,EAASopC,aAAa7mD,GAEjC,GAAI0S,EAAKZ,OAAShT,EAAOquB,QACzB,CAaI,GAXAza,EAAK+rB,OAAS/rB,EAAKq0C,MAAMtoB,OAAO7S,QAC7BlZ,EAAKq0C,MAAMxnB,SAGP7sB,EAAK+rB,OAAO,KAAO/rB,EAAK+rB,OAAO/rB,EAAK+rB,OAAOx+B,OAAS,IAAMyS,EAAK+rB,OAAO,KAAO/rB,EAAK+rB,OAAO/rB,EAAK+rB,OAAOx+B,OAAS,IAE7GyS,EAAK+rB,OAAO/4B,KAAKgN,EAAK+rB,OAAO,GAAI/rB,EAAK+rB,OAAO,KAKlD/rB,EAAKo0C,KAEJ,GAAGp0C,EAAK+rB,OAAOx+B,QAAUjC,KAAKif,cAAciqE,mBAExC,GAAGx0E,EAAK+rB,OAAOx+B,OAAiD,EAAxCjC,KAAKif,cAAciqE,mBAEvCxpE,EAAY1f,KAAKif,cAAcqqE,WAAWloC,EAAO,GAExBphD,KAAKif,cAAcsqE,UAAU70E,EAAMgL,KAOxDA,EAAY1f,KAAKif,cAAcqqE,WAAWloC,EAAO,GACjDphD,KAAKif,cAAcuqE,iBAAiB90E,EAAMgL,SAK9CA,EAAY1f,KAAKif,cAAcqqE,WAAWloC,EAAO,GACjDphD,KAAKif,cAAcuqE,iBAAiB90E,EAAMgL,GAKlC,EAAjBhL,EAAK4tE,YAEJ5iE,EAAY1f,KAAKif,cAAcqqE,WAAWloC,EAAO,GACjDphD,KAAKif,cAAcwqE,UAAU/0E,EAAMgL,SAKvCA,EAAY1f,KAAKif,cAAcqqE,WAAWloC,EAAO,GAE7C1sC,EAAKZ,OAAShT,EAAO+uB,UAErB7vB,KAAKif,cAAcyqE,eAAeh1E,EAAMgL,GAEnChL,EAAKZ,OAAShT,EAAO8uB,QAAUlb,EAAKZ,OAAShT,EAAOyuB,QAEzDvvB,KAAKif,cAAc0qE,YAAYj1E,EAAMgL,GAEhChL,EAAKZ,OAAShT,EAAOmvB,kBAE1BjwB,KAAKif,cAAc2qE,sBAAsBl1E,EAAMgL,GAIvD0hC,EAAM+nC,YAIV,IAAKnnF,EAAI,EAAGA,EAAIo/C,EAAM1sC,KAAKzS,OAAQD,KAE/B0d,EAAY0hC,EAAM1sC,KAAK1S,IACVuP,OAASmO,EAAUmqE,UAWxC7pF,KAAKif,cAAcqqE,WAAa,SAAUloC,EAAOttC,GAE7C,IAAI4L,EAsBJ,OApBI0hC,EAAM1sC,KAAKzS,SAQXyd,EAAY0hC,EAAM1sC,KAAK0sC,EAAM1sC,KAAKzS,OAAS,IAE9Boe,OAASvM,GAAiB,IAATA,KAR9B4L,EAAY1f,KAAKif,cAAcoqE,iBAAiBxnE,OAAS,IAAI7hB,KAAK8pF,kBAAkB1oC,EAAM77C,KAChF8a,KAAOvM,EACjBstC,EAAM1sC,KAAKhN,KAAKgY,IAcpBA,EAAUnO,OAAQ,EAEXmO,GAYX1f,KAAKif,cAAcyqE,eAAiB,SAAU7gC,EAAcnpC,GAOxD,IAAIqqE,EAAWlhC,EAAaE,MACxB1lD,EAAI0mF,EAAS1mF,EACbC,EAAIymF,EAASzmF,EACbmB,EAAQslF,EAAStlF,MACjBC,EAASqlF,EAASrlF,OAEtB,GAAGmkD,EAAaC,KAChB,CACI,IAAI5xC,EAAQpW,EAAOsgB,MAAMC,cAAcwnC,EAAamhC,WAChDzpF,EAAQsoD,EAAaohC,UAErBzmF,EAAI0T,EAAM,GAAK3W,EACfmb,EAAIxE,EAAM,GAAK3W,EACfkC,EAAIyU,EAAM,GAAK3W,EAEf2pF,EAAQxqE,EAAU+gB,OAClB9tB,EAAU+M,EAAU/M,QAEpBw3E,EAAUD,EAAMjoF,OAAS,EAG7BioF,EAAMxiF,KAAKrE,EAAGC,GACd4mF,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKrE,EAAIoB,EAAOnB,GACtB4mF,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKrE,EAAIC,EAAIoB,GACnBwlF,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKrE,EAAIoB,EAAOnB,EAAIoB,GAC1BwlF,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAGpBoS,EAAQjL,KAAKyiF,EAASA,EAASA,EAAU,EAAGA,EAAU,EAAGA,EAAU,EAAGA,EAAU,GAGpF,GAAIthC,EAAay5B,UACjB,CACI,IAAI8H,EAAavhC,EAAapoB,OAE9BooB,EAAapoB,OAAS,CAAEp9B,EAAGC,EACvBD,EAAIoB,EAAOnB,EACXD,EAAIoB,EAAOnB,EAAIoB,EACfrB,EAAGC,EAAIoB,EACPrB,EAAGC,GAEPtD,KAAKif,cAAcwqE,UAAU5gC,EAAcnpC,GAE3CmpC,EAAapoB,OAAS2pD,IAa9BpqF,KAAKif,cAAc2qE,sBAAwB,SAAU/gC,EAAcnpC,GAE/D,IAAI2qE,EAAYxhC,EAAaE,MACzB1lD,EAAIgnF,EAAUhnF,EACdC,EAAI+mF,EAAU/mF,EACdmB,EAAQ4lF,EAAU5lF,MAClBC,EAAS2lF,EAAU3lF,OAEnB2yB,EAASgzD,EAAUhzD,OAEnBizD,EAAY,GAOhB,GANAA,EAAU5iF,KAAKrE,EAAGC,EAAI+zB,GAItBizD,GADAA,GADAA,GADAA,EAAYA,EAAU33D,OAAO3yB,KAAKif,cAAcsrE,qBAAqBlnF,EAAGC,EAAIoB,EAAS2yB,EAAQh0B,EAAGC,EAAIoB,EAAQrB,EAAIg0B,EAAQ/zB,EAAIoB,KACtGiuB,OAAO3yB,KAAKif,cAAcsrE,qBAAqBlnF,EAAIoB,EAAQ4yB,EAAQ/zB,EAAIoB,EAAQrB,EAAIoB,EAAOnB,EAAIoB,EAAQrB,EAAIoB,EAAOnB,EAAIoB,EAAS2yB,KAC9H1E,OAAO3yB,KAAKif,cAAcsrE,qBAAqBlnF,EAAIoB,EAAOnB,EAAI+zB,EAAQh0B,EAAIoB,EAAOnB,EAAGD,EAAIoB,EAAQ4yB,EAAQ/zB,KACxGqvB,OAAO3yB,KAAKif,cAAcsrE,qBAAqBlnF,EAAIg0B,EAAQ/zB,EAAGD,EAAGC,EAAGD,EAAGC,EAAI+zB,IAE7FwxB,EAAaC,KACjB,CACI,IAAI5xC,EAAQpW,EAAOsgB,MAAMC,cAAcwnC,EAAamhC,WAChDzpF,EAAQsoD,EAAaohC,UAErBzmF,EAAI0T,EAAM,GAAK3W,EACfmb,EAAIxE,EAAM,GAAK3W,EACfkC,EAAIyU,EAAM,GAAK3W,EAEf2pF,EAAQxqE,EAAU+gB,OAClB9tB,EAAU+M,EAAU/M,QAEpB63E,EAASN,EAAMjoF,OAAS,EAExBojF,EAAYvkF,EAAO+jF,OAAOC,YAAYwF,EAAW,KAAM,GAEvDtoF,EAAI,EAER,IAAKA,EAAI,EAAGA,EAAIqjF,EAAUpjF,OAAQD,GAAK,EAEnC2Q,EAAQjL,KAAK29E,EAAUrjF,GAAKwoF,GAC5B73E,EAAQjL,KAAK29E,EAAUrjF,GAAKwoF,GAC5B73E,EAAQjL,KAAK29E,EAAUrjF,EAAI,GAAKwoF,GAChC73E,EAAQjL,KAAK29E,EAAUrjF,EAAI,GAAKwoF,GAChC73E,EAAQjL,KAAK29E,EAAUrjF,EAAI,GAAKwoF,GAGpC,IAAKxoF,EAAI,EAAGA,EAAIsoF,EAAUroF,OAAQD,IAE9BkoF,EAAMxiF,KAAK4iF,EAAUtoF,GAAIsoF,IAAYtoF,GAAIwB,EAAGkY,EAAGjZ,EAAGlC,GAI1D,GAAIsoD,EAAay5B,UACjB,CACI,IAAI8H,EAAavhC,EAAapoB,OAE9BooB,EAAapoB,OAAS6pD,EAEtBtqF,KAAKif,cAAcwqE,UAAU5gC,EAAcnpC,GAE3CmpC,EAAapoB,OAAS2pD,IAoB9BpqF,KAAKif,cAAcsrE,qBAAuB,SAAUE,EAAOC,EAAOC,EAAKC,EAAKC,EAAKC,GAE7E,IAAIC,EACAC,EACAC,EACAC,EACA7nF,EACAC,EAEAm9B,EAAS,GAEb,SAAS0qD,EAAOC,EAAKC,EAAIC,GAIrB,OAAOF,GAFIC,EAAKD,GAEIE,EAIxB,IADA,IAAI7jF,EAAI,EACCzF,EAAI,EAAGA,GAXR,GAWgBA,IAKpB+oF,EAAKI,EAAMV,EAAQE,EAHnBljF,EAAIzF,EAbA,IAiBJgpF,EAAKG,EAAMT,EAAQE,EAAMnjF,GACzBwjF,EAAKE,EAAMR,EAAME,EAAMpjF,GACvByjF,EAAKC,EAAMP,EAAME,EAAMrjF,GAGvBpE,EAAI8nF,EAAMJ,EAAKE,EAAKxjF,GACpBnE,EAAI6nF,EAAMH,EAAKE,EAAKzjF,GAEpBg5B,EAAO/4B,KAAKrE,EAAGC,GAEnB,OAAOm9B,GAYXzgC,KAAKif,cAAc0qE,YAAc,SAAU9gC,EAAcnpC,GAGrD,IAGIjb,EACAC,EAJA6mF,EAAa1iC,EAAaE,MAC1B1lD,EAAIkoF,EAAWloF,EACfC,EAAIioF,EAAWjoF,EAQfoB,EAHAmkD,EAAa/0C,OAAShT,EAAO8uB,QAE7BnrB,EAAQ8mF,EAAWl0D,OACVk0D,EAAWl0D,SAIpB5yB,EAAQ8mF,EAAW9mF,MACV8mF,EAAW7mF,QAGxB,IACI8mF,EAAiB,EAAVxoF,KAAKk0B,GADA,GAGZl1B,EAAI,EAER,GAAG6mD,EAAaC,KAChB,CACI,IAAI5xC,EAAQpW,EAAOsgB,MAAMC,cAAcwnC,EAAamhC,WAChDzpF,EAAQsoD,EAAaohC,UAErBzmF,EAAI0T,EAAM,GAAK3W,EACfmb,EAAIxE,EAAM,GAAK3W,EACfkC,EAAIyU,EAAM,GAAK3W,EAEf2pF,EAAQxqE,EAAU+gB,OAClB9tB,EAAU+M,EAAU/M,QAEpB63E,EAASN,EAAMjoF,OAAS,EAI5B,IAFA0Q,EAAQjL,KAAK8iF,GAERxoF,EAAI,EAAGA,EAAIypF,GAAezpF,IAE3BkoF,EAAMxiF,KAAKrE,EAAEC,EAAGE,EAAGkY,EAAGjZ,EAAGlC,GAEzB2pF,EAAMxiF,KAAKrE,EAAIL,KAAKG,IAAIqoF,EAAMxpF,GAAKyC,EAC/BnB,EAAIN,KAAKI,IAAIooF,EAAMxpF,GAAK0C,EACxBlB,EAAGkY,EAAGjZ,EAAGlC,GAEboS,EAAQjL,KAAK8iF,IAAUA,KAG3B73E,EAAQjL,KAAK8iF,EAAS,GAG1B,GAAG3hC,EAAay5B,UAChB,CACI,IAAI8H,EAAavhC,EAAapoB,OAI9B,IAFAooB,EAAapoB,OAAS,GAEjBz+B,EAAI,EAAGA,EAAIypF,GAAezpF,IAE3B6mD,EAAapoB,OAAO/4B,KAAKrE,EAAIL,KAAKG,IAAIqoF,EAAMxpF,GAAKyC,EAC7CnB,EAAIN,KAAKI,IAAIooF,EAAMxpF,GAAK0C,GAGhC1E,KAAKif,cAAcwqE,UAAU5gC,EAAcnpC,GAE3CmpC,EAAapoB,OAAS2pD,IAa9BpqF,KAAKif,cAAcwqE,UAAY,SAAU5gC,EAAcnpC,GAGnD,IAAI1d,EAAI,EACJy+B,EAASooB,EAAapoB,OAC1B,GAAqB,IAAlBA,EAAOx+B,OAAV,CAGA,GAAG4mD,EAAay5B,UAAY,EAExB,IAAKtgF,EAAI,EAAGA,EAAIy+B,EAAOx+B,OAAQD,IAE3By+B,EAAOz+B,IAAM,GAKrB,IAAI0pF,EAAa,IAAI1rF,KAAKG,MAAMsgC,EAAO,GAAIA,EAAO,IAC9CkrD,EAAY,IAAI3rF,KAAKG,MAAMsgC,EAAOA,EAAOx+B,OAAS,GAAIw+B,EAAOA,EAAOx+B,OAAS,IAGjF,GAAGypF,EAAWroF,IAAMsoF,EAAUtoF,GAAKqoF,EAAWpoF,IAAMqoF,EAAUroF,EAC9D,EAEIm9B,EAASA,EAAO7S,SAET/L,MACP4e,EAAO5e,MAIP,IAAI+pE,GAFJD,EAAY,IAAI3rF,KAAKG,MAAMsgC,EAAOA,EAAOx+B,OAAS,GAAIw+B,EAAOA,EAAOx+B,OAAS,KAEnDoB,EAAmC,IAA9BqoF,EAAWroF,EAAIsoF,EAAUtoF,GACpDwoF,EAAYF,EAAUroF,EAAmC,IAA9BooF,EAAWpoF,EAAIqoF,EAAUroF,GAExDm9B,EAAOqrD,QAAQF,EAAWC,GAC1BprD,EAAO/4B,KAAKkkF,EAAWC,GAG3B,IAgBI3yB,EAAIC,EAAI4yB,EAAKC,EAAKC,EAAKC,EAAKC,EAAKC,EACjCC,EAAOC,EAAOC,EAAQC,EAAQC,EAAQC,EACtCrwD,EAAIE,EAAIE,EAAIH,EAAIE,EAAIE,EACpBC,EAAcgwD,EAnBdzC,EAAQxqE,EAAU+gB,OAClB9tB,EAAU+M,EAAU/M,QACpB1Q,EAASw+B,EAAOx+B,OAAS,EACzB2qF,EAAansD,EAAOx+B,OACpB4qF,EAAa3C,EAAMjoF,OAAS,EAG5BwC,EAAQokD,EAAay5B,UAAY,EAGjCprE,EAAQpW,EAAOsgB,MAAMC,cAAcwnC,EAAaikC,WAChDvsF,EAAQsoD,EAAakkC,UACrBvpF,EAAI0T,EAAM,GAAK3W,EACfmb,EAAIxE,EAAM,GAAK3W,EACfkC,EAAIyU,EAAM,GAAK3W,EA8BnB,IAvBAwrF,EAAMtrD,EAAO,GACburD,EAAMvrD,EAAO,GAEbwrD,EAAMxrD,EAAO,GAGb4rD,IAAUL,GAFVE,EAAMzrD,EAAO,KAGb6rD,EAAQP,EAAME,EAIdI,GAFAM,EAAO3pF,KAAKS,KAAK4oF,EAAQA,EAAQC,EAAQA,GAGzCA,GAASK,EACTN,GAAS5nF,EACT6nF,GAAS7nF,EAGTylF,EAAMxiF,KAAKqkF,EAAMM,EAAQL,EAAMM,EAC3B9oF,EAAGkY,EAAGjZ,EAAGlC,GAEb2pF,EAAMxiF,KAAKqkF,EAAMM,EAAQL,EAAMM,EAC3B9oF,EAAGkY,EAAGjZ,EAAGlC,GAERyB,EAAI,EAAGA,EAAIC,EAAS,EAAGD,IAExB+pF,EAAMtrD,EAAiB,GAATz+B,EAAI,IAClBgqF,EAAMvrD,EAAiB,GAATz+B,EAAI,GAAS,GAE3BiqF,EAAMxrD,EAAa,EAAN,GACbyrD,EAAMzrD,EAAa,EAAN,EAAU,GAEvB0rD,EAAM1rD,EAAiB,GAATz+B,EAAI,IAClBoqF,EAAM3rD,EAAiB,GAATz+B,EAAI,GAAS,GAE3BqqF,IAAUL,EAAME,GAChBI,EAAQP,EAAME,EAGdI,GADAM,EAAO3pF,KAAKS,KAAK4oF,EAAQA,EAAQC,EAAQA,GAEzCA,GAASK,EACTN,GAAS5nF,EACT6nF,GAAS7nF,EAET8nF,IAAWL,EAAME,GACjBI,EAASP,EAAME,EAGfI,GADAI,EAAO3pF,KAAKS,KAAK8oF,EAASA,EAASC,EAASA,GAE5CA,GAAUG,EAMVlwD,IAAO4vD,EAAQN,KAASO,EAAQJ,KAASG,EAAQJ,KAASK,EAAQN,GAGlEtvD,KARA6vD,GAAU9nF,GAQM0nF,MAPhBK,GAAU/nF,GAOwBynF,KAASK,EAASN,KAASO,EAASJ,GAEtEzvD,GAPAN,GAAOiwD,EAAQN,IAASM,EAAQJ,KAIhC1vD,GAAO+vD,EAASN,IAASM,EAASJ,KADlC7vD,GAAOkwD,EAASJ,IAASI,EAASN,KAFlC3vD,GAAO8vD,EAAQJ,IAASI,EAAQN,IAQ7B/oF,KAAK81B,IAAI6D,GAAS,IAEjBA,GAAS,KACTutD,EAAMxiF,KAAKukF,EAAMI,EAAQH,EAAMI,EAC3B9oF,EAAGkY,EAAGjZ,EAAGlC,GAEb2pF,EAAMxiF,KAAKukF,EAAMI,EAAQH,EAAMI,EAC3B9oF,EAAGkY,EAAGjZ,EAAGlC,IAUN,QALX24D,GAAM38B,EAAKG,EAAKF,EAAKC,GAAME,GAGbsvD,IAAQ/yB,EAAK+yB,KAF3B9yB,GAAM78B,EAAKG,EAAKJ,EAAKK,GAAMC,GAEauvD,IAAQ/yB,EAAK+yB,IAIjDO,EAASJ,EAAQE,EACjBG,EAASJ,EAAQE,EAGjBC,GADAE,EAAO3pF,KAAKS,KAAKgpF,EAASA,EAASC,EAASA,GAE5CA,GAAUC,EACVF,GAAUhoF,EACVioF,GAAUjoF,EAEVylF,EAAMxiF,KAAKukF,EAAMQ,EAAQP,EAAMQ,GAC/BxC,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKukF,EAAMQ,EAAQP,EAAMQ,GAC/BxC,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKukF,EAAMQ,EAAQP,EAAMQ,GAC/BxC,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpBqsF,MAIA1C,EAAMxiF,KAAKwxD,EAAKC,GAChB+wB,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKukF,GAAO/yB,EAAK+yB,GAAMC,GAAO/yB,EAAK+yB,IACzChC,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,IA2B5B,IAvBAwrF,EAAMtrD,EAAsB,GAAdx+B,EAAS,IACvB+pF,EAAMvrD,EAAsB,GAAdx+B,EAAS,GAAS,GAEhCgqF,EAAMxrD,EAAsB,GAAdx+B,EAAS,IAGvBoqF,IAAUL,GAFVE,EAAMzrD,EAAsB,GAAdx+B,EAAS,GAAS,KAGhCqqF,EAAQP,EAAME,EAGdI,GADAM,EAAO3pF,KAAKS,KAAK4oF,EAAQA,EAAQC,EAAQA,GAEzCA,GAASK,EACTN,GAAS5nF,EACT6nF,GAAS7nF,EAETylF,EAAMxiF,KAAKukF,EAAMI,EAAQH,EAAMI,GAC/BpC,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpB2pF,EAAMxiF,KAAKukF,EAAMI,EAAQH,EAAMI,GAC/BpC,EAAMxiF,KAAKlE,EAAGkY,EAAGjZ,EAAGlC,GAEpBoS,EAAQjL,KAAKmlF,GAER7qF,EAAI,EAAGA,EAAI4qF,EAAY5qF,IAExB2Q,EAAQjL,KAAKmlF,KAGjBl6E,EAAQjL,KAAKmlF,EAAa,KAY9B7sF,KAAKif,cAAcuqE,iBAAmB,SAAU3gC,EAAcnpC,GAG1D,IAAI+gB,EAASooB,EAAapoB,OAAO7S,QACjC,KAAG6S,EAAOx+B,OAAS,GAAnB,CAGA,IAAI0Q,EAAU+M,EAAU/M,QACxB+M,EAAU+gB,OAASA,EACnB/gB,EAAUnf,MAAQsoD,EAAaohC,UAC/BvqE,EAAUxI,MAAQpW,EAAOsgB,MAAMC,cAAcwnC,EAAamhC,WAc1D,IATA,IAMI3mF,EAAEC,EANFkH,EAAOC,EAAAA,EACPE,GAAQF,EAAAA,EAERC,EAAOD,EAAAA,EACPG,GAAQH,EAAAA,EAKHzI,EAAI,EAAGA,EAAIy+B,EAAOx+B,OAAQD,GAAK,EAKpCwI,GAHAnH,EAAIo9B,EAAOz+B,IAGAwI,EAAOnH,EAAImH,EACtBG,EAAWA,EAAJtH,EAAWA,EAAIsH,EAEtBD,GALApH,EAAIm9B,EAAOz+B,EAAI,IAKJ0I,EAAOpH,EAAIoH,EACtBE,EAAWA,EAAJtH,EAAWA,EAAIsH,EAI1B61B,EAAO/4B,KAAK8C,EAAME,EACdC,EAAMD,EACNC,EAAMC,EACNJ,EAAMI,GAKV,IAAI3I,EAASw+B,EAAOx+B,OAAS,EAC7B,IAAKD,EAAI,EAAGA,EAAIC,EAAQD,IAEpB2Q,EAAQjL,KAAK1F,KAarBhC,KAAKif,cAAcsqE,UAAY,SAAU1gC,EAAcnpC,GAEnD,IAAI+gB,EAASooB,EAAapoB,OAE1B,KAAGA,EAAOx+B,OAAS,GAAnB,CAGA,IAAIioF,EAAQxqE,EAAU+gB,OAClB9tB,EAAU+M,EAAU/M,QAEpB1Q,EAASw+B,EAAOx+B,OAAS,EAGzBiV,EAAQpW,EAAOsgB,MAAMC,cAAcwnC,EAAamhC,WAChDzpF,EAAQsoD,EAAaohC,UACrBzmF,EAAI0T,EAAM,GAAK3W,EACfmb,EAAIxE,EAAM,GAAK3W,EACfkC,EAAIyU,EAAM,GAAK3W,EAEf8kF,EAAYvkF,EAAO+jF,OAAOC,YAAYrkD,EAAQ,KAAM,GAExD,IAAI4kD,EAAa,OAAO,EAExB,IAAI8E,EAAUD,EAAMjoF,OAAS,EAEzBD,EAAI,EAER,IAAKA,EAAI,EAAGA,EAAIqjF,EAAUpjF,OAAQD,GAAK,EAEnC2Q,EAAQjL,KAAK29E,EAAUrjF,GAAKmoF,GAC5Bx3E,EAAQjL,KAAK29E,EAAUrjF,GAAKmoF,GAC5Bx3E,EAAQjL,KAAK29E,EAAUrjF,EAAI,GAAKmoF,GAChCx3E,EAAQjL,KAAK29E,EAAUrjF,EAAI,GAAKmoF,GAChCx3E,EAAQjL,KAAK29E,EAAUrjF,EAAI,GAAKmoF,GAGpC,IAAKnoF,EAAI,EAAGA,EAAIC,EAAQD,IAEpBkoF,EAAMxiF,KAAK+4B,EAAW,EAAJz+B,GAAQy+B,EAAW,EAAJz+B,EAAQ,GACrCwB,EAAGkY,EAAGjZ,EAAGlC,GAGjB,OAAO,IAGXP,KAAKif,cAAcoqE,iBAAmB,GAOtCrpF,KAAK8pF,kBAAoB,SAAUvkF,GAE/BxF,KAAKwF,GAAKA,EAGVxF,KAAKmX,MAAQ,CAAE,EAAE,EAAE,GACnBnX,KAAK0gC,OAAS,GACd1gC,KAAK4S,QAAU,GACf5S,KAAKmc,OAAS3W,EAAG4e,eACjBpkB,KAAK6hB,YAAcrc,EAAG4e,eACtBpkB,KAAKsgB,KAAO,EACZtgB,KAAKQ,MAAQ,EACbR,KAAKwR,OAAQ,GAMjBvR,KAAK8pF,kBAAkBloF,UAAU2mC,MAAQ,WAErCxoC,KAAK0gC,OAAS,GACd1gC,KAAK4S,QAAU,IAMnB3S,KAAK8pF,kBAAkBloF,UAAUioF,OAAS,WAEtC,IAAItkF,EAAKxF,KAAKwF,GAGdxF,KAAKitF,SAAW,IAAI1pE,aAAavjB,KAAK0gC,QAEtCl7B,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKmc,QACpC3W,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKitF,SAAUznF,EAAG8e,aAEjDtkB,KAAKktF,WAAa,IAAIxpE,YAAY1jB,KAAK4S,SAEvCpN,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK6hB,aAC5Crc,EAAG6e,WAAW7e,EAAGoc,qBAAsB5hB,KAAKktF,WAAY1nF,EAAG8e,aAE3DtkB,KAAKwR,OAAQ,GAajBvR,KAAKyqB,eAAiB,aAYtBzqB,KAAKyqB,eAAew2D,eAAiB,SAAUxhE,EAAU/R,GAErD,IAAI9M,EAAa6e,EAAS7e,WAEtB6e,EAASlO,QAETxR,KAAKmtF,mBAAmBztE,GACxBA,EAASlO,OAAQ,GAGrB,IAAK,IAAIvP,EAAI,EAAGA,EAAIyd,EAASopC,aAAa5mD,OAAQD,IAClD,CACI,IAAI0S,EAAO+K,EAASopC,aAAa7mD,GAC7B+mD,EAAQr0C,EAAKq0C,MAEbihC,EAAYt1E,EAAKy4E,UACjBL,EAAYp4E,EAAK04E,UAIrB,GAFA1/E,EAAQ40E,UAAY5tE,EAAK4tE,UAErB5tE,EAAKZ,OAAShT,EAAOquB,QACzB,CACIzhB,EAAQu0E,YAER,IAAIxhD,EAASsoB,EAAMtoB,OAEnB/yB,EAAQ00E,OAAO3hD,EAAO,GAAIA,EAAO,IAEjC,IAAK,IAAIh5B,EAAI,EAAGA,EAAIg5B,EAAOx+B,OAAS,EAAGwF,IAEnCiG,EAAQ20E,OAAO5hD,EAAW,EAAJh5B,GAAQg5B,EAAW,EAAJh5B,EAAQ,IAG7CshD,EAAMxnB,QAEN7zB,EAAQ20E,OAAO5hD,EAAO,GAAIA,EAAO,IAIjCA,EAAO,KAAOA,EAAOA,EAAOx+B,OAAS,IAAMw+B,EAAO,KAAOA,EAAOA,EAAOx+B,OAAS,IAEhFyL,EAAQy0E,YAGRztE,EAAKo0C,OAELp7C,EAAQG,YAAc6G,EAAKu1E,UAAYrpF,EACvC8M,EAAQqd,UAAY,KAAO,SAAuB,EAAZi/D,GAAeh/D,SAAS,KAAKC,QAAQ,GAC3Evd,EAAQo7C,QAGRp0C,EAAK4tE,YAEL50E,EAAQG,YAAc6G,EAAKq4E,UAAYnsF,EACvC8M,EAAQ60E,YAAc,KAAO,SAAuB,EAAZuK,GAAe9hE,SAAS,KAAKC,QAAQ,GAC7Evd,EAAQ80E,eAGX,GAAI9tE,EAAKZ,OAAShT,EAAO+uB,WAEtBnb,EAAKs1E,WAAgC,IAAnBt1E,EAAKs1E,aAEvBt8E,EAAQG,YAAc6G,EAAKu1E,UAAYrpF,EACvC8M,EAAQqd,UAAY,KAAO,SAAuB,EAAZi/D,GAAeh/D,SAAS,KAAKC,QAAQ,GAC3Evd,EAAQwd,SAAS69B,EAAM1lD,EAAG0lD,EAAMzlD,EAAGylD,EAAMtkD,MAAOskD,EAAMrkD,SAGtDgQ,EAAK4tE,YAEL50E,EAAQG,YAAc6G,EAAKq4E,UAAYnsF,EACvC8M,EAAQ60E,YAAc,KAAO,SAAuB,EAAZuK,GAAe9hE,SAAS,KAAKC,QAAQ,GAC7Evd,EAAQ2/E,WAAWtkC,EAAM1lD,EAAG0lD,EAAMzlD,EAAGylD,EAAMtkD,MAAOskD,EAAMrkD,cAG3D,GAAIgQ,EAAKZ,OAAShT,EAAO8uB,OAG1BliB,EAAQu0E,YACRv0E,EAAQw0E,IAAIn5B,EAAM1lD,EAAG0lD,EAAMzlD,EAAGylD,EAAM1xB,OAAO,EAAE,EAAIr0B,KAAKk0B,IACtDxpB,EAAQy0E,YAEJztE,EAAKo0C,OAELp7C,EAAQG,YAAc6G,EAAKu1E,UAAYrpF,EACvC8M,EAAQqd,UAAY,KAAO,SAAuB,EAAZi/D,GAAeh/D,SAAS,KAAKC,QAAQ,GAC3Evd,EAAQo7C,QAGRp0C,EAAK4tE,YAEL50E,EAAQG,YAAc6G,EAAKq4E,UAAYnsF,EACvC8M,EAAQ60E,YAAc,KAAO,SAAuB,EAAZuK,GAAe9hE,SAAS,KAAKC,QAAQ,GAC7Evd,EAAQ80E,eAGX,GAAI9tE,EAAKZ,OAAShT,EAAOyuB,QAC9B,CAGI,IAAIrZ,EAAkB,EAAd6yC,EAAMtkD,MACV+gB,EAAmB,EAAfujC,EAAMrkD,OAEVrB,EAAI0lD,EAAM1lD,EAAI6S,EAAI,EAClB5S,EAAIylD,EAAMzlD,EAAIkiB,EAAI,EAEtB9X,EAAQu0E,YAER,IACIqL,EAAMp3E,EAAI,EADF,SAERq3E,EAAM/nE,EAAI,EAFF,SAGRgoE,EAAKnqF,EAAI6S,EACTu3E,EAAKnqF,EAAIkiB,EACTkoE,EAAKrqF,EAAI6S,EAAI,EACby3E,EAAKrqF,EAAIkiB,EAAI,EAEjB9X,EAAQ00E,OAAO/+E,EAAGsqF,GAClBjgF,EAAQkgF,cAAcvqF,EAAGsqF,EAAKJ,EAAIG,EAAKJ,EAAIhqF,EAAGoqF,EAAIpqF,GAClDoK,EAAQkgF,cAAcF,EAAKJ,EAAIhqF,EAAGkqF,EAAIG,EAAKJ,EAAIC,EAAIG,GACnDjgF,EAAQkgF,cAAcJ,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACpD//E,EAAQkgF,cAAcF,EAAKJ,EAAIG,EAAIpqF,EAAGsqF,EAAKJ,EAAIlqF,EAAGsqF,GAElDjgF,EAAQy0E,YAEJztE,EAAKo0C,OAELp7C,EAAQG,YAAc6G,EAAKu1E,UAAYrpF,EACvC8M,EAAQqd,UAAY,KAAO,SAAuB,EAAZi/D,GAAeh/D,SAAS,KAAKC,QAAQ,GAC3Evd,EAAQo7C,QAGRp0C,EAAK4tE,YAEL50E,EAAQG,YAAc6G,EAAKq4E,UAAYnsF,EACvC8M,EAAQ60E,YAAc,KAAO,SAAuB,EAAZuK,GAAe9hE,SAAS,KAAKC,QAAQ,GAC7Evd,EAAQ80E,eAGX,GAAI9tE,EAAKZ,OAAShT,EAAOmvB,iBAC9B,CACI,IAAIoT,EAAK0lB,EAAM1lD,EACXigC,EAAKylB,EAAMzlD,EACXmB,EAAQskD,EAAMtkD,MACdC,EAASqkD,EAAMrkD,OACf2yB,EAAS0xB,EAAM1xB,OAEfw2D,EAAY7qF,KAAKy4B,IAAIh3B,EAAOC,GAAU,EAAI,EAC9C2yB,EAAkBw2D,EAATx2D,EAAqBw2D,EAAYx2D,EAE1C3pB,EAAQu0E,YACRv0E,EAAQ00E,OAAO/+C,EAAIC,EAAKjM,GACxB3pB,EAAQ20E,OAAOh/C,EAAIC,EAAK5+B,EAAS2yB,GACjC3pB,EAAQogF,iBAAiBzqD,EAAIC,EAAK5+B,EAAQ2+B,EAAKhM,EAAQiM,EAAK5+B,GAC5DgJ,EAAQ20E,OAAOh/C,EAAK5+B,EAAQ4yB,EAAQiM,EAAK5+B,GACzCgJ,EAAQogF,iBAAiBzqD,EAAK5+B,EAAO6+B,EAAK5+B,EAAQ2+B,EAAK5+B,EAAO6+B,EAAK5+B,EAAS2yB,GAC5E3pB,EAAQ20E,OAAOh/C,EAAK5+B,EAAO6+B,EAAKjM,GAChC3pB,EAAQogF,iBAAiBzqD,EAAK5+B,EAAO6+B,EAAID,EAAK5+B,EAAQ4yB,EAAQiM,GAC9D51B,EAAQ20E,OAAOh/C,EAAKhM,EAAQiM,GAC5B51B,EAAQogF,iBAAiBzqD,EAAIC,EAAID,EAAIC,EAAKjM,GAC1C3pB,EAAQy0E,aAEJztE,EAAKs1E,WAAgC,IAAnBt1E,EAAKs1E,aAEvBt8E,EAAQG,YAAc6G,EAAKu1E,UAAYrpF,EACvC8M,EAAQqd,UAAY,KAAO,SAAuB,EAAZi/D,GAAeh/D,SAAS,KAAKC,QAAQ,GAC3Evd,EAAQo7C,QAGRp0C,EAAK4tE,YAEL50E,EAAQG,YAAc6G,EAAKq4E,UAAYnsF,EACvC8M,EAAQ60E,YAAc,KAAO,SAAuB,EAAZuK,GAAe9hE,SAAS,KAAKC,QAAQ,GAC7Evd,EAAQ80E,aAexBxiF,KAAKyqB,eAAeC,mBAAqB,SAAUjL,EAAU/R,GAEzD,IAAIwlB,EAAMzT,EAASopC,aAAa5mD,OAEhC,GAAY,IAARixB,EAAJ,CAKAxlB,EAAQu0E,YAER,IAAK,IAAIjgF,EAAI,EAAGA,EAAIkxB,EAAKlxB,IACzB,CACI,IAAI0S,EAAO+K,EAASopC,aAAa7mD,GAC7B+mD,EAAQr0C,EAAKq0C,MAEjB,GAAIr0C,EAAKZ,OAAShT,EAAOquB,QACzB,CACI,IAAIsR,EAASsoB,EAAMtoB,OAEnB/yB,EAAQ00E,OAAO3hD,EAAO,GAAIA,EAAO,IAEjC,IAAK,IAAIh5B,EAAI,EAAGA,EAAIg5B,EAAOx+B,OAAS,EAAGwF,IAEnCiG,EAAQ20E,OAAO5hD,EAAW,EAAJh5B,GAAQg5B,EAAW,EAAJh5B,EAAQ,IAI7Cg5B,EAAO,KAAOA,EAAOA,EAAOx+B,OAAS,IAAMw+B,EAAO,KAAOA,EAAOA,EAAOx+B,OAAS,IAEhFyL,EAAQy0E,iBAGX,GAAIztE,EAAKZ,OAAShT,EAAO+uB,UAE1BniB,EAAQqvB,KAAKgsB,EAAM1lD,EAAG0lD,EAAMzlD,EAAGylD,EAAMtkD,MAAOskD,EAAMrkD,QAClDgJ,EAAQy0E,iBAEP,GAAIztE,EAAKZ,OAAShT,EAAO8uB,OAG1BliB,EAAQw0E,IAAIn5B,EAAM1lD,EAAG0lD,EAAMzlD,EAAGylD,EAAM1xB,OAAQ,EAAG,EAAIr0B,KAAKk0B,IACxDxpB,EAAQy0E,iBAEP,GAAIztE,EAAKZ,OAAShT,EAAOyuB,QAC9B,CAGI,IAAIrZ,EAAkB,EAAd6yC,EAAMtkD,MACV+gB,EAAmB,EAAfujC,EAAMrkD,OAEVrB,EAAI0lD,EAAM1lD,EAAI6S,EAAI,EAClB5S,EAAIylD,EAAMzlD,EAAIkiB,EAAI,EAGlB8nE,EAAMp3E,EAAI,EADF,SAERq3E,EAAM/nE,EAAI,EAFF,SAGRgoE,EAAKnqF,EAAI6S,EACTu3E,EAAKnqF,EAAIkiB,EACTkoE,EAAKrqF,EAAI6S,EAAI,EACby3E,EAAKrqF,EAAIkiB,EAAI,EAEjB9X,EAAQ00E,OAAO/+E,EAAGsqF,GAClBjgF,EAAQkgF,cAAcvqF,EAAGsqF,EAAKJ,EAAIG,EAAKJ,EAAIhqF,EAAGoqF,EAAIpqF,GAClDoK,EAAQkgF,cAAcF,EAAKJ,EAAIhqF,EAAGkqF,EAAIG,EAAKJ,EAAIC,EAAIG,GACnDjgF,EAAQkgF,cAAcJ,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACpD//E,EAAQkgF,cAAcF,EAAKJ,EAAIG,EAAIpqF,EAAGsqF,EAAKJ,EAAIlqF,EAAGsqF,GAClDjgF,EAAQy0E,iBAEP,GAAIztE,EAAKZ,OAAShT,EAAOmvB,iBAC9B,CACI,IAAIoT,EAAK0lB,EAAM1lD,EACXigC,EAAKylB,EAAMzlD,EACXmB,EAAQskD,EAAMtkD,MACdC,EAASqkD,EAAMrkD,OACf2yB,EAAS0xB,EAAM1xB,OAEfw2D,EAAY7qF,KAAKy4B,IAAIh3B,EAAOC,GAAU,EAAI,EAC9C2yB,EAAkBw2D,EAATx2D,EAAqBw2D,EAAYx2D,EAE1C3pB,EAAQ00E,OAAO/+C,EAAIC,EAAKjM,GACxB3pB,EAAQ20E,OAAOh/C,EAAIC,EAAK5+B,EAAS2yB,GACjC3pB,EAAQogF,iBAAiBzqD,EAAIC,EAAK5+B,EAAQ2+B,EAAKhM,EAAQiM,EAAK5+B,GAC5DgJ,EAAQ20E,OAAOh/C,EAAK5+B,EAAQ4yB,EAAQiM,EAAK5+B,GACzCgJ,EAAQogF,iBAAiBzqD,EAAK5+B,EAAO6+B,EAAK5+B,EAAQ2+B,EAAK5+B,EAAO6+B,EAAK5+B,EAAS2yB,GAC5E3pB,EAAQ20E,OAAOh/C,EAAK5+B,EAAO6+B,EAAKjM,GAChC3pB,EAAQogF,iBAAiBzqD,EAAK5+B,EAAO6+B,EAAID,EAAK5+B,EAAQ4yB,EAAQiM,GAC9D51B,EAAQ20E,OAAOh/C,EAAKhM,EAAQiM,GAC5B51B,EAAQogF,iBAAiBzqD,EAAIC,EAAID,EAAIC,EAAKjM,GAC1C3pB,EAAQy0E,gBAKpBniF,KAAKyqB,eAAeyiE,mBAAqB,SAAUztE,GAE/C,GAAsB,WAAlBA,EAAS9S,KASb,IAJA,IAAIohF,GAAStuE,EAAS9S,MAAQ,GAAK,KAAQ,IACvCqhF,GAASvuE,EAAS9S,MAAQ,EAAI,KAAQ,IACtCshF,GAAyB,IAAhBxuE,EAAS9S,MAAe,IAE5B3K,EAAI,EAAGA,EAAIyd,EAASopC,aAAa5mD,OAAQD,IAClD,CACI,IAAI0S,EAAO+K,EAASopC,aAAa7mD,GAE7BgoF,EAA6B,EAAjBt1E,EAAKs1E,UACjB8C,EAA6B,EAAjBp4E,EAAKo4E,UAErBp4E,EAAKy4E,YAAenD,GAAa,GAAK,KAAQ,IAAM+D,EAAQ,KAAO,MAAQ/D,GAAa,EAAI,KAAQ,IAAMgE,EAAQ,KAAO,IAAkB,IAAZhE,GAAoB,IAAMiE,EAAQ,IACjKv5E,EAAK04E,YAAeN,GAAa,GAAK,KAAQ,IAAMiB,EAAQ,KAAO,MAAQjB,GAAa,EAAI,KAAQ,IAAMkB,EAAQ,KAAO,IAAkB,IAAZlB,GAAoB,IAAMmB,EAAQ,MAiBzKntF,EAAOotF,aAAe,SAAU5L,EAAWwK,EAAWC,EAAW/C,EAAWC,EAAWnhC,EAAMC,GAKzFhpD,KAAKuiF,UAAYA,EAKjBviF,KAAK+sF,UAAYA,EAKjB/sF,KAAKgtF,UAAYA,EAKjBhtF,KAAKqtF,UAAYN,EAKjB/sF,KAAKiqF,UAAYA,EAKjBjqF,KAAKkqF,UAAYA,EAKjBlqF,KAAKotF,UAAYnD,EAKjBjqF,KAAK+oD,KAAOA,EAKZ/oD,KAAKgpD,MAAQA,EAKbhpD,KAAK+T,KAAOi1C,EAAMj1C,MAGtBhT,EAAOotF,aAAatsF,UAAUC,YAAcf,EAAOotF,aAOnDptF,EAAOotF,aAAatsF,UAAUw0B,MAAQ,WAElC,OAAO,IAAIt1B,EAAOotF,aACdnuF,KAAKuiF,UACLviF,KAAK+sF,UACL/sF,KAAKgtF,UACLhtF,KAAKiqF,UACLjqF,KAAKkqF,UACLlqF,KAAK+oD,KACL/oD,KAAKgpD,QAyDbjoD,EAAOqlC,SAAW,SAAU9jC,EAAMgB,EAAGC,QAEvB6C,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,GAM3BvD,KAAK+T,KAAOhT,EAAO4tB,SAMnB3uB,KAAK80C,YAAc/zC,EAAOytB,OAM1BxuB,KAAKwG,OAAS,IAAIzF,EAAOX,MAEzBH,KAAKkI,uBAAuBpE,KAAK/D,MAEjCA,KAAKW,YAAa,EAQlBX,KAAKkqF,UAAY,EAQjBlqF,KAAKuiF,UAAY,EASjBviF,KAAK+sF,UAAY,EASjB/sF,KAAK8oD,aAAe,GASpB9oD,KAAK4M,KAAO,SASZ5M,KAAK8H,UAAY7H,KAAK8H,WAAWE,OASjCjI,KAAKouF,YAAc,KASnBpuF,KAAKof,OAAS,GAQdpf,KAAKqH,QAAS,EAQdrH,KAAKquF,cAAgB,EASrBruF,KAAKsuF,aAAe,IAAIvtF,EAAOS,UAAU,EAAG,EAAG,EAAG,GASlDxB,KAAKwR,OAAQ,EAUbxR,KAAKuuF,cAAe,EASpBvuF,KAAKwuF,YAAa,EASlBxuF,KAAKyuF,mBAAoB,EAEzB1tF,EAAOosE,UAAUiB,KAAK18D,KAAK3N,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG,GAAI,OAG1DxC,EAAOqlC,SAASvkC,UAAYgF,OAAOwB,OAAOpI,KAAKkI,uBAAuBtG,WACtEd,EAAOqlC,SAASvkC,UAAUC,YAAcf,EAAOqlC,SAE/CrlC,EAAOosE,UAAUiB,KAAKC,QAAQtqE,KAAKhD,EAAOqlC,SAASvkC,UAAW,CAC1D,QACA,WACA,SACA,UACA,gBACA,eACA,UACA,WACA,cACA,UAGJd,EAAOqlC,SAASvkC,UAAUg3E,iBAAmB93E,EAAOosE,UAAUsB,YAAYxqE,UAC1ElD,EAAOqlC,SAASvkC,UAAUi3E,kBAAoB/3E,EAAOosE,UAAUsG,SAASxvE,UACxElD,EAAOqlC,SAASvkC,UAAUk3E,iBAAmBh4E,EAAOosE,UAAU+F,QAAQjvE,UACtElD,EAAOqlC,SAASvkC,UAAUm3E,cAAgBj4E,EAAOosE,UAAUiB,KAAKnqE,UAOhElD,EAAOqlC,SAASvkC,UAAUoC,UAAY,WAElC,SAAKjE,KAAK64E,oBAAuB74E,KAAK84E,qBAAwB94E,KAAK+4E,qBAK5D/4E,KAAKg5E,iBAQhBj4E,EAAOqlC,SAASvkC,UAAUynC,WAAa,WAEnCvoC,EAAOosE,UAAUsB,YAAYnlC,WAAWvlC,KAAK/D,MAC7Ce,EAAOosE,UAAUyB,cAActlC,WAAWvlC,KAAK/D,MAE3CA,KAAKuuF,eAELvuF,KAAK0uF,oBACL1uF,KAAKuuF,cAAe,GAGxB,IAAK,IAAItsF,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGqnC,cAUzBvoC,EAAOqlC,SAASvkC,UAAUE,QAAU,SAAU+6C,GAE1C98C,KAAK4b,QAEL7a,EAAOosE,UAAU8C,QAAQpuE,UAAUE,QAAQgC,KAAK/D,KAAM88C,IAU1D/7C,EAAOqlC,SAASvkC,UAAU8sF,aAAe,SAAUjuD,EAAQkuD,QAE1CxoF,IAATwoF,IAAsBA,GAAO,GAEjC,IAAIC,EAAW,IAAI9tF,EAAOsgC,QAAQX,GAElC,GAAIkuD,EACJ,CACI,IAAIE,EAAe,IAAI/tF,EAAOX,MAAMJ,KAAKsC,KAAKwZ,OAAOxY,EAAIo9B,EAAO,GAAGp9B,EAAGtD,KAAKsC,KAAKwZ,OAAOvY,EAAIm9B,EAAO,GAAGn9B,GACjGwrF,EAAK,IAAIhuF,EAAOX,MAAMsgC,EAAO,GAAGp9B,EAAIo9B,EAAO,GAAGp9B,EAAGo9B,EAAO,GAAGn9B,EAAIm9B,EAAO,GAAGn9B,GAEzEyrF,EADK,IAAIjuF,EAAOX,MAAMsgC,EAAO,GAAGp9B,EAAIo9B,EAAO,GAAGp9B,EAAGo9B,EAAO,GAAGn9B,EAAIm9B,EAAO,GAAGn9B,GACzDw8B,MAAMgvD,GAES,EAA/BD,EAAahvD,IAAIkvD,IAEjBhvF,KAAKivF,YAAYJ,QAKrB7uF,KAAKivF,YAAYJ,IAYzB9tF,EAAOqlC,SAASvkC,UAAUqtF,cAAgB,SAAU9rE,EAAUxQ,EAASg8E,QAEtDxoF,IAATwoF,IAAsBA,GAAO,GAEjC,IAII3sF,EAJAktF,EAAS,IAAIpuF,EAAOX,MACpBgvF,EAAS,IAAIruF,EAAOX,MACpBivF,EAAS,IAAItuF,EAAOX,MACpBsgC,EAAS,GAGb,GAAK9tB,EAwBL,GAAIwQ,EAAS,aAAcriB,EAAOX,MAE9B,IAAK6B,EAAI,EAAGA,EAAI2Q,EAAQ1Q,OAAS,EAAGD,IAEhCy+B,EAAO/4B,KAAKyb,EAASxQ,EAAY,EAAJ3Q,KAC7By+B,EAAO/4B,KAAKyb,EAASxQ,EAAY,EAAJ3Q,EAAQ,KACrCy+B,EAAO/4B,KAAKyb,EAASxQ,EAAY,EAAJ3Q,EAAQ,KAEf,IAAlBy+B,EAAOx+B,SAEPlC,KAAK2uF,aAAajuD,EAAQkuD,GAC1BluD,EAAS,SAMjB,IAAKz+B,EAAI,EAAGA,EAAI2Q,EAAQ1Q,OAAQD,IAE5BktF,EAAO7rF,EAAI8f,EAAsB,EAAbxQ,EAAQ3Q,IAC5BktF,EAAO5rF,EAAI6f,EAAsB,EAAbxQ,EAAQ3Q,GAAS,GACrCy+B,EAAO/4B,KAAKwnF,EAAO13D,OAAO,KAEJ,IAAlBiJ,EAAOx+B,SAEPlC,KAAK2uF,aAAajuD,EAAQkuD,GAC1BluD,EAAS,SAhDjB,GAAItd,EAAS,aAAcriB,EAAOX,MAE9B,IAAK6B,EAAI,EAAGA,EAAImhB,EAASlhB,OAAS,EAAGD,IAEjCjC,KAAK2uF,aAAa,CAAEvrE,EAAa,EAAJnhB,GAAQmhB,EAAa,EAAJnhB,EAAQ,GAAImhB,EAAa,EAAJnhB,EAAQ,IAAM2sF,QAKrF,IAAK3sF,EAAI,EAAGA,EAAImhB,EAASlhB,OAAS,EAAGD,IAEjCktF,EAAO7rF,EAAI8f,EAAa,EAAJnhB,EAAQ,GAC5BktF,EAAO5rF,EAAI6f,EAAa,EAAJnhB,EAAQ,GAC5BmtF,EAAO9rF,EAAI8f,EAAa,EAAJnhB,EAAQ,GAC5BmtF,EAAO7rF,EAAI6f,EAAa,EAAJnhB,EAAQ,GAC5BotF,EAAO/rF,EAAI8f,EAAa,EAAJnhB,EAAQ,GAC5BotF,EAAO9rF,EAAI6f,EAAa,EAAJnhB,EAAQ,GAC5BjC,KAAK2uF,aAAa,CAAEQ,EAAQC,EAAQC,GAAUT,IA8C9D7tF,EAAOqlC,SAASvkC,UAAUytF,UAAY,SAAU/M,EAAWprE,EAAO3W,GAsB9D,OApBAR,KAAKuiF,UAAYA,GAAa,EAC9BviF,KAAK+sF,UAAY51E,GAAS,EAC1BnX,KAAKgtF,eAAuB5mF,IAAV5F,EAAuB,EAAIA,EAEzCR,KAAKouF,cAEDpuF,KAAKouF,YAAYplC,MAAMtoB,OAAOx+B,OAG9BlC,KAAKuvF,UAAU,IAAIxuF,EAAOsgC,QAAQrhC,KAAKouF,YAAYplC,MAAMtoB,OAAO7S,OAAO,MAKvE7tB,KAAKouF,YAAY7L,UAAYviF,KAAKuiF,UAClCviF,KAAKouF,YAAYrB,UAAY/sF,KAAK+sF,UAClC/sF,KAAKouF,YAAYpB,UAAYhtF,KAAKgtF,YAInChtF,MAWXe,EAAOqlC,SAASvkC,UAAUwgF,OAAS,SAAU/+E,EAAGC,GAI5C,OAFAvD,KAAKuvF,UAAU,IAAIxuF,EAAOsgC,QAAQ,CAAE/9B,EAAGC,KAEhCvD,MAYXe,EAAOqlC,SAASvkC,UAAUygF,OAAS,SAAUh/E,EAAGC,GAW5C,OATKvD,KAAKouF,aAENpuF,KAAKqiF,OAAO,EAAG,GAGnBriF,KAAKouF,YAAYplC,MAAMtoB,OAAO/4B,KAAKrE,EAAGC,GACtCvD,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EAEbvuF,MAcXe,EAAOqlC,SAASvkC,UAAUksF,iBAAmB,SAAUnD,EAAKC,EAAKC,EAAKC,GAE9D/qF,KAAKouF,YAEwC,IAAzCpuF,KAAKouF,YAAYplC,MAAMtoB,OAAOx+B,SAE9BlC,KAAKouF,YAAYplC,MAAMtoB,OAAS,CAAE,EAAG,IAKzC1gC,KAAKqiF,OAAO,EAAE,GAGlB,IAAI2I,EACAC,EAEAvqD,EAAS1gC,KAAKouF,YAAYplC,MAAMtoB,OAEd,IAAlBA,EAAOx+B,QAEPlC,KAAKqiF,OAAO,EAAG,GAMnB,IAHA,IAAIqI,EAAQhqD,EAAOA,EAAOx+B,OAAS,GAC/ByoF,EAAQjqD,EAAOA,EAAOx+B,OAAS,GAC/BwF,EAAI,EACCzF,EAAI,EAAGA,GAXR,KAWkBA,EAItB+oF,EAAKN,GAAUE,EAAMF,IAFrBhjF,EAAIzF,EAbA,IAgBJgpF,EAAKN,GAAUE,EAAMF,GAASjjF,EAE9Bg5B,EAAO/4B,KAAKqjF,GAAQJ,GAAQE,EAAMF,GAAOljF,EAAMsjF,GAAMtjF,EACjDujF,GAAQJ,GAAQE,EAAMF,GAAOnjF,EAAMujF,GAAMvjF,GAMjD,OAHA1H,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EAEbvuF,MAeXe,EAAOqlC,SAASvkC,UAAUgsF,cAAgB,SAAUjD,EAAKC,EAAK2E,EAAMC,EAAM3E,EAAKC,GAEvE/qF,KAAKouF,YAEwC,IAAzCpuF,KAAKouF,YAAYplC,MAAMtoB,OAAOx+B,SAE9BlC,KAAKouF,YAAYplC,MAAMtoB,OAAS,CAAE,EAAG,IAKzC1gC,KAAKqiF,OAAO,EAAE,GAelB,IAZA,IACIqN,EACAC,EACAC,EACAC,EACAC,EACApvD,EAAS1gC,KAAKouF,YAAYplC,MAAMtoB,OAEhCgqD,EAAQhqD,EAAOA,EAAOx+B,OAAS,GAC/ByoF,EAAQjqD,EAAOA,EAAOx+B,OAAS,GAC/BwF,EAAI,EAECzF,EAAI,EAAGA,GAZR,KAYkBA,EAMtB2tF,GADAD,GADAD,EAAM,GAFNhoF,EAAIzF,EAdA,KAiBOytF,GACCA,EAGZI,GADAD,EAAKnoF,EAAIA,GACCA,EAEVg5B,EAAO/4B,KAAKioF,EAAMlF,EAAQ,EAAIiF,EAAMjoF,EAAIkjF,EAAM,EAAI8E,EAAKG,EAAKL,EAAOM,EAAKhF,EACpE8E,EAAMjF,EAAQ,EAAIgF,EAAMjoF,EAAImjF,EAAM,EAAI6E,EAAKG,EAAKJ,EAAOK,EAAK/E,GAMpE,OAHA/qF,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EAEbvuF,MAgBXe,EAAOqlC,SAASvkC,UAAUkuF,MAAQ,SAAU5kF,EAAIC,EAAIC,EAAIC,EAAIgsB,GAEpDt3B,KAAKouF,YAEwC,IAAzCpuF,KAAKouF,YAAYplC,MAAMtoB,OAAOx+B,QAE9BlC,KAAKouF,YAAYplC,MAAMtoB,OAAO/4B,KAAKwD,EAAIC,GAK3CpL,KAAKqiF,OAAOl3E,EAAIC,GAGpB,IAAIs1B,EAAS1gC,KAAKouF,YAAYplC,MAAMtoB,OAChCgqD,EAAQhqD,EAAOA,EAAOx+B,OAAS,GAE/Bo6B,EADQoE,EAAOA,EAAOx+B,OAAS,GAClBkJ,EACboxB,EAAKkuD,EAAQv/E,EACboxB,EAAKjxB,EAAKF,EACVqxB,EAAKpxB,EAAKF,EACV6kF,EAAK/sF,KAAK81B,IAAIuD,EAAKG,EAAKD,EAAKD,GAEjC,GAAIyzD,EAAK,MAAqB,IAAX14D,EAEXoJ,EAAOA,EAAOx+B,OAAS,KAAOiJ,GAAMu1B,EAAOA,EAAOx+B,OAAS,KAAOkJ,GAElEs1B,EAAO/4B,KAAKwD,EAAIC,OAIxB,CACI,IAAI6kF,EAAK3zD,EAAKA,EAAKE,EAAKA,EACpB0zD,EAAK3zD,EAAKA,EAAKE,EAAKA,EACpB0zD,EAAK7zD,EAAKC,EAAKC,EAAKC,EACpB2zD,EAAK94D,EAASr0B,KAAKS,KAAKusF,GAAMD,EAC9BK,EAAK/4D,EAASr0B,KAAKS,KAAKwsF,GAAMF,EAC9BM,EAAKF,EAAKD,EAAKF,EACfM,EAAKF,EAAKF,EAAKD,EACfjhF,EAAKmhF,EAAK3zD,EAAK4zD,EAAK7zD,EACpBttB,EAAKkhF,EAAK7zD,EAAK8zD,EAAK/zD,EACpB68B,EAAK38B,GAAM6zD,EAAKC,GAChBl3B,EAAK98B,GAAM+zD,EAAKC,GAChBzI,EAAKprD,GAAM2zD,EAAKG,GAChBC,EAAKj0D,GAAM6zD,EAAKG,GAChBp4D,EAAal1B,KAAKk8B,MAAMi6B,EAAKlqD,EAAIiqD,EAAKlqD,GACtCmpB,EAAWn1B,KAAKk8B,MAAMqxD,EAAKthF,EAAI24E,EAAK54E,GAExCjP,KAAKmiF,IAAIlzE,EAAK9D,EAAI+D,EAAK9D,EAAIksB,EAAQa,EAAYC,EAAoBqE,EAAKH,EAAfE,EAAKD,GAMlE,OAHAv8B,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EAEbvuF,MAgBXe,EAAOqlC,SAASvkC,UAAUsgF,IAAM,SAAUlzE,EAAIC,EAAIooB,EAAQa,EAAYC,EAAUq4D,EAAeC,GAG3F,GAAIv4D,IAAeC,EAEf,OAAOp4B,UAGWoG,IAAlBqqF,IAA+BA,GAAgB,QAClCrqF,IAAbsqF,IAA0BA,EAAW,KAEpCD,GAAiBr4D,GAAYD,EAE9BC,GAAsB,EAAVn1B,KAAKk0B,GAEZs5D,GAAiBt4D,GAAcC,IAEpCD,GAAwB,EAAVl1B,KAAKk0B,IAGvB,IAAIw5D,EAAQF,GAA2C,GAA1Bt4D,EAAaC,GAAkBA,EAAWD,EACnEy4D,EAAO3tF,KAAK4C,KAAK5C,KAAK81B,IAAI43D,IAAoB,EAAV1tF,KAAKk0B,KAAWu5D,EAGxD,GAAc,IAAVC,EAEA,OAAO3wF,KAGX,IAAI6wF,EAAS5hF,EAAKhM,KAAKI,IAAI80B,GAAcb,EACrCw5D,EAAS5hF,EAAKjM,KAAKG,IAAI+0B,GAAcb,EAErCm5D,GAAiBzwF,KAAK+wF,QAEtB/wF,KAAKqiF,OAAOpzE,EAAIC,GAIhBlP,KAAKqiF,OAAOwO,EAAQC,GAgBxB,IAZA,IAAIpwD,EAAS1gC,KAAKouF,YAAYplC,MAAMtoB,OAEhCswD,EAAQL,GAAgB,EAAPC,GACjBK,EAAiB,EAARD,EAETE,EAASjuF,KAAKI,IAAI2tF,GAClBG,EAASluF,KAAKG,IAAI4tF,GAElBI,EAAWR,EAAO,EAElBS,EAAaD,EAAW,EAAKA,EAExBnvF,EAAI,EAAGA,GAAKmvF,EAAUnvF,IAC/B,CACI,IAEI81B,EAAS,EAAUI,EAAc84D,GAF1BhvF,EAAIovF,EAAYpvF,GAIvBU,EAAIM,KAAKI,IAAI00B,GACbn0B,GAAKX,KAAKG,IAAI20B,GAElB2I,EAAO/4B,MAAOupF,EAASvuF,EAAMwuF,EAASvtF,GAAM0zB,EAASroB,GAC/CiiF,GAAUttF,EAAMutF,EAASxuF,GAAM20B,EAASpoB,GAMlD,OAHAlP,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EAEbvuF,MAYXe,EAAOqlC,SAASvkC,UAAUolC,UAAY,SAAU9vB,EAAO3W,GAgBnD,OAdAR,KAAK+wF,SAAU,EACf/wF,KAAKiqF,UAAY9yE,GAAS,EAC1BnX,KAAKkqF,eAAuB9jF,IAAV5F,EAAuB,EAAIA,EAEzCR,KAAKouF,aAEDpuF,KAAKouF,YAAYplC,MAAMtoB,OAAOx+B,QAAU,IAExClC,KAAKouF,YAAYrlC,KAAO/oD,KAAK+wF,QAC7B/wF,KAAKouF,YAAYnE,UAAYjqF,KAAKiqF,UAClCjqF,KAAKouF,YAAYlE,UAAYlqF,KAAKkqF,WAInClqF,MASXe,EAAOqlC,SAASvkC,UAAUslC,QAAU,WAMhC,OAJAnnC,KAAK+wF,SAAU,EACf/wF,KAAKiqF,UAAY,KACjBjqF,KAAKkqF,UAAY,EAEVlqF,MAYXe,EAAOqlC,SAASvkC,UAAUqlC,SAAW,SAAU5jC,EAAGC,EAAGmB,EAAOC,GAIxD,OAFA3E,KAAKuvF,UAAU,IAAIxuF,EAAOS,UAAU8B,EAAGC,EAAGmB,EAAOC,IAE1C3E,MAWXe,EAAOqlC,SAASvkC,UAAUyvF,gBAAkB,SAAUhuF,EAAGC,EAAGmB,EAAOC,EAAQ2yB,GAIvE,OAFAt3B,KAAKuvF,UAAU,IAAIxuF,EAAOkjC,iBAAiB3gC,EAAGC,EAAGmB,EAAOC,EAAQ2yB,IAEzDt3B,MAYXe,EAAOqlC,SAASvkC,UAAU0vF,WAAa,SAAUjuF,EAAGC,EAAGwzB,GAInD,OAFA/2B,KAAKuvF,UAAU,IAAIxuF,EAAO+1B,OAAOxzB,EAAGC,EAAGwzB,IAEhC/2B,MAaXe,EAAOqlC,SAASvkC,UAAU2vF,YAAc,SAAUv3D,EAASC,EAASlB,EAAWC,GAI3E,OAFAj5B,KAAKuvF,UAAU,CAACjsF,EAAG22B,EAAS12B,EAAG22B,EAASx1B,MAAOs0B,EAAWr0B,OAAQs0B,EAAYllB,KAAMhT,EAAOyuB,UAEpFxvB,MAUXe,EAAOqlC,SAASvkC,UAAUotF,YAAc,SAAUwC,GAE1CA,aAAgB1wF,EAAOsgC,UAEvBowD,EAAOA,EAAK/wD,QAOhB,IAAIA,EAAS+wD,EAEb,IAAKnqF,MAAMC,QAAQm5B,GACnB,CAKIA,EAAS,IAAIp5B,MAAMkrB,UAAUtwB,QAE7B,IAAK,IAAID,EAAI,EAAGA,EAAIy+B,EAAOx+B,SAAUD,EAEjCy+B,EAAOz+B,GAAKuwB,UAAUvwB,GAM9B,OAFAjC,KAAKuvF,UAAU,IAAIxuF,EAAOsgC,QAAQX,IAE3B1gC,MASXe,EAAOqlC,SAASvkC,UAAU+Z,MAAQ,WAY9B,OAVA5b,KAAKuiF,UAAY,EACjBviF,KAAK+wF,SAAU,EAEf/wF,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EACpBvuF,KAAKqpF,YAAa,EAClBrpF,KAAK8oD,aAAe,GAEpB9oD,KAAK0uF,oBAEE1uF,MAeXe,EAAOqlC,SAASvkC,UAAUqC,gBAAkB,SAAUC,EAAYC,EAAWsjB,QAEtDthB,IAAfjC,IAA4BA,EAAa,QAC3BiC,IAAdhC,IAA2BA,EAAYnE,KAAK+N,WAAW+b,cAC3C3jB,IAAZshB,IAAyBA,EAAU,GAEvC,IAAIpjB,EAAStE,KAAK+J,YAElBzF,EAAOI,OAASgjB,EAChBpjB,EAAOK,QAAU+iB,EAEjB,IAAIgqE,EAAe,IAAIzxF,KAAKmqB,aAAa9lB,EAAOI,MAAQP,EAAYG,EAAOK,OAASR,GAEhF2B,EAAU7F,KAAKyM,QAAQqgB,WAAW2kE,EAAa15E,OAAQ5T,GAU3D,OARA0B,EAAQG,YAAY9B,WAAaA,EAEjCutF,EAAa/jF,QAAQtN,MAAM8D,EAAYA,GAEvCutF,EAAa/jF,QAAQswB,WAAW35B,EAAOhB,GAAIgB,EAAOf,GAElDtD,KAAKyqB,eAAew2D,eAAelhF,KAAM0xF,EAAa/jF,SAE/C7H,GAUX/E,EAAOqlC,SAASvkC,UAAU6D,aAAe,SAAUJ,GAG/C,IAAqB,IAAjBtF,KAAKS,SAAoC,IAAfT,KAAKQ,QAA+B,IAAhBR,KAAKqH,OAAvD,CAKA,GAAIrH,KAAK2B,eAiBL,OAfI3B,KAAKwR,OAASxR,KAAKyuF,qBAEnBzuF,KAAK+E,wBAGL/E,KAAK2xF,4BAEL3xF,KAAKyuF,mBAAoB,EACzBzuF,KAAKwR,OAAQ,GAGjBxR,KAAKuF,cAAc1E,WAAab,KAAKa,gBAErCZ,KAAKwF,OAAO5D,UAAU6D,aAAa3B,KAAK/D,KAAKuF,cAAeD,GAoB5D,GAdAA,EAAcsG,YAAYI,OAC1B1G,EAAcyT,iBAAiBqD,aAAapc,KAAK8H,WAE7C9H,KAAK0B,OAEL4D,EAAc2G,YAAYC,SAASlM,KAAK0B,MAAO4D,GAG/CtF,KAAKsG,UAELhB,EAAcwG,cAAcC,WAAW/L,KAAK4H,cAI5C5H,KAAK8H,YAAcxC,EAAcsG,YAAY8B,iBACjD,CACIpI,EAAcsG,YAAY8B,iBAAmB1N,KAAK8H,UAClD,IAAIiX,EAAiB9e,KAAKqd,gBAAgBhY,EAAcsG,YAAY8B,kBACpEpI,EAAcsG,YAAYpG,GAAGwZ,UAAUD,EAAe,GAAIA,EAAe,IAa7E,GATI/e,KAAKwuF,aAELxuF,KAAKwR,OAAQ,EACbxR,KAAKwuF,YAAa,GAGtBvuF,KAAKif,cAAcgiE,eAAelhF,KAAMsF,GAGpCtF,KAAKgC,SAASE,OAClB,CACIoD,EAAcsG,YAAYO,QAG1B,IAAK,IAAIlK,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGyD,aAAaJ,GAGlCA,EAAcsG,YAAYI,OAG1BhM,KAAKsG,UAELhB,EAAcwG,cAAcO,YAG5BrM,KAAK0B,OAEL4D,EAAc2G,YAAYG,QAAQpM,KAAKoH,KAAM9B,GAGjDA,EAAc4T,YAEd5T,EAAcsG,YAAYO,UAWlCpL,EAAOqlC,SAASvkC,UAAU8D,cAAgB,SAAUL,GAGhD,IAAqB,IAAjBtF,KAAKS,SAAoC,IAAfT,KAAKQ,QAA+B,IAAhBR,KAAKqH,OAAvD,CAYA,GANIrH,KAAK4xF,YAAc5xF,KAAK4M,OAExB5M,KAAKwR,OAAQ,EACbxR,KAAK4xF,UAAY5xF,KAAK4M,MAGtB5M,KAAK2B,eAiBL,OAfI3B,KAAKwR,OAASxR,KAAKyuF,qBAEnBzuF,KAAK+E,wBAGL/E,KAAK2xF,4BAEL3xF,KAAKyuF,mBAAoB,EACzBzuF,KAAKwR,OAAQ,GAGjBxR,KAAKuF,cAAc/E,MAAQR,KAAKQ,WAEhCP,KAAKwF,OAAO5D,UAAU8D,cAAc5B,KAAK/D,KAAKuF,cAAeD,GAM7D,IAAIqI,EAAUrI,EAAcqI,QACxB8c,EAAYzqB,KAAKc,eAEjBd,KAAK8H,YAAcxC,EAAcoI,mBAEjCpI,EAAcoI,iBAAmB1N,KAAK8H,UACtC6F,EAAQC,yBAA2B3N,KAAK4N,iBAAiBvI,EAAcoI,mBAGvE1N,KAAK0B,OAEL4D,EAAc2G,YAAYC,SAASlM,KAAK0B,MAAO4D,GAGnD,IAAInB,EAAamB,EAAcnB,WAC3BtB,EAAM4nB,EAAU5nB,GAAKyC,EAAcnB,WAAcmB,EAAc+I,OAC/DvL,EAAM2nB,EAAU3nB,GAAKwC,EAAcnB,WAAcmB,EAAcgJ,OAEnEX,EAAQiB,aAAa6b,EAAUhoB,EAAI0B,EAC/BsmB,EAAU/nB,EAAIyB,EACdsmB,EAAU9nB,EAAIwB,EACdsmB,EAAU7nB,EAAIuB,EACdtB,EACAC,GAEJ7C,KAAKyqB,eAAew2D,eAAelhF,KAAM2N,GAGzC,IAAK,IAAI1L,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAG0D,cAAcL,GAG/BtF,KAAK0B,OAEL4D,EAAc2G,YAAYG,QAAQ9G,KAgB9CvE,EAAOqlC,SAASvkC,UAAUkI,UAAY,SAAUwD,GAE5C,GAAIvN,KAAKyB,eAEL,OAAOzB,KAAKyB,eAIhB,GAAIzB,KAAKqH,OAEL,OAAOtG,EAAOijC,eAGdhkC,KAAKwR,QAELxR,KAAK0uF,oBACL1uF,KAAKwuF,YAAa,EAClBxuF,KAAKyuF,mBAAoB,EACzBzuF,KAAKwR,OAAQ,GAGjB,IAAIlN,EAAStE,KAAKsuF,aAEdvjF,EAAKzG,EAAOhB,EACZ0H,EAAK1G,EAAOI,MAAQJ,EAAOhB,EAE3B2H,EAAK3G,EAAOf,EACZ2H,EAAK5G,EAAOK,OAASL,EAAOf,EAE5BzC,EAAiByM,GAAUvN,KAAKc,eAEhC2B,EAAI3B,EAAe2B,EACnBC,EAAI5B,EAAe4B,EACnBC,EAAI7B,EAAe6B,EACnBC,EAAI9B,EAAe8B,EACnBC,EAAK/B,EAAe+B,GACpBC,EAAKhC,EAAegC,GAEpBqI,EAAK1I,EAAIuI,EAAKrI,EAAIuI,EAAKrI,EACvBuI,EAAKxI,EAAIsI,EAAKxI,EAAIsI,EAAKlI,EAEvBuI,EAAK5I,EAAIsI,EAAKpI,EAAIuI,EAAKrI,EACvByI,EAAK1I,EAAIsI,EAAKxI,EAAIqI,EAAKjI,EAEvByI,EAAK9I,EAAIsI,EAAKpI,EAAIsI,EAAKpI,EACvB2I,EAAK5I,EAAIqI,EAAKvI,EAAIqI,EAAKjI,EAEvB2I,EAAKhJ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EACvB6I,EAAK9I,EAAIqI,EAAKvI,EAAIsI,EAAKlI,EAEvB8H,EAAOO,EACPN,EAAOO,EAEPX,EAAOU,EACPR,EAAOS,EA0BX,OAtBAX,EAAOgB,GADPhB,EAAOc,GADPd,EAAOY,EAAKZ,EAAOY,EAAKZ,GACLc,EAAKd,GACLgB,EAAKhB,EAIxBE,EAAOe,GADPf,EAAOa,GADPb,EAAOW,EAAKX,EAAOW,EAAKX,GACLa,EAAKb,GACLe,EAAKf,EAIxBC,GADAA,GADAA,EAAYA,EAALS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAIxBC,GADAA,GADAA,EAAYA,EAALS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAExB7K,KAAKuB,QAAQ+B,EAAImH,EACjBzK,KAAKuB,QAAQmD,MAAQkG,EAAOH,EAE5BzK,KAAKuB,QAAQgC,EAAIoH,EACjB3K,KAAKuB,QAAQoD,OAASkG,EAAOF,EAE7B3K,KAAKyB,eAAiBzB,KAAKuB,QAEpBvB,KAAKyB,gBAShBV,EAAOqlC,SAASvkC,UAAU0C,eAAiB,WAEvC,IAAI6F,EAAcpK,KAAKc,eAEvBd,KAAKc,eAAiBC,EAAOsJ,eAE7B,IAAK,IAAIpI,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGI,kBAGrB,IAAIiC,EAAStE,KAAK+J,YAIlB,IAFA/J,KAAKc,eAAiBsJ,EAEjBnI,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAElCjC,KAAKgC,SAASC,GAAGI,kBAGrB,OAAOiC,GASXvD,EAAOqlC,SAASvkC,UAAU6hC,cAAgB,SAAUnL,EAAOs5D,QAErCzrF,IAAdyrF,IAA2BA,EAAY,IAAI9wF,EAAOX,OAEtDJ,KAAKc,eAAesE,aAAamzB,EAAOs5D,GAIxC,IAFA,IAAI/oC,EAAe9oD,KAAK8oD,aAEf7mD,EAAI,EAAGA,EAAI6mD,EAAa5mD,OAAQD,IACzC,CACI,IAAI0S,EAAOm0C,EAAa7mD,GAExB,GAAK0S,EAAKo0C,OAMNp0C,EAAKq0C,OAEDr0C,EAAKq0C,MAAM7+C,SAAS0nF,EAAUvuF,EAAGuuF,EAAUtuF,IAE3C,OAAO,EAKnB,OAAO,GAYXxC,EAAOqlC,SAASvkC,UAAUiwF,gBAAkB,SAAUj6D,GAQlD,OANI73B,KAAKuuF,eAELvuF,KAAK0uF,oBACL1uF,KAAKuuF,cAAe,GAGjBvuF,KAAKsuF,aAAaj4D,MAAMwB,IAQnC92B,EAAOqlC,SAASvkC,UAAU6sF,kBAAoB,WAE1C,IAAIjkF,EAAOC,EAAAA,EACPE,GAAQF,EAAAA,EAERC,EAAOD,EAAAA,EACPG,GAAQH,EAAAA,EAEZ,GAAI1K,KAAK8oD,aAAa5mD,OAIlB,IAFA,IAAI8mD,EAAOtoB,EAAQp9B,EAAGC,EAAG4S,EAAGsP,EAEnBxjB,EAAI,EAAGA,EAAIjC,KAAK8oD,aAAa5mD,OAAQD,IAC9C,CACI,IAAI0S,EAAO3U,KAAK8oD,aAAa7mD,GACzB8R,EAAOY,EAAKZ,KACZwuE,EAAY5tE,EAAK4tE,UAGrB,GAFAv5B,EAAQr0C,EAAKq0C,MAETj1C,IAAShT,EAAO+uB,WAAa/b,IAAShT,EAAOmvB,iBAE7C5sB,EAAI0lD,EAAM1lD,EAAIi/E,EAAY,EAC1Bh/E,EAAIylD,EAAMzlD,EAAIg/E,EAAY,EAI1B93E,EAAOnH,EAAImH,EAAOnH,EAAImH,EACtBG,EAAeA,EAARtH,GAJP6S,EAAI6yC,EAAMtkD,MAAQ69E,GAIIj/E,EAAI6S,EAAIvL,EAE9BD,EAAOpH,EAAIoH,EAAOpH,EAAIoH,EACtBE,EAAeA,EAARtH,GANPkiB,EAAIujC,EAAMrkD,OAAS49E,GAMGh/E,EAAIkiB,EAAI5a,OAE7B,GAAIkJ,IAAShT,EAAO8uB,OAErBvsB,EAAI0lD,EAAM1lD,EACVC,EAAIylD,EAAMzlD,EAIVkH,EAAOnH,GAHP6S,EAAI6yC,EAAM1xB,OAASirD,EAAY,GAGhB93E,EAAOnH,EAAI6S,EAAI1L,EAC9BG,EAAeA,EAARtH,EAAI6S,EAAW7S,EAAI6S,EAAIvL,EAE9BD,EAAOpH,GALPkiB,EAAIujC,EAAM1xB,OAASirD,EAAY,GAKhB53E,EAAOpH,EAAIkiB,EAAI9a,EAC9BE,EAAeA,EAARtH,EAAIkiB,EAAWliB,EAAIkiB,EAAI5a,OAE7B,GAAIkJ,IAAShT,EAAOyuB,QAErBlsB,EAAI0lD,EAAM1lD,EACVC,EAAIylD,EAAMzlD,EAIVkH,EAAOnH,GAHP6S,EAAI6yC,EAAMtkD,MAAQ69E,EAAY,GAGf93E,EAAOnH,EAAI6S,EAAI1L,EAC9BG,EAAeA,EAARtH,EAAI6S,EAAW7S,EAAI6S,EAAIvL,EAE9BD,EAAOpH,GALPkiB,EAAIujC,EAAMrkD,OAAS49E,EAAY,GAKhB53E,EAAOpH,EAAIkiB,EAAI9a,EAC9BE,EAAeA,EAARtH,EAAIkiB,EAAWliB,EAAIkiB,EAAI5a,MAGlC,CAEI61B,EAASsoB,EAAMtoB,OAEf,IAAK,IAAIh5B,EAAI,EAAGA,EAAIg5B,EAAOx+B,OAAQwF,IAE3Bg5B,EAAOh5B,aAAc3G,EAAOX,OAE5BkD,EAAIo9B,EAAOh5B,GAAGpE,EACdC,EAAIm9B,EAAOh5B,GAAGnE,IAIdD,EAAIo9B,EAAOh5B,GACXnE,EAAIm9B,EAAOh5B,EAAI,GAEXA,EAAIg5B,EAAOx+B,OAAS,GAEpBwF,KAIR+C,EAAOnH,EAAIi/E,EAAY93E,EAAOnH,EAAIi/E,EAAY93E,EAC9CG,EAAuBA,EAAhBtH,EAAIi/E,EAAmBj/E,EAAIi/E,EAAY33E,EAE9CD,EAAOpH,EAAIg/E,EAAY53E,EAAOpH,EAAIg/E,EAAY53E,EAC9CE,EAAuBA,EAAhBtH,EAAIg/E,EAAmBh/E,EAAIg/E,EAAY13E,QAU1DA,EADAF,EADAC,EADAH,EAAO,EAMX,IAAIid,EAAU1nB,KAAKquF,cAEnBruF,KAAKsuF,aAAahrF,EAAImH,EAAOid,EAC7B1nB,KAAKsuF,aAAa5pF,MAASkG,EAAOH,EAAkB,EAAVid,EAE1C1nB,KAAKsuF,aAAa/qF,EAAIoH,EAAO+c,EAC7B1nB,KAAKsuF,aAAa3pF,OAAUkG,EAAOF,EAAkB,EAAV+c,GAS/C3mB,EAAOqlC,SAASvkC,UAAUkD,sBAAwB,WAE9C,IAAIT,EAAStE,KAAKuE,iBAElB,GAAKvE,KAAKuF,cAYNvF,KAAKuF,cAAc4W,OAAOpW,OAAOzB,EAAOI,MAAOJ,EAAOK,YAX1D,CACI,IAAI+sF,EAAe,IAAIzxF,KAAKmqB,aAAa9lB,EAAOI,MAAOJ,EAAOK,QAC1DmB,EAAU7F,KAAKyM,QAAQqgB,WAAW2kE,EAAa15E,QAEnDhY,KAAKuF,cAAgB,IAAItF,KAAKwF,OAAOK,GACrC9F,KAAKuF,cAAc4W,OAASu1E,EAE5B1xF,KAAKuF,cAAczE,eAAiBd,KAAKc,eAQ7Cd,KAAKuF,cAAciB,OAAOlD,GAAMgB,EAAOhB,EAAIgB,EAAOI,MAClD1E,KAAKuF,cAAciB,OAAOjD,GAAMe,EAAOf,EAAIe,EAAOK,OAGlD3E,KAAKuF,cAAc4W,OAAOxO,QAAQswB,WAAW35B,EAAOhB,GAAIgB,EAAOf,GAG/DvD,KAAKa,WAAa,EAGlBZ,KAAKyqB,eAAew2D,eAAelhF,KAAMA,KAAKuF,cAAc4W,OAAOxO,SACnE3N,KAAKuF,cAAc/E,MAAQR,KAAKQ,OASpCO,EAAOqlC,SAASvkC,UAAU8vF,0BAA4B,WAElD,IAAII,EAAe/xF,KAAKuF,cACpBO,EAAUisF,EAAajsF,QACvBkS,EAAS+5E,EAAa51E,OAAOnE,OAEjClS,EAAQG,YAAYvB,MAAQsT,EAAOtT,MACnCoB,EAAQG,YAAYtB,OAASqT,EAAOrT,OACpCmB,EAAQ2H,KAAK/I,MAAQoB,EAAQoH,MAAMxI,MAAQsT,EAAOtT,MAClDoB,EAAQ2H,KAAK9I,OAASmB,EAAQoH,MAAMvI,OAASqT,EAAOrT,OAEpDotF,EAAaxlF,OAASyL,EAAOtT,MAC7BqtF,EAAavlF,QAAUwL,EAAOrT,OAG9BmB,EAAQG,YAAYuL,SAQxBzQ,EAAOqlC,SAASvkC,UAAUmwF,oBAAsB,WAE5ChyF,KAAKuF,cAAcO,QAAQ/D,SAAQ,GACnC/B,KAAKuF,cAAgB,MAUzBxE,EAAOqlC,SAASvkC,UAAU0tF,UAAY,SAAUvmC,GAExChpD,KAAKouF,aAGDpuF,KAAKouF,YAAYplC,MAAMtoB,OAAOx+B,QAAU,GAExClC,KAAK8oD,aAAahnC,MAI1B9hB,KAAKouF,YAAc,KAGfplC,aAAiBjoD,EAAOsgC,UAExB2nB,EAAQA,EAAM3yB,SACRsL,UAGV,IAAIhtB,EAAO,IAAI5T,EAAOotF,aAAanuF,KAAKuiF,UAAWviF,KAAK+sF,UAAW/sF,KAAKgtF,UAAWhtF,KAAKiqF,UAAWjqF,KAAKkqF,UAAWlqF,KAAK+wF,QAAS/nC,GAajI,OAXAhpD,KAAK8oD,aAAanhD,KAAKgN,GAEnBA,EAAKZ,OAAShT,EAAOquB,UAErBza,EAAKq0C,MAAMxnB,OAASxhC,KAAK+wF,QACzB/wF,KAAKouF,YAAcz5E,GAGvB3U,KAAKwR,OAAQ,EACbxR,KAAKuuF,cAAe,EAEb55E,GAcX9N,OAAOyF,eAAevL,EAAOqlC,SAASvkC,UAAW,gBAAiB,CAE9DkF,IAAK,WAED,OAAO/G,KAAK2B,gBAGhBqF,IAAK,SAAUC,GAEXjH,KAAK2B,eAAiBsF,EAElBjH,KAAK2B,eAEL3B,KAAK+E,wBAIL/E,KAAKgyF,sBAGThyF,KAAKwR,OAAQ,EACbxR,KAAKwuF,YAAa,KAwB1BztF,EAAO0D,cAAgB,SAAUnC,EAAMoC,EAAOC,EAAQ2O,EAAKlP,EAAWD,EAAYE,EAAU2B,GAiExF,QA/DcI,IAAV1B,IAAuBA,EAAQ,UACpB0B,IAAXzB,IAAwBA,EAAS,UACzByB,IAARkN,IAAqBA,EAAM,SACblN,IAAdhC,IAA2BA,EAAYrD,EAAOiN,WAAW+b,cAC1C3jB,IAAfjC,IAA4BA,EAAa,QAC5BiC,IAAb/B,IAA0BA,EAAWpE,KAAKsX,sBAC1BnR,IAAhBJ,IAA6BA,EAAc,GAK/ChG,KAAKsC,KAAOA,EAKZtC,KAAKsT,IAAMA,EAKXtT,KAAK+T,KAAOhT,EAAOiuB,cAMnBhvB,KAAK4E,YAAc,IAAI7D,EAAOC,OAE9BhB,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EACd3E,KAAKmE,WAAaA,EAElBnE,KAAKkN,MAAQ,IAAInM,EAAOS,UAAU,EAAG,EAAGxB,KAAK0E,MAAQ1E,KAAKmE,WAAYnE,KAAK2E,OAAS3E,KAAKmE,YAEzFnE,KAAKyN,KAAOzN,KAAKkN,MAAMmpB,QAQvBr2B,KAAKiG,YAAc,IAAIhG,KAAKusB,YAC5BxsB,KAAKiG,YAAYvB,MAAQ1E,KAAK0E,MAAQ1E,KAAKmE,WAC3CnE,KAAKiG,YAAYtB,OAAS3E,KAAK2E,OAAS3E,KAAKmE,WAC7CnE,KAAKiG,YAAYuO,YAAc,GAC/BxU,KAAKiG,YAAY9B,WAAanE,KAAKmE,WAEnCnE,KAAKiG,YAAY7B,UAAYA,EAE7BpE,KAAKiG,YAAY+G,WAAY,EAE7B/M,KAAKyM,QAAQ3I,KAAK/D,KAAMA,KAAKiG,YAAajG,KAAKkN,MAAMmpB,SAQrDr2B,KAAKqE,SAAWA,EAEZrE,KAAKqE,SAAS0P,OAAShT,EAAO0W,MAClC,CACI,IAAIjS,EAAKxF,KAAKqE,SAASmB,GACvBxF,KAAKiG,YAAYE,aAAeH,EAChChG,KAAKiG,YAAYmQ,OAAO5Q,EAAGiP,KAAM,EAEjCzU,KAAKiyF,cAAgB,IAAIhyF,KAAKwnB,cAAcjiB,EAAIxF,KAAK0E,MAAO1E,KAAK2E,OAAQ3E,KAAKiG,YAAY7B,UAAW4B,GACrGhG,KAAKiG,YAAYuO,YAAYhP,EAAGiP,IAAMzU,KAAKiyF,cAAcnsF,QAEzD9F,KAAKsY,WAAa,IAAIvX,EAAOX,MAAmB,GAAbJ,KAAK0E,MAA4B,IAAd1E,KAAK2E,aAI3D3E,KAAKiyF,cAAgB,IAAIhyF,KAAKmqB,aAAapqB,KAAK0E,MAAQ1E,KAAKmE,WAAYnE,KAAK2E,OAAS3E,KAAKmE,YAC5FnE,KAAKiG,YAAYkJ,OAASnP,KAAKiyF,cAAcj6E,OAOjDhY,KAAKsN,OAAQ,EAEbtN,KAAKkyF,WAAa,IAAInxF,EAAOC,OAE7BhB,KAAKstB,cAGTvsB,EAAO0D,cAAc5C,UAAYgF,OAAOwB,OAAOpI,KAAKyM,QAAQ7K,WAC5Dd,EAAO0D,cAAc5C,UAAUC,YAAcf,EAAO0D,cAepD1D,EAAO0D,cAAc5C,UAAUswF,SAAW,SAAUj2E,EAAe5Y,EAAGC,EAAGqY,GAErEM,EAAc7Z,kBAEdrC,KAAK4E,YAAY4yB,SAAStb,EAAcpb,gBACxCd,KAAK4E,YAAY/B,GAAKS,EACtBtD,KAAK4E,YAAY9B,GAAKS,EAElBvD,KAAKqE,SAAS0P,OAAShT,EAAO0W,MAE9BzX,KAAK0F,aAAawW,EAAelc,KAAK4E,YAAagX,GAInD5b,KAAK2F,cAAcuW,EAAelc,KAAK4E,YAAagX,IAiB5D7a,EAAO0D,cAAc5C,UAAUuwF,YAAc,SAAUl2E,EAAe5Y,EAAGC,EAAGqY,GAExE5b,KAAK4E,YAAYy5B,WAAWJ,UAAU36B,EAAGC,GAErCvD,KAAKqE,SAAS0P,OAAShT,EAAO0W,MAE9BzX,KAAK0F,aAAawW,EAAelc,KAAK4E,YAAagX,GAInD5b,KAAK2F,cAAcuW,EAAelc,KAAK4E,YAAagX,IAmB5D7a,EAAO0D,cAAc5C,UAAUgD,OAAS,SAAUqX,EAAe3O,EAAQqO,GAEjErO,MAAAA,EAEAvN,KAAK4E,YAAY4yB,SAAStb,EAAcpb,gBAIxCd,KAAK4E,YAAY4yB,SAASjqB,GAG1BvN,KAAKqE,SAAS0P,OAAShT,EAAO0W,MAE9BzX,KAAK0F,aAAawW,EAAelc,KAAK4E,YAAagX,GAInD5b,KAAK2F,cAAcuW,EAAelc,KAAK4E,YAAagX,IAY5D7a,EAAO0D,cAAc5C,UAAUkE,OAAS,SAAUrB,EAAOC,EAAQ0tF,GAEzD3tF,IAAU1E,KAAK0E,OAASC,IAAW3E,KAAK2E,SAK5C3E,KAAKsN,MAAiB,EAAR5I,GAAsB,EAATC,EAE3B3E,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EACd3E,KAAKkN,MAAMxI,MAAQ1E,KAAKyN,KAAK/I,MAAQA,EAAQ1E,KAAKmE,WAClDnE,KAAKkN,MAAMvI,OAAS3E,KAAKyN,KAAK9I,OAASA,EAAS3E,KAAKmE,WAEjDkuF,IAEAryF,KAAKiG,YAAYvB,MAAQ1E,KAAK0E,MAAQ1E,KAAKmE,WAC3CnE,KAAKiG,YAAYtB,OAAS3E,KAAK2E,OAAS3E,KAAKmE,YAG7CnE,KAAKqE,SAAS0P,OAAShT,EAAO0W,QAE9BzX,KAAKsY,WAAWhV,EAAItD,KAAK0E,MAAQ,EACjC1E,KAAKsY,WAAW/U,GAAKvD,KAAK2E,OAAS,GAGlC3E,KAAKsN,OAKVtN,KAAKiyF,cAAclsF,OAAO/F,KAAK0E,MAAO1E,KAAK2E,UAQ/C5D,EAAO0D,cAAc5C,UAAU+Z,MAAQ,WAE9B5b,KAAKsN,QAKNtN,KAAKqE,SAAS0P,OAAShT,EAAO0W,OAE9BzX,KAAKqE,SAASmB,GAAG+V,gBAAgBvb,KAAKqE,SAASmB,GAAGgW,YAAaxb,KAAKiyF,cAActqE,aAGtF3nB,KAAKiyF,cAAcr2E,UAavB7a,EAAO0D,cAAc5C,UAAU6D,aAAe,SAAUwW,EAAe3O,EAAQqO,GAE3E,GAAK5b,KAAKsN,OAAiC,IAAxB4O,EAAc1b,MAAjC,CASA,IAAIwC,EAAKkZ,EAAcpb,eACvBkC,EAAGq7B,WACHr7B,EAAGi7B,UAAU,EAAuB,EAApBj+B,KAAKsY,WAAW/U,GAE5BgK,GAEAvK,EAAGm7B,OAAO5wB,GAGdvK,EAAG3C,MAAM,GAAI,GAGb,IAAK,IAAI4B,EAAI,EAAGA,EAAIia,EAAcla,SAASE,OAAQD,IAE/Cia,EAAcla,SAASC,GAAGI,kBAI9B,IAAImD,EAAKxF,KAAKqE,SAASmB,GAEvBA,EAAG8V,SAAS,EAAG,EAAGtb,KAAK0E,MAAQ1E,KAAKmE,WAAYnE,KAAK2E,OAAS3E,KAAKmE,YAEnEqB,EAAG+V,gBAAgB/V,EAAGgW,YAAaxb,KAAKiyF,cAActqE,aAElD/L,GAEA5b,KAAKiyF,cAAcr2E,QAGvB5b,KAAKqE,SAASuH,YAAY4F,OAAQ,EAElCxR,KAAKqE,SAAS2X,oBAAoBE,EAAelc,KAAKsY,WAAYtY,KAAKiyF,cAActqE,YAAapa,GAElGvN,KAAKqE,SAASuH,YAAY4F,OAAQ,EAElChM,EAAG+V,gBAAgB/V,EAAGgW,YAAa,QAYvCza,EAAO0D,cAAc5C,UAAU8D,cAAgB,SAAUuW,EAAe3O,EAAQqO,GAE5E,GAAK5b,KAAKsN,OAAiC,IAAxB4O,EAAc1b,MAAjC,CASA,IAAIwC,EAAKkZ,EAAcpb,eACvBkC,EAAGq7B,WAEC9wB,GAEAvK,EAAGm7B,OAAO5wB,GAId,IAAK,IAAItL,EAAI,EAAGA,EAAIia,EAAcla,SAASE,OAAQD,IAE/Cia,EAAcla,SAASC,GAAGI,kBAG1BuZ,GAEA5b,KAAKiyF,cAAcr2E,QAGvB,IAAI02E,EAAiBtyF,KAAKqE,SAASF,WAEnCnE,KAAKqE,SAASF,WAAanE,KAAKmE,WAEhCnE,KAAKqE,SAAS2X,oBAAoBE,EAAelc,KAAKiyF,cAActkF,QAASJ,GAE7EvN,KAAKqE,SAASF,WAAamuF,IAmB/BvxF,EAAO0D,cAAc5C,UAAUyyE,SAAW,SAAUvgE,EAAMkqE,EAAgBE,EAAgBC,GAEtF,IAAIpjE,EAAQ,IAAI66D,MAMhB,OALA76D,EAAMpL,IAAM5P,KAAKg+E,UAAUjqE,EAAMkqE,GAE7BE,IAAkBnjE,EAAMqjE,OAASF,GACjCC,IAAmBpjE,EAAMsjE,QAAUF,GAEhCpjE,GAaXja,EAAO0D,cAAc5C,UAAUm8E,UAAY,SAAUjqE,EAAMkqE,GAEvD,OAAOj+E,KAAK2gF,YAAYzC,UAAUnqE,EAAMkqE,IAS5Cl9E,EAAO0D,cAAc5C,UAAU8+E,UAAY,WAEvC,GAAI3gF,KAAKqE,SAAS0P,OAAShT,EAAO0W,MAsB9B,OAAOzX,KAAKiyF,cAAcj6E,OApB1B,IAAIxS,EAAKxF,KAAKqE,SAASmB,GACnBd,EAAQ1E,KAAKiyF,cAAcvtF,MAC3BC,EAAS3E,KAAKiyF,cAActtF,OAE5B4tF,EAAc,IAAIC,WAAW,EAAI9tF,EAAQC,GAE7Ca,EAAG+V,gBAAgB/V,EAAGgW,YAAaxb,KAAKiyF,cAActqE,aACtDniB,EAAGitF,WAAW,EAAG,EAAG/tF,EAAOC,EAAQa,EAAG2P,KAAM3P,EAAG6N,cAAek/E,GAC9D/sF,EAAG+V,gBAAgB/V,EAAGgW,YAAa,MAEnC,IAAIk3E,EAAa,IAAIzyF,KAAKmqB,aAAa1lB,EAAOC,GAC1CguF,EAAaD,EAAW/kF,QAAQ4d,aAAa,EAAG,EAAG7mB,EAAOC,GAK9D,OAJAguF,EAAWh+E,KAAK3N,IAAIurF,GAEpBG,EAAW/kF,QAAQ+d,aAAainE,EAAY,EAAG,GAExCD,EAAW16E,QAiD1BjX,EAAO61E,KAAO,SAAUt0E,EAAMgB,EAAGC,EAAGozE,EAAMp6D,GAEtCjZ,EAAIA,GAAK,EACTC,EAAIA,GAAK,EAILozE,EAFAA,MAAAA,EAEO,GAIAA,EAAK1rD,WAMhBjrB,KAAKgY,OAASjX,EAAO2F,WAAW2B,OAAOrI,MAEvCe,EAAO0E,OAAO1B,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAGtD,KAAKyM,QAAQqgB,WAAW/sB,KAAKgY,SAMlEhY,KAAK+T,KAAOhT,EAAO6tB,KAMnB5uB,KAAK80C,YAAc/zC,EAAOytB,OAO1BxuB,KAAK0nB,QAAU,IAAI3mB,EAAOX,MAQ1BJ,KAAK4yF,WAAa,KAKlB5yF,KAAK2N,QAAU3N,KAAKgY,OAAOsB,WAAW,MAKtCtZ,KAAKwjB,OAAS,GAKdxjB,KAAK6yF,aAAe,GAKpB7yF,KAAK8yF,WAAa,GAKlB9yF,KAAK+yF,YAAc,GAQnB/yF,KAAKgzF,WAAY,EAajBhzF,KAAKizF,iBAAkB,EAQvBjzF,KAAKkzF,YAAc,iBAMnBlzF,KAAKmzF,oBAAsB,EAO3BnzF,KAAKozF,qBAAuB,GAO5BpzF,KAAKqzF,YAAc,YAMnBrzF,KAAKszF,KAAOhxF,EAAK+B,SAASF,WAM1BnE,KAAKuzF,MAAQ5c,EAMb32E,KAAKwzF,gBAAkB,KAMvBxzF,KAAKyzF,aAAe,EAMpBzzF,KAAK0zF,WAAa,EAMlB1zF,KAAKuM,OAAS,EAMdvM,KAAKwM,QAAU,EAMfxM,KAAKuc,MAAQ,GAEbvc,KAAK2zF,SAASp3E,GAAS,IAEV,KAATo6D,GAEA32E,KAAK4zF,cAIb7yF,EAAO61E,KAAK/0E,UAAYgF,OAAOwB,OAAOtH,EAAO0E,OAAO5D,WACpDd,EAAO61E,KAAK/0E,UAAUC,YAAcf,EAAO61E,KAQ3C71E,EAAO61E,KAAK/0E,UAAUoC,UAAY,WAE9B,SAAKjE,KAAK64E,oBAAuB74E,KAAK84E,qBAAwB94E,KAAK+4E,qBAK5D/4E,KAAKg5E,iBAShBj4E,EAAO61E,KAAK/0E,UAAU0lC,OAAS,aAW/BxmC,EAAO61E,KAAK/0E,UAAUE,QAAU,SAAU+6C,GAEtC98C,KAAK8F,QAAQ/D,SAAQ,GAErBhB,EAAOosE,UAAU8C,QAAQpuE,UAAUE,QAAQgC,KAAK/D,KAAM88C,IAkB1D/7C,EAAO61E,KAAK/0E,UAAUgyF,UAAY,SAAUvwF,EAAGC,EAAG4T,EAAOiqE,EAAM0S,EAAcC,GAiBzE,YAfU3tF,IAAN9C,IAAmBA,EAAI,QACjB8C,IAAN7C,IAAmBA,EAAI,QACb6C,IAAV+Q,IAAuBA,EAAQ,yBACtB/Q,IAATg7E,IAAsBA,EAAO,QACZh7E,IAAjB0tF,IAA8BA,GAAe,QAC9B1tF,IAAf2tF,IAA4BA,GAAa,GAE7C/zF,KAAKuc,MAAMglE,cAAgBj+E,EAC3BtD,KAAKuc,MAAMilE,cAAgBj+E,EAC3BvD,KAAKuc,MAAM8kE,YAAclqE,EACzBnX,KAAKuc,MAAM+kE,WAAaF,EACxBphF,KAAKuc,MAAMu3E,aAAeA,EAC1B9zF,KAAKuc,MAAMw3E,WAAaA,EACxB/zF,KAAKwR,OAAQ,EAENxR,MA6BXe,EAAO61E,KAAK/0E,UAAU8xF,SAAW,SAAUp3E,EAAOgrB,QAE/BnhC,IAAXmhC,IAAwBA,GAAS,GAErC,IAAIysD,EAAWntF,OAAOysB,OAAO,GAAI/W,GACjCy3E,EAASzc,KAAOh7D,EAAMg7D,MAAQ,kBAC9Byc,EAAShiD,gBAAkBz1B,EAAMy1B,iBAAmB,KACpDgiD,EAASjrC,KAAOxsC,EAAMwsC,MAAQ,QAC9BirC,EAAS38C,OAAS96B,EAAM86B,OAAS,QAAQkZ,cACzCyjC,EAASC,cAAgB13E,EAAM03E,cAAgB,QAAQ1jC,cACvDyjC,EAASE,cAAgB33E,EAAM23E,cAAgB,OAAO3jC,cACtDyjC,EAASvR,OAASlmE,EAAMkmE,QAAU,QAClCuR,EAASG,gBAAkBlyD,OAAO1lB,EAAM43E,kBAAoB,EAC5DH,EAASI,SAAW73E,EAAM63E,WAAY,EACtCJ,EAASK,cAAgB93E,EAAM83E,eAAiB,IAChDL,EAASM,SAAW/3E,EAAM+3E,UAAY,EACtCN,EAASzS,cAAgBhlE,EAAMglE,eAAiB,EAChDyS,EAASxS,cAAgBjlE,EAAMilE,eAAiB,EAChDwS,EAAS3S,YAAc9kE,EAAM8kE,aAAe,gBAC5C2S,EAAS1S,WAAa/kE,EAAM+kE,YAAc,EAC1C0S,EAASO,KAAOh4E,EAAMg4E,MAAQ,EAC9BP,EAASQ,eAAiBj4E,EAAMi4E,gBAAkB,KAElD,IAAIlmB,EAAatuE,KAAKy0F,iBAAiBT,EAASzc,MA4ChD,OA1CIyc,EAASU,YAETpmB,EAAWomB,UAAYV,EAASU,WAGhCV,EAASW,cAETrmB,EAAWqmB,YAAcX,EAASW,aAGlCX,EAASY,aAETtmB,EAAWsmB,WAAaZ,EAASY,YAGjCZ,EAASa,WAEwB,iBAAtBb,EAASa,WAEhBb,EAASa,SAAWb,EAASa,SAAW,MAG5CvmB,EAAWumB,SAAWb,EAASa,UAGnC70F,KAAKwzF,gBAAkBllB,EAEvB0lB,EAASzc,KAAOv3E,KAAK80F,iBAAiB90F,KAAKwzF,iBAE3CxzF,KAAKuc,MAAQy3E,EACbh0F,KAAKwR,OAAQ,EAETwiF,EAASe,aAET/0F,KAAK+0F,WAAaf,EAASe,YAG3BxtD,GAEAvnC,KAAK4zF,aAGF5zF,MASXe,EAAO61E,KAAK/0E,UAAU+xF,WAAa,WAE/B5zF,KAAK8F,QAAQG,YAAY9B,WAAanE,KAAKszF,KAE3CtzF,KAAK2N,QAAQ4pE,KAAOv3E,KAAKuc,MAAMg7D,KAE/B,IAAIyd,EAAah1F,KAAK22E,MAES,EAA3B32E,KAAKmzF,oBAA2BnzF,KAAKmzF,mBAAqB6B,EAAW9yF,SAErE8yF,EAAah1F,KAAK22E,KAAKse,UAAU,EAAGj1F,KAAKmzF,oBAAsBnzF,KAAKozF,sBAGpEpzF,KAAKuc,MAAM63E,WAEXY,EAAah1F,KAAKk1F,YAAYl1F,KAAK22E,OAIvC,IAAIwe,EAAQH,EAAW9gE,MAAMl0B,KAAKkzF,aAG9BqB,EAAOv0F,KAAKuc,MAAMg4E,KAClBa,EAAa,GACbC,EAAe,EACfb,EAAiBx0F,KAAKuc,MAAMi4E,gBAAkBx0F,KAAKs1F,wBAAwBt1F,KAAKuc,MAAMg7D,MAEtFge,EAAaJ,EAAMjzF,OAEG,EAAtBlC,KAAKuc,MAAM+3E,UAAgBt0F,KAAKuc,MAAM+3E,SAAWa,EAAMjzF,SAEvDqzF,EAAav1F,KAAKuc,MAAM+3E,UAK5B,IAAK,IAAIryF,EAFTjC,KAAK0zF,WAAa,EAEFzxF,EAAIszF,EAAYtzF,IAChC,CACI,GAAa,IAATsyF,EACJ,CAEI,IAAIhS,EAAYviF,KAAKuc,MAAM43E,gBAAkBn0F,KAAK0nB,QAAQpkB,EAEjC,EAArBtD,KAAKwjB,OAAOthB,QAAyC,EAA3BlC,KAAK6yF,aAAa3wF,QAAwC,EAA1BlC,KAAK+yF,YAAY7wF,QAAuC,EAAzBlC,KAAK8yF,WAAW5wF,OAEzGqgF,GAAaviF,KAAKw1F,YAAYL,EAAMlzF,IAIpCsgF,GAAaviF,KAAK2N,QAAQ8nF,YAAYN,EAAMlzF,IAAIyC,MAIhD1E,KAAKuc,MAAM63E,WAEX7R,GAAaviF,KAAK2N,QAAQ8nF,YAAY,KAAK/wF,WAInD,CAEI,IAAIo2B,EAAOq6D,EAAMlzF,GAAGiyB,MAAM,UACtBquD,EAAYviF,KAAK0nB,QAAQpkB,EAAItD,KAAKuc,MAAM43E,gBAE5C,GAAI7sF,MAAMC,QAAQgtF,GAId,IAFA,IAAImB,EAAM,EAED/yF,EAAI,EAAGA,EAAIm4B,EAAK54B,OAAQS,IACjC,CACI,IAAIgzF,EAAU,EAIVA,EAFqB,EAArB31F,KAAKwjB,OAAOthB,QAAyC,EAA3BlC,KAAK6yF,aAAa3wF,QAAwC,EAA1BlC,KAAK+yF,YAAY7wF,QAAuC,EAAzBlC,KAAK8yF,WAAW5wF,OAE/FlC,KAAKw1F,YAAY16D,EAAKn4B,IAItBM,KAAK4C,KAAK7F,KAAK2N,QAAQ8nF,YAAY36D,EAAKn4B,IAAI+B,OAGlD,EAAJ/B,IAEA+yF,GAAOnB,EAAK5xF,EAAI,IAGpB4/E,EAAYmT,EAAMC,OAKtB,IAAShzF,EAAI,EAAGA,EAAIm4B,EAAK54B,OAAQS,IACjC,CAE6B,EAArB3C,KAAKwjB,OAAOthB,QAAyC,EAA3BlC,KAAK6yF,aAAa3wF,QAAwC,EAA1BlC,KAAK+yF,YAAY7wF,QAAuC,EAAzBlC,KAAK8yF,WAAW5wF,OAEzGqgF,GAAaviF,KAAKw1F,YAAY16D,EAAKn4B,IAInC4/E,GAAat/E,KAAK4C,KAAK7F,KAAK2N,QAAQ8nF,YAAY36D,EAAKn4B,IAAI+B,OAK7D69E,GAFWviF,KAAKsC,KAAK2lC,KAAK2tD,WAAWrT,EAAWgS,GAAQhS,GAOpE6S,EAAWnzF,GAAKgB,KAAK4C,KAAK08E,GAC1B8S,EAAepyF,KAAK2C,IAAIyvF,EAAcD,EAAWnzF,IAGrDjC,KAAKgY,OAAOtT,MAAQ2wF,EAAer1F,KAAKszF,KAGxC,IAuCIuC,EACAC,EAxCAC,EAAavB,EAAeK,SAAW70F,KAAKuc,MAAM43E,gBAAkBn0F,KAAK0nB,QAAQnkB,EACjFoB,EAASoxF,EAAaR,EACtBS,EAAch2F,KAAKyzF,aA2CvB,IAzCIuC,EAAc,GAAK/yF,KAAK81B,IAAIi9D,GAAeD,IAE3CC,GAAeD,GAIC,IAAhBC,IAEArxF,GAAyB,EAAdqxF,EAAmBA,EAAcb,EAAMjzF,OAAS8zF,GAAeb,EAAMjzF,OAAS,IAG7FlC,KAAKgY,OAAOrT,OAASA,EAAS3E,KAAKszF,KAEnCtzF,KAAK2N,QAAQtN,MAAML,KAAKszF,KAAMtzF,KAAKszF,MAE/BtnE,UAAUC,YAEVjsB,KAAK2N,QAAQ0c,UAAU,EAAG,EAAGrqB,KAAKgY,OAAOtT,MAAO1E,KAAKgY,OAAOrT,QAG5D3E,KAAKuc,MAAMy1B,kBAEXhyC,KAAK2N,QAAQqd,UAAYhrB,KAAKuc,MAAMy1B,gBACpChyC,KAAK2N,QAAQwd,SAAS,EAAG,EAAGnrB,KAAKgY,OAAOtT,MAAO1E,KAAKgY,OAAOrT,SAG/D3E,KAAK2N,QAAQqd,UAAYhrB,KAAKuc,MAAMwsC,KACpC/oD,KAAK2N,QAAQ4pE,KAAOv3E,KAAKuc,MAAMg7D,KAC/Bv3E,KAAK2N,QAAQ60E,YAAcxiF,KAAKuc,MAAMkmE,OACtCziF,KAAK2N,QAAQsoF,aAAe,aAE5Bj2F,KAAK2N,QAAQ40E,UAAYviF,KAAKuc,MAAM43E,gBACpCn0F,KAAK2N,QAAQuoF,QAAU,QACvBl2F,KAAK2N,QAAQwoF,SAAW,QAQnBl0F,EAHLjC,KAAK0zF,WAAa,EAGNzxF,EAAIszF,EAAYtzF,IAIxB4zF,EAAgB71F,KAAKuc,MAAM43E,gBAAkB,EAC7C2B,EAAiB91F,KAAKuc,MAAM43E,gBAAkB,EAAIlyF,EAAI8zF,EAAcvB,EAAe4B,OAE3E,EAAJn0F,IAEA6zF,GAAkBE,EAAc/zF,GAGX,UAArBjC,KAAKuc,MAAM86B,MAEXw+C,GAAiBR,EAAeD,EAAWnzF,GAEjB,WAArBjC,KAAKuc,MAAM86B,QAEhBw+C,IAAkBR,EAAeD,EAAWnzF,IAAM,GAGlDjC,KAAKgzF,YAEL6C,EAAgB5yF,KAAK20B,MAAMi+D,GAC3BC,EAAgB7yF,KAAK20B,MAAMk+D,IAGN,EAArB91F,KAAKwjB,OAAOthB,QAAyC,EAA3BlC,KAAK6yF,aAAa3wF,QAAwC,EAA1BlC,KAAK+yF,YAAY7wF,QAAuC,EAAzBlC,KAAK8yF,WAAW5wF,OAEzGlC,KAAKq2F,WAAWlB,EAAMlzF,GAAI4zF,EAAeC,IAIrC91F,KAAKuc,MAAMkmE,QAAUziF,KAAKuc,MAAM43E,kBAEhCn0F,KAAKs2F,aAAat2F,KAAKuc,MAAMu3E,cAEhB,IAATS,EAEAv0F,KAAK2N,QAAQ4oF,WAAWpB,EAAMlzF,GAAI4zF,EAAeC,GAIjD91F,KAAKw2F,cAAcrB,EAAMlzF,GAAI4zF,EAAeC,GAAe,IAI/D91F,KAAKuc,MAAMwsC,OAEX/oD,KAAKs2F,aAAat2F,KAAKuc,MAAMw3E,YAEhB,IAATQ,EAEAv0F,KAAK2N,QAAQs0E,SAASkT,EAAMlzF,GAAI4zF,EAAeC,GAI/C91F,KAAKw2F,cAAcrB,EAAMlzF,GAAI4zF,EAAeC,GAAe,KAM3E91F,KAAKsW,gBAELtW,KAAKwR,OAAQ,GAcjBzQ,EAAO61E,KAAK/0E,UAAU20F,cAAgB,SAAU17D,EAAMx3B,EAAGC,EAAGwlD,GAExD,IAAI4tB,EAAO77C,EAAK5G,MAAM,UAClBqgE,EAAOv0F,KAAKuc,MAAMg4E,KAClBkC,EAAO,EAEX,GAAInvF,MAAMC,QAAQgtF,GAId,IAFA,IAAImB,EAAM,EAED/yF,EAAI,EAAGA,EAAIg0E,EAAKz0E,OAAQS,IAErB,EAAJA,IAEA+yF,GAAOnB,EAAK5xF,EAAI,IAGpB8zF,EAAOnzF,EAAIoyF,EAEP3sC,EAEA/oD,KAAK2N,QAAQs0E,SAAStL,EAAKh0E,GAAI8zF,EAAMlzF,GAIrCvD,KAAK2N,QAAQ4oF,WAAW5f,EAAKh0E,GAAI8zF,EAAMlzF,QAM/C,IAASZ,EAAI,EAAGA,EAAIg0E,EAAKz0E,OAAQS,IACjC,CACI,IAAIgzF,EAAU1yF,KAAK4C,KAAK7F,KAAK2N,QAAQ8nF,YAAY9e,EAAKh0E,IAAI+B,OAG1D+xF,EAAOz2F,KAAKsC,KAAK2lC,KAAK2tD,WAAWtyF,EAAGixF,GAEhCxrC,EAEA/oD,KAAK2N,QAAQs0E,SAAStL,EAAKh0E,GAAI8zF,EAAMlzF,GAIrCvD,KAAK2N,QAAQ4oF,WAAW5f,EAAKh0E,GAAI8zF,EAAMlzF,GAG3CD,EAAImzF,EAAOd,IAYvB50F,EAAO61E,KAAK/0E,UAAUy0F,aAAe,SAAUvtD,GAEvCA,GAEA/oC,KAAK2N,QAAQ4zE,cAAgBvhF,KAAKuc,MAAMglE,cACxCvhF,KAAK2N,QAAQ6zE,cAAgBxhF,KAAKuc,MAAMilE,cACxCxhF,KAAK2N,QAAQ0zE,YAAcrhF,KAAKuc,MAAM8kE,YACtCrhF,KAAK2N,QAAQ2zE,WAAathF,KAAKuc,MAAM+kE,aAIrCthF,KAAK2N,QAAQ4zE,cAAgB,EAC7BvhF,KAAK2N,QAAQ6zE,cAAgB,EAC7BxhF,KAAK2N,QAAQ0zE,YAAc,EAC3BrhF,KAAK2N,QAAQ2zE,WAAa,IAYlCvgF,EAAO61E,KAAK/0E,UAAU2zF,YAAc,SAAU16D,GAI1C,IAFA,IAAI47D,EAAa,EAERz0F,EAAI,EAAGA,EAAI64B,EAAK54B,OAAQD,IACjC,CACI,IAAI00F,EAAS77D,EAAK74B,GAElB,GAA8B,EAA1BjC,KAAK+yF,YAAY7wF,QAAuC,EAAzBlC,KAAK8yF,WAAW5wF,OACnD,CACI,IAAIosE,EAAatuE,KAAKy0F,iBAAiBz0F,KAAK2N,QAAQ4pE,MAEhDv3E,KAAK8yF,WAAW9yF,KAAK0zF,cAErBplB,EAAWomB,UAAY10F,KAAK8yF,WAAW9yF,KAAK0zF,aAG5C1zF,KAAK+yF,YAAY/yF,KAAK0zF,cAEtBplB,EAAWsmB,WAAa50F,KAAK+yF,YAAY/yF,KAAK0zF,aAGlD1zF,KAAK2N,QAAQ4pE,KAAOv3E,KAAK80F,iBAAiBxmB,GAG1CtuE,KAAKuc,MAAMkmE,QAAUziF,KAAKuc,MAAM43E,kBAE5Bn0F,KAAK6yF,aAAa7yF,KAAK0zF,cAEvB1zF,KAAK2N,QAAQ60E,YAAcxiF,KAAK6yF,aAAa7yF,KAAK0zF,aAGtD1zF,KAAKs2F,aAAat2F,KAAKuc,MAAMu3E,eAG7B9zF,KAAKuc,MAAMwsC,OAEP/oD,KAAKwjB,OAAOxjB,KAAK0zF,cAEjB1zF,KAAK2N,QAAQqd,UAAYhrB,KAAKwjB,OAAOxjB,KAAK0zF,aAG9C1zF,KAAKs2F,aAAat2F,KAAKuc,MAAMw3E,aAGjC2C,GAAc12F,KAAK2N,QAAQ8nF,YAAYkB,GAAQjyF,MAE/C1E,KAAK0zF,aAGT,OAAOzwF,KAAK4C,KAAK6wF,IASrB31F,EAAO61E,KAAK/0E,UAAUw0F,WAAa,SAAUv7D,EAAMx3B,EAAGC,GAElD,IAAK,IAAItB,EAAI,EAAGA,EAAI64B,EAAK54B,OAAQD,IACjC,CACI,IAAI00F,EAAS77D,EAAK74B,GAElB,GAA8B,EAA1BjC,KAAK+yF,YAAY7wF,QAAuC,EAAzBlC,KAAK8yF,WAAW5wF,OACnD,CACI,IAAIosE,EAAatuE,KAAKy0F,iBAAiBz0F,KAAK2N,QAAQ4pE,MAEhDv3E,KAAK8yF,WAAW9yF,KAAK0zF,cAErBplB,EAAWomB,UAAY10F,KAAK8yF,WAAW9yF,KAAK0zF,aAG5C1zF,KAAK+yF,YAAY/yF,KAAK0zF,cAEtBplB,EAAWsmB,WAAa50F,KAAK+yF,YAAY/yF,KAAK0zF,aAGlD1zF,KAAK2N,QAAQ4pE,KAAOv3E,KAAK80F,iBAAiBxmB,GAG1CtuE,KAAKuc,MAAMkmE,QAAUziF,KAAKuc,MAAM43E,kBAE5Bn0F,KAAK6yF,aAAa7yF,KAAK0zF,cAEvB1zF,KAAK2N,QAAQ60E,YAAcxiF,KAAK6yF,aAAa7yF,KAAK0zF,aAGtD1zF,KAAKs2F,aAAat2F,KAAKuc,MAAMu3E,cAC7B9zF,KAAK2N,QAAQ4oF,WAAWI,EAAQrzF,EAAGC,IAGnCvD,KAAKuc,MAAMwsC,OAEP/oD,KAAKwjB,OAAOxjB,KAAK0zF,cAEjB1zF,KAAK2N,QAAQqd,UAAYhrB,KAAKwjB,OAAOxjB,KAAK0zF,aAG9C1zF,KAAKs2F,aAAat2F,KAAKuc,MAAMw3E,YAC7B/zF,KAAK2N,QAAQs0E,SAAS0U,EAAQrzF,EAAGC,IAGrCD,GAAKtD,KAAK2N,QAAQ8nF,YAAYkB,GAAQjyF,MAEtC1E,KAAK0zF,eAUb3yF,EAAO61E,KAAK/0E,UAAU+0F,YAAc,WAMhC,OAJA52F,KAAKwjB,OAAS,GACdxjB,KAAK6yF,aAAe,GACpB7yF,KAAKwR,OAAQ,EAENxR,MASXe,EAAO61E,KAAK/0E,UAAUg1F,gBAAkB,WAMpC,OAJA72F,KAAK8yF,WAAa,GAClB9yF,KAAK+yF,YAAc,GACnB/yF,KAAKwR,OAAQ,EAENxR,MAkBXe,EAAO61E,KAAK/0E,UAAUi1F,SAAW,SAAU3/E,EAAOhX,GAK9C,OAHAH,KAAKwjB,OAAOrjB,GAAYgX,EACxBnX,KAAKwR,OAAQ,EAENxR,MAoBXe,EAAO61E,KAAK/0E,UAAUk1F,eAAiB,SAAU5/E,EAAOhX,GAKpD,OAHAH,KAAK6yF,aAAa1yF,GAAYgX,EAC9BnX,KAAKwR,OAAQ,EAENxR,MAkBXe,EAAO61E,KAAK/0E,UAAUm1F,aAAe,SAAUz6E,EAAOpc,GAKlD,OAHAH,KAAK8yF,WAAW3yF,GAAYoc,EAC5Bvc,KAAKwR,OAAQ,EAENxR,MAkBXe,EAAO61E,KAAK/0E,UAAUo1F,cAAgB,SAAUC,EAAQ/2F,GAKpD,OAHAH,KAAK+yF,YAAY5yF,GAAY+2F,EAC7Bl3F,KAAKwR,OAAQ,EAENxR,MAcXe,EAAO61E,KAAK/0E,UAAUs1F,qBAAuB,SAAUxgB,GAOnD,OALA32E,KAAK8F,QAAQG,YAAY9B,WAAanE,KAAKszF,KAC3CtzF,KAAK2N,QAAQ4pE,KAAOv3E,KAAKuc,MAAMg7D,KAEZv3E,KAAKk1F,YAAYve,GAEhBziD,MAAM,mBAU9BnzB,EAAO61E,KAAK/0E,UAAUqzF,YAAc,SAAUve,GAE1C,OAAI32E,KAAKizF,gBAEEjzF,KAAKo3F,iBAAiBzgB,GAItB32E,KAAKq3F,cAAc1gB,IAclC51E,EAAO61E,KAAK/0E,UAAUu1F,iBAAmB,SAAUzgB,GAiB/C,IAfA,IAAIhpE,EAAU3N,KAAK2N,QACf0mF,EAAgBr0F,KAAKuc,MAAM83E,cAE3Bx8D,EAAS,GAMTs9D,EAAQxe,EACPlgD,QAAQ,OAAQ,KAChBvC,MAAM,WAEPojE,EAAanC,EAAMjzF,OAEdD,EAAI,EAAGA,EAAIq1F,EAAYr1F,IAChC,CACI,IAAI64B,EAAOq6D,EAAMlzF,GACbm1B,EAAM,GAWV,GARA0D,EAAOA,EAAKrE,QAAQ,aAAc,IAMlB9oB,EAAQ8nF,YAAY36D,GAAMp2B,MAE1B2vF,EAEZx8D,GAAUiD,EAAO,SAFrB,CAYA,IALA,IAAIy8D,EAAmBlD,EAGnBmD,EAAQ18D,EAAK5G,MAAM,KAEdxsB,EAAI,EAAGA,EAAI8vF,EAAMt1F,OAAQwF,IAClC,CACI,IAAI+vF,EAAOD,EAAM9vF,GACbgwF,EAAgBD,EAAO,IACvBE,EAAYhqF,EAAQ8nF,YAAYiC,GAAehzF,MAEnD,GAAgB6yF,EAAZI,EACJ,CAEI,GAAU,IAANjwF,EACJ,CAII,IAFA,IAAIkwF,EAAUF,EAEPE,EAAQ11F,SAEX01F,EAAUA,EAAQ/pE,MAAM,GAAI,MAC5B8pE,EAAYhqF,EAAQ8nF,YAAYmC,GAASlzF,QAExB6yF,MAUrB,IAAKK,EAAQ11F,OAET,MAAM,IAAI0G,MAAM,sEAIpB,IAAIivF,EAAaJ,EAAKvsE,OAAO0sE,EAAQ11F,QAErCs1F,EAAM9vF,GAAKmwF,EAGXzgE,GAAOwgE,EAIX,IAAIr/E,EAAUi/E,EAAM9vF,GAAS,OAAIA,EAAIA,EAAI,EAGrC2pF,EAAYmG,EAAM3pE,MAAMtV,GAAQ1I,KAAK,KAGpC4mB,QAAQ,YAAa,IAG1B0+D,EAAMlzF,EAAI,GAAKovF,EAAY,KAAO8D,EAAMlzF,EAAI,IAAM,IAClDq1F,EAAanC,EAAMjzF,OAEnB,MAMAk1B,GAAOsgE,EACPH,GAAoBI,EAK5B9/D,GAAUT,EAAIX,QAAQ,YAAa,IAAM,MAM7C,OAFAoB,EAASA,EAAOpB,QAAQ,cAAe,KAY3C11B,EAAO61E,KAAK/0E,UAAUw1F,cAAgB,SAAU1gB,GAK5C,IAHA,IAAI37C,EAAS,GACTm6D,EAAQxe,EAAKziD,MAAM,MAEdjyB,EAAI,EAAGA,EAAIkzF,EAAMjzF,OAAQD,IAClC,CAII,IAHA,IAAI61F,EAAY93F,KAAKuc,MAAM83E,cACvBmD,EAAQrC,EAAMlzF,GAAGiyB,MAAM,KAElBxsB,EAAI,EAAGA,EAAI8vF,EAAMt1F,OAAQwF,IAClC,CACI,IAAIiwF,EAAY33F,KAAK2N,QAAQ8nF,YAAY+B,EAAM9vF,IAAIhD,MAC/CqzF,EAAqBJ,EAAY33F,KAAK2N,QAAQ8nF,YAAY,KAAK/wF,MAE1CozF,EAArBC,GAGQ,EAAJrwF,IAEAszB,GAAU,MAEdA,GAAUw8D,EAAM9vF,GAAK,IACrBowF,EAAY93F,KAAKuc,MAAM83E,cAAgBsD,IAIvCG,GAAaC,EACb/8D,GAAUw8D,EAAM9vF,GAAK,KAIzBzF,EAAIkzF,EAAMjzF,OAAS,IAEnB84B,GAAU,MAIlB,OAAOA,GAUXj6B,EAAO61E,KAAK/0E,UAAUm2F,WAAa,SAAU1pB,GAEzC,IAAIiJ,EAAOv3E,KAAK80F,iBAAiBxmB,GAE7BtuE,KAAKuc,MAAMg7D,OAASA,IAEpBv3E,KAAKuc,MAAMg7D,KAAOA,EAClBv3E,KAAKwR,OAAQ,EAETxR,KAAKY,QAELZ,KAAKqC,oBAYjBtB,EAAO61E,KAAK/0E,UAAU4yF,iBAAmB,SAAUld,GAY/C,IAAI/9C,EAAI+9C,EAAKtK,MAAM,wSAEnB,GAAIzzC,EACJ,CACI,IAAIy+D,EAASz+D,EAAE,GAAGrrB,OAQlB,MALK,2DAA6D+pF,KAAKD,IAAY,QAAUC,KAAKD,KAE9FA,EAAS,IAAOA,EAAS,KAGtB,CACH1gB,KAAMA,EACNmd,UAAWl7D,EAAE,IAAM,SACnBm7D,YAAan7D,EAAE,IAAM,SACrBo7D,WAAYp7D,EAAE,IAAM,SACpBq7D,SAAUr7D,EAAE,IAAM,SAClB2+D,WAAYF,GAOhB,OAFA7nF,QAAQ+K,KAAK,sCAAwCo8D,GAE9C,CAACA,KAAMA,IAWtBx2E,EAAO61E,KAAK/0E,UAAUizF,iBAAmB,SAAUxmB,GAE/C,IACIxtB,EADAxsB,EAAQ,GAwBZ,OArBAwsB,EAAIwtB,EAAWomB,YACA,WAAN5zC,GAAkBxsB,EAAM3sB,KAAKm5C,IAEtCA,EAAIwtB,EAAWqmB,cACA,WAAN7zC,GAAkBxsB,EAAM3sB,KAAKm5C,IAEtCA,EAAIwtB,EAAWsmB,aACA,WAAN9zC,GAAkBxsB,EAAM3sB,KAAKm5C,IAEtCA,EAAIwtB,EAAWumB,WACA,WAAN/zC,GAAkBxsB,EAAM3sB,KAAKm5C,IAEtCA,EAAIwtB,EAAW6pB,aACN7jE,EAAM3sB,KAAKm5C,GAEfxsB,EAAMpyB,QAGPoyB,EAAM3sB,KAAK2mE,EAAWiJ,MAGnBjjD,EAAMzkB,KAAK,MAkBtB9O,EAAO61E,KAAK/0E,UAAUu2F,QAAU,SAAUzhB,EAAMoJ,GAM5C,YAJkB35E,IAAd25E,IAA2BA,GAAY,IAE3CpJ,EAAOA,EAAK1rD,YAAc,MAEbjrB,KAAKuzF,QAKlBvzF,KAAK22E,KAAOA,EAERoJ,EAEA//E,KAAK4zF,aAIL5zF,KAAKwR,OAAQ,GAXNxR,MAsCfe,EAAO61E,KAAK/0E,UAAUw2F,UAAY,SAAUj8C,GAExC,IAAK90C,MAAMC,QAAQ60C,GAEf,OAAOp8C,KAMP,IAFA,IAAI4D,EAAI,GAEC3B,EAAI,EAAGA,EAAIm6C,EAAKl6C,OAAQD,IAEzBqF,MAAMC,QAAQ60C,EAAKn6C,KAEnB2B,GAAKw4C,EAAKn6C,GAAG4N,KAAK,MAEd5N,EAAIm6C,EAAKl6C,OAAS,IAElB0B,GAAK,QAKTA,GAAKw4C,EAAKn6C,GAENA,EAAIm6C,EAAKl6C,OAAS,IAElB0B,GAAK,OASrB,OAHA5D,KAAK22E,KAAO/yE,EACZ5D,KAAKwR,OAAQ,EAENxR,MAkCXe,EAAO61E,KAAK/0E,UAAUy2F,cAAgB,SAAUh1F,EAAGC,EAAGmB,EAAOC,GAyBzD,YAvBUyB,IAAN9C,EAEAtD,KAAK4yF,WAAa,MAIb5yF,KAAK4yF,WAMN5yF,KAAK4yF,WAAWr7D,MAAMj0B,EAAGC,EAAGmB,EAAOC,GAJnC3E,KAAK4yF,WAAa,IAAI7xF,EAAOS,UAAU8B,EAAGC,EAAGmB,EAAOC,GAOpD3E,KAAKuc,MAAM83E,cAAgB3vF,IAE3B1E,KAAKuc,MAAM83E,cAAgB3vF,IAInC1E,KAAKsW,gBAEEtW,MASXe,EAAO61E,KAAK/0E,UAAUyU,cAAgB,WAElC,IAAI4E,EAAOlb,KAAK8F,QAAQG,YACpBwH,EAAOzN,KAAK8F,QAAQ2H,KACpBP,EAAQlN,KAAK8F,QAAQoH,MAErBiJ,EAAInW,KAAKgY,OAAOtT,MAChB+gB,EAAIzlB,KAAKgY,OAAOrT,OAiBpB,GAfAuW,EAAKxW,MAAQyR,EACb+E,EAAKvW,OAAS8gB,EAEdhY,EAAK/I,MAAQyR,EACb1I,EAAK9I,OAAS8gB,EAEdvY,EAAMxI,MAAQyR,EACdjJ,EAAMvI,OAAS8gB,EAEfzlB,KAAK8F,QAAQpB,MAAQyR,EACrBnW,KAAK8F,QAAQnB,OAAS8gB,EAEtBzlB,KAAKuM,OAAS4J,EACdnW,KAAKwM,QAAUiZ,EAEXzlB,KAAK4yF,WACT,CACI,IAAItvF,EAAItD,KAAK4yF,WAAWtvF,EACpBC,EAAIvD,KAAK4yF,WAAWrvF,EAGQ,UAA5BvD,KAAKuc,MAAM03E,aAEX3wF,GAAKtD,KAAK4yF,WAAWluF,MAAQ1E,KAAKgY,OAAOtT,MAAQ1E,KAAKmE,WAErB,WAA5BnE,KAAKuc,MAAM03E,eAEhB3wF,GAAKtD,KAAK4yF,WAAW55D,UAAah5B,KAAKgY,OAAOtT,MAAQ1E,KAAKmE,WAAa,GAG5C,WAA5BnE,KAAKuc,MAAM23E,aAEX3wF,GAAKvD,KAAK4yF,WAAWjuF,OAAS3E,KAAKgY,OAAOrT,OAAS3E,KAAKmE,WAEvB,WAA5BnE,KAAKuc,MAAM23E,eAEhB3wF,GAAKvD,KAAK4yF,WAAW35D,WAAcj5B,KAAKgY,OAAOrT,OAAS3E,KAAKmE,WAAa,GAG9EnE,KAAKM,MAAMgD,GAAKA,EAChBtD,KAAKM,MAAMiD,GAAKA,EAIpBvD,KAAKW,WAAoB,IAANwV,GAAiB,IAANsP,EAE9BzlB,KAAK8F,QAAQ+I,gBAAiB,EAE9B7O,KAAK8F,QAAQG,YAAYuL,SAU7BzQ,EAAO61E,KAAK/0E,UAAU6D,aAAe,SAAUJ,GAEvCtF,KAAKwR,QAELxR,KAAK4zF,aACL5zF,KAAKwR,OAAQ,GAGjBvR,KAAKwF,OAAO5D,UAAU6D,aAAa3B,KAAK/D,KAAMsF,IAUlDvE,EAAO61E,KAAK/0E,UAAU8D,cAAgB,SAAUL,GAExCtF,KAAKwR,QAELxR,KAAK4zF,aACL5zF,KAAKwR,OAAQ,GAGjBvR,KAAKwF,OAAO5D,UAAU8D,cAAc5B,KAAK/D,KAAMsF,IAUnDvE,EAAO61E,KAAK/0E,UAAUyzF,wBAA0B,SAAUZ,GAEtD,IAAI6D,EAAax3F,EAAO61E,KAAK4hB,oBAAoB9D,GAEjD,GAAI6D,EAEA,OAAOA,EAGX,IAAI5qF,EAAU5M,EAAO61E,KAAK6hB,sBAE1B9qF,EAAQ4pE,KAAOmd,EAEf,IAAIgE,EAAoB/qF,EAAQ8nF,YAAYz1F,KAAK+0F,YAEjD,GAAI2D,EAAkBC,wBACtB,CAIIJ,EAAa,CACTnC,OAJAwC,EAAM31F,KAAK4C,KAAK6yF,EAAkBC,yBAKlCE,QAJAC,EAAO71F,KAAK4C,KAAK6yF,EAAkBK,0BAKnClE,SAAU+D,EAAME,OAIxB,CACI,IACIF,EACAE,EAFAE,EAAUrrF,EAAQ8nF,YAAY,MAAM/wF,MAIxC6zF,EAAa,CACTnC,OAJAwC,EAAM31F,KAAK4C,KAAK,IAAOmzF,GAKvBH,QAJAC,EAAO71F,KAAK4C,KAAK,IAAOmzF,GAKxBnE,SAAU+D,EAAME,GAMxB,OAFA/3F,EAAO61E,KAAK4hB,oBAAoB9D,GAAa6D,GAajDx3F,EAAO61E,KAAK/0E,UAAUkI,UAAY,SAAUwD,GAQxC,OANIvN,KAAKwR,QAELxR,KAAK4zF,aACL5zF,KAAKwR,OAAQ,GAGVvR,KAAKwF,OAAO5D,UAAUkI,UAAUhG,KAAK/D,KAAMuN,IAWtDxM,EAAO61E,KAAK/0E,UAAUo3F,kBAAoB,SAAUC,EAAgBC,GAEhEn5F,KAAKozF,0BAAmChtF,IAAX+yF,EAAwB,GAAKA,EAC1Dn5F,KAAKmzF,mBAAqB+F,EAE1Bl5F,KAAK4zF,cAWT/sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,OAAQ,CAEjDkF,IAAK,WAED,OAAO/G,KAAKuzF,OAGhBvsF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuzF,QAEfvzF,KAAKuzF,MAAQtsF,EAAMgkB,YAAc,GACjCjrB,KAAKwR,OAAQ,EAETxR,KAAKY,QAELZ,KAAKqC,sBAkBrBwE,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,UAAW,CAEpDkF,IAAK,WAED,OAAO/G,KAAK80F,iBAAiB90F,KAAKwzF,kBAGtCxsF,IAAK,SAAUC,GAEXA,EAAQA,GAAS,kBACjBjH,KAAKwzF,gBAAkBxzF,KAAKy0F,iBAAiBxtF,GAC7CjH,KAAKg4F,WAAWh4F,KAAKwzF,oBAgB7B3sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,OAAQ,CAEjDkF,IAAK,WAED,OAAO/G,KAAKwzF,gBAAgB2E,YAGhCnxF,IAAK,SAAUC,GAGXA,GADAA,EAAQA,GAAS,SACHkH,OAGT,2DAA6D+pF,KAAKjxF,IAAW,QAAUixF,KAAKjxF,KAE7FA,EAAQ,IAAOA,EAAQ,KAG3BjH,KAAKwzF,gBAAgB2E,WAAalxF,EAClCjH,KAAKg4F,WAAWh4F,KAAKwzF,oBAc7B3sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,WAAY,CAErDkF,IAAK,WAED,IAAIic,EAAOhjB,KAAKwzF,gBAAgBqB,SAEhC,OAAI7xE,GAAQ,cAAgBk1E,KAAKl1E,GAEtBuS,SAASvS,EAAM,IAIfA,GAIfhc,IAAK,SAAUC,GAIU,iBAFrBA,EAAQA,GAAS,OAIbA,GAAgB,MAGpBjH,KAAKwzF,gBAAgBqB,SAAW5tF,EAChCjH,KAAKg4F,WAAWh4F,KAAKwzF,oBAU7B3sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,aAAc,CAEvDkF,IAAK,WAED,OAAO/G,KAAKwzF,gBAAgBoB,YAAc,UAG9C5tF,IAAK,SAAUC,GAEXA,EAAQA,GAAS,SACjBjH,KAAKwzF,gBAAgBoB,WAAa3tF,EAClCjH,KAAKg4F,WAAWh4F,KAAKwzF,oBAU7B3sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,YAAa,CAEtDkF,IAAK,WAED,OAAO/G,KAAKwzF,gBAAgBkB,WAAa,UAG7C1tF,IAAK,SAAUC,GAEXA,EAAQA,GAAS,SACjBjH,KAAKwzF,gBAAgBkB,UAAYztF,EACjCjH,KAAKg4F,WAAWh4F,KAAKwzF,oBAU7B3sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,cAAe,CAExDkF,IAAK,WAED,OAAO/G,KAAKwzF,gBAAgBmB,aAAe,UAG/C3tF,IAAK,SAAUC,GAEXA,EAAQA,GAAS,SACjBjH,KAAKwzF,gBAAgBmB,YAAc1tF,EACnCjH,KAAKg4F,WAAWh4F,KAAKwzF,oBAS7B3sF,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,OAAQ,CAEjDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMwsC,MAGtB/hD,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMwsC,OAErB/oD,KAAKuc,MAAMwsC,KAAO9hD,EAClBjH,KAAKwR,OAAQ,MAazB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,QAAS,CAElDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM86B,OAGtBrwC,IAAK,SAAUC,IAEXA,EAAQA,EAAMspD,iBACAvwD,KAAKuc,MAAM86B,QAErBr3C,KAAKuc,MAAM86B,MAAQpwC,EACnBjH,KAAKwR,OAAQ,MAYzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,aAAc,CAEvDkF,IAAK,WAED,OAAO/G,KAAKszF,MAGhBtsF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKszF,OAEftzF,KAAKszF,KAAOrsF,EACZjH,KAAKwR,OAAQ,MAezB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,OAAQ,CAEjDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMg4E,MAGtBvtF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMg4E,OAErBv0F,KAAKuc,MAAMg4E,KAAOttF,EAClBjH,KAAKwR,OAAQ,MAWzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,eAAgB,CAEzDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM03E,cAGtBjtF,IAAK,SAAUC,IAEXA,EAAQA,EAAMspD,iBACAvwD,KAAKuc,MAAM03E,eAErBj0F,KAAKuc,MAAM03E,aAAehtF,EAC1BjH,KAAKwR,OAAQ,MAWzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,eAAgB,CAEzDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM23E,cAGtBltF,IAAK,SAAUC,IAEXA,EAAQA,EAAMspD,iBACAvwD,KAAKuc,MAAM23E,eAErBl0F,KAAKuc,MAAM23E,aAAejtF,EAC1BjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,SAAU,CAEnDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMkmE,QAGtBz7E,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMkmE,SAErBziF,KAAKuc,MAAMkmE,OAASx7E,EACpBjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,kBAAmB,CAE5DkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM43E,iBAGtBntF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAM43E,kBAErBn0F,KAAKuc,MAAM43E,gBAAkBlyD,OAAOh7B,GACpCjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,WAAY,CAErDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM63E,UAGtBptF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAM63E,WAErBp0F,KAAKuc,MAAM63E,SAAWntF,EACtBjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,gBAAiB,CAE1DkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM83E,eAGtBrtF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAM83E,gBAErBr0F,KAAKuc,MAAM83E,cAAgBptF,EAC3BjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,cAAe,CAExDkF,IAAK,WAED,OAAO/G,KAAKyzF,cAGhBzsF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKyzF,eAEfzzF,KAAKyzF,aAAe1yD,WAAW95B,GAC/BjH,KAAKwR,OAAQ,EAETxR,KAAKY,QAELZ,KAAKqC,sBAWrBwE,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,gBAAiB,CAE1DkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMglE,eAGtBv6E,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMglE,gBAErBvhF,KAAKuc,MAAMglE,cAAgBt6E,EAC3BjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,gBAAiB,CAE1DkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMilE,eAGtBx6E,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMilE,gBAErBxhF,KAAKuc,MAAMilE,cAAgBv6E,EAC3BjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,cAAe,CAExDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM8kE,aAGtBr6E,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAM8kE,cAErBrhF,KAAKuc,MAAM8kE,YAAcp6E,EACzBjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,aAAc,CAEvDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAM+kE,YAGtBt6E,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAM+kE,aAErBthF,KAAKuc,MAAM+kE,WAAar6E,EACxBjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,eAAgB,CAEzDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMu3E,cAGtB9sF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMu3E,eAErB9zF,KAAKuc,MAAMu3E,aAAe7sF,EAC1BjH,KAAKwR,OAAQ,MAUzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,aAAc,CAEvDkF,IAAK,WAED,OAAO/G,KAAKuc,MAAMw3E,YAGtB/sF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuc,MAAMw3E,aAErB/zF,KAAKuc,MAAMw3E,WAAa9sF,EACxBjH,KAAKwR,OAAQ,MAWzB3K,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,QAAS,CAElDkF,IAAK,WAQD,OANI/G,KAAKwR,QAELxR,KAAK4zF,aACL5zF,KAAKwR,OAAQ,GAGVxR,KAAKK,MAAMiD,GAAKtD,KAAK8F,QAAQoH,MAAMxI,MAAQ1E,KAAKmE,aAG3D6C,IAAK,SAAUC,GAEXjH,KAAKK,MAAMiD,EAAI2D,EAAQjH,KAAK8F,QAAQoH,MAAMxI,MAC1C1E,KAAKuM,OAAStF,KAUtBJ,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,SAAU,CAEnDkF,IAAK,WAQD,OANI/G,KAAKwR,QAELxR,KAAK4zF,aACL5zF,KAAKwR,OAAQ,GAGVxR,KAAKK,MAAMkD,GAAKvD,KAAK8F,QAAQoH,MAAMvI,OAAS3E,KAAKmE,aAG5D6C,IAAK,SAAUC,GAEXjH,KAAKK,MAAMkD,EAAI0D,EAAQjH,KAAK8F,QAAQoH,MAAMvI,OAC1C3E,KAAKwM,QAAUvF,KAUvBJ,OAAOyF,eAAevL,EAAO61E,KAAK/0E,UAAW,aAAc,CAEvDkF,IAAK,WAED,OAAO/G,KAAKqzF,aAGhBrsF,IAAK,SAAUC,GAEXjH,KAAKqzF,YAAcpsF,EACnBjH,KAAK4zF,gBAIb7yF,EAAO61E,KAAK4hB,oBAAsB,GAElCz3F,EAAO61E,KAAKwiB,qBAAuB7mD,SAAS8mD,cAAc,UAC1Dt4F,EAAO61E,KAAK6hB,sBAAwB13F,EAAO61E,KAAKwiB,qBAAqB9/E,WAAW,MAuDhFvY,EAAOwvE,WAAa,SAAUjuE,EAAMgB,EAAGC,EAAGg0E,EAAMZ,EAAM3zD,EAAMq0B,GAExD/zC,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACTg0E,EAAOA,GAAQ,GACfZ,EAAOA,GAAQ,GACf3zD,EAAOA,GAAQ,GACfq0B,EAAQA,GAAS,OAEjBp3C,KAAKkI,uBAAuBpE,KAAK/D,MAMjCA,KAAK+T,KAAOhT,EAAO+tB,WAMnB9uB,KAAK80C,YAAc/zC,EAAOytB,OAM1BxuB,KAAKs5F,UAAY,EAMjBt5F,KAAKu5F,WAAa,EAKlBv5F,KAAKwG,OAAS,IAAIzF,EAAOX,MAMzBJ,KAAKw5F,YAAc,IAAIz4F,EAAOX,MAM9BJ,KAAKwwE,QAAU,GAMfxwE,KAAKy5F,UAAY,EAMjBz5F,KAAKuzF,MAAQ5c,EAAK1rD,YAAc,GAMhCjrB,KAAK05F,MAAQp3F,EAAKwY,MAAM6+E,cAAcpiB,GAMtCv3E,KAAK45F,MAAQriB,EAMbv3E,KAAK65F,UAAY72E,EAMjBhjB,KAAK85F,OAASziD,EAMdr3C,KAAK+5F,eAAiB,EAMtB/5F,KAAKg6F,MAAQ,SAEbh6F,KAAK4zF,aAKL5zF,KAAKwR,OAAQ,EAEbzQ,EAAOosE,UAAUiB,KAAK18D,KAAK3N,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG,GAAI,OAG1DxC,EAAOwvE,WAAW1uE,UAAYgF,OAAOwB,OAAOpI,KAAKkI,uBAAuBtG,WACxEd,EAAOwvE,WAAW1uE,UAAUC,YAAcf,EAAOwvE,WAEjDxvE,EAAOosE,UAAUiB,KAAKC,QAAQtqE,KAAKhD,EAAOwvE,WAAW1uE,UAAW,CAC5D,QACA,WACA,SACA,UACA,gBACA,eACA,UACA,WACA,cACA,UAGJd,EAAOwvE,WAAW1uE,UAAUg3E,iBAAmB93E,EAAOosE,UAAUsB,YAAYxqE,UAC5ElD,EAAOwvE,WAAW1uE,UAAUi3E,kBAAoB/3E,EAAOosE,UAAUsG,SAASxvE,UAC1ElD,EAAOwvE,WAAW1uE,UAAUk3E,iBAAmBh4E,EAAOosE,UAAU+F,QAAQjvE,UACxElD,EAAOwvE,WAAW1uE,UAAUm3E,cAAgBj4E,EAAOosE,UAAUiB,KAAKnqE,UASlElD,EAAOwvE,WAAW1uE,UAAUoC,UAAY,WAEpC,SAAKjE,KAAK64E,oBAAuB74E,KAAK84E,qBAAwB94E,KAAK+4E,qBAK5D/4E,KAAKg5E,iBAOhBj4E,EAAOwvE,WAAW1uE,UAAUynC,WAAa,WAErCvoC,EAAOosE,UAAUsB,YAAYnlC,WAAWvlC,KAAK/D,MAC7Ce,EAAOosE,UAAUyB,cAActlC,WAAWvlC,KAAK/D,MAE3CA,KAAKq0C,MAAQr0C,KAAKq0C,KAAKtgC,OAAShT,EAAO6zC,QAAQC,SAE1C70C,KAAKs5F,YAAct5F,KAAKq0C,KAAK4lD,aAAiBj6F,KAAKu5F,aAAev5F,KAAKq0C,KAAK6lD,cAE7El6F,KAAKq0C,KAAK9L,QAAQvoC,KAAKs5F,UAAWt5F,KAAKu5F,cAanDx4F,EAAOwvE,WAAW1uE,UAAUu2F,QAAU,SAAUzhB,GAE5C32E,KAAK22E,KAAOA,GAchB51E,EAAOwvE,WAAW1uE,UAAUs4F,SAAW,SAAUxlF,EAAMtU,EAAOs2E,GAW1D,IATA,IAAIrzE,EAAI,EACJ6S,EAAI,EACJikF,GAAa,EACbC,EAAe,EACfC,EAAe,KACfC,EAA6B,EAAjBv6F,KAAKy5F,UAAiBz5F,KAAKy5F,UAAY,KACnD/hB,EAAQ,GAGHz1E,EAAI,EAAGA,EAAI00E,EAAKz0E,OAAQD,IACjC,CACI,IAAIqa,EAAOra,IAAM00E,EAAKz0E,OAAS,EAE/B,GAAI,iBAAmBs4F,KAAK7jB,EAAK8jB,OAAOx4F,IAEpC,MAAO,CAAEyC,MAAOyR,EAAGwgE,KAAMA,EAAKzrD,OAAO,EAAGjpB,GAAIqa,IAAKA,EAAKo7D,MAAOA,GAI7D,IAGI/0E,EAHAokE,EAAW4P,EAAK1P,WAAWhlE,GAC3By4F,EAAW/lF,EAAK+iE,MAAM3Q,QAQT3gE,IAAbs0F,IAEA3zB,EAAW,GACX2zB,EAAW/lF,EAAK+iE,MAAM3Q,IAI1B,IAAI4zB,EAAWL,GAAgBI,EAASC,QAAQL,GAAiBI,EAASC,QAAQL,GAAgB,EAalG,GAVI,OAASE,KAAK7jB,EAAK8jB,OAAOx4F,MAE1Bm4F,EAAYn4F,EACZo4F,EAAelkF,GAInBxT,GAAKg4F,EAAUD,EAAS50F,QAAQpB,MAAQg2F,EAAS5iB,SAAWz3E,EAGxDk6F,GAAwBA,GAAVpkF,EAAIxT,IAAgC,EAAby3F,EAGrC,MAAO,CAAE11F,MAAO21F,GAAgBlkF,EAAGwgE,KAAMA,EAAKzrD,OAAO,EAAGjpB,GAAKA,EAAIm4F,IAAa99E,KAAK,EAAOo7D,MAAOA,GAIjGvhE,IAAMukF,EAASE,SAAWD,EAAU36F,KAAK66F,eAAiBx6F,EAE1Dq3E,EAAM/vE,KAAKrE,GAAKo3F,EAAS5iB,QAAU6iB,EAAU36F,KAAK66F,eAAiBx6F,GAEnEiD,IAAMo3F,EAASE,SAAWD,EAAU36F,KAAK66F,eAAiBx6F,EAE1Di6F,EAAevzB,EAK3B,MAAO,CAAEriE,MAAOyR,EAAGwgE,KAAMA,EAAMr6D,IAAKA,EAAKo7D,MAAOA,IAcpD32E,EAAOwvE,WAAW1uE,UAAUi5F,UAAY,SAAUnkB,EAAMlgD,QAEpCrwB,IAAZqwB,IAEAA,EAAU,IAGd,IAAI9hB,EAAO3U,KAAK05F,MAAMniB,KAEtB,IAAK5iE,EAED,MAAO,GAMX,IAHA,IACIwgF,EAAQxe,EAAKlgD,QADR,mBACoB,MAAMvC,MAAM,MAEhCjyB,EAAI,EAAGA,EAAIkzF,EAAMjzF,OAAQD,IAClC,CAII,IAHA,IAAI41B,EAAS,GACTiD,EAAOq6D,EAAMlzF,GAERU,EAAI,EAAGA,EAAIm4B,EAAK54B,OAAQS,IAIzBk1B,EAFAljB,EAAK+iE,MAAM58C,EAAKmsC,WAAWtkE,IAElBk1B,EAAOjF,OAAOkI,EAAKn4B,IAInBk1B,EAAOjF,OAAO6D,GAI/B0+D,EAAMlzF,GAAK41B,EAGf,OAAOs9D,EAAMtlF,KAAK,OAStB9O,EAAOwvE,WAAW1uE,UAAU+xF,WAAa,WAErC,IAAIj/E,EAAO3U,KAAK05F,MAAMniB,KAEtB,GAAK5iE,EAAL,CAKA,IAAIgiE,EAAO32E,KAAK22E,KACZt2E,EAAQL,KAAK65F,UAAYllF,EAAKqO,KAC9BmyE,EAAQ,GAER5xF,EAAI,EAERvD,KAAKs5F,UAAY,EAEjB,EACA,EACQx+D,EAAO96B,KAAKm6F,SAASxlF,EAAMtU,EAAOs2E,IAEjCpzE,EAAIA,EAET4xF,EAAMxtF,KAAKmzB,GAEPA,EAAKp2B,MAAQ1E,KAAKs5F,YAElBt5F,KAAKs5F,UAAYx+D,EAAKp2B,OAG1BnB,GAAMoR,EAAKohF,WAAa11F,EAExBs2E,EAAOA,EAAKzrD,OAAO4P,EAAK67C,KAAKz0E,OAAS,UACpB,IAAb44B,EAAKxe,KAEdtc,KAAKu5F,WAAah2F,EAOlB,IALA,IAAI2vB,EAAI,EACJmkB,EAAQ,EACRmxC,EAAKxoF,KAAKs5F,UAAYt5F,KAAKwG,OAAOlD,EAClCmlF,EAAKzoF,KAAKu5F,WAAav5F,KAAKwG,OAAOjD,EAE9BtB,EAAI,EAAGA,EAAIkzF,EAAMjzF,OAAQD,IAClC,CACI,IAAI64B,EAAOq6D,EAAMlzF,GAEG,UAAhBjC,KAAK85F,OAELziD,EAAQr3C,KAAKs5F,UAAYx+D,EAAKp2B,MAET,WAAhB1E,KAAK85F,SAEVziD,GAASr3C,KAAKs5F,UAAYx+D,EAAKp2B,OAAS,GAG5C,IAAK,IAAI/B,EAAI,EAAGA,EAAIm4B,EAAK67C,KAAKz0E,OAAQS,IACtC,CACI,IAAIokE,EAAWjsC,EAAK67C,KAAK1P,WAAWtkE,GAChC+3F,EAAW/lF,EAAK+iE,MAAM3Q,QAET3gE,IAAbs0F,IAEA3zB,EAAW,GACX2zB,EAAW/lF,EAAK+iE,MAAM3Q,IAG1B,IAAIprD,EAAI3b,KAAKwwE,QAAQt9C,GAEjBvX,EAGAA,EAAE7V,QAAU40F,EAAS50F,UAKrB6V,EAAI,IAAI1b,KAAKwF,OAAOi1F,EAAS50F,UAC3BuuB,KAAOyG,EAAK67C,KAAKh0E,GACnB3C,KAAKwwE,QAAQ7oE,KAAKgU,IAGtBA,EAAExb,SAASmD,EAAKw3B,EAAK48C,MAAM/0E,GAAK00C,EAASmxC,EACzC7sE,EAAExb,SAASoD,EAAKu3B,EAAKv3B,EAAKm3F,EAAS3iB,QAAU13E,EAAUooF,EAEvD9sE,EAAEtb,MAAM2G,IAAI3G,GACZsb,EAAE/O,KAAO5M,KAAK4M,KACd+O,EAAE7V,QAAQ+I,gBAAiB,EAC3B8M,EAAE9O,WAAa,SAEV8O,EAAE/a,QAEHZ,KAAKsI,SAASqT,GAGlBuX,KAQR,IAAKjxB,EAAIixB,EAAGjxB,EAAIjC,KAAKwwE,QAAQtuE,OAAQD,IAEjCjC,KAAK0I,YAAY1I,KAAKwwE,QAAQvuE,MAiBtClB,EAAOwvE,WAAW1uE,UAAUk5F,YAAc,WAKtC,IAHA,IAAI5nE,EAAMnzB,KAAKwwE,QAAQtuE,OACnB84F,EAAO,GAEF/4F,EAAI,EAAGA,EAAIjC,KAAKwwE,QAAQtuE,OAAQD,IAEjCjC,KAAKwwE,QAAQvuE,GAAGrB,SAAWZ,KAE3BA,KAAKwwE,QAAQvuE,GAAGF,UAIhBi5F,EAAKrzF,KAAK3H,KAAKwwE,QAAQvuE,IAS/B,OALAjC,KAAKwwE,QAAU,GACfxwE,KAAKwwE,QAAUwqB,EAEfh7F,KAAK4zF,aAEEzgE,EAAM6nE,EAAK94F,QAStBnB,EAAOwvE,WAAW1uE,UAAUQ,gBAAkB,YAEtCrC,KAAKwR,OAAUxR,KAAKwG,OAAOmyB,OAAO34B,KAAKw5F,eAEvCx5F,KAAK4zF,aACL5zF,KAAKwR,OAAQ,EACbxR,KAAKw5F,YAAYhiE,SAASx3B,KAAKwG,SAGnCvG,KAAKkI,uBAAuBtG,UAAUQ,gBAAgB0B,KAAK/D,OAO/D6G,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,gBAAiB,CAEhEkF,IAAK,WAED,OAAO/G,KAAK+5F,gBAGhB/yF,IAAK,SAAUC,GAEW,iBAAZ,IAENjH,KAAK+5F,eAAiB9yF,EACtBjH,KAAK4zF,iBAUjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,QAAS,CAExDkF,IAAK,WAED,OAAO/G,KAAK85F,QAGhB9yF,IAAK,SAAUC,GAEPA,IAAUjH,KAAK85F,QAAqB,SAAV7yF,GAA8B,WAAVA,GAAgC,UAAVA,IAEpEjH,KAAK85F,OAAS7yF,EACdjH,KAAK4zF,iBAUjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,OAAQ,CAEvDkF,IAAK,WAED,OAAO/G,KAAKg6F,OAGhBhzF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKg6F,QAEfh6F,KAAKg6F,MAAQ/yF,EACbjH,KAAK4zF,iBAUjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,OAAQ,CAEvDkF,IAAK,WAED,OAAO/G,KAAK45F,OAGhB5yF,IAAK,SAAUC,GAEPA,IAAUjH,KAAK45F,QAEf55F,KAAK45F,MAAQ3yF,EAAMkH,OACnBnO,KAAK05F,MAAQ15F,KAAKsC,KAAKwY,MAAM6+E,cAAc35F,KAAK45F,OAChD55F,KAAK4zF,iBAUjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,WAAY,CAE3DkF,IAAK,WAED,OAAO/G,KAAK65F,WAGhB7yF,IAAK,SAAUC,IAEXA,EAAQsuB,SAAStuB,EAAO,OAEVjH,KAAK65F,WAAqB,EAAR5yF,IAE5BjH,KAAK65F,UAAY5yF,EACjBjH,KAAK4zF,iBAUjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,OAAQ,CAEvDkF,IAAK,WAED,OAAO/G,KAAKuzF,OAGhBvsF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKuzF,QAEfvzF,KAAKuzF,MAAQtsF,EAAMgkB,YAAc,GACjCjrB,KAAK4zF,iBAmBjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,WAAY,CAE3DkF,IAAK,WAED,OAAO/G,KAAKy5F,WAGhBzyF,IAAK,SAAUC,GAEPA,IAAUjH,KAAKy5F,YAEfz5F,KAAKy5F,UAAYxyF,EACjBjH,KAAK4zF,iBAgBjB/sF,OAAOyF,eAAevL,EAAOwvE,WAAW1uE,UAAW,WAAY,CAE3DkF,IAAK,WAED,OAAQ/G,KAAK05F,MAAMx+E,KAAK9W,WAG5B4C,IAAK,SAAUC,GAIPjH,KAAK05F,MAAMx+E,KAAK9W,UAFhB6C,EAE4B,EAIA,EAEhCjH,KAAK05F,MAAMx+E,KAAK1J,WA6BxBzQ,EAAOi3E,UAAY,SAAU11E,EAAMgR,EAAKkkE,EAAgBC,EAAiBC,EAAOC,EAAaC,EAAUC,EAAUC,EAASC,GAEtH,IAAKz1E,EAAKwY,MAAMmgF,cAAc3nF,GAE1B,OAAO,EAGPqkE,MAAAA,IAEAA,EAAcr1E,EAAKwY,MAAMw5D,SAAShhE,GAAK5O,MAAQ8yE,GAMnDx3E,KAAKw3E,eAAiBA,EAKtBx3E,KAAKy3E,gBAAkBA,EAKvBz3E,KAAKk7F,kBAAoBtjB,GAAY,EAKrC53E,KAAKm7F,kBAAoBtjB,GAAY,EAKrC73E,KAAKo7F,gBAAkBzjB,EAMvB33E,KAAK4lB,QAAUkyD,GAAW,EAM1B93E,KAAK6lB,QAAUkyD,GAAW,EAK1B/3E,KAAKq3C,MAAQ,OAMbr3C,KAAKq7F,WAAY,EAMjBr7F,KAAKs7F,eAAgB,EAMrBt7F,KAAKu7F,eAAiB,EAMtBv7F,KAAKw7F,eAAiB,EAOtBx7F,KAAKy7F,WAAa,EAKlBz7F,KAAK07F,QAAUp5F,EAAKwY,MAAMw5D,SAAShhE,GAMnCtT,KAAKuzF,MAAQ,GAMbvzF,KAAK27F,SAAW,GAKhB37F,KAAKk0E,UAAY,IAAInzE,EAAO27E,UAO5B,IAJA,IAAIkf,EAAW57F,KAAK4lB,QAChBi2E,EAAW77F,KAAK6lB,QAChBpiB,EAAI,EAECd,EAAI,EAAGA,EAAI+0E,EAAMx1E,OAAQS,IAClC,CACI,IAAIuK,EAAQlN,KAAKk0E,UAAU0I,SAAS,IAAI77E,EAAO87E,MAAMl6E,EAAGi5F,EAAUC,EAAU77F,KAAKw3E,eAAgBx3E,KAAKy3E,kBAEtGz3E,KAAK27F,SAASjkB,EAAMzQ,WAAWtkE,IAAMuK,EAAMzE,QAE3ChF,IAEUzD,KAAKo7F,iBAEX33F,EAAI,EACJm4F,EAAW57F,KAAK4lB,QAChBi2E,GAAY77F,KAAKy3E,gBAAkBz3E,KAAKm7F,mBAIxCS,GAAY57F,KAAKw3E,eAAiBx3E,KAAKk7F,kBAI/C54F,EAAKwY,MAAMghF,gBAAgBxoF,EAAKtT,KAAKk0E,WAMrCl0E,KAAK+7F,MAAQ,IAAIh7F,EAAO80E,MAAMvzE,EAAM,EAAG,EAAGgR,EAAK,GAE/CvS,EAAO0D,cAAcV,KAAK/D,KAAMsC,EAAM,IAAK,IAAK,GAAIvB,EAAOiN,WAAW4O,SAKtE5c,KAAK+T,KAAOhT,EAAO2uB,WAGvB3uB,EAAOi3E,UAAUn2E,UAAYgF,OAAOwB,OAAOtH,EAAO0D,cAAc5C,WAChEd,EAAOi3E,UAAUn2E,UAAUC,YAAcf,EAAOi3E,UAOhDj3E,EAAOi3E,UAAUgkB,WAAa,OAO9Bj7F,EAAOi3E,UAAUikB,YAAc,QAO/Bl7F,EAAOi3E,UAAUkkB,aAAe,SAOhCn7F,EAAOi3E,UAAUmkB,UAAY,oGAO7Bp7F,EAAOi3E,UAAUokB,UAAY,+DAO7Br7F,EAAOi3E,UAAUqkB,UAAY,wCAO7Bt7F,EAAOi3E,UAAUskB,UAAY,wCAO7Bv7F,EAAOi3E,UAAUukB,UAAY,mDAO7Bx7F,EAAOi3E,UAAUwkB,UAAY,oDAO7Bz7F,EAAOi3E,UAAUykB,UAAY,oDAO7B17F,EAAOi3E,UAAU0kB,UAAY,yCAO7B37F,EAAOi3E,UAAU2kB,UAAY,kDAO7B57F,EAAOi3E,UAAU4kB,WAAa,6BAO9B77F,EAAOi3E,UAAU6kB,WAAa,oDAW9B97F,EAAOi3E,UAAUn2E,UAAUi7F,cAAgB,SAAUp4F,EAAOq4F,QAElC32F,IAAlB22F,IAA+BA,EAAgB,QAEnD/8F,KAAKy7F,WAAa/2F,EAClB1E,KAAKq3C,MAAQ0lD,GAejBh8F,EAAOi3E,UAAUn2E,UAAUu2F,QAAU,SAAU4E,EAAS3B,EAAW4B,EAAkBjH,EAAa+G,EAAeG,GAE7Gl9F,KAAKq7F,UAAYA,IAAa,EAC9Br7F,KAAKu7F,eAAiB0B,GAAoB,EAC1Cj9F,KAAKw7F,eAAiBxF,GAAe,EACrCh2F,KAAKq3C,MAAQ0lD,GAAiB,OAI1B/8F,KAAKs7F,eAFL4B,EASiB,EAAjBF,EAAQ96F,SAERlC,KAAK22E,KAAOqmB,IAUpBj8F,EAAOi3E,UAAUn2E,UAAUs7F,mBAAqB,WAE5C,IAAIluF,EAAK,EACLC,EAAK,EAKT,GAFAlP,KAAK4b,QAED5b,KAAKq7F,UACT,CACI,IAAIlG,EAAQn1F,KAAKuzF,MAAMr/D,MAAM,MAEP,EAAlBl0B,KAAKy7F,WAELz7F,KAAK+F,OAAO/F,KAAKy7F,WAAatG,EAAMjzF,QAAUlC,KAAKy3E,gBAAkBz3E,KAAKw7F,gBAAmBx7F,KAAKw7F,gBAAgB,GAIlHx7F,KAAK+F,OAAO/F,KAAKo9F,kBAAoBp9F,KAAKw3E,eAAiBx3E,KAAKu7F,gBAAkBpG,EAAMjzF,QAAUlC,KAAKy3E,gBAAkBz3E,KAAKw7F,gBAAmBx7F,KAAKw7F,gBAAgB,GAI1K,IAAK,IAAIv5F,EAAI,EAAGA,EAAIkzF,EAAMjzF,OAAQD,IAG9BgN,EAAK,EAGDjP,KAAKq3C,QAAUt2C,EAAOi3E,UAAUikB,YAEhChtF,EAAKjP,KAAK0E,MAASywF,EAAMlzF,GAAGC,QAAUlC,KAAKw3E,eAAiBx3E,KAAKu7F,gBAE5Dv7F,KAAKq3C,QAAUt2C,EAAOi3E,UAAUkkB,eAErCjtF,EAAMjP,KAAK0E,MAAQ,EAAOywF,EAAMlzF,GAAGC,QAAUlC,KAAKw3E,eAAiBx3E,KAAKu7F,gBAAmB,EAC3FtsF,GAAMjP,KAAKu7F,eAAiB,GAI5BtsF,EAAK,IAELA,EAAK,GAGTjP,KAAKq9F,UAAUlI,EAAMlzF,GAAIgN,EAAIC,EAAIlP,KAAKu7F,gBAEtCrsF,GAAMlP,KAAKy3E,gBAAkBz3E,KAAKw7F,oBAKhB,EAAlBx7F,KAAKy7F,WAELz7F,KAAK+F,OAAO/F,KAAKy7F,WAAYz7F,KAAKy3E,iBAAiB,GAInDz3E,KAAK+F,OAAO/F,KAAKuzF,MAAMrxF,QAAUlC,KAAKw3E,eAAiBx3E,KAAKu7F,gBAAiBv7F,KAAKy3E,iBAAiB,GAIvGxoE,EAAK,EAEDjP,KAAKq3C,QAAUt2C,EAAOi3E,UAAUikB,YAEhChtF,EAAKjP,KAAK0E,MAAS1E,KAAKuzF,MAAMrxF,QAAUlC,KAAKw3E,eAAiBx3E,KAAKu7F,gBAE9Dv7F,KAAKq3C,QAAUt2C,EAAOi3E,UAAUkkB,eAErCjtF,EAAMjP,KAAK0E,MAAQ,EAAO1E,KAAKuzF,MAAMrxF,QAAUlC,KAAKw3E,eAAiBx3E,KAAKu7F,gBAAmB,EAC7FtsF,GAAMjP,KAAKu7F,eAAiB,GAI5BtsF,EAAK,IAELA,EAAK,GAGTjP,KAAKq9F,UAAUr9F,KAAKuzF,MAAOtkF,EAAI,EAAGjP,KAAKu7F,gBAG3Cv7F,KAAK6O,gBAAiB,GAc1B9N,EAAOi3E,UAAUn2E,UAAUw7F,UAAY,SAAUviE,EAAMx3B,EAAGC,EAAGg4F,GAEzD,IAAK,IAAI54F,EAAI,EAAGA,EAAIm4B,EAAK54B,OAAQS,IAG7B,GAAuB,MAAnBm4B,EAAK2/D,OAAO93F,GAEZW,GAAKtD,KAAKw3E,eAAiB+jB,OAK3B,GAAyC,GAArCv7F,KAAK27F,SAAS7gE,EAAKmsC,WAAWtkE,MAE9B3C,KAAK+7F,MAAM7uF,MAAQlN,KAAK27F,SAAS7gE,EAAKmsC,WAAWtkE,IACjD3C,KAAKmyF,SAASnyF,KAAK+7F,MAAOz4F,EAAGC,GAAG,IAEhCD,GAAKtD,KAAKw3E,eAAiB+jB,GAEnBv7F,KAAK0E,OAET,OAcpB3D,EAAOi3E,UAAUn2E,UAAUu7F,eAAiB,WAExC,IAAIE,EAAc,EAElB,GAAwB,EAApBt9F,KAAKuzF,MAAMrxF,OAIX,IAFA,IAAIizF,EAAQn1F,KAAKuzF,MAAMr/D,MAAM,MAEpBjyB,EAAI,EAAGA,EAAIkzF,EAAMjzF,OAAQD,IAE1BkzF,EAAMlzF,GAAGC,OAASo7F,IAElBA,EAAcnI,EAAMlzF,GAAGC,QAKnC,OAAOo7F,GAYXv8F,EAAOi3E,UAAUn2E,UAAU07F,4BAA8B,SAAUC,GAI/D,IAFA,IAAIC,EAAY,GAEP96F,EAAI,EAAGA,EAAI3C,KAAKuzF,MAAMrxF,OAAQS,IACvC,CACI,IAAI+6F,EAAQ19F,KAAKuzF,MAAM5wF,GACnBg7F,EAAOD,EAAMz2B,WAAW,IAED,GAAvBjnE,KAAK27F,SAASgC,KAAgBH,GAAqB,OAAVE,KAEzCD,EAAYA,EAAU7qE,OAAO8qE,IAIrC,OAAOD,GAaX18F,EAAOi3E,UAAUn2E,UAAU+7F,aAAe,SAAUt6F,EAAGC,GAEnD,GAAIvD,KAAK4lB,UAAYtiB,GAAKtD,KAAK6lB,UAAYtiB,EAA3C,CAWA,IANA,IAAIs6F,EAAQv6F,EAAItD,KAAK4lB,QACjBk4E,EAAQv6F,EAAIvD,KAAK6lB,QAEjBk4E,EAAS/9F,KAAKsC,KAAKwY,MAAMm5D,aAAaj0E,KAAK+7F,MAAMzoF,KAAK0qF,YACtD/7F,EAAI87F,EAAO77F,OAERD,KAEH87F,EAAO97F,GAAGqB,GAAKu6F,EACfE,EAAO97F,GAAGsB,GAAKu6F,EAGnB99F,KAAKm9F,uBAOTt2F,OAAOyF,eAAevL,EAAOi3E,UAAUn2E,UAAW,OAAQ,CAEtDkF,IAAK,WAED,OAAO/G,KAAKuzF,OAGhBvsF,IAAK,SAAUC,GAEX,IAAIg3F,GAIAA,EAFAj+F,KAAKs7F,cAEKr0F,EAAMi3F,cAINj3F,KAGEjH,KAAKuzF,QAEjBvzF,KAAKuzF,MAAQ0K,EAEbj+F,KAAKu9F,4BAA4Bv9F,KAAKq7F,WAEtCr7F,KAAKm9F,yBAUjBt2F,OAAOyF,eAAevL,EAAOi3E,UAAUn2E,UAAW,WAAY,CAE1DkF,IAAK,WAED,OAAO/G,KAAK+7F,MAAMt6C,UAGtBz6C,IAAK,SAAUC,GAEXjH,KAAK+7F,MAAMt6C,SAAWx6C,EACtBjH,KAAKm9F,wBAgDbp8F,EAAO21E,KAAO,SAAUp0E,EAAMgB,EAAGC,EAAG+P,EAAKpG,EAAOwzB,GAE5C1gC,KAAK0gC,OAASA,GAAU,GACxB1gC,KAAKm+F,qBAAsB,EAC3Bn+F,KAAKo+F,yBAA2B,KAChC96F,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACT+P,EAAMA,GAAO,KACbpG,EAAQA,GAAS,KAMjBlN,KAAK+T,KAAOhT,EAAO6uB,KAEnB3vB,KAAKkI,uBAAuBpE,KAAK/D,MAEjCA,KAAK8F,QAAU/E,EAAO+vC,MAAM/mB,QAG5B/pB,KAAKykB,IAAM,IAAIlB,aAAa,CAAE,EAAG,EAC7B,EAAG,EACH,EAAG,EACH,EAAG,IAEPvjB,KAAKojB,SAAW,IAAIG,aAAa,CAAE,EAAG,EAClC,IAAK,EACL,IAAK,IACL,EAAG,MAEPvjB,KAAKwjB,OAAS,IAAID,aAAa,CAAE,EAAG,EAAG,EAAG,IAE1CvjB,KAAK4S,QAAU,IAAI8Q,YAAY,CAAE,EAAG,EAAG,EAAG,IAEtCgd,IAEA1gC,KAAKojB,SAAW,IAAIG,aAA6B,EAAhBmd,EAAOx+B,QACxClC,KAAKykB,IAAM,IAAIlB,aAA6B,EAAhBmd,EAAOx+B,QACnClC,KAAKwjB,OAAS,IAAID,aAA6B,EAAhBmd,EAAOx+B,QACtClC,KAAK4S,QAAU,IAAI8Q,YAA4B,EAAhBgd,EAAOx+B,SAS1ClC,KAAKwR,OAAQ,EAQbxR,KAAKq+F,cAAgB,EAErBr+F,KAAKs+F,SAAWv9F,EAAO21E,KAAK71D,eAE5B9f,EAAOosE,UAAUiB,KAAK18D,KAAK3N,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG+P,EAAKpG,GAEvDlN,KAAK6rB,WAGT9qB,EAAO21E,KAAK70E,UAAYgF,OAAOwB,OAAOpI,KAAKkI,uBAAuBtG,WAClEd,EAAO21E,KAAK70E,UAAUC,YAAcf,EAAO21E,KAE3C31E,EAAOosE,UAAUiB,KAAKC,QAAQtqE,KAAKhD,EAAO21E,KAAK70E,UAAW,CACtD,QACA,YACA,WACA,SACA,aACA,OACA,QACA,UACA,gBACA,UACA,WACA,cACA,UACA,cACA,QACA,cACA,aAGJd,EAAO21E,KAAK70E,UAAUg3E,iBAAmB93E,EAAOosE,UAAUsB,YAAYxqE,UACtElD,EAAO21E,KAAK70E,UAAUi3E,kBAAoB/3E,EAAOosE,UAAUsG,SAASxvE,UACpElD,EAAO21E,KAAK70E,UAAUk3E,iBAAmBh4E,EAAOosE,UAAU+F,QAAQjvE,UAClElD,EAAO21E,KAAK70E,UAAUm3E,cAAgBj4E,EAAOosE,UAAUiB,KAAKnqE,UAE5DlD,EAAO21E,KAAK71D,eAAiB,EAC7B9f,EAAO21E,KAAK7vD,UAAY,EAQxB9lB,EAAO21E,KAAK70E,UAAUoC,UAAY,WAE9B,SAAKjE,KAAK64E,oBAAuB74E,KAAK84E,qBAAwB94E,KAAK+4E,qBAK5D/4E,KAAKg5E,iBAShBj4E,EAAO21E,KAAK70E,UAAU0lC,OAAS,WAEvBvnC,KAAKm+F,qBAELn+F,KAAKu+F,gBAAgBx6F,KAAK/D,OAelCe,EAAO21E,KAAK70E,UAAU2mC,MAAQ,SAAUllC,EAAGC,GAIvC,OAFAxC,EAAOosE,UAAU8H,MAAMpzE,UAAU2mC,MAAMzkC,KAAK/D,KAAMsD,EAAGC,GAE9CvD,MASXe,EAAO21E,KAAK70E,UAAUgqB,QAAU,WAE5B,IAAI6U,EAAS1gC,KAAK0gC,OAElB,KAAIA,EAAOx+B,OAAS,GAApB,CAKA,IAAIuiB,EAAMzkB,KAAKykB,IAEX7R,EAAU5S,KAAK4S,QACf4Q,EAASxjB,KAAKwjB,OAElBxjB,KAAKyf,OAAS,GAMd,IAJA,IAAIy7B,EAAQxa,EAAOx+B,OACfuG,EAAQ,EACR0wC,EAAS,EAEJl3C,EAAI,EAAGA,EAAIi5C,EAAOj5C,IAKvBk3C,EAASl3C,GAAKi5C,EAAQ,GAEtBz2B,EALAhc,EAAY,EAAJxG,GAKKk3C,EACb10B,EAAIhc,EAAQ,GAAK,EACjBgc,EAAIhc,EAAQ,GAAK0wC,EACjB10B,EAAIhc,EAAQ,GAAK,EAGjB+a,EADA/a,EAAY,EAAJxG,GACQ,EAChBuhB,EAAO/a,EAAQ,GAAK,EAGpBmK,EADAnK,EAAY,EAAJxG,GACSwG,EACjBmK,EAAQnK,EAAQ,GAAKA,EAAQ,IAUrC1H,EAAO21E,KAAK70E,UAAUQ,gBAAkB,WAEpC,IAAIq+B,EAAS1gC,KAAK0gC,OAElB,KAAIA,EAAOx+B,OAAS,GAApB,CAKA,IACIs8F,EADA5S,EAAYlrD,EAAO,GAEnBV,EAAO,CAAE18B,EAAG,EAAGC,EAAG,GAEtBvD,KAAKyf,OAAS,GAUd,IARA,IAEI8Y,EACA9vB,EACAg2F,EACAC,EALAt7E,EAAWpjB,KAAKojB,SAChB83B,EAAQxa,EAAOx+B,OAKf+2B,EAAaj5B,KAAK8F,QAAQnB,OAAS,EAE9B1C,EAAI,EAAGA,EAAIi5C,EAAOj5C,IAEvBs2B,EAAQmI,EAAOz+B,GACfwG,EAAY,EAAJxG,EAIJu8F,EAFDv8F,EAAIi5C,EAAQ,EAECxa,EAAOz+B,EAAI,GAIXs2B,EAGhByH,EAAKz8B,IAAMi7F,EAAUl7F,EAAIsoF,EAAUtoF,GACnC08B,EAAK18B,EAAIk7F,EAAUj7F,EAAIqoF,EAAUroF,EAEjCk7F,EAAax7F,KAAKS,KAAMs8B,EAAK18B,EAAI08B,EAAK18B,EAAM08B,EAAKz8B,EAAIy8B,EAAKz8B,GAC1Dm7F,EAAMzlE,EACN+G,EAAK18B,GAAKm7F,EACVz+D,EAAKz8B,GAAKk7F,EAEVz+D,EAAK18B,GAAKo7F,EACV1+D,EAAKz8B,GAAKm7F,EAEVt7E,EAAS3a,GAAS8vB,EAAMj1B,EAAI08B,EAAK18B,EACjC8f,EAAS3a,EAAQ,GAAK8vB,EAAMh1B,EAAIy8B,EAAKz8B,EACrC6f,EAAS3a,EAAQ,GAAK8vB,EAAMj1B,EAAI08B,EAAK18B,EACrC8f,EAAS3a,EAAQ,GAAK8vB,EAAMh1B,EAAIy8B,EAAKz8B,EAErCqoF,EAAYrzD,EAGhBt4B,KAAKkI,uBAAuBtG,UAAUQ,gBAAgB0B,KAAK/D,QAU/De,EAAO21E,KAAK70E,UAAUsL,WAAa,SAAUrH,GAEzC9F,KAAK8F,QAAUA,GAUnB/E,EAAO21E,KAAK70E,UAAU6D,aAAe,SAAUJ,IAEtCtF,KAAKS,SAAWT,KAAKQ,OAAS,IAKnC8E,EAAcsG,YAAYI,OAErBhM,KAAK2+F,eAEN3+F,KAAK4+F,WAAWt5F,GAGpBA,EAAckT,cAAcwI,UAAU1b,EAAckT,cAAc6J,aAElEriB,KAAK6+F,aAAav5F,GAElBA,EAAcsG,YAAYO,UAU9BpL,EAAO21E,KAAK70E,UAAU+8F,WAAa,SAAUt5F,GAGzC,IAAIE,EAAKF,EAAcE,GAEvBxF,KAAK2+F,cAAgBn5F,EAAG4e,eACxBpkB,KAAK8+F,aAAet5F,EAAG4e,eACvBpkB,KAAK++F,UAAYv5F,EAAG4e,eACpBpkB,KAAKg/F,aAAex5F,EAAG4e,eAEvB5e,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK2+F,eACpCn5F,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKojB,SAAU5d,EAAG+e,cAEjD/e,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK++F,WACpCv5F,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKykB,IAAKjf,EAAG8e,aAE5C9e,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAKg/F,cACpCx5F,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKwjB,OAAQhe,EAAG8e,aAE/C9e,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK8+F,cAC5Ct5F,EAAG6e,WAAW7e,EAAGoc,qBAAsB5hB,KAAK4S,QAASpN,EAAG8e,cAU5DvjB,EAAO21E,KAAK70E,UAAUg9F,aAAe,SAAUv5F,GAE3C,IAAIE,EAAKF,EAAcE,GACnB8S,EAAahT,EAAcgT,WAC3BC,EAASjT,EAAciT,OACvBzL,EAASxH,EAAckT,cAAc6J,YAErCi8E,EAAYt+F,KAAKs+F,WAAav9F,EAAO21E,KAAK71D,eAAkBrb,EAAGqb,eAAiBrb,EAAGqhB,UAEvFvhB,EAAcyT,iBAAiBqD,aAAapc,KAAK8H,WAGjDtC,EAAG8O,iBAAiBxH,EAAOgK,mBAAmB,EAAO9W,KAAKc,eAAeogB,SAAQ,IACjF1b,EAAG2b,UAAUrU,EAAOsF,iBAAkBkG,EAAWhV,GAAIgV,EAAW/U,GAChEiC,EAAG2b,UAAUrU,EAAOuF,cAAekG,EAAOjV,GAAIiV,EAAOhV,GACrDiC,EAAGyb,UAAUnU,EAAOtM,MAAOR,KAAKa,YAE3Bb,KAAKwR,OA2BNxR,KAAKwR,OAAQ,EAEbhM,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK2+F,eACpCn5F,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKojB,SAAU5d,EAAG8e,aACjD9e,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO,EAAG,GAGtElc,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK++F,WACpCv5F,EAAG6e,WAAW7e,EAAGgc,aAAcxhB,KAAKykB,IAAKjf,EAAG8e,aAC5C9e,EAAGic,oBAAoB3U,EAAO2F,cAAe,EAAGjN,EAAGkc,OAAO,EAAO,EAAG,GAEpElc,EAAGuN,cAAcvN,EAAGwN,UAGhBhT,KAAK8F,QAAQG,YAAYmQ,OAAO5Q,EAAGiP,IAEnCnP,EAAcjB,SAASiS,cAActW,KAAK8F,QAAQG,aAIlDT,EAAGyN,YAAYzN,EAAG0N,WAAYlT,KAAK8F,QAAQG,YAAYuO,YAAYhP,EAAGiP,KAG1EjP,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK8+F,cAC5Ct5F,EAAG6e,WAAW7e,EAAGoc,qBAAsB5hB,KAAK4S,QAASpN,EAAG8e,eAjDxD9e,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK2+F,eACpCn5F,EAAG6gB,cAAc7gB,EAAGgc,aAAc,EAAGxhB,KAAKojB,UAC1C5d,EAAGic,oBAAoB3U,EAAOyF,gBAAiB,EAAG/M,EAAGkc,OAAO,EAAO,EAAG,GAGtElc,EAAG+b,WAAW/b,EAAGgc,aAAcxhB,KAAK++F,WACpCv5F,EAAGic,oBAAoB3U,EAAO2F,cAAe,EAAGjN,EAAGkc,OAAO,EAAO,EAAG,GAEpElc,EAAGuN,cAAcvN,EAAGwN,UAGhBhT,KAAK8F,QAAQG,YAAYmQ,OAAO5Q,EAAGiP,IAEnCnP,EAAcjB,SAASiS,cAActW,KAAK8F,QAAQG,aAKlDT,EAAGyN,YAAYzN,EAAG0N,WAAYlT,KAAK8F,QAAQG,YAAYuO,YAAYhP,EAAGiP,KAG1EjP,EAAG+b,WAAW/b,EAAGoc,qBAAsB5hB,KAAK8+F,eA+BhDt5F,EAAG+a,aAAa+9E,EAAUt+F,KAAK4S,QAAQ1Q,OAAQsD,EAAGib,eAAgB,IAUtE1f,EAAO21E,KAAK70E,UAAU8D,cAAgB,SAAUL,GAE5C,IAAIqI,EAAUrI,EAAcqI,QAExB8c,EAAYzqB,KAAKc,eAEjB+B,EAAM4nB,EAAU5nB,GAAKyC,EAAcnB,WAAcmB,EAAc+I,OAC/DvL,EAAM2nB,EAAU3nB,GAAKwC,EAAcnB,WAAcmB,EAAcgJ,OAE/DhJ,EAAcqJ,YAEdhB,EAAQiB,aAAa6b,EAAUhoB,EAAGgoB,EAAU/nB,EAAG+nB,EAAU9nB,EAAG8nB,EAAU7nB,EAAQ,EAALC,EAAa,EAALC,GAIjF6K,EAAQiB,aAAa6b,EAAUhoB,EAAGgoB,EAAU/nB,EAAG+nB,EAAU9nB,EAAG8nB,EAAU7nB,EAAGC,EAAIC,GAG7E9C,KAAKs+F,WAAav9F,EAAO21E,KAAK71D,eAE9B7gB,KAAKi/F,2BAA2BtxF,GAIhC3N,KAAKk/F,uBAAuBvxF,IAWpC5M,EAAO21E,KAAK70E,UAAUo9F,2BAA6B,SAAUtxF,GAGzD,IAAIyV,EAAWpjB,KAAKojB,SAChBqB,EAAMzkB,KAAKykB,IAEXviB,EAASkhB,EAASlhB,OAAS,EAE/BlC,KAAKyf,QAEL,IAAK,IAAIxd,EAAI,EAAGA,EAAIC,EAAS,EAAGD,IAChC,CACI,IAAIwG,EAAY,EAAJxG,EACZjC,KAAKm/F,0BAA0BxxF,EAASyV,EAAUqB,EAAKhc,EAAQA,EAAQ,EAAKA,EAAQ,KAW5F1H,EAAO21E,KAAK70E,UAAUq9F,uBAAyB,SAAUvxF,GAErD,IAAIyV,EAAWpjB,KAAKojB,SAChBqB,EAAMzkB,KAAKykB,IACX7R,EAAU5S,KAAK4S,QAEf1Q,EAAS0Q,EAAQ1Q,OAErBlC,KAAKyf,QAEL,IAAK,IAAIxd,EAAI,EAAGA,EAAIC,EAAQD,GAAK,EACjC,CACI,IAAIm9F,EAAsB,EAAbxsF,EAAQ3Q,GACjB8G,EAA0B,EAAjB6J,EAAQ3Q,EAAI,GACrBgH,EAA0B,EAAjB2J,EAAQ3Q,EAAI,GAEzBjC,KAAKm/F,0BAA0BxxF,EAASyV,EAAUqB,EAAK26E,EAAQr2F,EAAQE,KAW/ElI,EAAO21E,KAAK70E,UAAUs9F,0BAA4B,SAAUxxF,EAASyV,EAAUqB,EAAK26E,EAAQr2F,EAAQE,GAEhG,IAAIo2F,EAAgBr/F,KAAK8F,QAAQG,YAAYkJ,OACzCmwF,EAAet/F,KAAK8F,QAAQpB,MAC5B66F,EAAgBv/F,KAAK8F,QAAQnB,OAE7BygB,EAAKhC,EAASg8E,GACdj0F,EAAKiY,EAASra,GACdsC,EAAK+X,EAASna,GACdoc,EAAKjC,EAASg8E,EAAS,GACvBh0F,EAAKgY,EAASra,EAAS,GACvBuC,EAAK8X,EAASna,EAAS,GAEvBu2F,EAAK/6E,EAAI26E,GAAUE,EACnBG,EAAKh7E,EAAI1b,GAAUu2F,EACnBI,EAAKj7E,EAAIxb,GAAUq2F,EACnBK,EAAKl7E,EAAI26E,EAAS,GAAKG,EACvBK,EAAKn7E,EAAI1b,EAAS,GAAKw2F,EACvBM,EAAKp7E,EAAIxb,EAAS,GAAKs2F,EAE3B,GAAyB,EAArBv/F,KAAKq+F,cACT,CACI,IAAIyB,EAAW9/F,KAAKq+F,cAAgBr+F,KAAKc,eAAe2B,EACpDs9F,EAAW//F,KAAKq+F,cAAgBr+F,KAAKc,eAAe8B,EACpDq3B,GAAW7U,EAAKja,EAAKE,GAAM,EAC3B6uB,GAAW7U,EAAKja,EAAKE,GAAM,EAE3B00F,EAAQ56E,EAAK6U,EACbgmE,EAAQ56E,EAAK6U,EAEb0yD,EAAO3pF,KAAKS,KAAMs8F,EAAQA,EAAUC,EAAQA,GAChD76E,EAAK6U,EAAW+lE,EAAQpT,GAASA,EAAOkT,GACxCz6E,EAAK6U,EAAW+lE,EAAQrT,GAASA,EAAOmT,GAGxCE,EAAQ70F,EAAK8uB,EAGb/uB,EAAK8uB,GAJL+lE,EAAQ70F,EAAK8uB,IAGb2yD,EAAO3pF,KAAKS,KAAMs8F,EAAQA,EAAUC,EAAQA,KACXrT,EAAOkT,GACxC10F,EAAK8uB,EAAW+lE,EAAQrT,GAASA,EAAOmT,GAGxCE,EAAQ30F,EAAK4uB,EAGb7uB,EAAK4uB,GAJL+lE,EAAQ30F,EAAK4uB,IAGb2yD,EAAO3pF,KAAKS,KAAMs8F,EAAQA,EAAUC,EAAQA,KACXrT,EAAOkT,GACxCx0F,EAAK4uB,EAAW+lE,EAAQrT,GAASA,EAAOmT,GAG5CpyF,EAAQ4c,OACR5c,EAAQu0E,YAERv0E,EAAQ00E,OAAOj9D,EAAIC,GACnB1X,EAAQ20E,OAAOn3E,EAAIC,GACnBuC,EAAQ20E,OAAOj3E,EAAIC,GAEnBqC,EAAQy0E,YAERz0E,EAAQid,OAGR,IAAIgd,EAAS43D,EAAKI,EAAOD,EAAKD,EAAOD,EAAKI,EAAOD,EAAKF,EAAOC,EAAKF,EAAOD,EAAKK,EAC1EK,EAAU96E,EAAKw6E,EAAOD,EAAKt0F,EAAOF,EAAK00F,EAAOD,EAAKv0F,EAAOs0F,EAAKx0F,EAAOia,EAAKy6E,EAC3EM,EAAUX,EAAKr0F,EAAOia,EAAKs6E,EAAOD,EAAKp0F,EAAOF,EAAKu0F,EAAOt6E,EAAKq6E,EAAOD,EAAKn0F,EAC3E+0F,EAAUZ,EAAKI,EAAKv0F,EAAOs0F,EAAKx0F,EAAKu0F,EAAOt6E,EAAKq6E,EAAKI,EAAOz6E,EAAKw6E,EAAKF,EAAOC,EAAKF,EAAKp0F,EAAOm0F,EAAKr0F,EAAK00F,EACzGQ,EAAUh7E,EAAKu6E,EAAOD,EAAKr0F,EAAOF,EAAKy0F,EAAOD,EAAKt0F,EAAOq0F,EAAKv0F,EAAOia,EAAKw6E,EAC3ES,EAAUd,EAAKp0F,EAAOia,EAAKq6E,EAAOD,EAAKn0F,EAAOF,EAAKs0F,EAAOr6E,EAAKo6E,EAAOD,EAAKl0F,EAC3Ei1F,EAAUf,EAAKI,EAAKt0F,EAAOq0F,EAAKv0F,EAAKs0F,EAAOr6E,EAAKo6E,EAAKI,EAAOx6E,EAAKu6E,EAAKF,EAAOC,EAAKF,EAAKn0F,EAAOk0F,EAAKp0F,EAAKy0F,EAE7GlyF,EAAQ8c,UACJy1E,EAASt4D,EACTy4D,EAASz4D,EACTu4D,EAASv4D,EACT04D,EAAS14D,EACTw4D,EAASx4D,EACT24D,EAAS34D,GAEbj6B,EAAQqB,UAAUqwF,EAAe,EAAG,GACpC1xF,EAAQkd,WASZ9pB,EAAO21E,KAAK70E,UAAU2+F,gBAAkB,SAAUC,GAE9C,IAAI9yF,EAAU3N,KAAK2N,QACfyV,EAAWq9E,EAAMr9E,SAEjBlhB,EAASkhB,EAASlhB,OAAS,EAE/BlC,KAAKyf,QAEL9R,EAAQu0E,YAER,IAAK,IAAIjgF,EAAI,EAAGA,EAAIC,EAAS,EAAGD,IAChC,CAEI,IAAIwG,EAAY,EAAJxG,EAERmjB,EAAKhC,EAAS3a,GACd0C,EAAKiY,EAAS3a,EAAQ,GACtB4C,EAAK+X,EAAS3a,EAAQ,GACtB4c,EAAKjC,EAAS3a,EAAQ,GACtB2C,EAAKgY,EAAS3a,EAAQ,GACtB6C,EAAK8X,EAAS3a,EAAQ,GAE1BkF,EAAQ00E,OAAOj9D,EAAIC,GACnB1X,EAAQ20E,OAAOn3E,EAAIC,GACnBuC,EAAQ20E,OAAOj3E,EAAIC,GAGvBqC,EAAQqd,UAAY,UACpBrd,EAAQo7C,OACRp7C,EAAQy0E,aAWZrhF,EAAO21E,KAAK70E,UAAUkI,UAAY,SAAUwD,GAmBxC,IAjBA,IAAIzM,EAAiByM,GAAUvN,KAAKc,eAEhC2B,EAAI3B,EAAe2B,EACnBC,EAAI5B,EAAe4B,EACnBC,EAAI7B,EAAe6B,EACnBC,EAAI9B,EAAe8B,EACnBC,EAAK/B,EAAe+B,GACpBC,EAAKhC,EAAegC,GAEpB8H,GAAQF,EAAAA,EACRG,GAAQH,EAAAA,EAERD,EAAOC,EAAAA,EACPC,EAAOD,EAAAA,EAEP0Y,EAAWpjB,KAAKojB,SAEXnhB,EAAI,EAAGA,EAAImhB,EAASlhB,OAAQD,GAAK,EAC1C,CACI,IAAIy+F,EAAOt9E,EAASnhB,GAChB0+F,EAAOv9E,EAASnhB,EAAI,GACpBqB,EAAKb,EAAIi+F,EAAS/9F,EAAIg+F,EAAQ99F,EAC9BU,EAAKX,EAAI+9F,EAASj+F,EAAIg+F,EAAQ59F,EAElC2H,EAAOnH,EAAImH,EAAOnH,EAAImH,EACtBE,EAAOpH,EAAIoH,EAAOpH,EAAIoH,EAEtBC,EAAWA,EAAJtH,EAAWA,EAAIsH,EACtBC,EAAWA,EAAJtH,EAAWA,EAAIsH,EAG1B,GAAIJ,KAAUC,EAAAA,GAAYG,IAASH,EAAAA,EAE/B,OAAO3J,EAAOijC,eAGlB,IAAI1/B,EAAStE,KAAKuB,QAWlB,OATA+C,EAAOhB,EAAImH,EACXnG,EAAOI,MAAQkG,EAAOH,EAEtBnG,EAAOf,EAAIoH,EACXrG,EAAOK,OAASkG,EAAOF,EAGvB3K,KAAKyB,eAAiB6C,GAW1BuC,OAAOyF,eAAevL,EAAO21E,KAAK70E,UAAW,kBAAmB,CAE5DkF,IAAK,WAED,OAAO/G,KAAK4gG,kBAGhB55F,IAAK,SAAUC,GAEPA,GAA0B,mBAAVA,GAEhBjH,KAAKm+F,qBAAsB,EAC3Bn+F,KAAK4gG,iBAAmB35F,IAIxBjH,KAAKm+F,qBAAsB,EAC3Bn+F,KAAK4gG,iBAAmB,SAYpC/5F,OAAOyF,eAAevL,EAAO21E,KAAK70E,UAAW,WAAY,CAErDkF,IAAK,WAKD,IAHA,IACI0B,EAAO0C,EAAIC,EAAIC,EAAIC,EAAI5G,EAAOC,EAAQq4B,EADtC0zD,EAAW,GAGNzuF,EAAI,EAAGA,EAAIjC,KAAK0gC,OAAOx+B,OAAQD,IAEpCwG,EAAY,EAAJxG,EAERkJ,EAAKnL,KAAKojB,SAAS3a,GAASzI,KAAKK,MAAMiD,EACvC8H,EAAKpL,KAAKojB,SAAS3a,EAAQ,GAAKzI,KAAKK,MAAMkD,EAC3C8H,EAAKrL,KAAKojB,SAAS3a,EAAQ,GAAKzI,KAAKK,MAAMiD,EAC3CgI,EAAKtL,KAAKojB,SAAS3a,EAAQ,GAAKzI,KAAKK,MAAMkD,EAE3CmB,EAAQ3D,EAAOkC,KAAK49F,WAAW11F,EAAIE,GACnC1G,EAAS5D,EAAOkC,KAAK49F,WAAWz1F,EAAIE,GAEpCH,GAAMnL,KAAKwC,MAAMc,EACjB8H,GAAMpL,KAAKwC,MAAMe,EACjBy5B,EAAO,IAAIj8B,EAAOS,UAAU2J,EAAIC,EAAI1G,EAAOC,GAC3C+rF,EAAS/oF,KAAKq1B,GAGlB,OAAO0zD,KA+Df3vF,EAAO8nD,WAAa,SAAUvmD,EAAMgB,EAAGC,EAAGmB,EAAOC,EAAQ2O,EAAKpG,GAE1D5J,EAAIA,GAAK,EACTC,EAAIA,GAAK,EACTmB,EAAQA,GAAS,IACjBC,EAASA,GAAU,IACnB2O,EAAMA,GAAO,KACbpG,EAAQA,GAAS,KAEjBjN,KAAKwF,OAAO1B,KAAK/D,KAAM,IAAIC,KAAKyM,QAAQ3L,EAAO+vC,MAAM/mB,QAAQ9jB,aAAcvB,EAAOC,GAMlF3E,KAAK+T,KAAOhT,EAAO8tB,WAMnB7uB,KAAK80C,YAAc/zC,EAAOytB,OAM1BxuB,KAAK8gG,QAAU,IAAI//F,EAAOX,MAK1BJ,KAAK+lB,UAAY,IAAIhlB,EAAOX,MAAM,EAAG,GAKrCJ,KAAK2lB,gBAAkB,IAAI5kB,EAAOX,MAAM,EAAG,GAK3CJ,KAAK0lB,aAAe,IAAI3kB,EAAOX,MAQ/BJ,KAAK+gG,cAAe,EAOpB/gG,KAAK0xF,aAAe,KAOpB1xF,KAAKulB,cAAgB,KAOrBvlB,KAAKghG,YAAc,KAQnBhhG,KAAK40E,gBAAiB,EAEtB50E,KAAKihG,WAAa,EAClBjhG,KAAKkhG,YAAc,EAEnBlhG,KAAKuM,OAAS7H,EACd1E,KAAKwM,QAAU7H,EAEf5D,EAAOosE,UAAUiB,KAAK18D,KAAK3N,KAAK/D,KAAMsC,EAAMgB,EAAGC,EAAG+P,EAAKpG,IAG3DnM,EAAO8nD,WAAWhnD,UAAYgF,OAAOwB,OAAOpI,KAAKwF,OAAO5D,WACxDd,EAAO8nD,WAAWhnD,UAAUC,YAAcf,EAAO8nD,WAEjD9nD,EAAOosE,UAAUiB,KAAKC,QAAQtqE,KAAKhD,EAAO8nD,WAAWhnD,UAAW,CAC5D,QACA,YACA,WACA,SACA,aACA,UACA,gBACA,SACA,WACA,eACA,UACA,WACA,cACA,UACA,cACA,QACA,aAGJd,EAAO8nD,WAAWhnD,UAAUg3E,iBAAmB93E,EAAOosE,UAAUsB,YAAYxqE,UAC5ElD,EAAO8nD,WAAWhnD,UAAUi3E,kBAAoB/3E,EAAOosE,UAAUsG,SAASxvE,UAC1ElD,EAAO8nD,WAAWhnD,UAAUk3E,iBAAmBh4E,EAAOosE,UAAU+F,QAAQjvE,UACxElD,EAAO8nD,WAAWhnD,UAAUm3E,cAAgBj4E,EAAOosE,UAAUiB,KAAKnqE,UASlElD,EAAO8nD,WAAWhnD,UAAUoC,UAAY,WAYpC,OAVuB,IAAnBjE,KAAK8gG,QAAQx9F,IAEbtD,KAAK0lB,aAAapiB,GAAsB,KAAjBtD,KAAK8gG,QAAQx9F,EAAYtD,KAAKsC,KAAKqlC,KAAKC,OAG5C,IAAnB5nC,KAAK8gG,QAAQv9F,IAEbvD,KAAK0lB,aAAaniB,GAAsB,KAAjBvD,KAAK8gG,QAAQv9F,EAAYvD,KAAKsC,KAAKqlC,KAAKC,UAG9D5nC,KAAK64E,oBAAuB74E,KAAK84E,qBAAwB94E,KAAK+4E,qBAK5D/4E,KAAKg5E,iBAehBj4E,EAAO8nD,WAAWhnD,UAAUs/F,WAAa,SAAU79F,EAAGC,GAIlD,OAFAvD,KAAK8gG,QAAQ95F,IAAI1D,EAAGC,GAEbvD,MAUXe,EAAO8nD,WAAWhnD,UAAUu/F,WAAa,WAIrC,OAFAphG,KAAK8gG,QAAQ95F,IAAI,EAAG,GAEbhH,MAWXe,EAAO8nD,WAAWhnD,UAAUE,QAAU,SAAU+6C,GAE5C/7C,EAAOosE,UAAU8C,QAAQpuE,UAAUE,QAAQgC,KAAK/D,KAAM88C,GAEtD78C,KAAKwF,OAAO5D,UAAUE,QAAQgC,KAAK/D,MAE/BA,KAAK0xF,eAEL1xF,KAAK0xF,aAAa3vF,UAClB/B,KAAK0xF,aAAe,MAGxB1xF,KAAK+lB,UAAY,KACjB/lB,KAAK2lB,gBAAkB,KACvB3lB,KAAK0lB,aAAe,KAEhB1lB,KAAKulB,gBAELvlB,KAAKulB,cAAcxjB,SAAQ,GAC3B/B,KAAKulB,cAAgB,OAe7BxkB,EAAO8nD,WAAWhnD,UAAU2mC,MAAQ,SAAUllC,EAAGC,GAO7C,OALAxC,EAAOosE,UAAU8H,MAAMpzE,UAAU2mC,MAAMzkC,KAAK/D,KAAMsD,EAAGC,GAErDvD,KAAK0lB,aAAapiB,EAAI,EACtBtD,KAAK0lB,aAAaniB,EAAI,EAEfvD,MAYXe,EAAO8nD,WAAWhnD,UAAUsL,WAAa,SAAUrH,GAS/C,OAPI9F,KAAK8F,UAAYA,IAEjB9F,KAAK8F,QAAUA,EACf9F,KAAK40E,gBAAiB,EACtB50E,KAAK6M,WAAa,UAGf7M,MAWXe,EAAO8nD,WAAWhnD,UAAU6D,aAAe,SAAUJ,GAEjD,GAAKtF,KAAKS,SAAYT,KAAKW,YAA6B,IAAfX,KAAKQ,MAA9C,CAkBA,GAbIR,KAAK0B,QAEL4D,EAAcsG,YAAYI,OAC1B1G,EAAc2G,YAAYC,SAASlM,KAAKoH,KAAM9B,GAC9CA,EAAcsG,YAAYO,SAG1BnM,KAAKsG,WAELhB,EAAcsG,YAAYC,QAC1BvG,EAAcwG,cAAcC,WAAW/L,KAAK4H,eAG5C5H,KAAK40E,eACT,CAGI,GAFA50E,KAAKqhG,uBAAsB,EAAM/7F,IAE7BtF,KAAKulB,cAWL,OATIvlB,KAAKulB,cAAc+7E,cAEnBthG,KAAKulB,cAActf,YAAYE,aAAenG,KAAK8F,QAAQG,YAAYE,aACvEb,EAAcjB,SAASiS,cAActW,KAAKulB,cAActf,aACxDjG,KAAKulB,cAAc+7E,aAAc,GAS7Ch8F,EAAcsG,YAAY0Z,mBAAmBtlB,MAE7C,IAAK,IAAIiC,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAGyD,aAAaJ,GAGlC,IAAIi8F,GAAe,EAEfvhG,KAAKsG,WAELi7F,GAAe,EACfj8F,EAAcsG,YAAYI,OAC1B1G,EAAcwG,cAAcO,aAG5BrM,KAAK0B,QAEA6/F,GAEDj8F,EAAcsG,YAAYI,OAG9B1G,EAAc2G,YAAYG,QAAQpM,KAAK0B,MAAO4D,IAG9Ci8F,GAEAj8F,EAAcsG,YAAYO,UAYlCpL,EAAO8nD,WAAWhnD,UAAU8D,cAAgB,SAAUL,GAElD,GAAKtF,KAAKS,SAAYT,KAAKW,YAA6B,IAAfX,KAAKQ,MAA9C,CAKA,IAAImN,EAAUrI,EAAcqI,QAExB3N,KAAK0B,OAEL4D,EAAc2G,YAAYC,SAASlM,KAAK0B,MAAO4D,GAGnDqI,EAAQG,YAAc9N,KAAKa,WAE3B,IAAImC,EAAKhD,KAAKc,eACVqD,EAAamB,EAAcnB,WAC3BtB,EAAMG,EAAGH,GAAKsB,EAAcmB,EAAc+I,OAC1CvL,EAAME,EAAGF,GAAKqB,EAAcmB,EAAcgJ,OAa9C,GAXAX,EAAQiB,aAAa5L,EAAGP,EAAI0B,EAAYnB,EAAGN,EAAIyB,EAAYnB,EAAGL,EAAIwB,EAAYnB,EAAGJ,EAAIuB,EAAYtB,EAAIC,GAEnF,WAAd9C,KAAK4M,OAAsB5M,KAAK8F,QAAQ+I,gBAAkB7O,KAAK6M,aAAe7M,KAAK4M,OAEnF5M,KAAKyG,cAAgBxG,KAAK6O,aAAaC,iBAAiB/O,KAAMA,KAAK4M,MAEnE5M,KAAK6M,WAAa7M,KAAK4M,KACvB5M,KAAK8F,QAAQ+I,gBAAiB,EAC9B7O,KAAK40E,gBAAiB,GAGtB50E,KAAK40E,eACT,CAGI,GAFA50E,KAAKqhG,uBAAsB,EAAO/7F,IAE9BtF,KAAKulB,cAML,OAJAvlB,KAAKghG,YAAcrzF,EAAQi1E,cAAc5iF,KAAKulB,cAActf,YAAYkJ,OAAQ,UAQxF,IAAIqyF,EAAmBl8F,EAAcoI,iBAGjC1N,KAAK8H,YAAcxC,EAAcoI,mBAEjCpI,EAAcoI,iBAAmB1N,KAAK8H,UACtC6F,EAAQC,yBAA2B3N,KAAK4N,iBAAiBvI,EAAcoI,mBAG3E,IAAIgY,EAAe1lB,KAAK0lB,aACpBK,EAAY/lB,KAAK+lB,UAErBL,EAAapiB,GAAKtD,KAAKulB,cAActf,YAAYvB,MACjDghB,EAAaniB,GAAKvD,KAAKulB,cAActf,YAAYtB,OAGjDgJ,EAAQtN,MAAM0lB,EAAUziB,EAAGyiB,EAAUxiB,GACrCoK,EAAQswB,UAAUvY,EAAapiB,EAAKtD,KAAKwG,OAAOlD,GAAKtD,KAAKuM,OAASmZ,EAAaniB,EAAKvD,KAAKwG,OAAOjD,GAAKvD,KAAKwM,SAE3GmB,EAAQqd,UAAYhrB,KAAKghG,YAEzBn+F,GAAM6iB,EAAapiB,EACnBR,GAAM4iB,EAAaniB,EAEnB,IAAIgqB,EAAKvtB,KAAKuM,OAASwZ,EAAUziB,EAC7BkqB,EAAKxtB,KAAKwM,QAAUuZ,EAAUxiB,EAG9B+B,EAAcqJ,cAEd9L,GAAM,EACNC,GAAM,EACNyqB,GAAM,EACNC,GAAM,GAGV7f,EAAQwd,SAAStoB,EAAIC,EAAIyqB,EAAIC,GAG7B7f,EAAQtN,MAAM,EAAI0lB,EAAUziB,EAAG,EAAIyiB,EAAUxiB,GAC7CoK,EAAQswB,WAAWvY,EAAapiB,EAAKtD,KAAKwG,OAAOlD,EAAItD,KAAKuM,QAAUmZ,EAAaniB,EAAKvD,KAAKwG,OAAOjD,EAAIvD,KAAKwM,SAEvGxM,KAAK0B,OAEL4D,EAAc2G,YAAYG,QAAQ9G,GAGtC,IAAK,IAAIrD,EAAI,EAAGA,EAAIjC,KAAKgC,SAASE,OAAQD,IAEtCjC,KAAKgC,SAASC,GAAG0D,cAAcL,GAI/Bk8F,IAAqBxhG,KAAK8H,YAE1BxC,EAAcoI,iBAAmB8zF,EACjC7zF,EAAQC,yBAA2B3N,KAAK4N,iBAAiB2zF,MAWjEzgG,EAAO8nD,WAAWhnD,UAAUoL,gBAAkB,aAc9ClM,EAAO8nD,WAAWhnD,UAAUw/F,sBAAwB,SAAUI,GAE1D,GAAKzhG,KAAK8F,QAAQG,YAAY+G,UAA9B,CAKA,IAAIlH,EAAU9F,KAAK8F,QACfoH,EAAQpH,EAAQoH,MAEhBw0F,EAAc1hG,KAAK6vE,OAAO6E,aAAe10E,KAAK6vE,OAAOnrE,MACrDi9F,EAAe3hG,KAAK6vE,OAAO8E,aAAe30E,KAAK6vE,OAAOlrE,OAEtDuJ,EAAK,EACLE,EAAK,EAELpO,KAAK6vE,OAAO0E,UAEZrmE,EAAKlO,KAAK6vE,OAAO2E,kBACjBpmE,EAAKpO,KAAK6vE,OAAO4E,mBAGjBgtB,IAEAC,EAAc3gG,EAAOkC,KAAK2+F,kBAAkBF,GAC5CC,EAAe5gG,EAAOkC,KAAK2+F,kBAAkBD,IAG7C3hG,KAAK0xF,cAEL1xF,KAAK0xF,aAAa3rF,OAAO27F,EAAaC,GACtC3hG,KAAKulB,cAActf,YAAYvB,MAAQg9F,EACvC1hG,KAAKulB,cAActf,YAAYtB,OAASg9F,IAKxC3hG,KAAK0xF,aAAe,IAAIzxF,KAAKmqB,aAAas3E,EAAaC,GACvD3hG,KAAKulB,cAAgBtlB,KAAKyM,QAAQqgB,WAAW/sB,KAAK0xF,aAAa15E,QAC/DhY,KAAKulB,cAAc2H,UAAW,GAN9BltB,KAAKulB,cAAc+7E,aAAc,EAUjCthG,KAAK+gG,eAEL/gG,KAAK0xF,aAAa/jF,QAAQ60E,YAAc,UACxCxiF,KAAK0xF,aAAa/jF,QAAQ2/E,WAAW,EAAG,EAAGoU,EAAaC,IAI5D,IAAIxrF,EAAIrQ,EAAQ2H,KAAK/I,MACjB+gB,EAAI3f,EAAQ2H,KAAK9I,OAEjBwR,IAAMurF,GAAej8E,IAAMk8E,IAE3BxrF,EAAIurF,EACJj8E,EAAIk8E,GAGR,IAAI73E,EAAgB9pB,KAAKyG,cAAgBzG,KAAKyG,cAAgBX,EAAQG,YAAYkJ,OAElFnP,KAAK0xF,aAAa/jF,QAAQqB,UACtB8a,EACAhkB,EAAQ2H,KAAKnK,EACbwC,EAAQ2H,KAAKlK,EACbuC,EAAQ2H,KAAK/I,MACboB,EAAQ2H,KAAK9I,OACbuJ,EACAE,EACA+H,EACAsP,GAGJzlB,KAAK2lB,gBAAgBriB,EAAI4J,EAAMxI,MAAQg9F,EACvC1hG,KAAK2lB,gBAAgBpiB,EAAI2J,EAAMvI,OAASg9F,EAExC3hG,KAAK40E,gBAAiB,EAEtB50E,KAAKulB,cAActf,YAAYiX,WAAY,IAU/Cnc,EAAO8nD,WAAWhnD,UAAUkI,UAAY,WAEpC,IAAIrF,EAAQ1E,KAAKuM,OACb5H,EAAS3E,KAAKwM,QAEdzB,EAAKrG,GAAS,EAAI1E,KAAKwG,OAAOlD,GAC9B0H,EAAKtG,GAAS1E,KAAKwG,OAAOlD,EAE1B2H,EAAKtG,GAAU,EAAI3E,KAAKwG,OAAOjD,GAC/B2H,EAAKvG,GAAU3E,KAAKwG,OAAOjD,EAE3BzC,EAAiBd,KAAKc,eAEtB2B,EAAI3B,EAAe2B,EACnBC,EAAI5B,EAAe4B,EACnBC,EAAI7B,EAAe6B,EACnBC,EAAI9B,EAAe8B,EACnBC,EAAK/B,EAAe+B,GACpBC,EAAKhC,EAAegC,GAEpBqI,EAAM1I,EAAIuI,EAAOrI,EAAIuI,EAAMrI,EAC3BuI,EAAMxI,EAAIsI,EAAOxI,EAAIsI,EAAMlI,EAE3BuI,EAAM5I,EAAIsI,EAAOpI,EAAIuI,EAAMrI,EAC3ByI,EAAM1I,EAAIsI,EAAOxI,EAAIqI,EAAMjI,EAE3ByI,EAAM9I,EAAIsI,EAAOpI,EAAIsI,EAAMpI,EAC3B2I,EAAM5I,EAAIqI,EAAOvI,EAAIqI,EAAMjI,EAE3B2I,EAAKhJ,EAAIuI,EAAKrI,EAAIsI,EAAKpI,EACvB6I,EAAK9I,EAAIqI,EAAKvI,EAAIsI,EAAKlI,EAEvB8H,GAAQF,EAAAA,EACRG,GAAQH,EAAAA,EAERD,EAAOC,EAAAA,EACPC,EAAOD,EAAAA,EAKXD,EAAOgB,GADPhB,EAAOc,GADPd,EAAOY,GADPZ,EAAOU,EAAKV,EAAOU,EAAKV,GACLY,EAAKZ,GACLc,EAAKd,GACLgB,EAAKhB,EAKxBE,EAAOe,GADPf,EAAOa,GADPb,EAAOW,GADPX,EAAOS,EAAKT,EAAOS,EAAKT,GACLW,EAAKX,GACLa,EAAKb,GACLe,EAAKf,EAKxBC,GADAA,GADAA,GADAA,EAAYA,EAALO,EAAYA,EAAKP,GACjBS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAKxBC,GADAA,GADAA,GADAA,EAAYA,EAALO,EAAYA,EAAKP,GACjBS,EAAYA,EAAKT,GACjBW,EAAYA,EAAKX,GACjBa,EAAYA,EAAKb,EAGxB,IAAIvG,EAAStE,KAAKuB,QAWlB,OATA+C,EAAOhB,EAAImH,EACXnG,EAAOI,MAAQkG,EAAOH,EAEtBnG,EAAOf,EAAIoH,EACXrG,EAAOK,OAASkG,EAAOF,EAGvB3K,KAAKyB,eAAiB6C,GAW1BuC,OAAOyF,eAAevL,EAAO8nD,WAAWhnD,UAAW,QAAS,CAExDkF,IAAK,WAED,OAAO/G,KAAKuM,QAGhBvF,IAAK,SAAUC,GAEXjH,KAAKuM,OAAStF,KAWtBJ,OAAOyF,eAAevL,EAAO8nD,WAAWhnD,UAAW,SAAU,CAEzDkF,IAAK,WAED,OAAO/G,KAAKwM,SAGhBxF,IAAK,SAAUC,GAEXjH,KAAKwM,QAAUvF,KAiBvBlG,EAAO2F,WAAa,CAYhB2B,OAAQ,SAAUzH,EAAQ8D,EAAOC,GAE7B,IACIqT,EADA6pF,EAAM9gG,EAAO2F,WAAW2xC,WAG5B,IAAa,IAATwpD,EACJ,CACI,IAAI5zB,EAAY,CACZrtE,OAAQA,EACRoX,OAAQu6B,SAAS8mD,cAAc,WAGnCt4F,EAAO2F,WAAWo7F,KAAKn6F,KAAKsmE,GAE5Bj2D,EAASi2D,EAAUj2D,YAInBjX,EAAO2F,WAAWo7F,KAAKD,GAAKjhG,OAASA,EAErCoX,EAASjX,EAAO2F,WAAWo7F,KAAKD,GAAK7pF,OASzC,YANc5R,IAAV1B,IAEAsT,EAAOtT,MAAQA,EACfsT,EAAOrT,OAASA,GAGbqT,GAUXqgC,SAAU,WAIN,IAFA,IAAIypD,EAAO/gG,EAAO2F,WAAWo7F,KAEpB7/F,EAAI,EAAGA,EAAI6/F,EAAK5/F,OAAQD,IAE7B,IAAK6/F,EAAK7/F,GAAGrB,OAET,OAAOqB,EAIf,OAAQ,GAWZob,OAAQ,SAAUzc,GAId,IAFA,IAAIkhG,EAAO/gG,EAAO2F,WAAWo7F,KAEpB7/F,EAAI,EAAGA,EAAI6/F,EAAK5/F,OAAQD,IAEzB6/F,EAAK7/F,GAAGrB,SAAWA,IAEnBkhG,EAAK7/F,GAAGrB,OAAS,KACjBkhG,EAAK7/F,GAAG+V,OAAOtT,MAAQ,EACvBo9F,EAAK7/F,GAAG+V,OAAOrT,OAAS,IAapCgC,eAAgB,SAAUqR,GAItB,IAFA,IAAI8pF,EAAO/gG,EAAO2F,WAAWo7F,KAEpB7/F,EAAI,EAAGA,EAAI6/F,EAAK5/F,OAAQD,IAEzB6/F,EAAK7/F,GAAG+V,SAAWA,IAEnB8pF,EAAK7/F,GAAGrB,OAAS,KACjBkhG,EAAK7/F,GAAG+V,OAAOtT,MAAQ,EACvBo9F,EAAK7/F,GAAG+V,OAAOrT,OAAS,IAYpCo9F,SAAU,WAKN,IAHA,IAAID,EAAO/gG,EAAO2F,WAAWo7F,KACzBn/F,EAAI,EAECV,EAAI,EAAGA,EAAI6/F,EAAK5/F,OAAQD,IAEzB6/F,EAAK7/F,GAAGrB,QAER+B,IAIR,OAAOA,GAUXq/F,QAAS,WAKL,IAHA,IAAIF,EAAO/gG,EAAO2F,WAAWo7F,KACzBn/F,EAAI,EAECV,EAAI,EAAGA,EAAI6/F,EAAK5/F,OAAQD,IAExB6/F,EAAK7/F,GAAGrB,QAET+B,IAIR,OAAOA,GASX0N,IAAK,WAEDD,QAAQC,IACJ,yCACAtP,EAAO2F,WAAWq7F,WAClBhhG,EAAO2F,WAAWs7F,UAClBjhG,EAAO2F,WAAWo7F,KAAK5/F,UAanCnB,EAAO2F,WAAWo7F,KAAO,GAUzBj7F,OAAOyF,eAAevL,EAAO2F,WAAY,SAAU,CAC/CK,IAAK,WAED,OAAO/G,KAAK8hG,KAAK5/F,UA6CzBnB,EAAO68C,OAAS,WAOZ59C,KAAKiiG,cAAgB,EAOrBjiG,KAAKkiG,aAAc,EAQnBliG,KAAKmiG,SAAU,EAMfniG,KAAKyiD,KAAM,EAMXziD,KAAKoiG,WAAa,EAMlBpiG,KAAKwhD,UAAW,EAMhBxhD,KAAKuzC,aAAc,EAMnBvzC,KAAKwiD,SAAU,EAMfxiD,KAAKqiG,MAAO,EAMZriG,KAAKsiG,YAAa,EAMlBtiG,KAAKuiG,UAAW,EAMhBviG,KAAKwiG,QAAS,EAMdxiG,KAAKyiG,WAAY,EAMjBziG,KAAK0iG,SAAU,EAMf1iG,KAAK2iG,UAAW,EAMhB3iG,KAAK4iG,OAAQ,EAMb5iG,KAAK6iG,OAAQ,EAMb7iG,KAAK8iG,SAAU,EAMf9iG,KAAK+iG,cAAe,EAQpB/iG,KAAKgY,QAAS,EAMdhY,KAAKgjG,kBAAoB,KAOzBhjG,KAAKyrB,gBAAiB,EAUtBzrB,KAAKusB,gBAAiB,EAOtBvsB,KAAKqhD,OAAQ,EAMbrhD,KAAKijG,MAAO,EAMZjjG,KAAKkjG,YAAa,EAMlBljG,KAAKmjG,cAAe,EAMpBnjG,KAAKojG,QAAS,EAMdpjG,KAAKqjG,OAAQ,EAMbrjG,KAAK6mD,aAAc,EAMnB7mD,KAAKsjG,YAAa,EAMlBtjG,KAAKujG,WAAY,EAMjBvjG,KAAKwjG,cAAe,EAMpBxjG,KAAKyjG,YAAa,EAQlBzjG,KAAKklD,OAAQ,EAMbllD,KAAKmlD,WAAY,EAOjBnlD,KAAKorD,WAAa,KAQlBprD,KAAK0jG,OAAQ,EAMb1jG,KAAK2jG,QAAS,EAMd3jG,KAAK4jG,cAAgB,EAMrB5jG,KAAK6jG,UAAW,EAMhB7jG,KAAK8jG,SAAU,EAMf9jG,KAAK+jG,eAAiB,EAMtB/jG,KAAKghD,IAAK,EAMVhhD,KAAKgkG,UAAY,EAMjBhkG,KAAKikG,SAAU,EAMfjkG,KAAKkkG,eAAiB,EAMtBlkG,KAAK29B,MAAO,EAMZ39B,KAAKmkG,cAAe,EAMpBnkG,KAAKokG,QAAS,EAMdpkG,KAAKqkG,OAAQ,EAMbrkG,KAAKskG,QAAS,EAMdtkG,KAAKukG,cAAgB,EAMrBvkG,KAAKwkG,QAAS,EAMdxkG,KAAKykG,MAAO,EAQZzkG,KAAK0kG,WAAY,EAOjB1kG,KAAK+gD,UAAW,EAMhB/gD,KAAK2kG,KAAM,EAMX3kG,KAAK4kG,MAAO,EAMZ5kG,KAAK6kG,KAAM,EAMX7kG,KAAK8kG,KAAM,EAOX9kG,KAAK+kG,KAAM,EAMX/kG,KAAKglG,MAAO,EAMZhlG,KAAKilG,OAAQ,EAQbjlG,KAAKklG,UAAW,EAMhBllG,KAAKmlG,WAAY,EAMjBnlG,KAAKolG,UAAW,EAMhBplG,KAAKqlG,WAAY,EAMjBrlG,KAAKslG,UAAW,EAMhBtlG,KAAKulG,UAAW,EAQhBvlG,KAAKwlG,QAAS,EAMdxlG,KAAKylG,SAAU,EAMfzlG,KAAK0lG,MAAO,EAQZ1lG,KAAK2lG,WAAa,EAMlB3lG,KAAK4lG,cAAe,EAMpB5lG,KAAKggF,eAAgB,EAMrBhgF,KAAK6lG,cAAe,EAMpB7lG,KAAK8lG,YAAa,EAMlB9lG,KAAK+lG,kBAAoB,GAMzB/lG,KAAKgmG,iBAAmB,GAMxBhmG,KAAKimG,oBAAqB,GAO9BllG,EAAO68C,OAAS,IAAI78C,EAAO68C,OAc3B78C,EAAO68C,OAAOsoD,cAAgB,IAAInlG,EAAO0jC,OAgBzC1jC,EAAO68C,OAAOyB,UAAY,SAAUnI,EAAUvpC,EAASw4F,GAEnD,IAAIC,EAAapmG,KAAKqmG,YAEtB,GAAIrmG,KAAKiiG,gBAAkBmE,EAEvBlvD,EAASnzC,KAAK4J,EAAS3N,WAEtB,GAAIomG,EAAWE,UAAYH,EAE5BC,EAAWG,OAASH,EAAWG,QAAU,GACzCH,EAAWG,OAAO5+F,KAAK,CAAEuvC,EAAUvpC,QAGvC,CACIy4F,EAAWE,SAAWF,EAAW/zE,KAAKryB,MACtComG,EAAWG,OAASH,EAAWG,QAAU,GACzCH,EAAWG,OAAO5+F,KAAK,CAAEuvC,EAAUvpC,IAEnC,IAAI60C,OAAoC,IAAnBryC,OAAOqyC,QACxBhB,EAAWx1B,UAAUC,WAEG,aAAxBsmB,SAASi0D,YAAqD,gBAAxBj0D,SAASi0D,WAG/Cr2F,OAAOs2F,WAAWL,EAAWE,SAAU,GAElC9jD,IAAYhB,EAMjBjP,SAASW,iBAAiB,cAAekzD,EAAWE,UAAU,IAI9D/zD,SAASW,iBAAiB,mBAAoBkzD,EAAWE,UAAU,GACnEn2F,OAAO+iC,iBAAiB,OAAQkzD,EAAWE,UAAU,MAYjEvlG,EAAO68C,OAAOyoD,YAAc,WAExB,IAAID,EAAapmG,KAAKqmG,YAEtB,GAAK9zD,SAAS8B,MAIT,IAAKr0C,KAAKiiG,cACf,CAYI,IAAI96F,EACJ,IAZAnH,KAAKiiG,cAAgBxyD,KAAK2P,MAE1B7M,SAAS4B,oBAAoB,cAAeiyD,EAAWE,UACvD/zD,SAAS4B,oBAAoB,mBAAoBiyD,EAAWE,UAC5Dn2F,OAAOgkC,oBAAoB,OAAQiyD,EAAWE,UAE9CtmG,KAAK0mG,cACL1mG,KAAKkiG,aAAc,EAEnBliG,KAAKkmG,cAAcr+D,SAAS7nC,MAGpBmH,EAAOi/F,EAAWG,OAAO31C,SACjC,CACI,IAAI1Z,EAAW/vC,EAAK,GAChBwG,EAAUxG,EAAK,GACnB+vC,EAASnzC,KAAK4J,EAAS3N,MAI3BA,KAAKqmG,YAAc,KACnBrmG,KAAK0mG,YAAc,KACnB1mG,KAAKkmG,cAAgB,WA1BrB/1F,OAAOs2F,WAAWL,EAAWE,SAAU,KAqC/CvlG,EAAO68C,OAAO8oD,YAAc,WAExB,IA0gBQjkG,EACAC,EACAC,EA5gBJ2pB,EAAStsB,MAKb,WAEI,IAAI88B,EAAK9Q,UAAU0wC,UAEf,mBAAqB89B,KAAK19D,GAE1BxQ,EAAOq6E,MAAO,EAET,SAAWnM,KAAK19D,IAAO,kBAAoB09D,KAAK19D,IAAO,sBAAwB09D,KAAK19D,GAEzFxQ,EAAOs6E,QAAS,EAOX,UAAYpM,KAAK19D,GAEtBxQ,EAAOo2E,SAAU,EAEZ,OAASlI,KAAK19D,GAEnBxQ,EAAOq2E,UAAW,EAEb,kBAAoBnI,KAAK19D,IAE9BxQ,EAAOm2B,KAAM,EACZz2B,UAAoB,WAAEihD,MAAM,YAC7B3gD,EAAO81E,WAAa7sE,SAASsxE,OAAOC,GAAI,KAEnC,QAAUtM,KAAK19D,GAEpBxQ,EAAOs2E,OAAQ,EAEV,SAAWpI,KAAK19D,GAErBxQ,EAAOu2E,OAAQ,EAEV,UAAYrI,KAAK19D,KAEtBxQ,EAAOw2E,SAAU,IAGjB,iBAAmBtI,KAAK19D,IAAO,YAAc09D,KAAK19D,MAElDxQ,EAAOo2E,SAAU,EACjBp2E,EAAOm2B,KAAM,EACbn2B,EAAOu2E,OAAQ,EACfv2E,EAAOw2E,SAAU,EACjBx2E,EAAOy2E,cAAe,GAG1B,IAAI0B,EAAO,OAASjK,KAAK19D,IAErBxQ,EAAOw2E,SAAWx2E,EAAOu2E,OAAUv2E,EAAOs2E,QAAU6B,GAASn4E,EAAOq2E,YAEpEr2E,EAAO61E,SAAU,IAIjB71E,EAAOy2E,cAAkB,cAAgBvI,KAAK19D,IAAS,SAAW09D,KAAK19D,MAEvExQ,EAAO61E,SAAU,GA6jBzB4E,GAvWA,WAEI,IAAIjqE,EAAK9Q,UAAU0wC,UA4FnB,GA1FI,QAAU89B,KAAK19D,GAEfxQ,EAAOo3E,OAAQ,EAEV,YAAclJ,KAAK19D,GAExBxQ,EAAOqR,MAAO,EAET,gBAAkB68D,KAAK19D,KAAQxQ,EAAOy2E,cAE3Cz2E,EAAOq3E,QAAS,EAChBr3E,EAAOs3E,cAAgBruE,SAASsxE,OAAOC,GAAI,KAEtC,WAAatM,KAAK19D,GAEvBxQ,EAAOu3E,UAAW,EAEb,kBAAoBrJ,KAAK19D,IAE9BxQ,EAAOw3E,SAAU,EACjBx3E,EAAOy3E,eAAiBxuE,SAASsxE,OAAOC,GAAI,KAEvC,cAAgBtM,KAAK19D,IAAOxQ,EAAOm2B,IAExCn2B,EAAO63E,cAAe,EAEjB,mBAAqB3J,KAAK19D,IAE/BxQ,EAAO00B,IAAK,EACZ10B,EAAO03E,UAAYzuE,SAASsxE,OAAOC,GAAI,KAElC,SAAWtM,KAAK19D,GAErBxQ,EAAO83E,QAAS,EAEX,QAAU5J,KAAK19D,GAEpBxQ,EAAO+3E,OAAQ,EAEV,gBAAkB7J,KAAK19D,KAAQxQ,EAAOy2E,cAE3Cz2E,EAAOg4E,QAAS,EAEZ,mBAAqB9J,KAAK19D,KAE1BxQ,EAAOi4E,cAAgBhvE,SAASsxE,OAAOC,GAAI,MAG1C,uCAAyCtM,KAAK19D,KAEnDxQ,EAAO00B,IAAK,EACZ10B,EAAO23E,SAAU,EACjB33E,EAAO43E,eAAiB3uE,SAASsxE,OAAOC,GAAI,IAC5Cx6E,EAAO03E,UAAYzuE,SAASsxE,OAAOG,GAAI,KAIvC,OAASxM,KAAK19D,KAEdxQ,EAAOm4E,MAAO,GAIdz4E,UAAUi7E,aAEV36E,EAAOk4E,QAAS,QAGU,IAAnBr0F,OAAOqyC,UAEdl2B,EAAOk2B,SAAU,GAGE,oBAAZ0kD,SAA8C,oBAAZC,UAEzC76E,EAAO+1E,MAAO,GAGd/1E,EAAO+1E,MAAoC,iBAArB6E,QAAQE,WAE9B96E,EAAOg2E,aAAe4E,QAAQE,SAAS,eAEvC96E,EAAOi2E,WAAa2E,QAAQE,SAAS7E,UAGrCv2E,UAAUC,aAEVK,EAAOk1B,UAAW,GAGlBl1B,EAAOk1B,SAEP,IAEIl1B,EAAOinB,YAAmC,oBAAbC,SAEjC,MAAM3pB,GAEFyC,EAAOinB,aAAc,OAIA,IAAlBpjC,OAAOqyF,SAEdl2E,EAAOk2E,QAAS,GAGhB,YAAchI,KAAK19D,KAEnBxQ,EAAOm2E,WAAY,GAuP3B4E,GAtMA,WAEI/6E,EAAOo4E,YAAev0F,OAAY,MAClCmc,EAAOy0B,YAAc5wC,OAAOm3F,eAAgBn3F,OAAOo3F,oBACnD,IAAIC,EAAej1D,SAAS8mD,cAAc,SAE1C,IAEI,GAAImO,EAAaC,cAETD,EAAaC,YAAY,8BAA8BhxE,QAAQ,OAAQ,MAEvEnK,EAAOq4E,KAAM,IAGb6C,EAAaC,YAAY,4BAA4BhxE,QAAQ,OAAQ,KAAO+wE,EAAaC,YAAY,eAAehxE,QAAQ,OAAQ,OAEpInK,EAAOs4E,MAAO,GAGd4C,EAAaC,YAAY,eAAehxE,QAAQ,OAAQ,MAExDnK,EAAOu4E,KAAM,GAQb2C,EAAaC,YAAY,aAAahxE,QAAQ,OAAQ,MAEtDnK,EAAOw4E,KAAM,IAGb0C,EAAaC,YAAY,iBAAmBD,EAAaC,YAAY,cAAchxE,QAAQ,OAAQ,OAEnGnK,EAAOy4E,KAAM,GAGbyC,EAAaC,YAAY,+BAA+BhxE,QAAQ,OAAQ,MAExEnK,EAAO04E,MAAO,GAG0C,KAAxDwC,EAAaC,YAAY,4BAEzB,GAAIn7E,EAAOqR,KAEPrR,EAAO24E,OAAQ,OAEd,GAAI34E,EAAOg4E,QAAkC,GAAxBh4E,EAAOi4E,eAEzB,uBAAyB/J,KAAKxuE,UAAU0wC,WAC5C,CACI,IAAIgrC,EAAQnyE,SAASsxE,OAAOC,GAAI,IAC5Ba,EAAQpyE,SAASsxE,OAAOe,GAAI,KAEjB,KAAVF,GAAyB,IAATC,GAAwB,GAARD,KAEjCp7E,EAAO24E,OAAQ,IAOvC,MAAOv2F,KAoIXm5F,GAjPA,WAEI,IAAIC,EAAev1D,SAAS8mD,cAAc,SAE1C,IAEQyO,EAAaL,cAETK,EAAaL,YAAY,8BAA8BhxE,QAAQ,OAAQ,MAEvEnK,EAAO44E,UAAW,GAGlB4C,EAAaL,YAAY,mCAAmChxE,QAAQ,OAAQ,MAG5EnK,EAAO64E,WAAY,EACnB74E,EAAO84E,UAAW,GAGlB0C,EAAaL,YAAY,oCAAoChxE,QAAQ,OAAQ,MAE7EnK,EAAO+4E,WAAY,GAGnByC,EAAaL,YAAY,4BAA4BhxE,QAAQ,OAAQ,MAErEnK,EAAOg5E,UAAW,GAGlBwC,EAAaL,YAAY,+CAA+ChxE,QAAQ,OAAQ,MAExFnK,EAAOi5E,UAAW,IAI9B,MAAO72F,KA8MXq5F,GAhCA,WAEI,IACIC,EADAC,EAAK11D,SAAS8mD,cAAc,KAE5B6O,EAAa,CACbC,gBAAiB,oBACjBC,WAAY,eACZC,YAAa,gBACbC,aAAc,iBACd79E,UAAW,aAMf,IAAK,IAAIyI,KAFTqf,SAAS8B,KAAKk0D,aAAaN,EAAI,MAEjBC,OAEU9hG,IAAhB6hG,EAAG1rF,MAAM2W,KAET+0E,EAAG1rF,MAAM2W,GAAK,2BACd80E,EAAQ73F,OAAOq4F,iBAAiBP,GAAIQ,iBAAiBP,EAAWh1E,KAIxEqf,SAAS8B,KAAK3rC,YAAYu/F,GAC1B37E,EAAO+2E,WAAmBj9F,IAAV4hG,GAAsC,EAAfA,EAAM9lG,QAAwB,SAAV8lG,EAQ/DU,GAlEIp8E,EAAOq5E,WAAax1F,OAAOw4F,kBAAoB,EAC/Cr8E,EAAOk5E,QAAkE,IAAzDx5E,UAAU0wC,UAAUnM,cAAcrnD,QAAQ,UAC1DojB,EAAOm5E,QAAiC,IAAtBn5E,EAAOq5E,YAAoBr5E,EAAOk5E,OACpDl5E,EAAOo5E,MAA8D,IAAvD15E,UAAU0wC,UAAUnM,cAAcrnD,QAAQ,QAE/B,oBAAd0/F,UAEPt8E,EAAOg3E,YAAa,EAIpBh3E,EAAOg3E,YAAa,EAGG,oBAAhBjgF,aAAqD,oBAAfmvE,YAAqD,oBAAhB/uE,cAElF6I,EAAOs5E,cAzEPnjG,EAAI,IAAI4gB,YAAY,GACpB3gB,EAAI,IAAI8vF,WAAW/vF,GACnBE,EAAI,IAAI8gB,YAAYhhB,GAExBC,EAAE,GAAK,IACPA,EAAE,GAAK,IACPA,EAAE,GAAK,IACPA,EAAE,GAAK,IAEM,aAATC,EAAE,IAKO,aAATA,EAAE,IAOK,MAqDP2pB,EAAO0zD,cAAgB1zD,EAAOs5E,cAGlCt5E,EAAOu5E,aAAuC,oBAAhBxiF,aAA4D,oBAAtBwlF,mBAA2D,oBAAfC,YAAsD,OAAxBx8E,EAAOs5E,cA/CzJ,WAEI,QAA0Bx/F,IAAtByiG,kBAEA,OAAO,EAGX,IACIrsB,EADOz7E,EAAO2F,WAAW2B,OAAOrI,KAAM,EAAG,GAC9BsZ,WAAW,MAE1B,IAAKkjE,EAED,OAAO,EAGX,IAAIxhE,EAAQwhE,EAAIusB,gBAAgB,EAAG,GAInC,OAFAhoG,EAAO2F,WAAW2W,OAAOrd,MAElBgb,EAAMrG,gBAAgBk0F,kBA4BiJG,GAE9Kh9E,UAAUi9E,QAAUj9E,UAAUi9E,SAAWj9E,UAAUk9E,eAAiBl9E,UAAUm9E,YAAcn9E,UAAUo9E,UAElGp9E,UAAUi9E,UAEV38E,EAAOi3E,WAAY,GAte3B,WAEIj3E,EAAOtU,SAAW7H,OAAOk5F,0BAA4B/8E,EAAOk1B,SAE5D,IAEIl1B,EAAO62E,eAAiBA,aAAamG,QAEzC,MAAOz/E,GAEHyC,EAAO62E,cAAe,EAG1B72E,EAAO22E,QAAS9yF,OAAOo5F,MAAUp5F,OAAOq5F,YAAgBr5F,OAAOs5F,UAAct5F,OAAOu5F,MACpFp9E,EAAO42E,aAAe/yF,OAAOw5F,kBAE7Br9E,EAAO+0B,QAAUlxC,OAAOy5F,sBAExBt9E,EAAO82E,SAAWjzF,OAAO05F,OAEzBv9E,EAAOmvC,oBAAuB,uBAAwBlpB,SAAa,qBAC7D,0BAA2BA,UAAa,0BACxC,6BAA8BA,UAAa,2BAEjDjmB,EAAOovC,mBAAsB,wBAAyBnpB,SAAa,oBAC7D,2BAA4BA,UAAa,yBACzC,8BAA+BA,UAAa,0BAElDjmB,EAAOqvC,kBAAqB,uBAAwBppB,SAAa,mBAC3D,0BAA2BA,UAAa,wBACxC,6BAA8BA,UAAa,yBAEjDjmB,EAAOu6B,cAAgBv6B,EAAOmvC,mBAE9BnvC,EAAOm3E,WAAsC,eAAxBlxD,SAASu3D,WAE9B99E,UAAUw3E,aAAex3E,UAAUw3E,cAAgBx3E,UAAU+9E,oBAAsB/9E,UAAUg+E,iBAAmBh+E,UAAUi+E,gBAAkBj+E,UAAUk+E,cAEtJ/5F,OAAOg6F,IAAMh6F,OAAOg6F,KAAOh6F,OAAOi6F,WAAaj6F,OAAOk6F,QAAUl6F,OAAOm6F,MAEvEh+E,EAAOk3E,aAAel3E,EAAOk3E,gBAAkBx3E,UAAUw3E,gBAAkBrzF,OAAOg6F,IAG9E79E,EAAOw3E,SAAWx3E,EAAOy3E,eAAiB,KAE1Cz3E,EAAOk3E,cAAe,IASrBl3E,EAAOm2B,MAAQn2B,EAAO00B,IAAM10B,EAAOw3E,SAAWx3E,EAAOq3E,UAEtDr3E,EAAO02E,mBAAoB,IAI3B12E,EAAOg4E,QAAUh4E,EAAO63E,gBAExB73E,EAAO02E,mBAAoB,GAkdnCuH,GA1jBA,WAEI,IAAIvyF,EAASjX,EAAO2F,WAAW2B,OAAOrI,KAAM,EAAG,GAC3C2N,EAAUqK,EAAOsB,WAAW,MAEhC3L,EAAQqd,UAAY,wBAGpBrd,EAAQwd,SAAS,EAAG,EAAG,EAAG,GAG1B,IAAIq/E,EAAK78F,EAAQ4d,aAAa,EAAG,EAAG,EAAG,GAEvC,GAAIi/E,EACJ,CAEI78F,EAAQ+d,aAAa8+E,EAAI,EAAG,GAG5B,IAAIC,EAAK98F,EAAQ4d,aAAa,EAAG,EAAG,EAAG,GAGvCe,EAAOb,eACHg/E,EAAG91F,KAAK,KAAO61F,EAAG71F,KAAK,IACvB81F,EAAG91F,KAAK,KAAO61F,EAAG71F,KAAK,IACvB81F,EAAG91F,KAAK,KAAO61F,EAAG71F,KAAK,IACvB81F,EAAG91F,KAAK,KAAO61F,EAAG71F,KAAK,GAK/BhH,EAAQC,yBAA2B,WACnC0e,EAAOC,eAAuD,aAArC5e,EAAQC,yBAEjC7M,EAAO2F,WAAWC,eAAeqR,GAEjC/X,KAAK6O,aAAagc,WAAcwB,EAAqB,eAAIrsB,KAAK6O,aAAaic,iBAAmB9qB,KAAK6O,aAAasc,iBAuhBpHs/E,GAxaA,WAeI,IAbA,IAAIC,EAAK,CACL,oBACA,oBACA,0BACA,0BACA,sBACA,sBACA,uBACA,wBAGAz/C,EAAU3Y,SAAS8mD,cAAc,OAE5Bp3F,EAAI,EAAGA,EAAI0oG,EAAGzoG,OAAQD,IAE3B,GAAIipD,EAAQy/C,EAAG1oG,IACf,CACIqqB,EAAOw5E,YAAa,EACpBx5E,EAAOy5E,kBAAoB4E,EAAG1oG,GAC9B,MAIR,IAAI2oG,EAAM,CACN,mBACA,iBACA,yBACA,uBACA,qBACA,mBACA,sBACA,qBAGJ,GAAIt+E,EAAOw5E,WAEP,IAAS7jG,EAAI,EAAGA,EAAI2oG,EAAI1oG,OAAQD,IAE5B,GAAIswC,SAASq4D,EAAI3oG,IACjB,CACIqqB,EAAO05E,iBAAmB4E,EAAI3oG,GAC9B,MAMRkO,OAAO06F,SAAWA,QAAQC,uBAE1Bx+E,EAAO25E,oBAAqB,GAsXpC8E,IA3cQ,iBAAkBx4D,SAASy4D,iBAAoB76F,OAAO6b,UAAUi/E,gBAAqD,GAAnC96F,OAAO6b,UAAUi/E,kBAEnG3+E,EAAO44B,OAAQ,IAGf/0C,OAAO+6F,cAAgB/6F,OAAOg7F,gBAAkBh7F,OAAO6b,UAAUo/E,kBAAoBj7F,OAAO6b,UAAUq/E,kBAEtG/+E,EAAO64B,WAAY,GAGlB74B,EAAOk1B,WAGJ,YAAarxC,QAAWmc,EAAO00B,IAAM,eAAgB7wC,OAGrDmc,EAAO8+B,WAAa,QAEf,iBAAkBj7C,OAGvBmc,EAAO8+B,WAAa,aAEf9+B,EAAOw3E,SAAW,qBAAsB3zF,SAG7Cmc,EAAO8+B,WAAa,oBA6bpCrqD,EAAO68C,OAAO0tD,aAAe,SAAUv3F,GAEnC,QAAa,QAATA,IAAkB/T,KAAK6kG,SAIT,QAAT9wF,IAAmB/T,KAAK2kG,MAAO3kG,KAAK4kG,UAI3B,QAAT7wF,IAAkB/T,KAAK+kG,SAId,SAAThxF,IAAmB/T,KAAK4kG,UAIf,QAAT7wF,IAAkB/T,KAAK8kG,SAId,SAAT/wF,IAAmB/T,KAAKglG,SAIf,QAATjxF,IAAkB/T,KAAKilG,aAgBpClkG,EAAO68C,OAAO2tD,aAAe,SAAUx3F,GAEnC,QAAa,SAATA,IAAoB/T,KAAKqlG,YAAarlG,KAAKslG,cAI7B,QAATvxF,IAAmB/T,KAAKolG,WAAYplG,KAAKmlG,eAI/B,QAATpxF,GAA2B,QAATA,IAAmB/T,KAAKklG,aAIlC,SAATnxF,IAAmB/T,KAAKulG,aAerCxkG,EAAO68C,OAAO4tD,iBAAmB,WAE7B,UAAWxrG,KAAKwhD,WAAaxhD,KAAKyiD,KAAOziD,KAAK0iG,UAAavyF,OAAOywC,cAAgBzwC,OAAOywC,aAAa6qD,mBAe1G1qG,EAAO68C,OAAOwM,sBAAwB,WAElC,IAAIshD,EAAUv7F,OAAO6b,UAAU0wC,UAAUuQ,MAAM,kCAC/C,OAAOy+B,GAAWA,EAAQ,GAAK,KAgBnC3qG,EAAO+qB,OAAS,CAaZzjB,OAAQ,SAAUzH,EAAQ8D,EAAOC,EAAQ8P,EAAI8nE,GAEzC73E,EAAQA,GAAS,IACjBC,EAASA,GAAU,IAEnB,IAAIqT,EAAS,EAAau6B,SAAS8mD,cAAc,UAAYt4F,EAAO2F,WAAW2B,OAAOzH,EAAQ8D,EAAOC,GAWrG,MATkB,iBAAP8P,GAA0B,KAAPA,IAE1BuD,EAAOvD,GAAKA,GAGhBuD,EAAOtT,MAAQA,EACfsT,EAAOrT,OAASA,EAChBqT,EAAOuE,MAAMovF,QAAU,QAEhB3zF,GAWXi6B,mBAAoB,SAAUj6B,EAAQb,GAMlC,OAJAA,EAAQA,GAAS,aAEjBa,EAAOuE,MAAMy1B,gBAAkB76B,EAExBa,GAWXq6B,eAAgB,SAAUr6B,EAAQ/Q,GAQ9B,OANAA,EAAQA,GAAS,OAEjB+Q,EAAOuE,MAAMqvF,cAAgB3kG,EAC7B+Q,EAAOuE,MAAM,mBAAqBtV,EAClC+Q,EAAOuE,MAAM,gBAAkBtV,EAExB+Q,GAWXo6B,cAAe,SAAUp6B,EAAQ/Q,GAY7B,OAVAA,EAAQA,GAAS,OAEjB+Q,EAAOuE,MAAM,yBAA2BtV,EACxC+Q,EAAOuE,MAAM,uBAAyBtV,EACtC+Q,EAAOuE,MAAM,sBAAwBtV,EACrC+Q,EAAOuE,MAAM,oBAAsBtV,EACnC+Q,EAAOuE,MAAM,mBAAqBtV,EAClC+Q,EAAOuE,MAAM,eAAiBtV,EAC9B+Q,EAAOuE,MAAM,+BAAiC,mBAEvCvE,GAaX0pC,SAAU,SAAU1pC,EAAQpX,EAAQirG,GAEhC,IAAIhkG,EA+BJ,YA7BuBzB,IAAnBylG,IAAgCA,GAAiB,GAEjDjrG,IAEsB,iBAAXA,EAGPiH,EAAS0qC,SAASu5D,eAAelrG,GAEV,iBAAXA,GAA2C,IAApBA,EAAOo1B,WAG1CnuB,EAASjH,IAKZiH,IAEDA,EAAS0qC,SAAS8B,MAGlBw3D,GAAkBhkG,EAAO0U,QAEzB1U,EAAO0U,MAAMwvF,SAAW,UAG5BlkG,EAAOmkG,YAAYh0F,GAEZA,GASXuqC,cAAe,SAAUvqC,GAEjBA,EAAOi0F,YAEPj0F,EAAOi0F,WAAWvjG,YAAYsP,IAiBtCpJ,aAAc,SAAUjB,EAAS+2E,EAAYC,EAAY7+D,EAAQE,EAAQ4+D,EAAOC,GAI5E,OAFAl3E,EAAQiB,aAAakX,EAAQ8+D,EAAOC,EAAO7+D,EAAQ0+D,EAAYC,GAExDh3E,GAeX62E,oBAAqB,SAAU72E,EAAS1G,GAEpC,IAAIrD,EAAI7C,EAAO+qB,OAAOC,mBAAmBpe,GAOzC,OALI/J,IAEA+J,EAAQ/J,GAAKqD,GAGV0G,GAUXoe,mBAAoB,SAAUpe,GAE1B,IAAIu+F,EAAS,CAAE,IAAK,UAAW,MAAO,OAAQ,MAE9C,IAAK,IAAIC,KAAUD,EACnB,CACI,IAAItoG,EAAIsoG,EAAOC,GAAU,uBAEzB,GAAIvoG,KAAK+J,EAEL,OAAO/J,EAIf,OAAO,MAUX2gF,oBAAqB,SAAU52E,GAE3B,IAAI/J,EAAI7C,EAAO+qB,OAAOC,mBAAmBpe,GAEzC,GAAI/J,EAEA,OAAO+J,EAAQ/J,IAgBvBw9C,uBAAwB,SAAUppC,GAI9B,IAFA,IAAIo0F,EAAQ,CAAE,4BAA6B,mBAAoB,cAAe,aAErEnqG,EAAI,EAAGA,EAAImqG,EAAMlqG,OAAQD,IAE9B+V,EAAOuE,MAAM,mBAAqB6vF,EAAMnqG,GAK5C,OAFA+V,EAAOuE,MAAM8vF,oBAAsB,mBAE5Br0F,GAWXs0F,yBAA0B,SAAUt0F,GAKhC,OAHAA,EAAOuE,MAAM,mBAAqB,OAClCvE,EAAOuE,MAAM8vF,oBAAsB,UAE5Br0F,IAmBfjX,EAAOw/C,sBAAwB,SAAUj+C,EAAMg+C,QAEnBl6C,IAApBk6C,IAAiCA,GAAkB,GAKvDtgD,KAAKsC,KAAOA,EAMZtC,KAAK09C,WAAY,EAKjB19C,KAAKsgD,gBAAkBA,EASvB,IAPA,IAAIisD,EAAU,CACV,KACA,MACA,SACA,KAGKjpG,EAAI,EAAGA,EAAIipG,EAAQrqG,SAAWiO,OAAOq8F,sBAAuBlpG,IAEjE6M,OAAOq8F,sBAAwBr8F,OAAOo8F,EAAQjpG,GAAK,yBACnD6M,OAAOs8F,qBAAuBt8F,OAAOo8F,EAAQjpG,GAAK,yBAA2B6M,OAAOo8F,EAAQjpG,GAAK,+BAOrGtD,KAAK0sG,eAAgB,EAMrB1sG,KAAK2sG,QAAU,KAMf3sG,KAAK4sG,WAAa,MAGtB7rG,EAAOw/C,sBAAsB1+C,UAAY,CAMrCsK,MAAO,WAEHnM,KAAK09C,WAAY,EAEjB,IAAI7O,EAAQ7uC,MAEPmQ,OAAOq8F,uBAAyBxsG,KAAKsgD,iBAEtCtgD,KAAK0sG,eAAgB,EAErB1sG,KAAK2sG,QAAU,WAEX,OAAO99D,EAAMg+D,oBAGjB7sG,KAAK4sG,WAAaz8F,OAAOs2F,WAAWzmG,KAAK2sG,QAAS,KAIlD3sG,KAAK0sG,eAAgB,EAErB1sG,KAAK2sG,QAAU,SAAUhlE,GAErB,OAAOkH,EAAMi+D,UAAUnlE,IAG3B3nC,KAAK4sG,WAAaz8F,OAAOq8F,sBAAsBxsG,KAAK2sG,WAQ5DG,UAAW,SAAUC,GAEb/sG,KAAK09C,YAGL19C,KAAKsC,KAAKilC,OAAOtkC,KAAKkvB,MAAM46E,IAE5B/sG,KAAK4sG,WAAaz8F,OAAOq8F,sBAAsBxsG,KAAK2sG,WAQ5DE,iBAAkB,WAEV7sG,KAAK09C,YAEL19C,KAAKsC,KAAKilC,OAAOkI,KAAK2P,OAEtBp/C,KAAK4sG,WAAaz8F,OAAOs2F,WAAWzmG,KAAK2sG,QAAS3sG,KAAKsC,KAAKqlC,KAAKqlE,cAQzEhhG,KAAM,WAEEhM,KAAK0sG,cAELO,aAAajtG,KAAK4sG,YAIlBz8F,OAAOs8F,qBAAqBzsG,KAAK4sG,YAGrC5sG,KAAK09C,WAAY,GAQrBwvD,aAAc,WAEV,OAAOltG,KAAK0sG,eAQhBS,MAAO,WAEH,OAA+B,IAAvBntG,KAAK0sG,gBAKrB3rG,EAAOw/C,sBAAsB1+C,UAAUC,YAAcf,EAAOw/C,sBAkB5Dx/C,EAAOkC,KAAO,CAOVC,IAAe,EAAVD,KAAKk0B,GAOVtzB,QAAmB,GAAVZ,KAAKk0B,GAMdi2E,WAAYnqG,KAAKk0B,GAAK,IAMtBk2E,WAAY,IAAMpqG,KAAKk0B,GASvB0B,SAAU,SAAUy0E,GAEhB,OAAOA,EAAUvsG,EAAOkC,KAAKmqG,YAUjChuE,SAAU,SAAUmuE,GAEhB,OAAOA,EAAUxsG,EAAOkC,KAAKoqG,YAWjCzL,kBAAmB,SAAU36F,GAEzB,GAAY,EAARA,GAAuC,IAAzBA,EAASA,EAAQ,GAG/B,OAAOA,EAMP,IAFA,IAAI+zB,EAAS,EAENA,EAAS/zB,GAEZ+zB,IAAW,EAGf,OAAOA,GAYfle,aAAc,SAAUpY,EAAOC,GAE3B,OAAgB,EAARD,GAAuC,IAAzBA,EAASA,EAAQ,IAAsB,EAATC,GAA0C,IAA3BA,EAAUA,EAAS,IAY1FqwB,OAAQ,SAAU0G,EAAK91B,GAKnB,QAHYQ,IAARs1B,IAAqBA,EAAM,QACnBt1B,IAARR,IAAqBA,EAAM,GAE3B81B,IAAQ91B,EAER,OAAO81B,EAGX,GAAU91B,EAAN81B,EACJ,CACI,IAAIluB,EAAOkuB,EACXA,EAAM91B,EACNA,EAAM4H,EAGV,OAAQvK,KAAK+xB,UAAYpvB,EAAM81B,GAAOA,GAY1C4hB,QAAS,SAAU5hB,EAAK91B,GAKpB,QAHYQ,IAARs1B,IAAqBA,EAAM,QACnBt1B,IAARR,IAAqBA,EAAM,GAE3B81B,IAAQ91B,EAER,OAAO81B,EAGX,GAAU91B,EAAN81B,EACJ,CACI,IAAIluB,EAAOkuB,EACXA,EAAM91B,EACNA,EAAM4H,EAMV,OAHAkuB,EAAMz4B,KAAK4C,KAAK61B,GAChB91B,EAAM3C,KAAKkvB,MAAMvsB,GAEV3C,KAAKkvB,MAAMlvB,KAAK+xB,UAAYpvB,EAAM81B,EAAM,IAAMA,GAYzDF,WAAY,SAAU/4B,EAAGC,EAAG64B,GAIxB,YAFgBn1B,IAAZm1B,IAAyBA,EAAU,MAEhCt4B,KAAK81B,IAAIt2B,EAAIC,GAAK64B,GAY7BiyE,cAAe,SAAU/qG,EAAGC,EAAG64B,GAI3B,YAFgBn1B,IAAZm1B,IAAyBA,EAAU,MAEhC94B,EAAIC,EAAI64B,GAYnBkyE,iBAAkB,SAAUhrG,EAAGC,EAAG64B,GAI9B,YAFgBn1B,IAAZm1B,IAAyBA,EAAU,MAE5B74B,EAAI64B,EAAR94B,GAWXirG,UAAW,SAAU94E,EAAK2G,GAItB,YAFgBn1B,IAAZm1B,IAAyBA,EAAU,MAEhCt4B,KAAK4C,KAAK+uB,EAAM2G,IAW3BoyE,WAAY,SAAU/4E,EAAK2G,GAIvB,YAFgBn1B,IAAZm1B,IAAyBA,EAAU,MAEhCt4B,KAAKkvB,MAAMyC,EAAM2G,IAU5BqyE,QAAS,WAKL,IAHA,IAAIjoB,EAAM,EACNxyD,EAAMX,UAAUtwB,OAEXD,EAAI,EAAGA,EAAIkxB,EAAKlxB,IAErB0jF,IAASnzD,UAAUvwB,GAGvB,OAAO0jF,EAAMxyD,GAQjB06E,MAAO,SAAUp0E,GAEb,OAAOA,EAAI,GAcfq0E,OAAQ,SAAUllE,EAAOmlE,EAAK5hG,GAI1B,YAFc/F,IAAV+F,IAAuBA,EAAQ,GAEvB,IAAR4hG,EAEOnlE,GAGXA,GAASz8B,EAGFA,GAFPy8B,EAAQmlE,EAAM9qG,KAAK20B,MAAMgR,EAAQmlE,MAiBrCC,YAAa,SAAUplE,EAAOmlE,EAAK5hG,GAI/B,YAFc/F,IAAV+F,IAAuBA,EAAQ,GAEvB,IAAR4hG,EAEOnlE,GAGXA,GAASz8B,EAGFA,GAFPy8B,EAAQmlE,EAAM9qG,KAAKkvB,MAAMyW,EAAQmlE,MAiBrCnY,WAAY,SAAUhtD,EAAOmlE,EAAK5hG,GAI9B,YAFc/F,IAAV+F,IAAuBA,EAAQ,GAEvB,IAAR4hG,EAEOnlE,GAGXA,GAASz8B,EAGFA,GAFPy8B,EAAQmlE,EAAM9qG,KAAK4C,KAAK+iC,EAAQmlE,MAwCpCE,QAAS,SAAUhnG,EAAOinG,EAAOhzF,QAEf9U,IAAV8nG,IAAuBA,EAAQ,QACtB9nG,IAAT8U,IAAsBA,EAAO,IAEjC,IAAI3Y,EAAIU,KAAKkrG,IAAIjzF,GAAOgzF,GAExB,OAAOjrG,KAAK20B,MAAM3wB,EAAQ1E,GAAKA,GAanC6rG,QAAS,SAAUnnG,EAAOinG,EAAOhzF,QAEf9U,IAAV8nG,IAAuBA,EAAQ,QACtB9nG,IAAT8U,IAAsBA,EAAO,IAEjC,IAAI3Y,EAAIU,KAAKkrG,IAAIjzF,GAAOgzF,GAExB,OAAOjrG,KAAKkvB,MAAMlrB,EAAQ1E,GAAKA,GAanC8rG,OAAQ,SAAUpnG,EAAOinG,EAAOhzF,QAEd9U,IAAV8nG,IAAuBA,EAAQ,QACtB9nG,IAAT8U,IAAsBA,EAAO,IAEjC,IAAI3Y,EAAIU,KAAKkrG,IAAIjzF,GAAOgzF,GAExB,OAAOjrG,KAAK4C,KAAKoB,EAAQ1E,GAAKA,GAWlC2vB,MAAO,SAAUjrB,GAEb,OAAKqnG,SAASrnG,GAKNA,EAAQA,EAAQ,IAAOA,EAAQ,GAAK,EAAc,IAAVA,EAAcA,EAAQ,GAH3DA,GAgBfsnG,cAAe,SAAUC,EAAcC,EAAalqE,GAIhD,YAFan+B,IAATm+B,IAAsBA,EAAO,KAE7BiqE,IAAiBC,IAKjBxrG,KAAK81B,IAAI01E,EAAcD,IAAiBjqE,GAAQthC,KAAK81B,IAAI01E,EAAcD,IAAkBztG,EAAOkC,KAAKC,IAAMqhC,EAE3GiqE,EAAeC,GAIXxrG,KAAK81B,IAAI01E,EAAcD,GAAgBvrG,KAAKk0B,KAExCs3E,EAAcD,EAEdC,GAAe1tG,EAAOkC,KAAKC,IAI3BurG,GAAe1tG,EAAOkC,KAAKC,KAIjBsrG,EAAdC,EAEAD,GAAgBjqE,EAEXkqE,EAAcD,IAEnBA,GAAgBjqE,KA3BbiqE,GAiDfE,iBAAkB,SAAUC,EAAQC,GAEhC,IAAI/N,EAAa+N,EAASD,EAE1B,OAAmB,IAAf9N,EAEO,EAKJA,EAAsB,IAFjB59F,KAAKkvB,OAAO0uE,IAAe,KAAQ,MAenDgO,aAAc,SAAU1jG,EAAIC,EAAIC,EAAIC,GAEhC,OAAOrI,KAAKk8B,MAAM7zB,EAAKF,EAAIC,EAAKF,IAgBpC2jG,cAAe,SAAU3jG,EAAIC,EAAIC,EAAIC,GAEjC,OAAOrI,KAAKk8B,MAAM9zB,EAAKF,EAAIG,EAAKF,IAWpC2jG,mBAAoB,SAAU5f,EAAQC,GAElC,OAAOnsF,KAAKk8B,MAAMiwD,EAAO7rF,EAAI4rF,EAAO5rF,EAAG6rF,EAAO9rF,EAAI6rF,EAAO7rF,IAU7D0rG,oBAAqB,SAAU7f,EAAQC,GAEnC,OAAOnsF,KAAKk8B,MAAMiwD,EAAO9rF,EAAI6rF,EAAO7rF,EAAG8rF,EAAO7rF,EAAI4rF,EAAO5rF,IAS7D0rG,aAAc,SAAUC,GAEpB,OAAOlvG,KAAKmvG,eAAeD,EAAWjsG,KAAKk0B,IAAI,IASnDg4E,eAAgB,SAAUD,GAGtB,OAAmB,IADnBA,GAAuB,EAAIjsG,KAAKk0B,IACT+3E,EAAWA,EAAW,EAAIjsG,KAAKk0B,IAY1Di4E,OAAQ,SAAUnoG,EAAOkyC,EAAQvzC,GAE7B,OAAO3C,KAAKy4B,IAAIz0B,EAAQkyC,EAAQvzC,IAYpCypG,OAAQ,SAAUpoG,EAAOkyC,EAAQzd,GAE7B,OAAOz4B,KAAK2C,IAAIqB,EAAQkyC,EAAQzd,IAcpCW,KAAM,SAAUp1B,EAAOy0B,EAAK91B,GAExB,IAAIgE,EAAQhE,EAAM81B,EAElB,GAAI9xB,GAAS,EAET,OAAO,EAGX,IAAIoxB,GAAU/zB,EAAQy0B,GAAO9xB,EAO7B,OALIoxB,EAAS,IAETA,GAAUpxB,GAGPoxB,EAASU,GAcpB4zE,UAAW,SAAUroG,EAAOkyC,EAAQvzC,GAQhC,QALAqB,EAAQhE,KAAK81B,IAAI9xB,KACjBkyC,EAASl2C,KAAK81B,IAAIogB,MAClBvzC,EAAM3C,KAAK81B,IAAInzB,KAanB2pG,MAAO,SAAU91E,GAGb,SAAc,EAAJA,IAUd+1E,OAAQ,SAAU/1E,GAGd,QAAa,EAAJA,IAYbiC,IAAK,WAED,GAAyB,IAArBlJ,UAAUtwB,QAAwC,iBAAjBswB,UAAU,GAE3C,IAAI7d,EAAO6d,UAAU,QAIjB7d,EAAO6d,UAGf,IAAK,IAAIvwB,EAAI,EAAGy5B,EAAM,EAAGvI,EAAMxe,EAAKzS,OAAQD,EAAIkxB,EAAKlxB,IAE7C0S,EAAK1S,GAAK0S,EAAK+mB,KAEfA,EAAMz5B,GAId,OAAO0S,EAAK+mB,IAYhB91B,IAAK,WAED,GAAyB,IAArB4sB,UAAUtwB,QAAwC,iBAAjBswB,UAAU,GAE3C,IAAI7d,EAAO6d,UAAU,QAIjB7d,EAAO6d,UAGf,IAAK,IAAIvwB,EAAI,EAAG2D,EAAM,EAAGutB,EAAMxe,EAAKzS,OAAQD,EAAIkxB,EAAKlxB,IAE7C0S,EAAK1S,GAAK0S,EAAK/O,KAEfA,EAAM3D,GAId,OAAO0S,EAAK/O,IAUhB6pG,YAAa,SAAUv2D,GAEnB,GAAyB,IAArB1mB,UAAUtwB,QAAwC,iBAAjBswB,UAAU,GAE3C,IAAI7d,EAAO6d,UAAU,QAIjB7d,EAAO6d,UAAU3E,MAAM,GAG/B,IAAK,IAAI5rB,EAAI,EAAGy5B,EAAM,EAAGvI,EAAMxe,EAAKzS,OAAQD,EAAIkxB,EAAKlxB,IAE7C0S,EAAK1S,GAAGi3C,GAAYvkC,EAAK+mB,GAAKwd,KAE9Bxd,EAAMz5B,GAId,OAAO0S,EAAK+mB,GAAKwd,IAUrBw2D,YAAa,SAAUx2D,GAEnB,GAAyB,IAArB1mB,UAAUtwB,QAAwC,iBAAjBswB,UAAU,GAE3C,IAAI7d,EAAO6d,UAAU,QAIjB7d,EAAO6d,UAAU3E,MAAM,GAG/B,IAAK,IAAI5rB,EAAI,EAAG2D,EAAM,EAAGutB,EAAMxe,EAAKzS,OAAQD,EAAIkxB,EAAKlxB,IAE7C0S,EAAK1S,GAAGi3C,GAAYvkC,EAAK/O,GAAKszC,KAE9BtzC,EAAM3D,GAId,OAAO0S,EAAK/O,GAAKszC,IAWrBm0B,UAAW,SAAUt1C,EAAOw1E,GAExB,OAAOA,EAAUvtG,KAAKq8B,KAAKtE,GAAQ90B,KAAKk0B,GAAIl0B,KAAKk0B,IAAMn3B,KAAKq8B,KAAKtE,GAAQ,IAAK,MAWlF43E,oBAAqB,SAAU7uD,EAAGvnB,GAE9B,IAAIC,EAAIsnB,EAAE5+C,OAAS,EACfozB,EAAIkE,EAAID,EACRt3B,EAAIgB,KAAKkvB,MAAMmD,GAEnB,OAAIiE,EAAI,EAEGv5B,KAAKq4B,OAAOyoB,EAAE,GAAIA,EAAE,GAAIxrB,GAG3B,EAAJiE,EAEOv5B,KAAKq4B,OAAOyoB,EAAEtnB,GAAIsnB,EAAEtnB,EAAI,GAAIA,EAAIlE,GAGpCt1B,KAAKq4B,OAAOyoB,EAAE7+C,GAAI6+C,EAAUtnB,EAARv3B,EAAI,EAAQu3B,EAAIv3B,EAAI,GAAIqzB,EAAIrzB,IAW3D2tG,oBAAqB,SAAU9uD,EAAGvnB,GAK9B,IAHA,IAAI72B,EAAI,EACJ+2B,EAAIqnB,EAAE5+C,OAAS,EAEVD,EAAI,EAAGA,GAAKw3B,EAAGx3B,IAEpBS,GAAKO,KAAKkrG,IAAI,EAAI50E,EAAGE,EAAIx3B,GAAKgB,KAAKkrG,IAAI50E,EAAGt3B,GAAK6+C,EAAE7+C,GAAKjC,KAAK6vG,UAAUp2E,EAAGx3B,GAG5E,OAAOS,GAWXotG,wBAAyB,SAAUhvD,EAAGvnB,GAElC,IAAIC,EAAIsnB,EAAE5+C,OAAS,EACfozB,EAAIkE,EAAID,EACRt3B,EAAIgB,KAAKkvB,MAAMmD,GAEnB,OAAIwrB,EAAE,KAAOA,EAAEtnB,IAEPD,EAAI,IAEJt3B,EAAIgB,KAAKkvB,MAAMmD,EAAIkE,GAAK,EAAID,KAGzBv5B,KAAK+vG,WAAWjvD,GAAG7+C,EAAI,EAAIu3B,GAAKA,GAAIsnB,EAAE7+C,GAAI6+C,GAAG7+C,EAAI,GAAKu3B,GAAIsnB,GAAG7+C,EAAI,GAAKu3B,GAAIlE,EAAIrzB,IAIjFs3B,EAAI,EAEGunB,EAAE,IAAM9gD,KAAK+vG,WAAWjvD,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IAAKxrB,GAAKwrB,EAAE,IAG3D,EAAJvnB,EAEOunB,EAAEtnB,IAAMx5B,KAAK+vG,WAAWjvD,EAAEtnB,GAAIsnB,EAAEtnB,GAAIsnB,EAAEtnB,EAAI,GAAIsnB,EAAEtnB,EAAI,GAAIlE,EAAIkE,GAAKsnB,EAAEtnB,IAGvEx5B,KAAK+vG,WAAWjvD,EAAE7+C,EAAIA,EAAI,EAAI,GAAI6+C,EAAE7+C,GAAI6+C,EAAEtnB,EAAIv3B,EAAI,EAAIu3B,EAAIv3B,EAAI,GAAI6+C,EAAEtnB,EAAIv3B,EAAI,EAAIu3B,EAAIv3B,EAAI,GAAIqzB,EAAIrzB,IAa/Go2B,OAAQ,SAAUsB,EAAIC,EAAI1G,GAEtB,OAAQ0G,EAAKD,GAAMzG,EAAIyG,GAU3Bk2E,UAAW,SAAUp2E,EAAGx3B,GAEpB,OAAOjC,KAAKgwG,UAAUv2E,GAAKz5B,KAAKgwG,UAAU/tG,GAAKjC,KAAKgwG,UAAUv2E,EAAIx3B,IAQtE+tG,UAAW,SAAU/oG,GAEjB,GAAc,IAAVA,EAEA,OAAO,EAKX,IAFA,IAAIgpG,EAAMhpG,IAEFA,GAEJgpG,GAAOhpG,EAGX,OAAOgpG,GAeXF,WAAY,SAAUp2E,EAAIC,EAAIwI,EAAI8tE,EAAIh9E,GAElC,IAAIysE,EAAiB,IAAXv9D,EAAKzI,GACXimE,EAAiB,IAAXsQ,EAAKt2E,GACXi2D,EAAK38D,EAAIA,EAGb,OAAQ,EAAI0G,EAAK,EAAIwI,EAAKu9D,EAAKC,IAFtB1sE,EAAI28D,KAE+B,EAAIj2D,EAAK,EAAIwI,EAAK,EAAIu9D,EAAKC,GAAM/P,EAAK8P,EAAKzsE,EAAI0G,GAW/FinE,WAAY,SAAUp+F,EAAGC,GAErB,OAAOO,KAAK81B,IAAIt2B,EAAIC,IAUxBytG,kBAAmB,SAAUlpG,GAGzB,OAAgB,EAARA,EAAahE,KAAK4C,KAAKoB,GAAShE,KAAKkvB,MAAMlrB,IAgBvDmpG,gBAAiB,SAAUluG,EAAQmuG,EAAcC,EAAcC,QAEtCnqG,IAAjBiqG,IAA8BA,EAAe,QAC5BjqG,IAAjBkqG,IAA8BA,EAAe,QAC/BlqG,IAAdmqG,IAA2BA,EAAY,GAS3C,IAPA,IAAIntG,EAAMitG,EACNhtG,EAAMitG,EACNE,EAAMD,EAAYttG,KAAKk0B,GAAKj1B,EAE5BuuG,EAAW,GACXC,EAAW,GAEN/tG,EAAI,EAAGA,EAAIT,EAAQS,IAGxBS,IADAC,GAAOD,EAAMotG,GACAA,EAEbC,EAAS9tG,GAAKU,EACdqtG,EAAS/tG,GAAKS,EAGlB,MAAO,CAAEA,IAAKstG,EAAUrtG,IAAKotG,EAAUvuG,OAAQA,IAWnDyuG,MAAO,SAAUluG,EAAGC,GAEhB,OAAOO,KAAKS,KAAKjB,EAAIA,EAAIC,EAAIA,IAajCi1B,SAAU,SAAUxsB,EAAIC,EAAIC,EAAIC,GAE5B,IAAI4C,EAAK/C,EAAKE,EACV+C,EAAKhD,EAAKE,EAEd,OAAOrI,KAAKS,KAAKwK,EAAKA,EAAKE,EAAKA,IAcpCwiG,WAAY,SAAUzlG,EAAIC,EAAIC,EAAIC,GAE9B,IAAI4C,EAAK/C,EAAKE,EACV+C,EAAKhD,EAAKE,EAEd,OAAO4C,EAAKA,EAAKE,EAAKA,GAc1ByiG,YAAa,SAAU1lG,EAAIC,EAAIC,EAAIC,EAAI6iG,GAInC,YAFY/nG,IAAR+nG,IAAqBA,EAAM,GAExBlrG,KAAKS,KAAKT,KAAKkrG,IAAI9iG,EAAKF,EAAIgjG,GAAOlrG,KAAKkrG,IAAI7iG,EAAKF,EAAI+iG,KAYhEtvE,MAAO,SAAUiiB,EAAGplB,EAAK91B,GAErB,OAAIk7C,EAAIplB,EAEGA,EAEF91B,EAAMk7C,EAEJl7C,EAIAk7C,GAafgwD,YAAa,SAAUxtG,EAAGb,GAEtB,OAAOa,EAAIb,EAAIA,EAAIa,GAavBytG,OAAQ,SAAUtuG,EAAGC,EAAGmgC,GAEpB,OAAQ5/B,KAAK81B,IAAIt2B,EAAIC,IAAMmgC,GAc/BmuE,UAAW,SAAU1tG,EAAGg5B,EAAIC,EAAIC,EAAIC,GAEhC,OAAOD,GAAMl5B,EAAIg5B,IAAOG,EAAKD,IAAOD,EAAKD,IAY7C20E,WAAY,SAAU3tG,EAAGo4B,EAAK91B,GAM1B,OAHAtC,EAAIL,KAAK2C,IAAI,EAAG3C,KAAKy4B,IAAI,GAAIp4B,EAAIo4B,IAAQ91B,EAAM81B,MAGpCp4B,GAAK,EAAI,EAAIA,IAY5B4tG,aAAc,SAAU5tG,EAAGo4B,EAAK91B,GAI5B,OAFAtC,EAAIL,KAAK2C,IAAI,EAAG3C,KAAKy4B,IAAI,GAAIp4B,EAAIo4B,IAAQ91B,EAAM81B,MAEpCp4B,EAAIA,GAAKA,GAAS,EAAJA,EAAQ,IAAM,KAY3C6tG,KAAM,SAAU7tG,GAEZ,OAAQA,EAAI,GAAM,EAAU,EAAJA,EAAS,EAAI,GAYzC8tG,QAAS,SAAU3uG,EAAGC,EAAGwY,GAIrB,YAFa9U,IAAT8U,IAAsBA,EAAO,GAEzBxY,EAAJD,GAAgBC,EAAPwY,EAEF,EAEFzY,EAAIyY,GAAezY,EAAPyY,EAEV,GAICzY,EAAIyY,GAAQxY,IA0BhC3B,EAAOo+C,oBAAsB,SAAUkyD,QAErBjrG,IAAVirG,IAAuBA,EAAQ,IAMnCrxG,KAAK2C,EAAI,EAMT3C,KAAKsxG,GAAK,EAMVtxG,KAAKwqG,GAAK,EAMVxqG,KAAKyqG,GAAK,EAEW,iBAAV4G,EAEPrxG,KAAK+oC,MAAMsoE,GAIXrxG,KAAKuxG,IAAIF,IAIjBtwG,EAAOo+C,oBAAoBt9C,UAAY,CASnCimC,IAAK,WAED,IAAI5U,EAAI,QAAUlzB,KAAKsxG,GAAc,uBAATtxG,KAAK2C,EAOjC,OALA3C,KAAK2C,EAAQ,EAAJuwB,EACTlzB,KAAKsxG,GAAKtxG,KAAKwqG,GACfxqG,KAAKwqG,GAAKxqG,KAAKyqG,GACfzqG,KAAKyqG,GAAKv3E,EAAIlzB,KAAK2C,EAEZ3C,KAAKyqG,IAWhB8G,IAAK,SAAUF,GAQX,GALArxG,KAAKsxG,GAAKtxG,KAAKs0C,KAAK,KACpBt0C,KAAKwqG,GAAKxqG,KAAKs0C,KAAKt0C,KAAKsxG,IACzBtxG,KAAKyqG,GAAKzqG,KAAKs0C,KAAKt0C,KAAKwqG,IACzBxqG,KAAK2C,EAAI,EAEJ0uG,EAML,IAAK,IAAIpvG,EAAI,EAAGA,EAAIovG,EAAMnvG,QAAuB,MAAZmvG,EAAMpvG,GAAaA,IACxD,CACI,IAAIq9C,EAAO+xD,EAAMpvG,GAEjBjC,KAAKsxG,IAAMtxG,KAAKs0C,KAAKgL,GACrBt/C,KAAKsxG,OAAStxG,KAAKsxG,GAAK,GACxBtxG,KAAKwqG,IAAMxqG,KAAKs0C,KAAKgL,GACrBt/C,KAAKwqG,OAASxqG,KAAKwqG,GAAK,GACxBxqG,KAAKyqG,IAAMzqG,KAAKs0C,KAAKgL,GACrBt/C,KAAKyqG,OAASzqG,KAAKyqG,GAAK,KAYhCn2D,KAAM,SAAU3/B,GAEZ,IAAI8Q,EAAGxjB,EAAGw3B,EAIV,IAHAA,EAAI,WACJ9kB,EAAOA,EAAKsW,WAEPhpB,EAAI,EAAGA,EAAI0S,EAAKzS,OAAQD,IAGzBwjB,EAAI,oBADJgU,GAAK9kB,EAAKsyD,WAAWhlE,IAGrBwjB,GADAgU,EAAIhU,IAAM,EAGVgU,GADAhU,GAAKgU,KACK,EAEVA,GAAS,YADThU,GAAKgU,GAIT,OAAmB,wBAAXA,IAAM,IASlB+3E,QAAS,WAEL,OAA8B,WAAvBxxG,KAAK8nC,IAAI7iC,MAAMjF,OAS1B+nC,KAAM,WAEF,OAAO/nC,KAAK8nC,IAAI7iC,MAAMjF,MAAgD,uBAAhB,QAAvBA,KAAK8nC,IAAI7iC,MAAMjF,MAAmB,IASrEyxG,KAAM,WAEF,OAAOzxG,KAAKwxG,UAAYxxG,KAAK+nC,QAWjC2pE,eAAgB,SAAUh2E,EAAK91B,GAE3B,OAAO3C,KAAKkvB,MAAMnyB,KAAK2xG,YAAY,EAAG/rG,EAAM81B,EAAM,GAAKA,IAY3D4hB,QAAS,SAAU5hB,EAAK91B,GAEpB,OAAO5F,KAAK0xG,eAAeh2E,EAAK91B,IAWpC+rG,YAAa,SAAUj2E,EAAK91B,GAExB,OAAO5F,KAAK+nC,QAAUniC,EAAM81B,GAAOA,GASvCk2E,OAAQ,WAEJ,OAAO,EAAI,EAAI5xG,KAAK+nC,QASxBuwC,KAAM,WAEF,IAAI71E,EAAI,GACJC,EAAI,GAER,IAAKA,EAAID,EAAI,GAAIA,IAAM,GAAIC,IAAMD,EAAI,EAAQ,EAAJA,EAAQ,GAAS,GAAJA,EAAS,EAAIzC,KAAK+nC,QAAc,GAAJtlC,EAAS,GAAK,GAAK,GAAGwoB,SAAS,IAAM,KAGvH,OAAOvoB,GAUX45C,KAAM,SAAUu1D,GAEZ,OAAOA,EAAI7xG,KAAK0xG,eAAe,EAAGG,EAAI3vG,OAAS,KASnDivG,KAAM,WAEF,OAAOnxG,KAAKs8C,KAAK,EAAG,EAAG,KAU3Bw1D,aAAc,SAAUD,GAEpB,OAAOA,KAAO5uG,KAAKkrG,IAAInuG,KAAK+nC,OAAQ,IAAM8pE,EAAI3vG,OAAS,GAAK,MAWhE8hE,UAAW,SAAUtoC,EAAK91B,GAEtB,OAAO5F,KAAK2xG,YAAYj2E,GAAO,UAAc91B,GAAO,YASxDmyB,MAAO,WAEH,OAAO/3B,KAAK0xG,gBAAgB,IAAK,MAoBrC3oE,MAAO,SAAUA,GAYb,MAVqB,iBAAVA,GAAsBA,EAAMkkC,MAAM,WAEzClkC,EAAQA,EAAM7U,MAAM,KAEpBl0B,KAAK2C,EAAIo+B,WAAWgI,EAAM,IAC1B/oC,KAAKsxG,GAAKvwE,WAAWgI,EAAM,IAC3B/oC,KAAKwqG,GAAKzpE,WAAWgI,EAAM,IAC3B/oC,KAAKyqG,GAAK1pE,WAAWgI,EAAM,KAGxB,CAAE,OAAQ/oC,KAAK2C,EAAG3C,KAAKsxG,GAAItxG,KAAKwqG,GAAIxqG,KAAKyqG,IAAK56F,KAAK,OAKlE9O,EAAOo+C,oBAAoBt9C,UAAUC,YAAcf,EAAOo+C,oBAwB1Dp+C,EAAOgxG,SAAW,SAAUzuG,EAAGC,EAAGmB,EAAOC,EAAQqtG,EAAYC,EAAWlyF,GAMpE/f,KAAKgyG,WAAa,GAMlBhyG,KAAKiyG,UAAY,EAKjBjyG,KAAK+f,MAAQ,EAKb/f,KAAKsE,OAAS,GAKdtE,KAAKkyG,QAAU,GAKflyG,KAAKmyG,MAAQ,GAMbnyG,KAAKoyG,OAAS,GAEdpyG,KAAKwoC,MAAMllC,EAAGC,EAAGmB,EAAOC,EAAQqtG,EAAYC,EAAWlyF,IAG3Dhf,EAAOgxG,SAASlwG,UAAY,CAcxB2mC,MAAO,SAAUllC,EAAGC,EAAGmB,EAAOC,EAAQqtG,EAAYC,EAAWlyF,GAEzD/f,KAAKgyG,WAAaA,GAAc,GAChChyG,KAAKiyG,UAAYA,GAAa,EAC9BjyG,KAAK+f,MAAQA,GAAS,EAEtB/f,KAAKsE,OAAS,CACVhB,EAAGL,KAAK20B,MAAMt0B,GACdC,EAAGN,KAAK20B,MAAMr0B,GACdmB,MAAOA,EACPC,OAAQA,EACR0tG,SAAUpvG,KAAKkvB,MAAMztB,EAAQ,GAC7B4tG,UAAWrvG,KAAKkvB,MAAMxtB,EAAS,GAC/BmxB,MAAO7yB,KAAK20B,MAAMt0B,GAAKL,KAAKkvB,MAAMztB,EAAQ,GAC1Cg0B,OAAQz1B,KAAK20B,MAAMr0B,GAAKN,KAAKkvB,MAAMxtB,EAAS,IAGhD3E,KAAKkyG,QAAQhwG,OAAS,EACtBlC,KAAKmyG,MAAMjwG,OAAS,GASxBqwG,SAAU,SAAU91D,GAEhBA,EAAMzpB,QAAQhzB,KAAKwyG,gBAAiBxyG,MAAM,IAS9CwyG,gBAAiB,SAAUhuF,GAEnBA,EAAO6vB,MAAQ7vB,EAAOzX,QAEtB/M,KAAKyyG,OAAOjuF,EAAO6vB,OAS3BngB,MAAO,WAGHl0B,KAAKmyG,MAAM,GAAK,IAAIpxG,EAAOgxG,SAAS/xG,KAAKsE,OAAOwxB,MAAO91B,KAAKsE,OAAOf,EAAGvD,KAAKsE,OAAO+tG,SAAUryG,KAAKsE,OAAOguG,UAAWtyG,KAAKgyG,WAAYhyG,KAAKiyG,UAAYjyG,KAAK+f,MAAQ,GAGlK/f,KAAKmyG,MAAM,GAAK,IAAIpxG,EAAOgxG,SAAS/xG,KAAKsE,OAAOhB,EAAGtD,KAAKsE,OAAOf,EAAGvD,KAAKsE,OAAO+tG,SAAUryG,KAAKsE,OAAOguG,UAAWtyG,KAAKgyG,WAAYhyG,KAAKiyG,UAAYjyG,KAAK+f,MAAQ,GAG9J/f,KAAKmyG,MAAM,GAAK,IAAIpxG,EAAOgxG,SAAS/xG,KAAKsE,OAAOhB,EAAGtD,KAAKsE,OAAOo0B,OAAQ14B,KAAKsE,OAAO+tG,SAAUryG,KAAKsE,OAAOguG,UAAWtyG,KAAKgyG,WAAYhyG,KAAKiyG,UAAYjyG,KAAK+f,MAAQ,GAGnK/f,KAAKmyG,MAAM,GAAK,IAAIpxG,EAAOgxG,SAAS/xG,KAAKsE,OAAOwxB,MAAO91B,KAAKsE,OAAOo0B,OAAQ14B,KAAKsE,OAAO+tG,SAAUryG,KAAKsE,OAAOguG,UAAWtyG,KAAKgyG,WAAYhyG,KAAKiyG,UAAYjyG,KAAK+f,MAAQ,IAS3K0yF,OAAQ,SAAUp+D,GAEd,IACI5rC,EADAxG,EAAI,EAIR,GAAqB,MAAjBjC,KAAKmyG,MAAM,KAII,KAFf1pG,EAAQzI,KAAK+3C,SAAS1D,KAW1B,GAFAr0C,KAAKkyG,QAAQvqG,KAAK0sC,GAEdr0C,KAAKkyG,QAAQhwG,OAASlC,KAAKgyG,YAAchyG,KAAK+f,MAAQ/f,KAAKiyG,UAS3D,IANqB,MAAjBjyG,KAAKmyG,MAAM,IAEXnyG,KAAKk0B,QAIFjyB,EAAIjC,KAAKkyG,QAAQhwG,SAIL,KAFfuG,EAAQzI,KAAK+3C,SAAS/3C,KAAKkyG,QAAQjwG,KAK/BjC,KAAKmyG,MAAM1pG,GAAOgqG,OAAOzyG,KAAKkyG,QAAQvpG,OAAO1G,EAAG,GAAG,IAInDA,SA3BJjC,KAAKmyG,MAAM1pG,GAAOgqG,OAAOp+D,IAwCrC0D,SAAU,SAAU/a,GAGhB,IAAIv0B,GAAS,EA8Bb,OA5BIu0B,EAAK15B,EAAItD,KAAKsE,OAAOwxB,OAASkH,EAAKlH,MAAQ91B,KAAKsE,OAAOwxB,MAEnDkH,EAAKz5B,EAAIvD,KAAKsE,OAAOo0B,QAAUsE,EAAKtE,OAAS14B,KAAKsE,OAAOo0B,OAGzDjwB,EAAQ,EAEHu0B,EAAKz5B,EAAIvD,KAAKsE,OAAOo0B,SAG1BjwB,EAAQ,GAGPu0B,EAAK15B,EAAItD,KAAKsE,OAAOwxB,QAGtBkH,EAAKz5B,EAAIvD,KAAKsE,OAAOo0B,QAAUsE,EAAKtE,OAAS14B,KAAKsE,OAAOo0B,OAGzDjwB,EAAQ,EAEHu0B,EAAKz5B,EAAIvD,KAAKsE,OAAOo0B,SAG1BjwB,EAAQ,IAITA,GAUXiqG,SAAU,SAAUvjG,GAEhB,GAAIA,aAAkBpO,EAAOS,UAEzB,IAAImxG,EAAgB3yG,KAAKkyG,QAErBzpG,EAAQzI,KAAK+3C,SAAS5oC,OAG9B,CACI,IAAKA,EAAOklC,KAER,OAAOr0C,KAAKoyG,OAGZO,EAAgB3yG,KAAKkyG,QAErBzpG,EAAQzI,KAAK+3C,SAAS5oC,EAAOklC,MAoBrC,OAjBIr0C,KAAKmyG,MAAM,KAKPQ,GAFW,IAAXlqG,EAEgBkqG,EAAc//E,OAAO5yB,KAAKmyG,MAAM1pG,GAAOiqG,SAASvjG,KAOhEwjG,GADAA,GADAA,EAAgBA,EAAc//E,OAAO5yB,KAAKmyG,MAAM,GAAGO,SAASvjG,KAC9ByjB,OAAO5yB,KAAKmyG,MAAM,GAAGO,SAASvjG,KAC9ByjB,OAAO5yB,KAAKmyG,MAAM,GAAGO,SAASvjG,KAC9ByjB,OAAO5yB,KAAKmyG,MAAM,GAAGO,SAASvjG,KAI7DwjG,GAOX/2F,MAAO,WAEH5b,KAAKkyG,QAAQhwG,OAAS,EAItB,IAFA,IAAID,EAAIjC,KAAKmyG,MAAMjwG,OAEZD,KAEHjC,KAAKmyG,MAAMlwG,GAAG2Z,QACd5b,KAAKmyG,MAAMxpG,OAAO1G,EAAG,GAGzBjC,KAAKmyG,MAAMjwG,OAAS,IAK5BnB,EAAOgxG,SAASlwG,UAAUC,YAAcf,EAAOgxG,SAyD/ChxG,EAAO8+C,aAAe,SAAUv9C,GAK5BtC,KAAKsC,KAAOA,EAMZtC,KAAK4yG,QAAU,GAMf5yG,KAAK6yG,KAAO,GAEZ7yG,KAAK8yG,QAAU,CAEXC,OAAQhyG,EAAOiyG,OAAOD,OACtBE,OAAQlyG,EAAOiyG,OAAOC,OACtBC,OAAQnyG,EAAOiyG,OAAOE,OACtBC,OAAQpyG,EAAOiyG,OAAOG,OACtBC,OAAQryG,EAAOiyG,OAAOI,OAEtBC,OAAQtyG,EAAOiyG,OAAOK,OAAOC,KAC7BC,KAAMxyG,EAAOiyG,OAAOQ,UAAUC,IAC9BC,MAAO3yG,EAAOiyG,OAAOU,MAAMD,IAC3BE,MAAO5yG,EAAOiyG,OAAOY,QAAQH,IAC7BI,MAAO9yG,EAAOiyG,OAAOc,QAAQL,IAC7BM,KAAMhzG,EAAOiyG,OAAOgB,WAAWP,IAC/BQ,KAAMlzG,EAAOiyG,OAAOkB,YAAYT,IAChCU,KAAMpzG,EAAOiyG,OAAOoB,SAASX,IAC7BY,QAAStzG,EAAOiyG,OAAOqB,QAAQZ,IAC/Ba,KAAMvzG,EAAOiyG,OAAOsB,KAAKb,IACzBc,OAAQxzG,EAAOiyG,OAAOuB,OAAOd,IAE7Be,cAAezzG,EAAOiyG,OAAOQ,UAAUiB,GACvCC,eAAgB3zG,EAAOiyG,OAAOU,MAAMe,GACpCE,eAAgB5zG,EAAOiyG,OAAOY,QAAQa,GACtCG,eAAgB7zG,EAAOiyG,OAAOc,QAAQW,GACtCI,cAAe9zG,EAAOiyG,OAAOgB,WAAWS,GACxCK,cAAe/zG,EAAOiyG,OAAOkB,YAAYO,GACzCM,cAAeh0G,EAAOiyG,OAAOoB,SAASK,GACtCO,iBAAkBj0G,EAAOiyG,OAAOqB,QAAQI,GACxCQ,cAAel0G,EAAOiyG,OAAOsB,KAAKG,GAClCS,gBAAiBn0G,EAAOiyG,OAAOuB,OAAOE,GAEtCU,eAAgBp0G,EAAOiyG,OAAOQ,UAAUC,IACxC2B,gBAAiBr0G,EAAOiyG,OAAOU,MAAMD,IACrC4B,gBAAiBt0G,EAAOiyG,OAAOY,QAAQH,IACvC6B,gBAAiBv0G,EAAOiyG,OAAOc,QAAQL,IACvC8B,eAAgBx0G,EAAOiyG,OAAOgB,WAAWP,IACzC+B,eAAgBz0G,EAAOiyG,OAAOkB,YAAYT,IAC1CgC,eAAgB10G,EAAOiyG,OAAOoB,SAASX,IACvCiC,kBAAmB30G,EAAOiyG,OAAOqB,QAAQZ,IACzCkC,eAAgB50G,EAAOiyG,OAAOsB,KAAKb,IACnCmC,iBAAkB70G,EAAOiyG,OAAOuB,OAAOd,IAEvCoC,iBAAkB90G,EAAOiyG,OAAOQ,UAAUsC,MAC1CC,kBAAmBh1G,EAAOiyG,OAAOU,MAAMoC,MACvCE,kBAAmBj1G,EAAOiyG,OAAOY,QAAQkC,MACzCG,kBAAmBl1G,EAAOiyG,OAAOc,QAAQgC,MACzCI,iBAAkBn1G,EAAOiyG,OAAOgB,WAAW8B,MAC3CK,iBAAkBp1G,EAAOiyG,OAAOkB,YAAY4B,MAC5CM,iBAAkBr1G,EAAOiyG,OAAOoB,SAAS0B,MACzCO,oBAAqBt1G,EAAOiyG,OAAOqB,QAAQyB,MAC3CQ,iBAAkBv1G,EAAOiyG,OAAOsB,KAAKwB,MACrCS,mBAAoBx1G,EAAOiyG,OAAOuB,OAAOuB,OAI7C91G,KAAKsC,KAAK6oC,QAAQ9P,IAAIr7B,KAAKw2G,UAAWx2G,MACtCA,KAAKsC,KAAK+oC,SAAShQ,IAAIr7B,KAAKy2G,WAAYz2G,OAG5Ce,EAAO8+C,aAAah+C,UAAY,CAO5Bw6C,OAAQ,WAEJ,OAAOr8C,KAAK4yG,SAOhBvmE,UAAW,WAEP,IAAK,IAAIpqC,EAAI,EAAGA,EAAIjC,KAAK4yG,QAAQ1wG,OAAQD,IAErCjC,KAAK4yG,QAAQ3wG,GAAGy0G,eAAgB,EAGpC12G,KAAK6yG,KAAO,IAUhB1iC,WAAY,SAAU/7C,EAAKpyB,GAOvB,QALiBoE,IAAbpE,IAA0BA,GAAW,GAKrCsF,MAAMC,QAAQ6sB,GAEd,IAAKnyB,EAAI,EAAGkxB,EAAMiB,EAAIlyB,OAAQD,EAAIkxB,EAAKlxB,IAEnCjC,KAAKmwE,WAAW/7C,EAAInyB,SAGvB,GAAImyB,EAAIrgB,OAAShT,EAAOguB,OAAS/sB,EAElC,IAAK,IAAIC,EAAI,EAAGkxB,EAAMiB,EAAIpyB,SAASE,OAAQD,EAAIkxB,EAAKlxB,IAEhDjC,KAAKmwE,WAAW/7C,EAAIpyB,SAASC,QAIrC,CACI,IAAKA,EAAI,EAAGkxB,EAAMnzB,KAAK4yG,QAAQ1wG,OAAQD,EAAIkxB,EAAKlxB,IAExCmyB,IAAQp0B,KAAK4yG,QAAQ3wG,GAAG4F,QAExB7H,KAAKqd,OAAOrd,KAAK4yG,QAAQ3wG,IAIjC,IAAKA,EAAI,EAAGkxB,EAAMnzB,KAAK6yG,KAAK3wG,OAAQD,EAAIkxB,EAAKlxB,IAErCmyB,IAAQp0B,KAAK6yG,KAAK5wG,GAAG4F,QAErB7H,KAAKqd,OAAOrd,KAAK6yG,KAAK5wG,MAatCo5B,IAAK,SAAU66C,IAEXA,EAAMygC,SAAW32G,MACZ6yG,KAAKlrG,KAAKuuE,IAUnB7tE,OAAQ,SAAUszC,GAEd,OAAO,IAAI56C,EAAO63E,MAAMj9B,EAAQ37C,KAAKsC,KAAMtC,OAS/Cqd,OAAQ,SAAU64D,GAEd,IAAIj0E,EAAIjC,KAAK4yG,QAAQ1pG,QAAQgtE,IAElB,IAAPj0E,EAEAjC,KAAK4yG,QAAQ3wG,GAAGy0G,eAAgB,GAMrB,KAFXz0G,EAAIjC,KAAK6yG,KAAK3pG,QAAQgtE,MAIlBl2E,KAAK6yG,KAAK5wG,GAAGy0G,eAAgB,IAWzCnvE,OAAQ,WAEJ,IAAIqvE,EAAY52G,KAAK6yG,KAAK3wG,OACtB20G,EAAY72G,KAAK4yG,QAAQ1wG,OAE7B,GAAkB,IAAd20G,GAAiC,IAAdD,EAEnB,OAAO,EAKX,IAFA,IAAI30G,EAAI,EAEDA,EAAI40G,GAEH72G,KAAK4yG,QAAQ3wG,GAAGslC,OAAOvnC,KAAKsC,KAAKqlC,KAAKmvE,YAEtC70G,KAIAjC,KAAK4yG,QAAQjqG,OAAO1G,EAAG,GAEvB40G,KAWR,OANgB,EAAZD,IAEA52G,KAAK4yG,QAAU5yG,KAAK4yG,QAAQhgF,OAAO5yB,KAAK6yG,MACxC7yG,KAAK6yG,KAAK3wG,OAAS,IAGhB,GAaX60G,WAAY,SAAUp7D,EAAQq7D,GAI1B,OAFKA,IAAkBA,GAAiB,GAEjCh3G,KAAK4yG,QAAQqE,KAAK,SAAU/gC,GAE/B,OAAQA,EAAMruE,SAAW8zC,KAAaq7D,GAAmB9gC,EAAMx4B,YAAcw4B,EAAMwgC,kBAU3FF,UAAW,WAEP,IAAK,IAAIv0G,EAAIjC,KAAK4yG,QAAQ1wG,OAAS,EAAQ,GAALD,EAAQA,IAE1CjC,KAAK4yG,QAAQ3wG,GAAGi1G,UAUxBT,WAAY,WAER,IAAK,IAAIx0G,EAAIjC,KAAK4yG,QAAQ1wG,OAAS,EAAQ,GAALD,EAAQA,IAE1CjC,KAAK4yG,QAAQ3wG,GAAGk1G,WASxBC,SAAU,WAEN,IAAK,IAAIn1G,EAAIjC,KAAK4yG,QAAQ1wG,OAAS,EAAQ,GAALD,EAAQA,IAE1CjC,KAAK4yG,QAAQ3wG,GAAGmpC,SASxBisE,UAAW,WAEP,IAAK,IAAIp1G,EAAIjC,KAAK4yG,QAAQ1wG,OAAS,EAAQ,GAALD,EAAQA,IAE1CjC,KAAK4yG,QAAQ3wG,GAAGqpC,QAAO,IAS/BvpC,QAAS,WAEL/B,KAAKsC,KAAK6oC,QAAQ9tB,OAAOrd,KAAKw2G,UAAWx2G,MACzCA,KAAKsC,KAAK+oC,SAAShuB,OAAOrd,KAAKy2G,WAAYz2G,MAE3CA,KAAKsC,KAAO,KACZtC,KAAK6yG,KAAO,KACZ7yG,KAAK4yG,QAAU,OAKvB7xG,EAAO8+C,aAAah+C,UAAUC,YAAcf,EAAO8+C,aAqBnD9+C,EAAO63E,MAAQ,SAAU/wE,EAAQvF,EAAMg1G,GAKnCt3G,KAAKsC,KAAOA,EAKZtC,KAAK6H,OAASA,EAKd7H,KAAKs3G,QAAUA,EAKft3G,KAAKu3G,SAAW,GAShBv3G,KAAKwf,SAAU,EASfxf,KAAKw3G,UAAY,EAKjBx3G,KAAKy3G,cAAgB,EAOrBz3G,KAAK02G,eAAgB,EAOrB12G,KAAK03G,QAAU,IAAI32G,EAAO0jC,OAQ1BzkC,KAAK23G,OAAS,IAAI52G,EAAO0jC,OAOzBzkC,KAAK43G,SAAW,IAAI72G,EAAO0jC,OAQ3BzkC,KAAK63G,gBAAkB,IAAI92G,EAAO0jC,OAOlCzkC,KAAK83G,WAAa,IAAI/2G,EAAO0jC,OAM7BzkC,KAAK09C,WAAY,EAOjB19C,KAAKoqC,QAAU,EAKfpqC,KAAKu4F,WAAa,GAKlBv4F,KAAK+3G,aAAe,KAMpB/3G,KAAKg4G,UAAW,EAOhBh4G,KAAKi4G,kBAAoB,KAOzBj4G,KAAKk4G,yBAA2B,KAOhCl4G,KAAKm4G,YAAc,EAMnBn4G,KAAKq+C,aAAc,EAMnBr+C,KAAKo4G,aAAc,GAwBvBr3G,EAAO63E,MAAM1kC,YAAc,SAAUgiC,GAEjCn1E,EAAOsgB,MAAM6yB,YAAYgiC,EAAMruE,SAGnC9G,EAAO63E,MAAM/2E,UAAY,CAkBrB2xB,GAAI,SAAU+kE,EAAYtzD,EAAUozE,EAAM9sE,EAAWouB,EAAOvkD,EAAQkjG,GAchE,YAZiBlyG,IAAb6+B,GAA0BA,GAAY,KAAKA,EAAW,KACtDozE,MAAAA,IAAuCA,EAAOt3G,EAAOiyG,OAAOuF,cAC9CnyG,IAAdmlC,IAA2BA,GAAY,QAC7BnlC,IAAVuzD,IAAuBA,EAAQ,QACpBvzD,IAAXgP,IAAwBA,EAAS,QACxBhP,IAATkyG,IAAsBA,GAAO,GAEb,iBAATD,GAAqBr4G,KAAKs3G,QAAQxE,QAAQuF,KAEjDA,EAAOr4G,KAAKs3G,QAAQxE,QAAQuF,IAG5Br4G,KAAK09C,UAELttC,QAAQ+K,KAAK,uDAIjBnb,KAAKu3G,SAAS5vG,KAAK,IAAI5G,EAAOy3G,UAAUx4G,MAAMwzB,GAAG+kE,EAAYtzD,EAAUozE,EAAM1+C,EAAOvkD,EAAQkjG,IAExF/sE,GAEAvrC,KAAKmM,SAPEnM,MA6BfmF,KAAM,SAAUozF,EAAYtzD,EAAUozE,EAAM9sE,EAAWouB,EAAOvkD,EAAQkjG,GAclE,YAZiBlyG,IAAb6+B,IAA0BA,EAAW,KACrCozE,MAAAA,IAAuCA,EAAOt3G,EAAOiyG,OAAOuF,cAC9CnyG,IAAdmlC,IAA2BA,GAAY,QAC7BnlC,IAAVuzD,IAAuBA,EAAQ,QACpBvzD,IAAXgP,IAAwBA,EAAS,QACxBhP,IAATkyG,IAAsBA,GAAO,GAEb,iBAATD,GAAqBr4G,KAAKs3G,QAAQxE,QAAQuF,KAEjDA,EAAOr4G,KAAKs3G,QAAQxE,QAAQuF,IAG5Br4G,KAAK09C,UAELttC,QAAQ+K,KAAK,yDAIjBnb,KAAKu3G,SAAS5vG,KAAK,IAAI5G,EAAOy3G,UAAUx4G,MAAMmF,KAAKozF,EAAYtzD,EAAUozE,EAAM1+C,EAAOvkD,EAAQkjG,IAE1F/sE,GAEAvrC,KAAKmM,SAPEnM,MAwBfmM,MAAO,SAAU1D,GAIb,QAFcrC,IAAVqC,IAAuBA,EAAQ,GAE/BzI,KAAK02G,cAGL,OADAtmG,QAAQ+K,KAAK,wDACNnb,KAGX,GAAkB,OAAdA,KAAKsC,MAAiC,OAAhBtC,KAAK6H,QAA4C,IAAzB7H,KAAKu3G,SAASr1G,QAAgBlC,KAAK09C,UAEjF,OAAO19C,KAIX,IAAK,IAAIiC,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAGtC,IAAK,IAAIi3C,KAAYl5C,KAAKu3G,SAASt1G,GAAGw2G,KAElCz4G,KAAKu4F,WAAWr/C,GAAYl5C,KAAK6H,OAAOqxC,IAAa,EAEhD5xC,MAAMC,QAAQvH,KAAKu4F,WAAWr/C,MAG/Bl5C,KAAKu4F,WAAWr/C,IAAa,GAKzC,IAASj3C,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAEtCjC,KAAKu3G,SAASt1G,GAAGy2G,aAgBrB,OAbA14G,KAAKs3G,QAAQj8E,IAAIr7B,MAEjBA,KAAK09C,WAAY,GAEbj1C,EAAQ,GAAKA,EAAQzI,KAAKu3G,SAASr1G,OAAS,KAE5CuG,EAAQ,GAGZzI,KAAKoqC,QAAU3hC,EAEfzI,KAAKu3G,SAASv3G,KAAKoqC,SAASj+B,QAErBnM,MAaXgM,KAAM,SAAUygB,GAsBZ,YApBiBrmB,IAAbqmB,IAA0BA,GAAW,GAEzCzsB,KAAK09C,WAAY,EAEjB19C,KAAKi4G,kBAAoB,KACzBj4G,KAAKk4G,yBAA2B,KAE5BzrF,IAEAzsB,KAAK83G,WAAWjwE,SAAS7nC,KAAK6H,OAAQ7H,MACtCA,KAAKo4G,aAAc,EAEfp4G,KAAK+3G,cAEL/3G,KAAK+3G,aAAa5rG,SAI1BnM,KAAKs3G,QAAQj6F,OAAOrd,MAEbA,MAcX24G,gBAAiB,SAAUz/D,EAAUjyC,EAAOwB,GAExC,GAA6B,IAAzBzI,KAAKu3G,SAASr1G,OAAgB,OAAOlC,KAIzC,QAFcoG,IAAVqC,IAAuBA,EAAQ,IAEpB,IAAXA,EAEA,IAAK,IAAIxG,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAEtCjC,KAAKu3G,SAASt1G,GAAGi3C,GAAYjyC,OAKjCjH,KAAKu3G,SAAS9uG,GAAOywC,GAAYjyC,EAGrC,OAAOjH,MAcX25D,MAAO,SAAU10B,EAAUx8B,GAEvB,OAAOzI,KAAK24G,gBAAgB,QAAS1zE,EAAUx8B,IAenD2M,OAAQ,SAAU8lC,EAAO09D,EAAanwG,GAOlC,YALoBrC,IAAhBwyG,IAA6BA,EAAc,GAE/C54G,KAAK24G,gBAAgB,gBAAiBz9D,EAAOzyC,GAC7CzI,KAAK24G,gBAAgB,cAAez9D,EAAOzyC,GAEpCzI,KAAK24G,gBAAgB,cAAeC,EAAanwG,IAc5DmwG,YAAa,SAAU3zE,EAAUx8B,GAE7B,OAAOzI,KAAK24G,gBAAgB,cAAe1zE,EAAUx8B,IAgBzD6vG,KAAM,SAAUx+F,EAAQ++F,EAAWpwG,GAM/B,YAJkBrC,IAAdyyG,IAA2BA,EAAY,GAE3C74G,KAAK24G,gBAAgB,OAAQ7+F,EAAQrR,GAE9BzI,KAAK24G,gBAAgB,YAAaE,EAAWpwG,IAcxDowG,UAAW,SAAU5zE,EAAUx8B,GAE3B,OAAOzI,KAAK24G,gBAAgB,YAAa1zE,EAAUx8B,IAcvDqwG,OAAQ,SAAUT,EAAM5vG,GAOpB,MALoB,iBAAT4vG,GAAqBr4G,KAAKs3G,QAAQxE,QAAQuF,KAEjDA,EAAOr4G,KAAKs3G,QAAQxE,QAAQuF,IAGzBr4G,KAAK24G,gBAAgB,iBAAkBN,EAAM5vG,IAexDswG,cAAe,SAAUA,EAAeprG,EAASlF,GAM7C,YAJgBrC,IAAZuH,IAAyBA,EAAU5M,EAAOkC,MAE9CjD,KAAK24G,gBAAgB,wBAAyBI,EAAetwG,GAEtDzI,KAAK24G,gBAAgB,uBAAwBhrG,EAASlF,IAWjEuwG,UAAW,SAAU99D,GAMjB,YAJc90C,IAAV80C,IAAuBA,EAAQ,GAEnCl7C,KAAKy3G,cAAgBv8D,EAEdl7C,MAiBXi5G,MAAO,WAIH,IAFA,IAAIh3G,EAAIuwB,UAAUtwB,OAEXD,KAEK,EAAJA,EAEAuwB,UAAUvwB,EAAI,GAAG81G,aAAevlF,UAAUvwB,GAI1CjC,KAAK+3G,aAAevlF,UAAUvwB,GAItC,OAAOjC,MAmBXytE,KAAM,SAAUxmE,GAMZ,YAJcb,IAAVa,IAAuBA,GAAQ,GAEnCjH,KAAKy3G,cAAgB,GAAW,EAAI,EAE7Bz3G,MAmBXyqC,iBAAkB,SAAUyM,EAAUxL,GAKlC,OAHA1rC,KAAKi4G,kBAAoB/gE,EACzBl3C,KAAKk4G,yBAA2BxsE,EAEzB1rC,MAQXorC,MAAO,WAEHprC,KAAKg4G,UAAW,EAEhBh4G,KAAKq+C,aAAc,EAEnBr+C,KAAKm4G,YAAcn4G,KAAKsC,KAAKqlC,KAAKmvE,YAStCI,OAAQ,WAECl3G,KAAKq+C,cAENr+C,KAAKg4G,UAAW,EAEhBh4G,KAAKm4G,YAAcn4G,KAAKsC,KAAKqlC,KAAKmvE,aAS1CxrE,OAAQ,WAEJ,GAAItrC,KAAKg4G,SACT,CACIh4G,KAAKg4G,UAAW,EAEhBh4G,KAAKq+C,aAAc,EAEnB,IAAK,IAAIp8C,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAEjCjC,KAAKu3G,SAASt1G,GAAGy7C,YAElB19C,KAAKu3G,SAASt1G,GAAGi3G,WAAcl5G,KAAKsC,KAAKqlC,KAAKmvE,WAAa92G,KAAKm4G,eAWhFhB,QAAS,WAEDn3G,KAAKq+C,aAMLr+C,KAAKsrC,UAWb/D,OAAQ,SAAUI,GAEd,GAAI3nC,KAAK02G,gBAAkB12G,KAAK6H,OAE5B,OAAO,EAGX,GAAI7H,KAAKg4G,SAEL,OAAO,EAGX,IAAImB,EAASn5G,KAAKu3G,SAASv3G,KAAKoqC,SAAS7C,OAAOI,GAEhD,GAAIwxE,IAAWp4G,EAAOy3G,UAAUY,QAE5B,OAAO,EAEN,GAAID,IAAWp4G,EAAOy3G,UAAUa,QAcjC,OAZKr5G,KAAKo4G,cAENp4G,KAAK03G,QAAQ7vE,SAAS7nC,KAAK6H,OAAQ7H,MACnCA,KAAKo4G,aAAc,GAGQ,OAA3Bp4G,KAAKi4G,mBAELj4G,KAAKi4G,kBAAkBl0G,KAAK/D,KAAKk4G,yBAA0Bl4G,KAAMA,KAAKu3G,SAASv3G,KAAKoqC,SAASnjC,MAAOjH,KAAKu3G,SAASv3G,KAAKoqC,UAIpHpqC,KAAK09C,UAEX,GAAIy7D,IAAWp4G,EAAOy3G,UAAUc,OAWjC,OATmD,IAA/Ct5G,KAAKu3G,SAASv3G,KAAKoqC,SAASqtE,cAE5Bz3G,KAAK23G,OAAO9vE,SAAS7nC,KAAK6H,OAAQ7H,MAIlCA,KAAK43G,SAAS/vE,SAAS7nC,KAAK6H,OAAQ7H,OAGjC,EAEN,GAAIm5G,IAAWp4G,EAAOy3G,UAAUe,SACrC,CACI,IAAI9sF,GAAW,EAwBf,OArBIzsB,KAAKwf,SAELxf,KAAKoqC,UAEDpqC,KAAKoqC,QAAU,IAEfpqC,KAAKoqC,QAAUpqC,KAAKu3G,SAASr1G,OAAS,EACtCuqB,GAAW,KAKfzsB,KAAKoqC,UAEDpqC,KAAKoqC,UAAYpqC,KAAKu3G,SAASr1G,SAG/BuqB,IADAzsB,KAAKoqC,QAAU,KAKnB3d,GAG4B,IAAxBzsB,KAAKy3G,eAELz3G,KAAKu3G,SAASv3G,KAAKoqC,SAASj+B,QAC5BnM,KAAK23G,OAAO9vE,SAAS7nC,KAAK6H,OAAQ7H,OAC3B,GAEmB,EAArBA,KAAKy3G,eAEVz3G,KAAKy3G,gBAELz3G,KAAKu3G,SAASv3G,KAAKoqC,SAASj+B,QAC5BnM,KAAK43G,SAAS/vE,SAAS7nC,KAAK6H,OAAQ7H,OAC7B,IAKPA,KAAK09C,WAAY,EACjB19C,KAAK83G,WAAWjwE,SAAS7nC,KAAK6H,OAAQ7H,MACtCA,KAAKo4G,aAAc,EAEfp4G,KAAK+3G,cAEL/3G,KAAK+3G,aAAa5rG,SAGf,IAMXnM,KAAK63G,gBAAgBhwE,SAAS7nC,KAAK6H,OAAQ7H,MAC3CA,KAAKu3G,SAASv3G,KAAKoqC,SAASj+B,SACrB,KAgBnBqtG,aAAc,SAAUhsC,EAAW74D,GAE/B,GAAkB,OAAd3U,KAAKsC,MAAiC,OAAhBtC,KAAK6H,OAE3B,OAAO,UAGOzB,IAAdonE,IAA2BA,EAAY,SAC9BpnE,IAATuO,IAAsBA,EAAO,IAGjC,IAAK,IAAI1S,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAGtC,IAAK,IAAIi3C,KAAYl5C,KAAKu3G,SAASt1G,GAAGw2G,KAElCz4G,KAAKu4F,WAAWr/C,GAAYl5C,KAAK6H,OAAOqxC,IAAa,EAEhD5xC,MAAMC,QAAQvH,KAAKu4F,WAAWr/C,MAG/Bl5C,KAAKu4F,WAAWr/C,IAAa,GAKzC,IAASj3C,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAEtCjC,KAAKu3G,SAASt1G,GAAGy2G,aAGrB,IAASz2G,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAEtC0S,EAAOA,EAAKie,OAAO5yB,KAAKu3G,SAASt1G,GAAGu3G,aAAahsC,IAGrD,OAAO74D,IASf9N,OAAOyF,eAAevL,EAAO63E,MAAM/2E,UAAW,gBAAiB,CAE3DkF,IAAK,WAID,IAFA,IAAIm0C,EAAQ,EAEHj5C,EAAI,EAAGA,EAAIjC,KAAKu3G,SAASr1G,OAAQD,IAEtCi5C,GAASl7C,KAAKu3G,SAASt1G,GAAGgjC,SAG9B,OAAOiW,KAKfn6C,EAAO63E,MAAM/2E,UAAUC,YAAcf,EAAO63E,MAiB5C73E,EAAOy3G,UAAY,SAAU53G,GAKzBZ,KAAKY,OAASA,EAKdZ,KAAKsC,KAAO1B,EAAO0B,KAMnBtC,KAAKy5G,OAAS,GAMdz5G,KAAK05G,YAAc,GAMnB15G,KAAKy4G,KAAO,GAMZz4G,KAAK25G,UAAY,GAMjB35G,KAAKilC,SAAW,IAMhBjlC,KAAKoxG,QAAU,EAMfpxG,KAAKiH,MAAQ,EAKbjH,KAAKy3G,cAAgB,EAKrBz3G,KAAK44G,YAAc,EAMnB54G,KAAK45G,YAAc,EAOnB55G,KAAKqgC,aAAc,EAMnBrgC,KAAKs4G,MAAO,EAKZt4G,KAAK64G,UAAY,EAMjB74G,KAAK65G,WAAY,EAMjB75G,KAAK25D,MAAQ,EAKb35D,KAAK0vF,GAAK,EAKV1vF,KAAKk5G,UAAY,KAMjBl5G,KAAK85G,eAAiB/4G,EAAOiyG,OAAOuF,QAMpCv4G,KAAK+5G,sBAAwBh5G,EAAOkC,KAAK0sG,oBAMzC3vG,KAAKg6G,qBAAuBj5G,EAAOkC,KAMnCjD,KAAK09C,WAAY,EAMjB19C,KAAKi6G,QAAS,GAOlBl5G,EAAOy3G,UAAUY,QAAU,EAM3Br4G,EAAOy3G,UAAUa,QAAU,EAM3Bt4G,EAAOy3G,UAAUc,OAAS,EAM1Bv4G,EAAOy3G,UAAUe,SAAW,EAE5Bx4G,EAAOy3G,UAAU32G,UAAY,CAezB2xB,GAAI,SAAU+kE,EAAYtzD,EAAUozE,EAAM1+C,EAAOvkD,EAAQkjG,GAWrD,OATAt4G,KAAKy4G,KAAOlgB,EACZv4F,KAAKilC,SAAWA,EAChBjlC,KAAK85G,eAAiBzB,EACtBr4G,KAAK25D,MAAQA,EACb35D,KAAK45G,YAAcxkG,EACnBpV,KAAKs4G,KAAOA,EAEZt4G,KAAKi6G,QAAS,EAEPj6G,MAgBXmF,KAAM,SAAUozF,EAAYtzD,EAAUozE,EAAM1+C,EAAOvkD,EAAQkjG,GAWvD,OATAt4G,KAAKy4G,KAAOlgB,EACZv4F,KAAKilC,SAAWA,EAChBjlC,KAAK85G,eAAiBzB,EACtBr4G,KAAK25D,MAAQA,EACb35D,KAAK45G,YAAcxkG,EACnBpV,KAAKs4G,KAAOA,EAEZt4G,KAAKi6G,QAAS,EAEPj6G,MASXmM,MAAO,WAsBH,GApBAnM,KAAKk5G,UAAYl5G,KAAKsC,KAAKqlC,KAAKmvE,WAAa92G,KAAK25D,MAE9C35D,KAAKY,OAAO4e,QAEZxf,KAAK0vF,GAAK1vF,KAAKilC,SAIfjlC,KAAK0vF,GAAK,EAGG,EAAb1vF,KAAK25D,MAEL35D,KAAK09C,WAAY,EAIjB19C,KAAK09C,WAAY,EAGjB19C,KAAKi6G,OAGL,IAAK,IAAI/gE,KAAYl5C,KAAK05G,YAEtB15G,KAAKy5G,OAAOvgE,GAAYl5C,KAAK25G,UAAUzgE,GACvCl5C,KAAKy4G,KAAKv/D,GAAYl5C,KAAK05G,YAAYxgE,GACvCl5C,KAAKY,OAAOiH,OAAOqxC,GAAYl5C,KAAKy5G,OAAOvgE,GAOnD,OAHAl5C,KAAKiH,MAAQ,EACbjH,KAAKy3G,cAAgBz3G,KAAK45G,YAEnB55G,MAUX04G,WAAY,WAER,IAAK,IAAIx/D,KAAYl5C,KAAKY,OAAO23F,WACjC,CAKI,GAHAv4F,KAAKy5G,OAAOvgE,GAAYl5C,KAAKY,OAAO23F,WAAWr/C,GAG3C5xC,MAAMC,QAAQvH,KAAKy4G,KAAKv/D,IAC5B,CACI,GAAmC,IAA/Bl5C,KAAKy4G,KAAKv/D,GAAUh3C,OAEpB,SAGiB,IAAjBlC,KAAKoxG,UAMLpxG,KAAKy4G,KAAKv/D,GAAY,CAAEl5C,KAAKy5G,OAAOvgE,IAAYtmB,OAAO5yB,KAAKy4G,KAAKv/D,UAItC,IAAxBl5C,KAAKy4G,KAAKv/D,IAEkB,iBAAxBl5C,KAAKy4G,KAAKv/D,KAGjBl5C,KAAKy4G,KAAKv/D,GAAYl5C,KAAKy5G,OAAOvgE,GAAYnY,WAAW/gC,KAAKy4G,KAAKv/D,KAGvEl5C,KAAKY,OAAO23F,WAAWr/C,GAAYl5C,KAAKy4G,KAAKv/D,IAK7Cl5C,KAAKy4G,KAAKv/D,GAAYl5C,KAAKy5G,OAAOvgE,GAGtCl5C,KAAK05G,YAAYxgE,GAAYl5C,KAAKy5G,OAAOvgE,GACzCl5C,KAAK25G,UAAUzgE,GAAYl5C,KAAKy4G,KAAKv/D,GAGzC,OAAOl5C,MAWXunC,OAAQ,SAAUI,GAEd,GAAK3nC,KAAK09C,WAcN,GAAI/V,EAAO3nC,KAAKk5G,UAEZ,OAAOn4G,EAAOy3G,UAAUa,YAfhC,CACI,KAAI1xE,GAAQ3nC,KAAKk5G,WAMb,OAAOn4G,EAAOy3G,UAAUY,QAJxBp5G,KAAK09C,WAAY,EAgBzB,IAAIw8D,EAAKl6G,KAAKsC,KAAKqlC,KAAKC,MAiBxB,IAAK,IAAIsR,KAfLl5C,KAAKY,OAAO4e,SAEZxf,KAAK0vF,IAAMwqB,EAAKl6G,KAAKY,OAAO42G,UAC5Bx3G,KAAK0vF,GAAKzsF,KAAK2C,IAAI5F,KAAK0vF,GAAI,KAI5B1vF,KAAK0vF,IAAMwqB,EAAKl6G,KAAKY,OAAO42G,UAC5Bx3G,KAAK0vF,GAAKzsF,KAAKy4B,IAAI17B,KAAK0vF,GAAI1vF,KAAKilC,WAGrCjlC,KAAKoxG,QAAUpxG,KAAK0vF,GAAK1vF,KAAKilC,SAE9BjlC,KAAKiH,MAAQjH,KAAK85G,eAAe95G,KAAKoxG,SAEjBpxG,KAAKy4G,KAC1B,CACI,IAAItsG,EAAQnM,KAAKy5G,OAAOvgE,GACpB58B,EAAMtc,KAAKy4G,KAAKv/D,GAEhB5xC,MAAMC,QAAQ+U,GAEdtc,KAAKY,OAAOiH,OAAOqxC,GAAYl5C,KAAK+5G,sBAAsBh2G,KAAK/D,KAAKg6G,qBAAsB19F,EAAKtc,KAAKiH,OAIpGjH,KAAKY,OAAOiH,OAAOqxC,GAAY/sC,GAAUmQ,EAAMnQ,GAASnM,KAAKiH,MAIrE,OAAMjH,KAAKY,OAAO4e,SAA4B,IAAjBxf,KAAKoxG,SAAmBpxG,KAAKY,OAAO4e,SAA4B,IAAjBxf,KAAKoxG,QAEtEpxG,KAAKoV,SAGTrU,EAAOy3G,UAAUa,SAY5BG,aAAc,SAAUhsC,GAEhBxtE,KAAKY,OAAO4e,QAEZxf,KAAK0vF,GAAK1vF,KAAKilC,SAIfjlC,KAAK0vF,GAAK,EAGd,IAAI/6E,EAAO,GACP8X,GAAW,EACX0tF,EAAO,EAAI3sC,EAAa,IAE5B,EACA,CACQxtE,KAAKY,OAAO4e,SAEZxf,KAAK0vF,IAAMyqB,EACXn6G,KAAK0vF,GAAKzsF,KAAK2C,IAAI5F,KAAK0vF,GAAI,KAI5B1vF,KAAK0vF,IAAMyqB,EACXn6G,KAAK0vF,GAAKzsF,KAAKy4B,IAAI17B,KAAK0vF,GAAI1vF,KAAKilC,WAGrCjlC,KAAKoxG,QAAUpxG,KAAK0vF,GAAK1vF,KAAKilC,SAE9BjlC,KAAKiH,MAAQjH,KAAK85G,eAAe95G,KAAKoxG,SAEtC,IAAIgJ,EAAO,GAEX,IAAK,IAAIlhE,KAAYl5C,KAAKy4G,KAC1B,CACI,IAAItsG,EAAQnM,KAAKy5G,OAAOvgE,GACpB58B,EAAMtc,KAAKy4G,KAAKv/D,GAEhB5xC,MAAMC,QAAQ+U,GAEd89F,EAAKlhE,GAAYl5C,KAAK+5G,sBAAsBh2G,KAAK/D,KAAKg6G,qBAAsB19F,EAAKtc,KAAKiH,OAItFmzG,EAAKlhE,GAAY/sC,GAAUmQ,EAAMnQ,GAASnM,KAAKiH,MAIvD0N,EAAKhN,KAAKyyG,KAEJp6G,KAAKY,OAAO4e,SAA4B,IAAjBxf,KAAKoxG,SAAmBpxG,KAAKY,OAAO4e,SAA4B,IAAjBxf,KAAKoxG,WAE7E3kF,GAAW,UAETA,GAEV,GAAIzsB,KAAKs4G,KACT,CACI,IAAI+B,EAAW1lG,EAAKkZ,QACpBwsF,EAAS76F,UACT7K,EAAOA,EAAKie,OAAOynF,GAGvB,OAAO1lG,GAUXS,OAAQ,WAGJ,GAAIpV,KAAKs4G,KACT,CAEI,GAAIt4G,KAAK65G,WAAoC,IAAvB75G,KAAKy3G,cAC3B,CAEI,IAAK,IAAIv+D,KAAYl5C,KAAK05G,YAEtB15G,KAAKy5G,OAAOvgE,GAAYl5C,KAAK05G,YAAYxgE,GACzCl5C,KAAKy4G,KAAKv/D,GAAYl5C,KAAK25G,UAAUzgE,GAKzC,OAFAl5C,KAAK65G,WAAY,EAEV94G,EAAOy3G,UAAUe,SAG5Bv5G,KAAK65G,WAAa75G,KAAK65G,eAG3B,GAA2B,IAAvB75G,KAAKy3G,cAEL,OAAO12G,EAAOy3G,UAAUe,SAG5B,GAAIv5G,KAAK65G,UAGL,IAAK,IAAI3gE,KAAYl5C,KAAK05G,YAEtB15G,KAAKy5G,OAAOvgE,GAAYl5C,KAAK25G,UAAUzgE,GACvCl5C,KAAKy4G,KAAKv/D,GAAYl5C,KAAK05G,YAAYxgE,OAI/C,CAEI,IAAK,IAAIA,KAAYl5C,KAAK05G,YAEtB15G,KAAKy5G,OAAOvgE,GAAYl5C,KAAK05G,YAAYxgE,GACzCl5C,KAAKy4G,KAAKv/D,GAAYl5C,KAAK25G,UAAUzgE,GAOhB,EAArBl5C,KAAKy3G,eAELz3G,KAAKy3G,gBAwBb,OApBAz3G,KAAKk5G,UAAYl5G,KAAKsC,KAAKqlC,KAAKmvE,WAE5B92G,KAAKs4G,MAAQt4G,KAAK65G,UAElB75G,KAAKk5G,WAAal5G,KAAK64G,UAEjB74G,KAAK65G,YAEX75G,KAAKk5G,WAAal5G,KAAK44G,aAGvB54G,KAAKY,OAAO4e,QAEZxf,KAAK0vF,GAAK1vF,KAAKilC,SAIfjlC,KAAK0vF,GAAK,EAGP3uF,EAAOy3G,UAAUc,SAKhCv4G,EAAOy3G,UAAU32G,UAAUC,YAAcf,EAAOy3G,UAahDz3G,EAAOiyG,OAAS,CAOZK,OAAQ,CASJC,KAAM,SAAU/5E,GAEZ,OAAOA,IAUfi6E,UAAW,CASPiB,GAAI,SAAUl7E,GAEV,OAAOA,EAAIA,GAUfk6E,IAAK,SAAUl6E,GAEX,OAAOA,GAAK,EAAIA,IAUpBu8E,MAAO,SAAUv8E,GAEb,OAAKA,GAAK,GAAK,EAAY,GAAMA,EAAIA,GAC5B,MAASA,GAAKA,EAAI,GAAK,KAUxCm6E,MAAO,CASHe,GAAI,SAAUl7E,GAEV,OAAOA,EAAIA,EAAIA,GAUnBk6E,IAAK,SAAUl6E,GAEX,QAASA,EAAIA,EAAIA,EAAI,GAUzBu8E,MAAO,SAAUv8E,GAEb,OAAKA,GAAK,GAAK,EAAY,GAAMA,EAAIA,EAAIA,EAClC,KAAQA,GAAK,GAAKA,EAAIA,EAAI,KAUzCq6E,QAAS,CASLa,GAAI,SAAUl7E,GAEV,OAAOA,EAAIA,EAAIA,EAAIA,GAUvBk6E,IAAK,SAAUl6E,GAEX,OAAO,KAAOA,EAAIA,EAAIA,EAAIA,GAU9Bu8E,MAAO,SAAUv8E,GAEb,OAAKA,GAAK,GAAK,EAAY,GAAMA,EAAIA,EAAIA,EAAIA,GACpC,KAAQA,GAAK,GAAKA,EAAIA,EAAIA,EAAI,KAU/Cu6E,QAAS,CASLW,GAAI,SAAUl7E,GAEV,OAAOA,EAAIA,EAAIA,EAAIA,EAAIA,GAU3Bk6E,IAAK,SAAUl6E,GAEX,QAASA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,GAUjCu8E,MAAO,SAAUv8E,GAEb,OAAKA,GAAK,GAAK,EAAY,GAAMA,EAAIA,EAAIA,EAAIA,EAAIA,EAC1C,KAAQA,GAAK,GAAKA,EAAIA,EAAIA,EAAIA,EAAI,KAUjDy6E,WAAY,CASRS,GAAI,SAAUl7E,GAEV,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,EACf,EAAIt2B,KAAKI,IAAIk2B,EAAIt2B,KAAKk0B,GAAK,IAUtCs8E,IAAK,SAAUl6E,GAEX,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,EACft2B,KAAKG,IAAIm2B,EAAIt2B,KAAKk0B,GAAK,IAUlC2+E,MAAO,SAAUv8E,GAEb,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,EACf,IAAO,EAAIt2B,KAAKI,IAAIJ,KAAKk0B,GAAKoC,MAU7C26E,YAAa,CASTO,GAAI,SAAUl7E,GAEV,OAAa,IAANA,EAAU,EAAIt2B,KAAKkrG,IAAI,KAAM50E,EAAI,IAU5Ck6E,IAAK,SAAUl6E,GAEX,OAAa,IAANA,EAAU,EAAI,EAAIt2B,KAAKkrG,IAAI,GAAK,GAAK50E,IAUhDu8E,MAAO,SAAUv8E,GAEb,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,GACjBA,GAAK,GAAK,EAAY,GAAMt2B,KAAKkrG,IAAI,KAAM50E,EAAI,GAC7C,IAAuC,EAA9Bt2B,KAAKkrG,IAAI,GAAK,IAAM50E,EAAI,OAUhD66E,SAAU,CASNK,GAAI,SAAUl7E,GAEV,OAAO,EAAIt2B,KAAKS,KAAK,EAAI61B,EAAIA,IAUjCk6E,IAAK,SAAUl6E,GAEX,OAAOt2B,KAAKS,KAAK,KAAO61B,EAAIA,IAUhCu8E,MAAO,SAAUv8E,GAEb,OAAKA,GAAK,GAAK,GAAc,IAAOt2B,KAAKS,KAAK,EAAI61B,EAAIA,GAAK,GACpD,IAAOt2B,KAAKS,KAAK,GAAK61B,GAAK,GAAKA,GAAK,KAUpD86E,QAAS,CASLI,GAAI,SAAUl7E,GAKV,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,GAClBh3B,IAJI,EAKMU,KAAKkrG,IAAI,EAAG,IAAM50E,GAAK,IAAMt2B,KAAKG,KAAKm2B,EADjDh3B,KAC2D,EAAIU,KAAKk0B,IAJhE,MAcZs8E,IAAK,SAAUl6E,GAKX,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,GAClBh3B,GAJI,EAKIU,KAAKkrG,IAAI,GAAK,GAAK50E,GAAKt2B,KAAKG,KAAKm2B,EAD1Ch3B,KACoD,EAAIU,KAAKk0B,IAJzD,IAIoE,IAUhF2+E,MAAO,SAAUv8E,GAKb,OAAU,IAANA,EAAkB,EACZ,IAANA,EAAkB,GAClBh3B,IACCg3B,GAAK,GAAK,EALP,EAKgCt2B,KAAKkrG,IAAI,EAAG,IAAM50E,GAAK,IAAMt2B,KAAKG,KAAKm2B,EAD3Eh3B,KACqF,EAAIU,KAAKk0B,IAJ1F,KAIqB,GALrB,EAMGl0B,KAAKkrG,IAAI,GAAI,IAAM50E,GAAK,IAAMt2B,KAAKG,KAAKm2B,EAF/Ch3B,KAEyD,EAAIU,KAAKk0B,IAL9D,IAKyE,GAAM,KAU/Fm9E,KAAM,CASFG,GAAI,SAAUl7E,GAGV,OAAOA,EAAIA,GAAK,QAAUA,EADlB,UAWZk6E,IAAK,SAAUl6E,GAGX,QAASA,EAAIA,GAAK,QAAUA,EADpB,SAC6B,GAUzCu8E,MAAO,SAAUv8E,GAEb,IAAI31B,EAAI,UACR,OAAK21B,GAAK,GAAK,EAAmBA,EAAIA,IAAM31B,EAAI,GAAK21B,EAAI31B,GAA9B,GACpB,KAAQ21B,GAAK,GAAKA,IAAM31B,EAAI,GAAK21B,EAAI31B,GAAK,KAUzD2wG,OAAQ,CASJE,GAAI,SAAUl7E,GAEV,OAAO,EAAIx4B,EAAOiyG,OAAOuB,OAAOd,IAAI,EAAIl6E,IAU5Ck6E,IAAK,SAAUl6E,GAEX,OAAIA,EAAK,EAAI,KAEF,OAASA,EAAIA,EAEfA,EAAK,EAAI,KAEP,QAAUA,GAAM,IAAM,MAASA,EAAI,IAErCA,EAAK,IAAM,KAET,QAAUA,GAAM,KAAO,MAASA,EAAI,MAIpC,QAAUA,GAAM,MAAQ,MAASA,EAAI,SAWpDu8E,MAAO,SAAUv8E,GAEb,OAAIA,EAAI,GAA+C,GAAjCx4B,EAAOiyG,OAAOuB,OAAOE,GAAO,EAAJl7E,GACD,GAAtCx4B,EAAOiyG,OAAOuB,OAAOd,IAAQ,EAAJl6E,EAAQ,GAAW,MAO/Dx4B,EAAOiyG,OAAOuF,QAAUx3G,EAAOiyG,OAAOK,OAAOC,KAC7CvyG,EAAOiyG,OAAOD,OAAShyG,EAAOiyG,OAAOK,OAAOC,KAC5CvyG,EAAOiyG,OAAOC,OAASlyG,EAAOiyG,OAAOQ,UAAUC,IAC/C1yG,EAAOiyG,OAAOE,OAASnyG,EAAOiyG,OAAOU,MAAMD,IAC3C1yG,EAAOiyG,OAAOG,OAASpyG,EAAOiyG,OAAOY,QAAQH,IAC7C1yG,EAAOiyG,OAAOI,OAASryG,EAAOiyG,OAAOc,QAAQL,IA2B7C1yG,EAAO6+C,KAAO,SAAUt9C,GAMpBtC,KAAKsC,KAAOA,EAOZtC,KAAK2nC,KAAO,EAgBZ3nC,KAAKo/C,IAAM,EAiBXp/C,KAAKgiD,QAAU,EAefhiD,KAAKs6G,UAAY,EAMjBt6G,KAAK4nC,MAAQ,EAMb5nC,KAAK82G,WAAa,EAMlB92G,KAAKiiD,SAAW,IAOhBjiD,KAAK8hD,eAAiB,EAAM,GAS5B9hD,KAAKu6G,YAAc,GAYnBv6G,KAAKw6G,aAAex6G,KAAKy6G,WAYzBz6G,KAAKkiD,WAAa,EAOlBliD,KAAK06G,gBAAiB,EAStB16G,KAAK+9F,OAAS,EASd/9F,KAAK26G,QAAU,EASf36G,KAAK46G,QAAU,EASf56G,KAAKm6G,IAAM,EASXn6G,KAAK66G,IAAM,EASX76G,KAAK86G,IAAM,EASX96G,KAAK+6G,OAAS,IASd/6G,KAAKg7G,OAAS,EAUdh7G,KAAKi7G,MAAQ,IASbj7G,KAAKk7G,MAAQ,EAObl7G,KAAKm7G,cAAgB,EAMrBn7G,KAAKgtG,WAAa,EAMlBhtG,KAAKo7G,aAAe,EAMpBp7G,KAAK02C,OAAS,IAAI31C,EAAOs6G,MAAMr7G,KAAKsC,MAAM,GAM1CtC,KAAKs7G,YAAc,EAMnBt7G,KAAKu7G,oBAAsB,EAM3Bv7G,KAAKw7G,SAAW,EAMhBx7G,KAAKy7G,gBAAkB,EAMvBz7G,KAAK07G,cAAgB,EAMrB17G,KAAK27G,QAAU,IAGnB56G,EAAO6+C,KAAK/9C,UAAY,CAQpBskC,KAAM,WAEFnmC,KAAKw7G,SAAW/rE,KAAK2P,MACrBp/C,KAAK2nC,KAAO8H,KAAK2P,MACjBp/C,KAAK02C,OAAOvqC,QACZnM,KAAKo7G,aAAep7G,KAAK2nC,MAU7BtM,IAAK,SAAUugF,GAIX,OAFA57G,KAAK27G,QAAQh0G,KAAKi0G,GAEXA,GAUXvzG,OAAQ,SAAUwzG,QAEMz1G,IAAhBy1G,IAA6BA,GAAc,GAE/C,IAAID,EAAQ,IAAI76G,EAAOs6G,MAAMr7G,KAAKsC,KAAMu5G,GAIxC,OAFA77G,KAAK27G,QAAQh0G,KAAKi0G,GAEXA,GAQXvvE,UAAW,WAEP,IAAK,IAAIpqC,EAAI,EAAGA,EAAIjC,KAAK27G,QAAQz5G,OAAQD,IAErCjC,KAAK27G,QAAQ15G,GAAGF,UAGpB/B,KAAK27G,QAAU,GAEf37G,KAAK02C,OAAOrK,aAQhBxgB,QAAS,WAEL,IAAIiwF,EAAkB97G,KAAK2nC,KAE3B3nC,KAAK2nC,KAAO8H,KAAK2P,MACjBp/C,KAAKs6G,UAAYt6G,KAAK2nC,KAAOm0E,GAYjCv0E,OAAQ,SAAUI,GAGd,IAAIm0E,EAAkB97G,KAAK2nC,KACvBo0E,EAAc/7G,KAAKo/C,IAEvBp/C,KAAK2nC,KAAO8H,KAAK2P,MACjBp/C,KAAKs6G,UAAYt6G,KAAK2nC,KAAOm0E,EAE7B97G,KAAKo/C,IAAMzX,EACX3nC,KAAKgiD,QAAUhiD,KAAKo/C,IAAM28D,EAEtB/7G,KAAKsC,KAAKq7C,IAAI+uD,gBAEd1sG,KAAKgtG,WAAa/pG,KAAKkvB,MAAMlvB,KAAK2C,IAAI,EAAI,IAAS5F,KAAKu6G,YAAev6G,KAAKo7G,aAAezzE,IAC3F3nC,KAAKo7G,aAAezzE,EAAO3nC,KAAKgtG,YAGhChtG,KAAK06G,gBAEL16G,KAAKg8G,wBAWbC,aAAc,WAEV,IAAIh6G,EAAI,EACJkxB,EAAMnzB,KAAK27G,QAAQz5G,OAEvB,GAAKixB,EAEL,KAAOlxB,EAAIkxB,GAEHnzB,KAAK27G,QAAQ15G,GAAGslC,OAAOvnC,KAAK82G,YAE5B70G,KAKAjC,KAAK27G,QAAQhzG,OAAO1G,EAAG,GACvBkxB,MAYZ6oF,qBAAsB,WAuBlB,GApBAh8G,KAAKs7G,cACLt7G,KAAKu7G,qBAAuBv7G,KAAKgiD,QAG7BhiD,KAAKs7G,aAAkC,EAAnBt7G,KAAKu6G,cAGzBv6G,KAAKw6G,aAAiF,EAAlEv3G,KAAKkvB,MAAM,KAAOnyB,KAAKu7G,oBAAsBv7G,KAAKs7G,cAItEt7G,KAAKs7G,YAAc,EACnBt7G,KAAKu7G,oBAAsB,GAG/Bv7G,KAAKi7G,MAAQh4G,KAAKy4B,IAAI17B,KAAKi7G,MAAOj7G,KAAKgiD,SACvChiD,KAAKk7G,MAAQj4G,KAAK2C,IAAI5F,KAAKk7G,MAAOl7G,KAAKgiD,SAEvChiD,KAAK+9F,SAED/9F,KAAKo/C,IAAMp/C,KAAKy7G,gBAAkB,IACtC,CACI,IAAIS,EAAWl8G,KAAKo/C,IAAMp/C,KAAKy7G,gBAC/Bz7G,KAAKm6G,IAAMl3G,KAAK20B,MAAqB,IAAd53B,KAAK+9F,OAAiBme,GAC7Cl8G,KAAK66G,IAAM53G,KAAK20B,MAAsB,IAAf53B,KAAK26G,QAAkBuB,GAC9Cl8G,KAAK86G,IAAM73G,KAAK20B,MAAsB,IAAf53B,KAAK46G,QAAkBsB,GAC9Cl8G,KAAK+6G,OAAS93G,KAAKy4B,IAAI17B,KAAK+6G,OAAQ/6G,KAAKm6G,KACzCn6G,KAAKg7G,OAAS/3G,KAAK2C,IAAI5F,KAAKg7G,OAAQh7G,KAAKm6G,KACzCn6G,KAAKy7G,gBAAkBz7G,KAAKo/C,IAC5Bp/C,KAAK+9F,OAAS,EACd/9F,KAAK26G,QAAU,EACf36G,KAAK46G,QAAU,IAYvB32G,UAAW,SAAU2jC,GAEjBA,GAAS,IAET5nC,KAAK4nC,MAAQA,EACb5nC,KAAK82G,YAAclvE,EAEd5nC,KAAKsC,KAAKknC,SAEXxpC,KAAK02C,OAAOnP,OAAOvnC,KAAK82G,YACxB92G,KAAKi8G,gBAGLj8G,KAAK06G,gBAEL16G,KAAK26G,WAUbpxE,UAAW,WAEHvpC,KAAK06G,gBAEL16G,KAAK46G,WAUb7mE,WAAY,WAER/zC,KAAK07G,cAAgBjsE,KAAK2P,OAS9BpL,YAAa,WAGTh0C,KAAK2nC,KAAO8H,KAAK2P,MAEjBp/C,KAAKm7G,cAAgBn7G,KAAK2nC,KAAO3nC,KAAK07G,eAS1ChrE,oBAAqB,WAEjB,MAAqC,MAA7B1wC,KAAK2nC,KAAO3nC,KAAKw7G,WAU7BW,aAAc,SAAUC,GAEpB,OAAOp8G,KAAK2nC,KAAOy0E,GAUvBC,oBAAqB,SAAUD,GAE3B,MAA6B,MAArBp8G,KAAK2nC,KAAOy0E,IAQxB5zE,MAAO,WAEHxoC,KAAKw7G,SAAWx7G,KAAK2nC,KACrB3nC,KAAKqsC,cAgBbxlC,OAAOyF,eAAevL,EAAO6+C,KAAK/9C,UAAW,aAAc,CAEvDkF,IAAK,WAED,OAAO/G,KAAKu6G,aAGhBvzG,IAAK,SAAUC,GAEXjH,KAAKu6G,YAActzG,EACnBjH,KAAK8hD,eAAiB,EAAM76C,KAgBpCJ,OAAOyF,eAAevL,EAAO6+C,KAAK/9C,UAAW,gBAAiB,CAE1DkF,IAAK,WAED,OAAO,IAAO/G,KAAKiiD,UAGvBj7C,IAAK,SAAUC,GAEXjH,KAAKiiD,SAAW,IAAOh7C,KAK/BlG,EAAO6+C,KAAK/9C,UAAUC,YAAcf,EAAO6+C,KAqB3C7+C,EAAOs6G,MAAQ,SAAU/4G,EAAMu5G,QAEPz1G,IAAhBy1G,IAA6BA,GAAc,GAM/C77G,KAAKsC,KAAOA,EAUZtC,KAAKs8G,SAAU,EAMft8G,KAAK67G,YAAcA,EAOnB77G,KAAKu8G,SAAU,EAMfv8G,KAAKgiD,QAAU,EAKfhiD,KAAK02C,OAAS,GASd12C,KAAK83G,WAAa,IAAI/2G,EAAO0jC,OAO7BzkC,KAAKw8G,SAAW,EAOhBx8G,KAAKwpC,QAAS,EAMdxpC,KAAKq+C,aAAc,EAOnBr+C,KAAKw7G,SAAW,EAMhBx7G,KAAK07G,cAAgB,EAMrB17G,KAAKy8G,YAAc,EAMnBz8G,KAAK08G,KAAO18G,KAAKsC,KAAKqlC,KAAO3nC,KAAKsC,KAAKqlC,KAAKmvE,WAAa,EAMzD92G,KAAKuxC,KAAO,EAMZvxC,KAAK28G,QAAU,EAMf38G,KAAKwxC,GAAK,EAMVxxC,KAAK48G,MAAQ,EAMb58G,KAAK68G,SAAW,GAQpB97G,EAAOs6G,MAAMyB,OAAS,IAOtB/7G,EAAOs6G,MAAM0B,OAAS,IAOtBh8G,EAAOs6G,MAAM2B,KAAO,IAOpBj8G,EAAOs6G,MAAM4B,QAAU,IAEvBl8G,EAAOs6G,MAAMx5G,UAAY,CAiBrBwG,OAAQ,SAAUsxD,EAAO8T,EAAMyvC,EAAahmE,EAAUxL,EAAiB/Y,GAInE,IAAIwqF,GAFJxjD,EAAQ12D,KAAK20B,MAAM+hC,IAEA35D,KAAK08G,KACpB9pE,EAAQ,IAAI7xC,EAAOq8G,WAAWp9G,KAAM25D,EAAOwjD,EAAMD,EAAazvC,EAAMv2B,EAAUxL,EAAiB/Y,GAQnG,OANA3yB,KAAK02C,OAAO/uC,KAAKirC,GAEjB5yC,KAAK46C,QAEL56C,KAAKu8G,SAAU,EAER3pE,GAkBXvX,IAAK,SAAUs+B,EAAOziB,EAAUxL,GAE5B,OAAO1rC,KAAKqI,OAAOsxD,GAAO,EAAO,EAAGziB,EAAUxL,EAAiBpkC,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,KAoBzGpd,OAAQ,SAAUukD,EAAOujD,EAAahmE,EAAUxL,GAE5C,OAAO1rC,KAAKqI,OAAOsxD,GAAO,EAAOujD,EAAahmE,EAAUxL,EAAiBpkC,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,KAkBnHi7C,KAAM,SAAU9T,EAAOziB,EAAUxL,GAE7B,OAAO1rC,KAAKqI,OAAOsxD,GAAO,EAAM,EAAGziB,EAAUxL,EAAiBpkC,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,KAQxGrmB,MAAO,SAAUwtD,GAEb,IAAI35D,KAAKs8G,QAAT,CAKAt8G,KAAKw7G,SAAWx7G,KAAKsC,KAAKqlC,KAAKmvE,YAAcn9C,GAAS,GAEtD35D,KAAKs8G,SAAU,EAEf,IAAK,IAAIr6G,EAAI,EAAGA,EAAIjC,KAAK02C,OAAOx0C,OAAQD,IAEpCjC,KAAK02C,OAAOz0C,GAAGk7G,KAAOn9G,KAAK02C,OAAOz0C,GAAG03D,MAAQ35D,KAAKw7G,WAS1DxvG,KAAM,SAAUqxG,GAEZr9G,KAAKs8G,SAAU,OAEKl2G,IAAhBi3G,IAA6BA,GAAc,GAE3CA,IAEAr9G,KAAK02C,OAAOx0C,OAAS,IAS7Bmb,OAAQ,SAAUu1B,GAEd,IAAK,IAAI3wC,EAAI,EAAGA,EAAIjC,KAAK02C,OAAOx0C,OAAQD,IAEpC,GAAIjC,KAAK02C,OAAOz0C,KAAO2wC,EAGnB,OADA5yC,KAAK02C,OAAOz0C,GAAGy0G,eAAgB,EAKvC,OAAO,GASX97D,MAAO,WAEsB,EAArB56C,KAAK02C,OAAOx0C,SAGZlC,KAAK02C,OAAOvV,KAAKnhC,KAAKg7C,aAEtBh7C,KAAKw8G,SAAWx8G,KAAK02C,OAAO,GAAGymE,OASvCniE,YAAa,SAAUv4C,EAAGC,GAEtB,OAAID,EAAE06G,KAAOz6G,EAAEy6G,MAEH,EAEH16G,EAAE06G,KAAOz6G,EAAEy6G,KAET,EAGJ,GASXG,mBAAoB,WAIhB,IAFAt9G,KAAKwxC,GAAKxxC,KAAK02C,OAAOx0C,OAEflC,KAAKwxC,MAEJxxC,KAAK02C,OAAO12C,KAAKwxC,IAAIklE,eAErB12G,KAAK02C,OAAO/tC,OAAO3I,KAAKwxC,GAAI,GAIpCxxC,KAAKuxC,KAAOvxC,KAAK02C,OAAOx0C,OACxBlC,KAAKwxC,GAAK,GAWdjK,OAAQ,SAAUI,GAEd,GAAI3nC,KAAKwpC,OAEL,OAAO,EAUX,GAPAxpC,KAAKgiD,QAAUra,EAAO3nC,KAAK08G,KAC3B18G,KAAK08G,KAAO/0E,EACZ3nC,KAAK28G,QAAU,EAGf38G,KAAKs9G,qBAEDt9G,KAAKs8G,SAAWt8G,KAAK08G,MAAQ18G,KAAKw8G,UAAwB,EAAZx8G,KAAKuxC,KACvD,CACI,KAAOvxC,KAAKwxC,GAAKxxC,KAAKuxC,MAAQvxC,KAAKs8G,SACnC,CACI,IAAI1pE,EAAQ5yC,KAAK02C,OAAO12C,KAAKwxC,IAE7B,KAAIxxC,KAAK08G,MAAQ9pE,EAAMuqE,OAASvqE,EAAM8jE,cAgClC,MA7BA12G,KAAK68G,SAAY78G,KAAK08G,KAAO9pE,EAAM+mB,OAAU35D,KAAK08G,KAAO9pE,EAAMuqE,MAE3Dn9G,KAAK68G,SAAW,IAEhB78G,KAAK68G,SAAW78G,KAAK08G,KAAO9pE,EAAM+mB,QAGnB,IAAf/mB,EAAM66B,KAEN76B,EAAMuqE,KAAOn9G,KAAK68G,SAGO,EAApBjqE,EAAMsqE,aAEXtqE,EAAMsqE,cACNtqE,EAAMuqE,KAAOn9G,KAAK68G,WAKlB78G,KAAK28G,UACL/pE,EAAM8jE,eAAgB,GAXtB9jE,EAAMsE,SAASjyC,MAAM2tC,EAAMlH,gBAAiBkH,EAAMjgB,MAetD3yB,KAAKwxC,KASTxxC,KAAK02C,OAAOx0C,OAASlC,KAAK28G,QAE1B38G,KAAK46C,SAIL56C,KAAKu8G,SAAU,EACfv8G,KAAK83G,WAAWjwE,SAAS7nC,OAIjC,OAAIA,KAAKu8G,UAAWv8G,KAAK67G,aAc7BzwE,MAAO,WAEEprC,KAAKs8G,UAKVt8G,KAAKq+C,aAAc,EAEfr+C,KAAKwpC,SAKTxpC,KAAK07G,cAAgB17G,KAAKsC,KAAKqlC,KAAKmvE,WAEpC92G,KAAKwpC,QAAS,KAQlB0tE,OAAQ,YAEAl3G,KAAKwpC,QAAWxpC,KAAKs8G,UAKzBt8G,KAAK07G,cAAgB17G,KAAKsC,KAAKqlC,KAAKmvE,WAEpC92G,KAAKwpC,QAAS,IASlB+zE,aAAc,SAAUC,GAEpB,IAAK,IAAIv7G,EAAI,EAAGA,EAAIjC,KAAK02C,OAAOx0C,OAAQD,IAEpC,IAAKjC,KAAK02C,OAAOz0C,GAAGy0G,cACpB,CAEI,IAAIxjF,EAAIlzB,KAAK02C,OAAOz0C,GAAGk7G,KAAOK,EAE1BtqF,EAAI,IAEJA,EAAI,GAIRlzB,KAAK02C,OAAOz0C,GAAGk7G,KAAOn9G,KAAK08G,KAAOxpF,EAI1C,IAAItwB,EAAI5C,KAAKw8G,SAAWgB,EAIpBx9G,KAAKw8G,SAFL55G,EAAI,EAEY5C,KAAK08G,KAIL18G,KAAK08G,KAAO95G,GASpC0oC,OAAQ,WAEJ,GAAKtrC,KAAKwpC,OAAV,CAKA,IAAI4V,EAAMp/C,KAAKsC,KAAKqlC,KAAKmvE,WACzB92G,KAAKy8G,aAAer9D,EAAMp/C,KAAK08G,KAC/B18G,KAAK08G,KAAOt9D,EAEZp/C,KAAKu9G,aAAav9G,KAAK07G,eAEvB17G,KAAKwpC,QAAS,EACdxpC,KAAKq+C,aAAc,IAQvB84D,QAAS,WAEDn3G,KAAKq+C,aAMLr+C,KAAKsrC,UAUbe,UAAW,WAEPrsC,KAAK83G,WAAWzrE,YAChBrsC,KAAK02C,OAAOx0C,OAAS,EACrBlC,KAAKuxC,KAAO,EACZvxC,KAAKwxC,GAAK,GASdzvC,QAAS,WAEL/B,KAAK83G,WAAWzrE,YAChBrsC,KAAKs8G,SAAU,EACft8G,KAAKu8G,SAAU,EACfv8G,KAAK02C,OAAS,GACd12C,KAAKuxC,KAAO,EACZvxC,KAAKwxC,GAAK,IAUlB3qC,OAAOyF,eAAevL,EAAOs6G,MAAMx5G,UAAW,OAAQ,CAElDkF,IAAK,WAED,OAAO/G,KAAKw8G,YAUpB31G,OAAOyF,eAAevL,EAAOs6G,MAAMx5G,UAAW,WAAY,CAEtDkF,IAAK,WAED,OAAI/G,KAAKs8G,SAAWt8G,KAAKw8G,SAAWx8G,KAAK08G,KAE9B18G,KAAKw8G,SAAWx8G,KAAK08G,KAIrB,KAWnB71G,OAAOyF,eAAevL,EAAOs6G,MAAMx5G,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAK02C,OAAOx0C,UAU3B2E,OAAOyF,eAAevL,EAAOs6G,MAAMx5G,UAAW,KAAM,CAEhDkF,IAAK,WAED,OAAI/G,KAAKs8G,QAEEt8G,KAAK08G,KAAO18G,KAAKw7G,SAAWx7G,KAAKy8G,YAIjC,KAWnB51G,OAAOyF,eAAevL,EAAOs6G,MAAMx5G,UAAW,UAAW,CAErDkF,IAAK,WAED,OAAI/G,KAAKs8G,QAEY,KAAVt8G,KAAKk6G,GAIL,KAMnBn5G,EAAOs6G,MAAMx5G,UAAUC,YAAcf,EAAOs6G,MA6B5Ct6G,EAAOq8G,WAAa,SAAUxB,EAAOjiD,EAAOwjD,EAAMD,EAAazvC,EAAMv2B,EAAUxL,EAAiB/Y,GAO5F3yB,KAAK47G,MAAQA,EAKb57G,KAAK25D,MAAQA,EAKb35D,KAAKm9G,KAAOA,EAKZn9G,KAAKk9G,YAAcA,EAAc,EAKjCl9G,KAAKytE,KAAOA,EAKZztE,KAAKk3C,SAAWA,EAKhBl3C,KAAK0rC,gBAAkBA,EAKvB1rC,KAAK2yB,KAAOA,EAMZ3yB,KAAK02G,eAAgB,GAGzB31G,EAAOq8G,WAAWv7G,UAAUC,YAAcf,EAAOq8G,WAgBjDr8G,EAAO2tE,iBAAmB,SAAUlqD,GAKhCxkB,KAAKwkB,OAASA,EAKdxkB,KAAKsC,KAAOkiB,EAAOliB,KASnBtC,KAAKy9G,aAAe,KAMpBz9G,KAAK09G,YAAc,KAMnB19G,KAAK29G,iBAAkB,EAMvB39G,KAAK49G,UAAW,EAOhB59G,KAAK69G,WAAa,KAMlB79G,KAAK89G,OAAS,GAMd99G,KAAK+9G,cAAgB,IAGzBh9G,EAAO2tE,iBAAiB7sE,UAAY,CAYhCmyE,cAAe,SAAUE,EAAWhnE,GAEhC,QAAkB9G,IAAd8tE,EAEA,OAAO,EAGX,GAAIl0E,KAAK49G,SAGL,IAAK,IAAII,KAAQh+G,KAAK89G,OAElB99G,KAAK89G,OAAOE,GAAMliB,gBAAgB5nB,GAsB1C,OAlBAl0E,KAAK69G,WAAa3pC,EAEdhnE,MAAAA,EAEAlN,KAAKkN,MAAQ,EAGI,iBAAVA,EAEPlN,KAAK60E,UAAY3nE,EAIjBlN,KAAKkN,MAAQA,EAGjBlN,KAAK49G,UAAW,GAepBK,cAAe,SAAU/pC,EAAWhnE,GAIhC,GAFAlN,KAAK69G,WAAa3pC,EAAU79C,QAExBr2B,KAAK49G,SAGL,IAAK,IAAII,KAAQh+G,KAAK89G,OAElB99G,KAAK89G,OAAOE,GAAMliB,gBAAgB97F,KAAK69G,YAoB/C,OAhBI3wG,MAAAA,EAEAlN,KAAKkN,MAAQ,EAGI,iBAAVA,EAEPlN,KAAK60E,UAAY3nE,EAIjBlN,KAAKkN,MAAQA,EAGjBlN,KAAK49G,UAAW,GAiBpBviF,IAAK,SAAUhH,EAAM0pE,EAAQvwB,EAAWC,EAAMywC,GAiC1C,OA/BAngB,EAASA,GAAU,GACnBvwB,EAAYA,GAAa,QAEZpnE,IAATqnE,IAAsBA,GAAO,QAGTrnE,IAApB83G,IAIIA,KAFAngB,GAA+B,iBAAdA,EAAO,KAUhC/9F,KAAK+9G,cAAgB,GAErB/9G,KAAK69G,WAAWM,gBAAgBpgB,EAAQmgB,EAAiBl+G,KAAK+9G,eAE9D/9G,KAAK89G,OAAOzpF,GAAQ,IAAItzB,EAAOusE,UAAUttE,KAAKsC,KAAMtC,KAAKwkB,OAAQ6P,EAAMr0B,KAAK69G,WAAY79G,KAAK+9G,cAAevwC,EAAWC,GAEvHztE,KAAK09G,YAAc19G,KAAK89G,OAAOzpF,GAE3Br0B,KAAKwkB,OAAOe,gBAEZvlB,KAAKwkB,OAAOowD,gBAAiB,GAG1B50E,KAAK89G,OAAOzpF,IAWvB+pF,eAAgB,SAAUrgB,EAAQmgB,QAEN93G,IAApB83G,IAAiCA,GAAkB,GAEvD,IAAK,IAAIj8G,EAAI,EAAGA,EAAI87F,EAAO77F,OAAQD,IAE/B,IAAwB,IAApBi8G,GAEA,GAAIngB,EAAO97F,GAAKjC,KAAK69G,WAAW3iE,MAE5B,OAAO,OAIf,IAAkD,IAA9Cl7C,KAAK69G,WAAWQ,eAAetgB,EAAO97F,IAEtC,OAAO,EAIf,OAAO,GAmBXsrE,KAAM,SAAUl5C,EAAMm5C,EAAWC,EAAMC,GAEnC,GAAI1tE,KAAK89G,OAAOzpF,GAEZ,OAAIr0B,KAAK09G,cAAgB19G,KAAK89G,OAAOzpF,IAEE,IAA/Br0B,KAAK09G,YAAYY,WAEjBt+G,KAAK09G,YAAYl0E,QAAS,EACnBxpC,KAAK09G,YAAYnwC,KAAKC,EAAWC,EAAMC,IAG3C1tE,KAAK09G,aAIR19G,KAAK09G,aAAe19G,KAAK09G,YAAYY,WAErCt+G,KAAK09G,YAAY1xG,OAGrBhM,KAAK09G,YAAc19G,KAAK89G,OAAOzpF,GAC/Br0B,KAAK09G,YAAYl0E,QAAS,EAC1BxpC,KAAKy9G,aAAez9G,KAAK09G,YAAYD,aAC9Bz9G,KAAK09G,YAAYnwC,KAAKC,EAAWC,EAAMC,KAa1D1hE,KAAM,SAAUqoB,EAAMm7C,QAECppE,IAAfopE,IAA4BA,GAAa,IAEzCxvE,KAAK09G,aAAgC,iBAATrpF,GAAqBA,IAASr0B,KAAK09G,YAAYrpF,MAE3Er0B,KAAK09G,YAAY1xG,KAAKwjE,IAW9BjoC,OAAQ,WAEJ,QAAIvnC,KAAK29G,kBAAoB39G,KAAKwkB,OAAO/jB,cAKrCT,KAAK09G,cAAe19G,KAAK09G,YAAYn2E,YAErCvnC,KAAKy9G,aAAez9G,KAAK09G,YAAYD,cAC9B,KAYf/lE,KAAM,SAAUT,GAERj3C,KAAK09G,cAEL19G,KAAK09G,YAAYhmE,KAAKT,GACtBj3C,KAAKy9G,aAAez9G,KAAK09G,YAAYD,eAU7C9lE,SAAU,SAAUV,GAEZj3C,KAAK09G,cAEL19G,KAAK09G,YAAY/lE,SAASV,GAC1Bj3C,KAAKy9G,aAAez9G,KAAK09G,YAAYD,eAW7Cc,aAAc,SAAUlqF,GAEpB,MAAoB,iBAATA,GAEHr0B,KAAK89G,OAAOzpF,GAELr0B,KAAK89G,OAAOzpF,GAIpB,MAQXmqF,aAAc,aAgBdz8G,QAAS,WAEL,IAAIi8G,EAAO,KAEX,IAAK,IAAIA,KAAQh+G,KAAK89G,OAEd99G,KAAK89G,OAAOpqF,eAAesqF,IAE3Bh+G,KAAK89G,OAAOE,GAAMj8G,UAI1B/B,KAAK89G,OAAS,GACd99G,KAAK+9G,cAAgB,GACrB/9G,KAAK69G,WAAa,KAClB79G,KAAK09G,YAAc,KACnB19G,KAAKy9G,aAAe,KACpBz9G,KAAKwkB,OAAS,KACdxkB,KAAKsC,KAAO,OAKpBvB,EAAO2tE,iBAAiB7sE,UAAUC,YAAcf,EAAO2tE,iBAOvD7nE,OAAOyF,eAAevL,EAAO2tE,iBAAiB7sE,UAAW,YAAa,CAElEkF,IAAK,WAED,OAAO/G,KAAK69G,cAUpBh3G,OAAOyF,eAAevL,EAAO2tE,iBAAiB7sE,UAAW,aAAc,CAEnEkF,IAAK,WAED,OAAO/G,KAAK69G,WAAW3iE,SAS/Br0C,OAAOyF,eAAevL,EAAO2tE,iBAAiB7sE,UAAW,SAAU,CAE/DkF,IAAK,WAED,OAAO/G,KAAK09G,YAAY1F,UAG5BhxG,IAAK,SAAUC,GAEXjH,KAAK09G,YAAYl0E,OAASviC,KASlCJ,OAAOyF,eAAevL,EAAO2tE,iBAAiB7sE,UAAW,OAAQ,CAE7DkF,IAAK,WAED,OAAQ/G,KAAgB,YAAIA,KAAK09G,YAAYrpF,UAAOjuB,KAS5DS,OAAOyF,eAAevL,EAAO2tE,iBAAiB7sE,UAAW,QAAS,CAE9DkF,IAAK,WAED,OAAQ/G,KAAiB,aAAIA,KAAKy9G,aAAah1G,WAAQrC,GAG3DY,IAAK,SAAUC,GAEX,IAAIw3G,EAEiB,iBAAVx3G,GAAsBjH,KAAK69G,aAAeY,EAAWz+G,KAAK69G,WAAWa,SAASz3G,MAErFjH,KAAKy9G,aAAegB,EACpBz+G,KAAKwkB,OAAO4I,SAASptB,KAAKy9G,kBAUtC52G,OAAOyF,eAAevL,EAAO2tE,iBAAiB7sE,UAAW,YAAa,CAElEkF,IAAK,WAED,OAAQ/G,KAAiB,aAAIA,KAAKy9G,aAAappF,UAAOjuB,GAG1DY,IAAK,SAAUC,GAEX,IAAIw3G,EAEiB,iBAAVx3G,GAAsBjH,KAAK69G,aAAeY,EAAWz+G,KAAK69G,WAAWc,eAAe13G,KAE3FjH,KAAKy9G,aAAegB,EACpBz+G,KAAK4+G,YAAc5+G,KAAKy9G,aAAah1G,MACrCzI,KAAKwkB,OAAO4I,SAASptB,KAAKy9G,eAI1BrtG,QAAQ+K,KAAK,yBAA2BlU,MA2BpDlG,EAAOusE,UAAY,SAAUhrE,EAAM1B,EAAQyzB,EAAM6/C,EAAW6pB,EAAQvwB,EAAWC,QAE9DrnE,IAATqnE,IAAsBA,GAAO,GAKjCztE,KAAKsC,KAAOA,EAMZtC,KAAKywE,QAAU7vE,EAMfZ,KAAK69G,WAAa3pC,EAKlBl0E,KAAKq0B,KAAOA,EAMZr0B,KAAK6+G,QAAU,GACf7+G,KAAK6+G,QAAU7+G,KAAK6+G,QAAQjsF,OAAOmrE,GAKnC/9F,KAAK25D,MAAQ,IAAO6T,EAKpBxtE,KAAKytE,KAAOA,EAKZztE,KAAK8+G,UAAY,EAMjB9+G,KAAK0tE,gBAAiB,EAMtB1tE,KAAK++G,YAAa,EAMlB/+G,KAAKs+G,WAAY,EAMjBt+G,KAAKg4G,UAAW,EAOhBh4G,KAAKg/G,gBAAkB,EAOvBh/G,KAAK4+G,YAAc,EAOnB5+G,KAAKi/G,WAAa,EAOlBj/G,KAAKk/G,WAAa,EAKlBl/G,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ7+G,KAAK4+G,cAK/D5+G,KAAK03G,QAAU,IAAI32G,EAAO0jC,OAW1BzkC,KAAKm/G,SAAW,KAKhBn/G,KAAK83G,WAAa,IAAI/2G,EAAO0jC,OAK7BzkC,KAAK23G,OAAS,IAAI52G,EAAO0jC,OAMzBzkC,KAAKo/G,YAAa,EAGlBp/G,KAAKsC,KAAK6oC,QAAQ9P,IAAIr7B,KAAKmrC,QAASnrC,MACpCA,KAAKsC,KAAK+oC,SAAShQ,IAAIr7B,KAAKqrC,SAAUrrC,OAG1Ce,EAAOusE,UAAUzrE,UAAY,CAczB0rE,KAAM,SAAUC,EAAWC,EAAMC,GAsC7B,MApCyB,iBAAdF,IAGPxtE,KAAK25D,MAAQ,IAAO6T,GAGJ,kBAATC,IAGPztE,KAAKytE,KAAOA,QAGc,IAAnBC,IAGP1tE,KAAK0tE,eAAiBA,GAG1B1tE,KAAKs+G,WAAY,EACjBt+G,KAAK++G,YAAa,EAClB/+G,KAAKwpC,QAAS,EACdxpC,KAAK8+G,UAAY,EAEjB9+G,KAAKq/G,eAAiBr/G,KAAKsC,KAAKqlC,KAAKmvE,WACrC92G,KAAKs/G,eAAiBt/G,KAAKsC,KAAKqlC,KAAKmvE,WAAa92G,KAAK25D,MAEvD35D,KAAK4+G,YAAc5+G,KAAKo/G,WAAap/G,KAAK6+G,QAAQ38G,OAAS,EAAI,EAC/DlC,KAAKu/G,oBAAmB,GAAO,GAE/Bv/G,KAAKywE,QAAQ/5B,OAAO8oE,0BAA0Bx/G,KAAKywE,QAASzwE,MAE5DA,KAAK03G,QAAQ7vE,SAAS7nC,KAAKywE,QAASzwE,OAEpCA,KAAKywE,QAAQ9C,WAAW+vC,YAAc19G,MACjCywE,QAAQ9C,WAAW8vC,aAAez9G,KAAKy9G,aAErCz9G,MAQX8rC,QAAS,WAEL9rC,KAAKs+G,WAAY,EACjBt+G,KAAK++G,YAAa,EAClB/+G,KAAKwpC,QAAS,EACdxpC,KAAK8+G,UAAY,EAEjB9+G,KAAKq/G,eAAiBr/G,KAAKsC,KAAKqlC,KAAKmvE,WACrC92G,KAAKs/G,eAAiBt/G,KAAKsC,KAAKqlC,KAAKmvE,WAAa92G,KAAK25D,MAEvD35D,KAAK4+G,YAAc,EAEnB5+G,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ7+G,KAAK4+G,cAE/D5+G,KAAKywE,QAAQrjD,SAASptB,KAAKy9G,eAE3Bz9G,KAAKywE,QAAQ9C,WAAW+vC,YAAc19G,MACjCywE,QAAQ9C,WAAW8vC,aAAez9G,KAAKy9G,aAE5Cz9G,KAAK03G,QAAQ7vE,SAAS7nC,KAAKywE,QAASzwE,OASxCwf,QAAS,WAIL,OAFAxf,KAAKq6G,UAAYr6G,KAAKq6G,SAEfr6G,MAWXy/G,YAAa,WAIT,OAFAz/G,KAAK83G,WAAWzpE,QAAQruC,KAAKwf,QAASxf,MAE/BA,KAAKwf,WAUhB4N,SAAU,SAAUsyF,EAASC,GAEzB,IAAIC,EAQJ,QAN2Bx5G,IAAvBu5G,IAEAA,GAAqB,GAIF,iBAAZD,EAEP,IAAK,IAAIz9G,EAAI,EAAGA,EAAIjC,KAAK6+G,QAAQ38G,OAAQD,IAEjCjC,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ58G,IAAIoyB,OAASqrF,IAEnDE,EAAa39G,QAIpB,GAAuB,iBAAZy9G,EAEZ,GAAIC,EAEAC,EAAaF,OAIb,IAASz9G,EAAI,EAAGA,EAAIjC,KAAK6+G,QAAQ38G,OAAQD,IAEjCjC,KAAK6+G,QAAQ58G,KAAOy9G,IAEpBE,EAAa39G,GAM7B,GAAI29G,EACJ,CAEI,IAAIC,EAAoB7/G,KAAKo/G,YAAc,EAAI,EAC/Cp/G,KAAK4+G,YAAcgB,EAAaC,EAGhC7/G,KAAKs/G,eAAiBt/G,KAAKsC,KAAKqlC,KAAKmvE,WAErC92G,KAAKunC,WAYbv7B,KAAM,SAAUwjE,EAAYswC,QAEL15G,IAAfopE,IAA4BA,GAAa,QACpBppE,IAArB05G,IAAkCA,GAAmB,GAEzD9/G,KAAKs+G,WAAY,EACjBt+G,KAAK++G,YAAa,EAClB/+G,KAAKwpC,QAAS,EAEVgmC,IAEAxvE,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ,IAC1D7+G,KAAKywE,QAAQrjD,SAASptB,KAAKy9G,eAG3BqC,IAEA9/G,KAAKywE,QAAQ/5B,OAAOqpE,6BAA6B//G,KAAKywE,QAASzwE,MAC/DA,KAAK83G,WAAWjwE,SAAS7nC,KAAKywE,QAASzwE,QAS/CmrC,QAAS,WAEDnrC,KAAKs+G,YAELt+G,KAAKi/G,WAAaj/G,KAAKs/G,eAAiBt/G,KAAKsC,KAAKqlC,KAAKmvE,aAS/DzrE,SAAU,WAEFrrC,KAAKs+G,YAELt+G,KAAKs/G,eAAiBt/G,KAAKsC,KAAKqlC,KAAKmvE,WAAa92G,KAAKi/G,aAS/D13E,OAAQ,WAEJ,GAAIvnC,KAAKg4G,SAEL,OAAO,EAGX,IAAI54D,EAAMp/C,KAAKsC,KAAKqlC,KAAKmvE,WACrBkJ,EAAO5gE,EAAMp/C,KAAKs/G,eAEtB,SAAIt/G,KAAKs+G,WAAqB,GAAR0B,KAElBhgH,KAAKk/G,WAAa,EAClBl/G,KAAKi/G,WAAae,EAClBhgH,KAAKq/G,eAAiBjgE,EAElBp/C,KAAKi/G,WAAaj/G,KAAK25D,QAGvB35D,KAAKk/G,WAAaj8G,KAAKkvB,MAAMnyB,KAAKi/G,WAAaj/G,KAAK25D,OACpD35D,KAAKi/G,YAAej/G,KAAKk/G,WAAal/G,KAAK25D,OAI/C35D,KAAKs/G,eAAiBlgE,GAAOp/C,KAAK25D,MAAQ35D,KAAKi/G,YAE3Cj/G,KAAKo/G,WAELp/G,KAAK4+G,aAAe5+G,KAAKk/G,WAIzBl/G,KAAK4+G,aAAe5+G,KAAKk/G,YAGxBl/G,KAAKo/G,YAAcp/G,KAAK4+G,aAAe5+G,KAAK6+G,QAAQ38G,QAAUlC,KAAKo/G,YAAcp/G,KAAK4+G,cAAgB,EAEnG5+G,KAAKytE,MAGLztE,KAAK4+G,YAAc37G,KAAK81B,IAAI/4B,KAAK4+G,aAAe5+G,KAAK6+G,QAAQ38G,OAEzDlC,KAAKo/G,aAELp/G,KAAK4+G,YAAc5+G,KAAK6+G,QAAQ38G,OAAS,EAAIlC,KAAK4+G,aAGtD5+G,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ7+G,KAAK4+G,cAG3D5+G,KAAKy9G,cAELz9G,KAAKywE,QAAQrjD,SAASptB,KAAKy9G,cAG/Bz9G,KAAK8+G,YACL9+G,KAAKywE,QAAQ/5B,OAAOupE,yBAAyBjgH,KAAKywE,QAASzwE,MAC3DA,KAAK23G,OAAO9vE,SAAS7nC,KAAKywE,QAASzwE,OAE/BA,KAAKm/G,WAELn/G,KAAKm/G,SAASt3E,SAAS7nC,KAAMA,KAAKy9G,gBAGzBz9G,KAAK69G,cASlB79G,KAAKysB,YACE,GAKJzsB,KAAKu/G,oBAAmB,KAmB3CA,mBAAoB,SAAUW,EAAcC,GAIxC,QAFiB/5G,IAAb+5G,IAA0BA,GAAW,IAEpCngH,KAAK69G,WAGN,OAAO,EAIX,IAAIhc,EAAM7hG,KAAKy9G,aAAah1G,MAS5B,OAPAzI,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ7+G,KAAK4+G,cAE3D5+G,KAAKy9G,eAAiB0C,GAAate,IAAQ7hG,KAAKy9G,aAAah1G,QAE7DzI,KAAKywE,QAAQrjD,SAASptB,KAAKy9G,eAG3Bz9G,KAAKm/G,WAAYe,IAEjBlgH,KAAKm/G,SAASt3E,SAAS7nC,KAAMA,KAAKy9G,gBAGzBz9G,KAAK69G,aActBnmE,KAAM,SAAUT,QAEK7wC,IAAb6wC,IAA0BA,EAAW,GAEzC,IAAI/pC,EAAQlN,KAAK4+G,YAAc3nE,EAE3B/pC,GAASlN,KAAK6+G,QAAQ38G,SAElBlC,KAAKytE,KAELvgE,GAASlN,KAAK6+G,QAAQ38G,OAItBgL,EAAQlN,KAAK6+G,QAAQ38G,OAAS,GAIlCgL,IAAUlN,KAAK4+G,cAEf5+G,KAAK4+G,YAAc1xG,EACnBlN,KAAKu/G,oBAAmB,KAUhC5nE,SAAU,SAAUV,QAEC7wC,IAAb6wC,IAA0BA,EAAW,GAEzC,IAAI/pC,EAAQlN,KAAK4+G,YAAc3nE,EAE3B/pC,EAAQ,IAEJlN,KAAKytE,KAELvgE,EAAQlN,KAAK6+G,QAAQ38G,OAASgL,EAI9BA,KAIJA,IAAUlN,KAAK4+G,cAEf5+G,KAAK4+G,YAAc1xG,EACnBlN,KAAKu/G,oBAAmB,KAUhCzjB,gBAAiB,SAAU5nB,GAEvBl0E,KAAK69G,WAAa3pC,EAClBl0E,KAAKy9G,aAAez9G,KAAK69G,WAAa79G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ7+G,KAAK4+G,YAAc5+G,KAAK6+G,QAAQ38G,SAAW,MAQ3HH,QAAS,WAEA/B,KAAK69G,aAMV79G,KAAKsC,KAAK6oC,QAAQ9tB,OAAOrd,KAAKmrC,QAASnrC,MACvCA,KAAKsC,KAAK+oC,SAAShuB,OAAOrd,KAAKqrC,SAAUrrC,MAEzCA,KAAKsC,KAAO,KACZtC,KAAKywE,QAAU,KACfzwE,KAAK6+G,QAAU,KACf7+G,KAAK69G,WAAa,KAClB79G,KAAKy9G,aAAe,KACpBz9G,KAAKs+G,WAAY,EAEjBt+G,KAAK03G,QAAQ9oE,UACb5uC,KAAK23G,OAAO/oE,UACZ5uC,KAAK83G,WAAWlpE,UAEZ5uC,KAAKm/G,UAELn/G,KAAKm/G,SAASvwE,YAUtBniB,SAAU,WAENzsB,KAAK4+G,YAAc5+G,KAAK6+G,QAAQ38G,OAAS,EACzClC,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ7+G,KAAK4+G,cAC/D5+G,KAAKu/G,oBAAmB,GAExBv/G,KAAKs+G,WAAY,EACjBt+G,KAAK++G,YAAa,EAClB/+G,KAAKwpC,QAAS,EAEdxpC,KAAKywE,QAAQ/5B,OAAOqpE,6BAA6B//G,KAAKywE,QAASzwE,MAE/DA,KAAK83G,WAAWjwE,SAAS7nC,KAAKywE,QAASzwE,MAEnCA,KAAK0tE,gBAEL1tE,KAAKywE,QAAQl3B,SAMzBx4C,EAAOusE,UAAUzrE,UAAUC,YAAcf,EAAOusE,UAMhDzmE,OAAOyF,eAAevL,EAAOusE,UAAUzrE,UAAW,SAAU,CAExDkF,IAAK,WAED,OAAO/G,KAAKg4G,UAGhBhxG,IAAK,SAAUC,IAEXjH,KAAKg4G,SAAW/wG,GAKZjH,KAAKg/G,gBAAkBh/G,KAAKsC,KAAKqlC,KAAKmvE,WAKlC92G,KAAKs+G,YAELt+G,KAAKs/G,eAAiBt/G,KAAKsC,KAAKqlC,KAAKmvE,WAAa92G,KAAK25D,UAWvE9yD,OAAOyF,eAAevL,EAAOusE,UAAUzrE,UAAW,WAAY,CAE1DkF,IAAK,WAED,OAAO/G,KAAKo/G,YAGhBp4G,IAAK,SAAUC,GAEXjH,KAAKo/G,WAAan4G,KAU1BJ,OAAOyF,eAAevL,EAAOusE,UAAUzrE,UAAW,aAAc,CAE5DkF,IAAK,WAED,OAAO/G,KAAK6+G,QAAQ38G,UAS5B2E,OAAOyF,eAAevL,EAAOusE,UAAUzrE,UAAW,QAAS,CAEvDkF,IAAK,WAED,OAA0B,OAAtB/G,KAAKy9G,aAEEz9G,KAAKy9G,aAAah1G,MAIlBzI,KAAK4+G,aAIpB53G,IAAK,SAAUC,GAEXjH,KAAKy9G,aAAez9G,KAAK69G,WAAWa,SAAS1+G,KAAK6+G,QAAQ53G,IAEhC,OAAtBjH,KAAKy9G,eAELz9G,KAAK4+G,YAAc33G,EACnBjH,KAAKywE,QAAQrjD,SAASptB,KAAKy9G,cAEvBz9G,KAAKm/G,UAELn/G,KAAKm/G,SAASt3E,SAAS7nC,KAAMA,KAAKy9G,kBAWlD52G,OAAOyF,eAAevL,EAAOusE,UAAUzrE,UAAW,QAAS,CAEvDkF,IAAK,WAED,OAAO,IAAO/G,KAAK25D,OAGvB3yD,IAAK,SAAUC,GAEC,EAARA,IAEAjH,KAAK25D,MAAQ,IAAO1yD,MAUhCJ,OAAOyF,eAAevL,EAAOusE,UAAUzrE,UAAW,eAAgB,CAE9DkF,IAAK,WAED,OAA0B,OAAlB/G,KAAKm/G,UAGjBn4G,IAAK,SAAUC,GAEPA,GAA2B,OAAlBjH,KAAKm/G,SAEdn/G,KAAKm/G,SAAW,IAAIp+G,EAAO0jC,OAErBx9B,GAA2B,OAAlBjH,KAAKm/G,WAEpBn/G,KAAKm/G,SAASvwE,UACd5uC,KAAKm/G,SAAW,SAoB5Bp+G,EAAOusE,UAAU8yC,mBAAqB,SAAUjU,EAAQhgG,EAAOH,EAAMmtF,EAAQknB,QAE1Dj6G,IAAX+yF,IAAwBA,EAAS,IAErC,IAAIthE,EAAS,GACT3qB,EAAQ,GAEZ,GAAIf,EAAQH,EAER,IAAK,IAAI/J,EAAIkK,EAAOlK,GAAK+J,EAAM/J,IAY3BiL,EAAQi/F,GAPJj/F,EAHmB,iBAAZmzG,EAGCt/G,EAAO8yB,MAAM6B,IAAIzzB,EAAEgpB,WAAYo1F,EAAS,IAAK,GAI7Cp+G,EAAEgpB,YAGWkuE,EAEzBthE,EAAOlwB,KAAKuF,QAKhB,IAASjL,EAAIkK,EAAYH,GAAL/J,EAAWA,IAY3BiL,EAAQi/F,GAPJj/F,EAHmB,iBAAZmzG,EAGCt/G,EAAO8yB,MAAM6B,IAAIzzB,EAAEgpB,WAAYo1F,EAAS,IAAK,GAI7Cp+G,EAAEgpB,YAGWkuE,EAEzBthE,EAAOlwB,KAAKuF,GAIpB,OAAO2qB,GAqBX92B,EAAO87E,MAAQ,SAAUp0E,EAAOnF,EAAGC,EAAGmB,EAAOC,EAAQ0vB,GAKjDr0B,KAAKyI,MAAQA,EAKbzI,KAAKsD,EAAIA,EAKTtD,KAAKuD,EAAIA,EAKTvD,KAAK0E,MAAQA,EAKb1E,KAAK2E,OAASA,EAEK,IAAf3E,KAAK0E,OAA+B,IAAhB1E,KAAK2E,QAEzByL,QAAQ+K,KAAK,wBAA0BkZ,EAAO,mCAMlDr0B,KAAKq0B,KAAOA,EAKZr0B,KAAKi6B,QAAUh3B,KAAKkvB,MAAMztB,EAAQ,GAKlC1E,KAAKk6B,QAAUj3B,KAAKkvB,MAAMxtB,EAAS,GAKnC3E,KAAK23B,SAAW52B,EAAOkC,KAAK00B,SAAS,EAAG,EAAGjzB,EAAOC,GAMlD3E,KAAKyO,SAAU,EAMfzO,KAAKu0E,SAAU,EAKfv0E,KAAK00E,YAAchwE,EAKnB1E,KAAK20E,YAAchwE,EAMnB3E,KAAKw0E,kBAAoB,EAMzBx0E,KAAKy0E,kBAAoB,EAMzBz0E,KAAKsgH,kBAAoB,EAMzBtgH,KAAKugH,kBAAoB,EAKzBvgH,KAAK81B,MAAQ91B,KAAKsD,EAAItD,KAAK0E,MAK3B1E,KAAK04B,OAAS14B,KAAKuD,EAAIvD,KAAK2E,QAGhC5D,EAAO87E,MAAMh7E,UAAY,CASrBkE,OAAQ,SAAUrB,EAAOC,GAErB3E,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EACd3E,KAAKi6B,QAAUh3B,KAAKkvB,MAAMztB,EAAQ,GAClC1E,KAAKk6B,QAAUj3B,KAAKkvB,MAAMxtB,EAAS,GACnC3E,KAAK23B,SAAW52B,EAAOkC,KAAK00B,SAAS,EAAG,EAAGjzB,EAAOC,GAClD3E,KAAK00E,YAAchwE,EACnB1E,KAAK20E,YAAchwE,EACnB3E,KAAK81B,MAAQ91B,KAAKsD,EAAIoB,EACtB1E,KAAK04B,OAAS14B,KAAKuD,EAAIoB,GAe3B67G,QAAS,SAAUjsC,EAASksC,EAAaC,EAAcC,EAAOC,EAAOC,EAAWC,IAE5E9gH,KAAKu0E,QAAUA,KAIXv0E,KAAK00E,YAAc+rC,EACnBzgH,KAAK20E,YAAc+rC,EACnB1gH,KAAKi6B,QAAUh3B,KAAKkvB,MAAMsuF,EAAc,GACxCzgH,KAAKk6B,QAAUj3B,KAAKkvB,MAAMuuF,EAAe,GACzC1gH,KAAKw0E,kBAAoBmsC,EACzB3gH,KAAKy0E,kBAAoBmsC,EACzB5gH,KAAKsgH,kBAAoBO,EACzB7gH,KAAKugH,kBAAoBO,IAWjCzqF,MAAO,WAEH,IAAIwB,EAAS,IAAI92B,EAAO87E,MAAM78E,KAAKyI,MAAOzI,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK0E,MAAO1E,KAAK2E,OAAQ3E,KAAKq0B,MAExF,IAAK,IAAI64C,KAAQltE,KAETA,KAAK0zB,eAAew5C,KAEpBr1C,EAAOq1C,GAAQltE,KAAKktE,IAI5B,OAAOr1C,GAUXkpF,QAAS,SAAU3pF,GAWf,YATYhxB,IAARgxB,EAEAA,EAAM,IAAIr2B,EAAOS,UAAUxB,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK0E,MAAO1E,KAAK2E,QAI5DyyB,EAAIG,MAAMv3B,KAAKsD,EAAGtD,KAAKuD,EAAGvD,KAAK0E,MAAO1E,KAAK2E,QAGxCyyB,IAKfr2B,EAAO87E,MAAMh7E,UAAUC,YAAcf,EAAO87E,MAc5C97E,EAAO27E,UAAY,WAMf18E,KAAK6+G,QAAU,GAMf7+G,KAAKghH,YAAc,IAGvBjgH,EAAO27E,UAAU76E,UAAY,CASzB+6E,SAAU,SAAU1vE,GAWhB,OATAA,EAAMzE,MAAQzI,KAAK6+G,QAAQ38G,OAE3BlC,KAAK6+G,QAAQl3G,KAAKuF,GAEC,KAAfA,EAAMmnB,OAENr0B,KAAKghH,YAAY9zG,EAAMmnB,MAAQnnB,EAAMzE,OAGlCyE,GAUXwxG,SAAU,SAAUj2G,GAOhB,OALIA,GAASzI,KAAK6+G,QAAQ38G,SAEtBuG,EAAQ,GAGLzI,KAAK6+G,QAAQp2G,IAUxBk2G,eAAgB,SAAUtqF,GAEtB,MAAsC,iBAA3Br0B,KAAKghH,YAAY3sF,GAEjBr0B,KAAK6+G,QAAQ7+G,KAAKghH,YAAY3sF,IAGlC,MAUXgqF,eAAgB,SAAUhqF,GAEtB,OAA8B,MAA1Br0B,KAAKghH,YAAY3sF,IAczBgC,MAAO,WAKH,IAHA,IAAIwB,EAAS,IAAI92B,EAAO27E,UAGfz6E,EAAI,EAAGA,EAAIjC,KAAK6+G,QAAQ38G,OAAQD,IAErC41B,EAAOgnF,QAAQl3G,KAAK3H,KAAK6+G,QAAQ58G,GAAGo0B,SAGxC,IAAK,IAAI9zB,KAAKvC,KAAKghH,YAEXhhH,KAAKghH,YAAYttF,eAAenxB,KAEhCs1B,EAAOmpF,YAAYz+G,GAAKvC,KAAKghH,YAAYz+G,IAIjD,OAAOs1B,GAYXopF,cAAe,SAAU90G,EAAOmQ,EAAKub,QAElBzxB,IAAXyxB,IAAwBA,EAAS,IAErC,IAAK,IAAI51B,EAAIkK,EAAOlK,GAAKqa,EAAKra,IAE1B41B,EAAOlwB,KAAK3H,KAAK6+G,QAAQ58G,IAG7B,OAAO41B,GAaXmmE,UAAW,SAAUD,EAAQmgB,EAAiBrmF,GAK1C,QAHwBzxB,IAApB83G,IAAiCA,GAAkB,QACxC93G,IAAXyxB,IAAwBA,EAAS,SAEtBzxB,IAAX23F,GAA0C,IAAlBA,EAAO77F,OAG/B,IAAK,IAAID,EAAI,EAAGA,EAAIjC,KAAK6+G,QAAQ38G,OAAQD,IAGrC41B,EAAOlwB,KAAK3H,KAAK6+G,QAAQ58G,SAM7B,IAASA,EAAI,EAAGA,EAAI87F,EAAO77F,OAAQD,IAG3Bi8G,EAGArmF,EAAOlwB,KAAK3H,KAAK0+G,SAAS3gB,EAAO97F,KAKjC41B,EAAOlwB,KAAK3H,KAAK2+G,eAAe5gB,EAAO97F,KAKnD,OAAO41B,GAaXsmF,gBAAiB,SAAUpgB,EAAQmgB,EAAiBrmF,GAKhD,QAHwBzxB,IAApB83G,IAAiCA,GAAkB,QACxC93G,IAAXyxB,IAAwBA,EAAS,SAEtBzxB,IAAX23F,GAA0C,IAAlBA,EAAO77F,OAG/B,IAAK,IAAID,EAAI,EAAGA,EAAIjC,KAAK6+G,QAAQ38G,OAAQD,IAErC41B,EAAOlwB,KAAK3H,KAAK6+G,QAAQ58G,GAAGwG,YAMhC,IAASxG,EAAI,EAAGA,EAAI87F,EAAO77F,OAAQD,IAG3Bi8G,GAAmBl+G,KAAK6+G,QAAQ9gB,EAAO97F,IAEvC41B,EAAOlwB,KAAK3H,KAAK6+G,QAAQ9gB,EAAO97F,IAAIwG,OAGpCzI,KAAK2+G,eAAe5gB,EAAO97F,KAE3B41B,EAAOlwB,KAAK3H,KAAK2+G,eAAe5gB,EAAO97F,IAAIwG,OAKvD,OAAOovB,GAQX91B,QAAS,WAEL/B,KAAK6+G,QAAU,KACf7+G,KAAKghH,YAAc,OAK3BjgH,EAAO27E,UAAU76E,UAAUC,YAAcf,EAAO27E,UAOhD71E,OAAOyF,eAAevL,EAAO27E,UAAU76E,UAAW,QAAS,CAEvDkF,IAAK,WAED,OAAO/G,KAAK6+G,QAAQ38G,UAiB5BnB,EAAOmgH,gBAAkB,CAkBrBC,YAAa,SAAU7+G,EAAMgR,EAAK2tF,EAAYC,EAAakgB,EAAUC,EAAQC,EAASC,QAEjEn7G,IAAbg7G,IAA0BA,GAAY,QAC3Bh7G,IAAXi7G,IAAwBA,EAAS,QACrBj7G,IAAZk7G,IAAyBA,EAAU,QACpBl7G,IAAfm7G,IAA4BA,EAAa,GAE7C,IAAIltC,EAAM/gE,EAWV,GATmB,iBAARA,EAEP+gE,EAAM/xE,EAAKwY,MAAMw5D,SAAShhE,GAI1BA,EAAM+gE,EAAIhgD,KAGF,OAARggD,EAEA,OAAO,KAGX,GAAI4sB,GAAc,GAAKC,GAAe,EAIlC,OAFA9wF,QAAQyZ,MAAM,iFAAkFvW,EAAK2tF,EAAYC,GAE1G,KAGX,IAAIx8F,EAAQ2vE,EAAI3vE,MACZC,EAAS0vE,EAAI1vE,OAEjB,GAAc,IAAVD,GAA0B,IAAXC,EAIf,OAFAyL,QAAQyZ,MAAM,8DAA+DvW,EAAK5O,EAAOC,GAElF,KAGX,GAAID,EAAQu8F,GAAct8F,EAASu8F,EAI/B,OAFA9wF,QAAQyZ,MAAM,iHAAkHvW,EAAK5O,EAAOC,EAAQs8F,EAAYC,GAEzJ,KAGX,IAAIsgB,EAAMv+G,KAAKkvB,OAAOztB,EAAQ28G,IAAWpgB,EAAaqgB,IAClDG,EAASx+G,KAAKkvB,OAAOxtB,EAAS08G,IAAWngB,EAAcogB,IACvDpmE,EAAQsmE,EAAMC,EACdC,EAAiBxmE,EACjBymE,EAAgBzmE,EAAQ,EACxB0mE,EAAa,EACbC,EAAYF,EAEhB,GAAiBzmE,EAAbqmE,GAAsBA,GAAcrmE,EAIpC,OAFA9qC,QAAQyZ,MAAM,oEAAqEvW,EAAKiuG,EAAYrmE,GAE7F,KAyBX,IAtBgB,EAAZkmE,IAGAS,GADA3mE,EAAQkmE,GACY,GAGpBI,EAAM,GAENpxG,QAAQ+K,KACJ,8GACA7H,EAAK5O,EAAOu8F,EAAaogB,EAASC,EAASrgB,EAAYogB,EAAQC,GAInEG,EAAS,GAETrxG,QAAQ+K,KACJ,gHACA7H,EAAK3O,EAAQu8F,EAAcmgB,EAASC,EAASpgB,EAAamgB,EAAQC,GAInD,IAAnBI,EAIA,OAFAtxG,QAAQyZ,MAAM,8CAA+CvW,GAEtD,KAkBX,GAfiB,EAAbiuG,EAKAM,GAFAD,EAAaL,IACbrmE,EAAQj4C,KAAKy4B,IAAIwf,EAAOwmE,EAAiBH,IACR,EAE5BA,EAAa,IAKlBK,GAFAC,EAAYF,EAAgBJ,IAC5BrmE,EAAQj4C,KAAKy4B,IAAIwf,EAAOwmE,EAAiBH,IACR,GAGjCK,EAAa,EAIb,OAFAxxG,QAAQyZ,MAAM,kDAAmDvW,EAAKsuG,GAE/D,KAGX,GAAgBD,EAAZE,EAIA,OAFAzxG,QAAQ+K,KAAK,gFAAiF7H,EAAKuuG,EAAWF,GAEvG,KASX,IALA,IAAIhtG,EAAO,IAAI5T,EAAO27E,UAClBp5E,EAAI+9G,EACJ99G,EAAI89G,EACJzB,EAAa,EAER39G,EAAI,EAAGA,EAAIy/G,KAERG,EAAJ5/G,GAF4BA,IAOvB2/G,GAAL3/G,GAEA0S,EAAKioE,SAAS,IAAI77E,EAAO87E,MAAM+iC,IAAct8G,EAAGC,EAAG09F,EAAYC,EAAa,KAK3Dx8F,GAFrBpB,GAAK29F,EAAaqgB,GAEVrgB,IAEJ39F,EAAI+9G,EACJ99G,GAAK29F,EAAcogB,GAI3B,OAAO3sG,GAWXmtG,SAAU,SAAUx/G,EAAMy/G,GAGtB,IAAKA,EAAKhkB,OAIN,OAFA3tF,QAAQ+K,KAAK,kGACb/K,QAAQC,IAAI0xG,GAWhB,IANA,IAIIC,EAJArtG,EAAO,IAAI5T,EAAO27E,UAGlBqhB,EAASgkB,EAAKhkB,OAGT97F,EAAI,EAAGA,EAAI87F,EAAO77F,OAAQD,IAE/B+/G,EAAWrtG,EAAKioE,SAAS,IAAI77E,EAAO87E,MAChC56E,EACA87F,EAAO97F,GAAGiL,MAAM5J,EAChBy6F,EAAO97F,GAAGiL,MAAM3J,EAChBw6F,EAAO97F,GAAGiL,MAAMiJ,EAChB4nF,EAAO97F,GAAGiL,MAAMuY,EAChBs4E,EAAO97F,GAAGggH,WAGVlkB,EAAO97F,GAAGsyE,SAEVytC,EAASxB,QACLziB,EAAO97F,GAAGsyE,QACVwpB,EAAO97F,GAAGigH,WAAW/rG,EACrB4nF,EAAO97F,GAAGigH,WAAWz8F,EACrBs4E,EAAO97F,GAAGkgH,iBAAiB7+G,EAC3By6F,EAAO97F,GAAGkgH,iBAAiB5+G,EAC3Bw6F,EAAO97F,GAAGkgH,iBAAiBhsG,EAC3B4nF,EAAO97F,GAAGkgH,iBAAiB18F,GAI/Bs4E,EAAO97F,GAAGwM,UAEVuzG,EAASvzG,SAAU,GAI3B,OAAOkG,GAWXytG,cAAe,SAAU9/G,EAAMy/G,GAgB3B,GAbgB,CAAE,SAAU,YAAY,aAAa,YAAa,aAExD/uF,QAAQ,SAAU1f,GAExB,IAAKyuG,EAAKzuG,GAIN,OAFAlD,QAAQ+K,KAAK,oFAAsF7H,EAAM,eACzGlD,QAAQC,IAAI0xG,KAMO,IAAvBA,EAAKM,OAAOngH,OAIZ,OAFAkO,QAAQ+K,KAAK,wGACb/K,QAAQC,IAAI0xG,GAYhB,IARA,IAAIptG,EAAO,IAAI5T,EAAO27E,UAElB4lC,EAAaP,EAAKO,WAClBC,EAAYR,EAAKQ,UAEjBxkB,EAASgkB,EAAKM,OAAO,GAAGG,MAGnBvgH,EAAI,EAAGA,EAAI87F,EAAO77F,OAAQD,IAEpB0S,EAAKioE,SAAS,IAAI77E,EAAO87E,MAChC56E,EACA87F,EAAO97F,GAAGqB,EACVy6F,EAAO97F,GAAGsB,EACVg/G,EACAD,EACA,SAAWrgH,IAINu+G,SAAQ,GAGrB,OAAO7rG,GAWX8tG,aAAc,SAAUngH,EAAMy/G,GAG1B,IAAKA,EAAKhkB,OAIN,OAFA3tF,QAAQ+K,KAAK,uGACb/K,QAAQC,IAAI0xG,GAKhB,IAIIC,EAJArtG,EAAO,IAAI5T,EAAO27E,UAGlBqhB,EAASgkB,EAAKhkB,OAEd97F,EAAI,EAER,IAAK,IAAIqR,KAAOyqF,EAEZikB,EAAWrtG,EAAKioE,SAAS,IAAI77E,EAAO87E,MAChC56E,EACA87F,EAAOzqF,GAAKpG,MAAM5J,EAClBy6F,EAAOzqF,GAAKpG,MAAM3J,EAClBw6F,EAAOzqF,GAAKpG,MAAMiJ,EAClB4nF,EAAOzqF,GAAKpG,MAAMuY,EAClBnS,IAGAyqF,EAAOzqF,GAAKihE,SAEZytC,EAASxB,QACLziB,EAAOzqF,GAAKihE,QACZwpB,EAAOzqF,GAAK4uG,WAAW/rG,EACvB4nF,EAAOzqF,GAAK4uG,WAAWz8F,EACvBs4E,EAAOzqF,GAAK6uG,iBAAiB7+G,EAC7By6F,EAAOzqF,GAAK6uG,iBAAiB5+G,EAC7Bw6F,EAAOzqF,GAAK6uG,iBAAiBhsG,EAC7B4nF,EAAOzqF,GAAK6uG,iBAAiB18F,GAIjCs4E,EAAOzqF,GAAK7E,UAEZuzG,EAASvzG,SAAU,GAGvBxM,IAGJ,OAAO0S,GAWX+tG,QAAS,SAAUpgH,EAAMqgH,GAGrB,GAAKA,EAAIC,qBAAqB,gBAA9B,CAsBA,IAfA,IAEIZ,EAEA3tF,EACAnnB,EACA5J,EACAC,EACAmB,EACAC,EACAk+G,EACAC,EACA7hB,EACAC,EAbAvsF,EAAO,IAAI5T,EAAO27E,UAClBqhB,EAAS4kB,EAAIC,qBAAqB,cAc7B3gH,EAAI,EAAGA,EAAI87F,EAAO77F,OAAQD,IAI/BoyB,GAFAnnB,EAAQ6wF,EAAO97F,GAAGwP,YAEL4iB,KAAKptB,MAClB3D,EAAIiyB,SAASroB,EAAM5J,EAAE2D,MAAO,IAC5B1D,EAAIgyB,SAASroB,EAAM3J,EAAE0D,MAAO,IAC5BvC,EAAQ6wB,SAASroB,EAAMxI,MAAMuC,MAAO,IACpCtC,EAAS4wB,SAASroB,EAAMvI,OAAOsC,MAAO,IAGtC67G,EADAD,EAAS,KAGL31G,EAAM21G,SAENA,EAAS5/G,KAAK81B,IAAIxD,SAASroB,EAAM21G,OAAO57G,MAAO,KAC/C67G,EAAS7/G,KAAK81B,IAAIxD,SAASroB,EAAM41G,OAAO77G,MAAO,KAC/Cg6F,EAAa1rE,SAASroB,EAAM+zF,WAAWh6F,MAAO,IAC9Ci6F,EAAc3rE,SAASroB,EAAMg0F,YAAYj6F,MAAO,KAGpD+6G,EAAWrtG,EAAKioE,SAAS,IAAI77E,EAAO87E,MAAM56E,EAAGqB,EAAGC,EAAGmB,EAAOC,EAAQ0vB,IAGnD,OAAXwuF,GAA8B,OAAXC,GAEnBd,EAASxB,SAAQ,EAAM97G,EAAOC,EAAQk+G,EAAQC,EAAQ7hB,EAAYC,GAI1E,OAAOvsF,EAlDHvE,QAAQ+K,KAAK,iGAwFzBpa,EAAO+vC,MAAQ,SAAUxuC,GAKrBtC,KAAKsC,KAAOA,EAMZtC,KAAK+iH,gBAAiB,EAOtB/iH,KAAK+a,OAAS,CACV/C,OAAQ,GACRgD,MAAO,GACPlV,QAAS,GACTgjC,MAAO,GACP0vC,MAAO,GACP7B,KAAM,GACNorC,KAAM,GACNY,IAAK,GACLz5E,QAAS,GACTgvC,QAAS,GACT8qC,OAAQ,GACRtqC,WAAY,GACZuqC,WAAY,GACZn2G,OAAQ,GACRtI,cAAe,GACf0+G,kBAAmB,GACnBvuG,KAAM,IAOV3U,KAAKmjH,QAAU,GAMfnjH,KAAKojH,aAAe,IAAIvtC,MAMxB71E,KAAKqjH,SAAW,KAKhBrjH,KAAKsjH,cAAgB,IAAIviH,EAAO0jC,OAMhCzkC,KAAKujH,UAAY,GAEjBvjH,KAAKujH,UAAUxiH,EAAO+vC,MAAMllB,QAAU5rB,KAAK+a,OAAO/C,OAClDhY,KAAKujH,UAAUxiH,EAAO+vC,MAAMpiB,OAAS1uB,KAAK+a,OAAOC,MACjDhb,KAAKujH,UAAUxiH,EAAO+vC,MAAM0yE,SAAWxjH,KAAK+a,OAAOjV,QACnD9F,KAAKujH,UAAUxiH,EAAO+vC,MAAM2yE,OAASzjH,KAAK+a,OAAO+tB,MACjD9oC,KAAKujH,UAAUxiH,EAAO+vC,MAAMliB,MAAQ5uB,KAAK+a,OAAO47D,KAChD32E,KAAKujH,UAAUxiH,EAAO+vC,MAAM4yE,SAAW1jH,KAAK+a,OAAOmuB,QACnDlpC,KAAKujH,UAAUxiH,EAAO+vC,MAAM7hB,SAAWjvB,KAAK+a,OAAOm9D,QACnDl4E,KAAKujH,UAAUxiH,EAAO+vC,MAAM6yE,QAAU3jH,KAAK+a,OAAOioG,OAClDhjH,KAAKujH,UAAUxiH,EAAO+vC,MAAMzhB,YAAcrvB,KAAK+a,OAAO29D,WACtD14E,KAAKujH,UAAUxiH,EAAO+vC,MAAM8yE,YAAc5jH,KAAK+a,OAAOkoG,WACtDjjH,KAAKujH,UAAUxiH,EAAO+vC,MAAM+yE,MAAQ7jH,KAAK+a,OAAOgnG,KAChD/hH,KAAKujH,UAAUxiH,EAAO+vC,MAAMgzE,KAAO9jH,KAAK+a,OAAO4nG,IAC/C3iH,KAAKujH,UAAUxiH,EAAO+vC,MAAM1gB,OAASpwB,KAAK+a,OAAOy9D,MACjDx4E,KAAKujH,UAAUxiH,EAAO+vC,MAAMizE,QAAU/jH,KAAK+a,OAAOjO,OAClD9M,KAAKujH,UAAUxiH,EAAO+vC,MAAMkzE,gBAAkBhkH,KAAK+a,OAAOvW,cAC1DxE,KAAKujH,UAAUxiH,EAAO+vC,MAAMmzE,MAAQjkH,KAAK+a,OAAOpG,KAMhD3U,KAAKkkH,cAAgB,EAOrBlkH,KAAK2gD,QAAU,IAAI5/C,EAAO0jC,OAE1BzkC,KAAKmkH,cAOTpjH,EAAO+vC,MAAMllB,OAAS,EAMtB7qB,EAAO+vC,MAAMpiB,MAAQ,EAMrB3tB,EAAO+vC,MAAM0yE,QAAU,EAMvBziH,EAAO+vC,MAAM2yE,MAAQ,EAMrB1iH,EAAO+vC,MAAMliB,KAAO,EAMpB7tB,EAAO+vC,MAAM4yE,QAAU,EAMvB3iH,EAAO+vC,MAAM7hB,QAAU,EAMvBluB,EAAO+vC,MAAM6yE,OAAS,EAMtB5iH,EAAO+vC,MAAMzhB,WAAa,EAM1BtuB,EAAO+vC,MAAM8yE,WAAa,GAM1B7iH,EAAO+vC,MAAM+yE,KAAO,GAMpB9iH,EAAO+vC,MAAMgzE,IAAM,GAMnB/iH,EAAO+vC,MAAM1gB,MAAQ,GAMrBrvB,EAAO+vC,MAAMizE,OAAS,GAMtBhjH,EAAO+vC,MAAMkzE,eAAiB,GAM9BjjH,EAAO+vC,MAAMmzE,KAAO,GAOpBljH,EAAO+vC,MAAM/mB,QAAU,KAOvBhpB,EAAO+vC,MAAMszE,YAAc,YAO3BrjH,EAAO+vC,MAAMuzE,YAAc,yKAO3BtjH,EAAO+vC,MAAMwzE,QAAU,KAOvBvjH,EAAO+vC,MAAMyzE,YAAc,YAO3BxjH,EAAO+vC,MAAM0zE,YAAc,6WAQ3BzjH,EAAO+vC,MAAM2zE,cAAgB,IAE7B1jH,EAAO+vC,MAAMjvC,UAAY,CAmBrB6iH,6BAA8B,SAAUpxG,EAAKmlE,EAAKksC,EAAWC,GAErD5kH,KAAKi7F,cAAc3nF,IAEnBtT,KAAK6kH,YAAYvxG,GAGrB,IAAIqB,EAAQgwG,KAAa5jH,EAAO+jH,aAAgB/jH,EAAO+jH,aAAaH,GAAWC,GAAeA,EAE1F9+G,EAAU,CACVwN,IAAKA,EACLmlE,IAAKA,EACL9jE,KAAMA,EACNuG,KAAM,IAAIjb,KAAKusB,YAAY7X,EAAM,KAAM3U,KAAKsC,KAAK6B,YACjD+I,MAAO,IAAInM,EAAO87E,MAAM,EAAG,EAAG,EAAGloE,EAAKjQ,MAAOiQ,EAAKhQ,OAAQ2O,GAC1D4gE,UAAW,IAAInzE,EAAO27E,UACtBqoC,WAAYJ,GAShB,OANA7+G,EAAQouE,UAAU0I,SAAS,IAAI77E,EAAO87E,MAAM,EAAG,EAAG,EAAGloE,EAAKjQ,MAAOiQ,EAAKhQ,OAAQ8zE,IAE9Ez4E,KAAK+a,OAAOC,MAAM1H,GAAOxN,EAEzB9F,KAAKglH,YAAYvsC,EAAK3yE,GAEfA,GAWXm/G,UAAW,SAAU3xG,EAAK0E,EAAQrK,QAEdvH,IAAZuH,IAAyBA,EAAUqK,EAAOsB,WAAW,OAEzDtZ,KAAK+a,OAAO/C,OAAO1E,GAAO,CAAE0E,OAAQA,EAAQrK,QAASA,IAezD4wE,SAAU,SAAUjrE,EAAKmlE,EAAK9jE,GAEtB3U,KAAKi7F,cAAc3nF,IAEnBtT,KAAK6kH,YAAYvxG,IAGC,IAAlBqB,EAAK8X,UAELrc,QAAQ+K,KAAK,oDAAqD7H,GAGtE,IAAI+gE,EAAM,CACN/gE,IAAKA,EACLmlE,IAAKA,EACL9jE,KAAMA,EACNuG,KAAM,IAAIjb,KAAKusB,YAAY7X,EAAM,KAAM3U,KAAKsC,KAAK6B,YACjD+I,MAAO,IAAInM,EAAO87E,MAAM,EAAG,EAAG,EAAGloE,EAAKjQ,MAAOiQ,EAAKhQ,OAAQ2O,GAC1D4gE,UAAW,IAAInzE,EAAO27E,WAkB1B,OAfArI,EAAIH,UAAU0I,SAAS,IAAI77E,EAAO87E,MAAM,EAAG,EAAG,EAAGloE,EAAKjQ,MAAOiQ,EAAKhQ,OAAQ8zE,IAE1Ez4E,KAAK+a,OAAOC,MAAM1H,GAAO+gE,EAEzBr0E,KAAKglH,YAAYvsC,EAAKpE,GAEV,cAAR/gE,EAEAvS,EAAO+vC,MAAM/mB,QAAU,IAAI9pB,KAAKyM,QAAQ2nE,EAAIn5D,MAE/B,cAAR5H,IAELvS,EAAO+vC,MAAMwzE,QAAU,IAAIrkH,KAAKyM,QAAQ2nE,EAAIn5D,OAGzCm5D,GAOX6wC,cAAe,SAAU5xG,EAAK1D,EAAKsnC,GAE/B,IAAI3Z,EAAOv9B,KACPq0E,EAAM,IAAIwB,MAEdxB,EAAIgK,OAAS,WAETnnC,EAASnzC,KAAK/D,KAAMu9B,EAAKghD,SAASjrE,EAAK,KAAM+gE,IAC7C92C,EAAK4nF,iBACL9wC,EAAIgK,OAAS,MAGjBr+E,KAAKolH,cACL/wC,EAAIzkE,IAAMA,GAYdy1G,gBAAiB,WAEbrlH,KAAKklH,cAAcnkH,EAAO+vC,MAAMszE,YAAarjH,EAAO+vC,MAAMuzE,YAAa,SAAUjwF,GAG7EA,EAAIlZ,KAAK7N,YAAa,EAGtBtM,EAAO+vC,MAAM/mB,QAAU,IAAI9pB,KAAKyM,QAAQ0nB,EAAIlZ,SAapDoqG,gBAAiB,WAEbtlH,KAAKklH,cAAcnkH,EAAO+vC,MAAMyzE,YAAaxjH,EAAO+vC,MAAM0zE,YAAa,SAAUpwF,GAG7ErzB,EAAO+vC,MAAMwzE,QAAU,IAAIrkH,KAAKyM,QAAQ0nB,EAAIlZ,SAcpDqqG,SAAU,SAAUjyG,EAAKmlE,EAAK9jE,EAAMosC,EAAUykE,QAEzBp/G,IAAb26C,IAA2CykE,IAAjBzkE,GAAW,SACxB36C,IAAbo/G,IAA4CA,IAAlBzkE,GAAW,IAEzC,IAAI0kE,GAAU,EAEVD,IAEAC,GAAU,GAGdzlH,KAAK+a,OAAO+tB,MAAMx1B,GAAO,CACrBmlE,IAAKA,EACL9jE,KAAMA,EACN+wG,YAAY,EACZD,QAASA,EACT1kE,SAAUA,EACVykE,SAAUA,EACVz0D,OAAQ/wD,KAAKsC,KAAKwmC,MAAM68E,aAG5B3lH,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAO+tB,MAAMx1B,KAW5CsyG,QAAS,SAAUtyG,EAAKmlE,EAAK9jE,GAEzB3U,KAAK+a,OAAO47D,KAAKrjE,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMA,GAE1C3U,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAO47D,KAAKrjE,KAY3CuyG,eAAgB,SAAUvyG,EAAKmlE,EAAKqpC,EAAU7sG,GAE1CjV,KAAK+a,OAAOmuB,QAAQ51B,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMmtG,EAAU7sG,OAAQA,GAE/DjV,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAOmuB,QAAQ51B,KAY9CwyG,WAAY,SAAUxyG,EAAKmlE,EAAKstC,EAAS9wG,GAErCjV,KAAK+a,OAAOm9D,QAAQ5kE,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMoxG,EAAS9wG,OAAQA,GAE9DjV,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAOm9D,QAAQ5kE,KAU9C0yG,UAAW,SAAU1yG,EAAK2yG,GAEtBjmH,KAAK+a,OAAOioG,OAAO1vG,GAAO2yG,GAY9BttC,cAAe,SAAUrlE,EAAKolE,EAAYxE,GAYtC,OAVAwE,EAAWplE,IAAMA,OAEClN,IAAd8tE,IAEAA,EAAY,IAAInzE,EAAO27E,WACbE,SAASlE,EAAWiE,cAGlC38E,KAAK+a,OAAO29D,WAAWplE,GAAO,CAAEqB,KAAM+jE,EAAYxE,UAAWA,GAEtDwE,GAeXwtC,cAAe,SAAU5yG,EAAKmlE,EAAK9jE,EAAMwxG,EAAWC,EAAWxuC,EAAUC,GAErE,IAAIzjD,EAAM,CACNqkD,IAAKA,EACL9jE,KAAMA,EACN4iE,KAAM,KACNr8D,KAAM,IAAIjb,KAAKusB,YAAY7X,EAAM,KAAM3U,KAAKsC,KAAK6B,kBAGpCiC,IAAbwxE,IAA0BA,EAAW,QACxBxxE,IAAbyxE,IAA0BA,EAAW,GAIrCzjD,EAAImjD,KAFU,SAAd6uC,EAEWrlH,EAAO+jH,aAAauB,eAAeF,EAAW/xF,EAAIlZ,KAAM08D,EAAUC,GAAU,EAAO73E,KAAKsC,KAAK6B,YAI7FpD,EAAO+jH,aAAawB,cAAcH,EAAW/xF,EAAIlZ,KAAM08D,EAAUC,GAAU,EAAO73E,KAAKsC,KAAK6B,YAG3GnE,KAAK+a,OAAOkoG,WAAW3vG,GAAO8gB,EAE9Bp0B,KAAKglH,YAAYvsC,EAAKrkD,IAuB1BmyF,uBAAwB,SAAUjzG,EAAKkzG,EAAUC,EAAYC,EAASC,EAAU/uC,EAAUC,GAEtF,IAAI3qE,EAAQlN,KAAK2+G,eAAe6H,EAAUC,GAE1C,GAAKv5G,EAAL,CAKA,IASI05G,EATAxyF,EAAM,CACNmjD,KAAM,KACNr8D,KAAMlb,KAAK6mH,eAAeL,GAC1Bt5G,MAAOA,QAGM9G,IAAbwxE,IAA0BA,EAAW,QACxBxxE,IAAbyxE,IAA0BA,EAAW,GAIxB,SAAb8uC,GAEAC,EAAW5mH,KAAK8mH,QAAQJ,GACxBtyF,EAAImjD,KAAOx2E,EAAO+jH,aAAauB,eAAeO,EAAUxyF,EAAIlZ,KAAM08D,EAAUC,EAAU3qE,EAAOlN,KAAKsC,KAAK6B,cAIvGyiH,EAAW5mH,KAAK+mH,OAAOL,GACvBtyF,EAAImjD,KAAOx2E,EAAO+jH,aAAawB,cAAcM,EAAUxyF,EAAIlZ,KAAM08D,EAAUC,EAAU3qE,EAAOlN,KAAKsC,KAAK6B,aAG1GnE,KAAK+a,OAAOkoG,WAAW3vG,GAAO8gB,IAWlC4yF,QAAS,SAAU1zG,EAAKmlE,EAAK9jE,GAEzB3U,KAAK+a,OAAOgnG,KAAKzuG,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMA,GAE1C3U,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAOgnG,KAAKzuG,KAW3C2zG,OAAQ,SAAU3zG,EAAKmlE,EAAK9jE,GAExB3U,KAAK+a,OAAO4nG,IAAIrvG,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMA,GAEzC3U,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAO4nG,IAAIrvG,KAY1C4zG,SAAU,SAAU5zG,EAAKmlE,EAAK9jE,EAAMwyG,GAEhCnnH,KAAK+a,OAAOy9D,MAAMllE,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMA,EAAMwyG,OAAQA,EAAQp2D,QAAQ,GAEzE/wD,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAOy9D,MAAMllE,KAW5C8zG,UAAW,SAAU9zG,EAAKmlE,EAAK9jE,GAE3B3U,KAAK+a,OAAOjO,OAAOwG,GAAO,CAAEmlE,IAAKA,EAAK9jE,KAAMA,GAE5C3U,KAAKglH,YAAYvsC,EAAKz4E,KAAK+a,OAAOjO,OAAOwG,KAU7CilE,iBAAkB,SAAUjlE,EAAKxN,GAE7B9F,KAAK+a,OAAOvW,cAAc8O,GAAO,CAAExN,QAASA,EAASoH,MAAO,IAAInM,EAAO87E,MAAM,EAAG,EAAG,EAAG/2E,EAAQpB,MAAOoB,EAAQnB,OAAQ,GAAI,MAiB7H0iH,eAAgB,SAAU/zG,EAAKmlE,EAAK9jE,EAAMssF,EAAYC,EAAakgB,EAAUC,EAAQC,EAASC,QAEzEn7G,IAAbg7G,IAA0BA,GAAY,QAC3Bh7G,IAAXi7G,IAAwBA,EAAS,QACrBj7G,IAAZk7G,IAAyBA,EAAU,GAEvC,IAAIltF,EAAM,CACN9gB,IAAKA,EACLmlE,IAAKA,EACL9jE,KAAMA,EACNssF,WAAYA,EACZC,YAAaA,EACbmgB,OAAQA,EACRC,QAASA,EACTpmG,KAAM,IAAIjb,KAAKusB,YAAY7X,EAAM,KAAM3U,KAAKsC,KAAK6B,YACjD+vE,UAAWnzE,EAAOmgH,gBAAgBC,YAAYnhH,KAAKsC,KAAMqS,EAAMssF,EAAYC,EAAakgB,EAAUC,EAAQC,EAASC,IAGvHvhH,KAAK+a,OAAOC,MAAM1H,GAAO8gB,EAEzBp0B,KAAKglH,YAAYvsC,EAAKrkD,IAa1BkzF,gBAAiB,SAAUh0G,EAAKmlE,EAAK9jE,EAAMwxG,EAAWlxG,GAElD,IAAImf,EAAM,CACN9gB,IAAKA,EACLmlE,IAAKA,EACL9jE,KAAMA,EACNuG,KAAM,IAAIjb,KAAKusB,YAAY7X,EAAM,KAAM3U,KAAKsC,KAAK6B,aAGjD8Q,IAAWlU,EAAO4+C,OAAO4nE,2BAEzBnzF,EAAI8/C,UAAYnzE,EAAOmgH,gBAAgBwB,QAAQ1iH,KAAKsC,KAAM6jH,EAAW7yG,GAEhE2B,IAAWlU,EAAO4+C,OAAO6nE,yBAE9BpzF,EAAI8/C,UAAYnzE,EAAOmgH,gBAAgBkB,cAAcpiH,KAAKsC,KAAM6jH,EAAW7yG,GAKvEhM,MAAMC,QAAQ4+G,EAAUpoB,QAExB3pE,EAAI8/C,UAAYnzE,EAAOmgH,gBAAgBY,SAAS9hH,KAAKsC,KAAM6jH,EAAW7yG,GAItE8gB,EAAI8/C,UAAYnzE,EAAOmgH,gBAAgBuB,aAAaziH,KAAKsC,KAAM6jH,EAAW7yG,GAIlFtT,KAAK+a,OAAOC,MAAM1H,GAAO8gB,EAEzBp0B,KAAKglH,YAAYvsC,EAAKrkD,IAU1BqzF,QAAS,SAAUn0G,EAAKqB,GAEpB3U,KAAK+a,OAAOpG,KAAKrB,GAAOqB,GAe5B+yG,YAAa,SAAUp0G,GAEnB,IAAIu7B,EAAQ7uC,KAER8oC,EAAQ9oC,KAAK2nH,SAASr0G,GAEtBw1B,IAEAA,EAAMn0B,KAAK/E,IAAMk5B,EAAM2vC,IAEvB3vC,EAAMn0B,KAAKu+B,iBAAiB,iBAAkB,WAE1C,OAAOrE,EAAM+4E,oBAAoBt0G,KAClC,GAEHw1B,EAAMn0B,KAAKk0B,SAUnB++E,oBAAqB,SAAUt0G,GAE3B,IAAIw1B,EAAQ9oC,KAAK2nH,SAASr0G,GAEtBw1B,IAEAA,EAAMioB,QAAS,EACf/wD,KAAKsjH,cAAcz7E,SAASv0B,KAUpCu0G,YAAa,SAAUv0G,EAAK4lC,EAAUjyC,GAElC,IAAI6hC,EAAQ9oC,KAAK2nH,SAASr0G,GAEtBw1B,IAEAA,EAAMoQ,GAAYjyC,IAW1B6gH,aAAc,SAAUx0G,EAAKqB,GAEzB,IAAIm0B,EAAQ9oC,KAAK2nH,SAASr0G,GAE1Bw1B,EAAMn0B,KAAOA,EACbm0B,EAAM28E,SAAU,EAChB38E,EAAM48E,YAAa,GAUvBqC,eAAgB,SAAUz0G,GAEtB,IAAIw1B,EAAQ9oC,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM2yE,MAAO,kBAElD,GAAI36E,EAEA,OAAOA,EAAM28E,SAYrBuC,aAAc,SAAU10G,GAEpB,IAAIw1B,EAAQ9oC,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM2yE,MAAO,kBAElD,GAAI36E,EAEA,OAAQA,EAAM28E,UAAYzlH,KAAKsC,KAAKwmC,MAAM68E,aAkBlDsC,SAAU,SAAUntG,EAAOxH,GAEvB,QAAItT,KAAKujH,UAAUzoG,GAAOxH,IAkB9B40G,SAAU,SAAUzvC,GAEhB,QAAIz4E,KAAKmjH,QAAQnjH,KAAKglH,YAAYvsC,KAetC0vC,eAAgB,SAAU70G,GAEtB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMllB,OAAQtY,IAU9C80G,aAAc,SAAU90G,GAEpB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMmzE,KAAM3wG,IAU5C2nF,cAAe,SAAU3nF,GAErB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMpiB,MAAOpb,IAU7C+0G,gBAAiB,SAAU/0G,GAEvB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM0yE,QAASlwG,IAU/Cg1G,cAAe,SAAUh1G,GAErB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM2yE,MAAOnwG,IAU7Ci1G,aAAc,SAAUj1G,GAEpB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMliB,KAAMtb,IAU5Ck1G,gBAAiB,SAAUl1G,GAEvB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM4yE,QAASpwG,IAU/Cm1G,gBAAiB,SAAUn1G,GAEvB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM7hB,QAAS3b,IAU/Co1G,eAAgB,SAAUp1G,GAEtB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM6yE,OAAQrwG,IAU9Cq1G,mBAAoB,SAAUr1G,GAE1B,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMzhB,WAAY/b,IAUlDs1G,mBAAoB,SAAUt1G,GAE1B,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM8yE,WAAYtwG,IAUlDu1G,aAAc,SAAUv1G,GAEpB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM+yE,KAAMvwG,IAU5Cw1G,YAAa,SAAUx1G,GAEnB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMgzE,IAAKxwG,IAU3Cy1G,cAAe,SAAUz1G,GAErB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAM1gB,MAAO9c,IAU7C01G,eAAgB,SAAU11G,GAEtB,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMizE,OAAQzwG,IAU9C21G,sBAAuB,SAAU31G,GAE7B,OAAOtT,KAAKioH,SAASlnH,EAAO+vC,MAAMkzE,eAAgB1wG,IAsBtDg2F,QAAS,SAAUh2F,EAAKwH,EAAOo/B,EAAQhB,GAEnC,OAAKl5C,KAAKioH,SAASntG,EAAOxH,QAQTlN,IAAb8yC,EAEOl5C,KAAKujH,UAAUzoG,GAAOxH,GAItBtT,KAAKujH,UAAUzoG,GAAOxH,GAAK4lC,IAZ9BgB,GAEA9pC,QAAQ+K,KAAK,gBAAkB++B,EAAS,UAAY5mC,EAAM,yBAa3D,OAcXqtE,UAAW,SAAUrtE,GAEjB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMllB,OAAQ,YAAa,WAmB/D0oD,SAAU,SAAUhhE,EAAK41G,GAEjB51G,MAAAA,IAEAA,EAAM,kBAGGlN,IAAT8iH,IAAsBA,GAAO,GAEjC,IAAI70C,EAAMr0E,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMpiB,MAAO,YAOhD,OALY,OAAR2lD,IAEAA,EAAMr0E,KAAKspG,QAAQ,YAAavoG,EAAO+vC,MAAMpiB,MAAO,aAGpDw6F,EAEO70C,EAIAA,EAAI1/D,MAanBw0G,gBAAiB,SAAU71G,GAEvB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM0yE,QAAS,kBAAmB,UActEmE,SAAU,SAAUr0G,GAEhB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM2yE,MAAO,aAcjD2F,aAAc,SAAU91G,GAEpB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM2yE,MAAO,eAAgB,SAcjE4F,QAAS,SAAU/1G,GAEf,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMliB,KAAM,UAAW,SAkB3D06F,eAAgB,SAAUh2G,EAAKqoC,EAAQ4tE,GAEnC,IAAI50G,EAAO3U,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM4yE,QAAS,iBAAkB,QAErE,GAAa,OAAT/uG,GAAAA,MAAiBgnC,EAEjB,OAAOhnC,EAGX,GAAIA,EAAKgnC,GACT,CACI,IAAI6tE,EAAW70G,EAAKgnC,GAGpB,IAAI6tE,IAAYD,EAmBZ,OAAOC,EAjBP,IAAK,IAAIC,KAAWD,EAMhB,IAHAC,EAAUD,EAASC,IAGPF,aAAeA,EAEvB,OAAOE,EAKfr5G,QAAQ+K,KAAK,kEAAoEouG,EAAa,OAASj2G,EAAM,UASjHlD,QAAQ+K,KAAK,qDAAuD7H,EAAM,MAAQqoC,EAAS,KAG/F,OAAO,MAcX+tE,eAAgB,SAAUp2G,GAEtB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM7hB,QAAS,mBAcnD06F,UAAW,SAAUr2G,GAEjB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM6yE,OAAQ,cAclDiG,cAAe,SAAUt2G,GAErB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMzhB,WAAY,gBAAiB,SAcvEsqE,cAAe,SAAUrmF,GAErB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM8yE,WAAY,kBAkBtDkD,QAAS,SAAUxzG,EAAK+iB,GAEpB,IAAI1hB,EAAO3U,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM+yE,KAAM,UAAW,QAE3D,OAAIlvG,EAEI0hB,EAEOt1B,EAAO8yB,MAAMoC,QAAO,EAAM3uB,MAAMC,QAAQoN,GAAQ,GAAK,GAAIA,GAIzDA,EAKJ,MAefoyG,OAAQ,SAAUzzG,GAEd,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMgzE,IAAK,SAAU,SAczD+F,SAAU,SAAUv2G,GAEhB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAM1gB,MAAO,aAcjD05F,UAAW,SAAUx2G,GAEjB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMizE,OAAQ,YAAa,SAc/DgG,iBAAkB,SAAUz2G,GAExB,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMkzE,eAAgB,qBAU1DgG,QAAS,SAAU12G,GAEf,OAAOtT,KAAKspG,QAAQh2F,EAAKvS,EAAO+vC,MAAMmzE,KAAM,YAiBhD4C,eAAgB,SAAUvzG,EAAKwH,GAI3B,YAFc1U,IAAV0U,IAAuBA,EAAQ/Z,EAAO+vC,MAAMpiB,OAEzC1uB,KAAKspG,QAAQh2F,EAAKwH,EAAO,iBAAkB,SAWtD4jG,SAAU,SAAUprG,EAAKwH,GAIrB,YAFc1U,IAAV0U,IAAuBA,EAAQ/Z,EAAO+vC,MAAMpiB,OAEzC1uB,KAAKspG,QAAQh2F,EAAKwH,EAAO,WAAY,UAWhDmvG,cAAe,SAAU32G,EAAKwH,GAE1B,IAAInG,EAAO3U,KAAKi0E,aAAa3gE,EAAKwH,GAElC,OAAInG,EAEOA,EAAKumC,MAIL,GAgBf+4B,aAAc,SAAU3gE,EAAKwH,GAIzB,YAFc1U,IAAV0U,IAAuBA,EAAQ/Z,EAAO+vC,MAAMpiB,OAEzC1uB,KAAKspG,QAAQh2F,EAAKwH,EAAO,eAAgB,cAWpDi5D,aAAc,SAAUzgE,EAAKwH,GAIzB,YAFc1U,IAAV0U,IAAuBA,EAAQ/Z,EAAO+vC,MAAMpiB,OAEM,OAA9C1uB,KAAKspG,QAAQh2F,EAAKwH,EAAO,GAAI,cAWzCghF,gBAAiB,SAAUxoF,EAAK4gE,EAAWp5D,QAEzB1U,IAAV0U,IAAuBA,EAAQ/Z,EAAO+vC,MAAMpiB,OAE5C1uB,KAAKujH,UAAUzoG,GAAOxH,KAEtBtT,KAAKujH,UAAUzoG,GAAOxH,GAAK4gE,UAAYA,IAa/Cg2C,gBAAiB,SAAU52G,EAAK7K,EAAOqS,GAEnC,IAAInG,EAAO3U,KAAKi0E,aAAa3gE,EAAKwH,GAElC,OAAInG,EAEOA,EAAK+pG,SAASj2G,GAId,MAafk2G,eAAgB,SAAUrrG,EAAK+gB,EAAMvZ,GAEjC,IAAInG,EAAO3U,KAAKi0E,aAAa3gE,EAAKwH,GAElC,OAAInG,EAEOA,EAAKgqG,eAAetqF,GAIpB,MAaf81F,OAAQ,SAAU1xC,GAId,OAFIA,EAAMz4E,KAAKglH,YAAYvsC,IAIhBz4E,KAAKmjH,QAAQ1qC,IAIpBroE,QAAQ+K,KAAK,sCAAwCs9D,EAAM,uCACpD,OAWf2xC,QAAS,SAAUtvG,QAED1U,IAAV0U,IAAuBA,EAAQ/Z,EAAO+vC,MAAMpiB,OAEhD,IAAI0I,EAAM,GAEV,GAAIp3B,KAAKujH,UAAUzoG,GAEf,IAAK,IAAIxH,KAAOtT,KAAKujH,UAAUzoG,GAEf,cAARxH,GAA+B,cAARA,GAEvB8jB,EAAIzvB,KAAK2L,GAKrB,OAAO8jB,GAkBXizF,aAAc,SAAU/2G,UAEbtT,KAAK+a,OAAO/C,OAAO1E,IAe9BuxG,YAAa,SAAUvxG,EAAKg3G,QAEGlkH,IAAvBkkH,IAAoCA,GAAqB,GAE7D,IAAIj2C,EAAMr0E,KAAKs0E,SAAShhE,GAAK,GAEzBg3G,GAAsBj2C,EAAIn5D,MAE1Bm5D,EAAIn5D,KAAKnZ,iBAGN/B,KAAK+a,OAAOC,MAAM1H,IAgB7Bi3G,YAAa,SAAUj3G,UAEZtT,KAAK+a,OAAO+tB,MAAMx1B,IAY7Bk3G,WAAY,SAAUl3G,UAEXtT,KAAK+a,OAAO47D,KAAKrjE,IAY5Bm3G,cAAe,SAAUn3G,UAEdtT,KAAK+a,OAAOmuB,QAAQ51B,IAY/Bo3G,cAAe,SAAUp3G,UAEdtT,KAAK+a,OAAOm9D,QAAQ5kE,IAY/Bq3G,aAAc,SAAUr3G,UAEbtT,KAAK+a,OAAOioG,OAAO1vG,IAY9Bs3G,iBAAkB,SAAUt3G,UAEjBtT,KAAK+a,OAAO29D,WAAWplE,IAYlCu3G,iBAAkB,SAAUv3G,UAEjBtT,KAAK+a,OAAOkoG,WAAW3vG,IAYlCw3G,WAAY,SAAUx3G,UAEXtT,KAAK+a,OAAOgnG,KAAKzuG,IAY5By3G,UAAW,SAAUz3G,UAEVtT,KAAK+a,OAAO4nG,IAAIrvG,IAY3B03G,YAAa,SAAU13G,UAEZtT,KAAK+a,OAAOy9D,MAAMllE,IAY7B23G,aAAc,SAAU33G,UAEbtT,KAAK+a,OAAOjO,OAAOwG,IAY9B43G,oBAAqB,SAAU53G,UAEpBtT,KAAK+a,OAAOvW,cAAc8O,IAYrC63G,kBAAmB,SAAU73G,UAElBtT,KAAK+a,OAAOomG,YAAY7tG,IAYnC83G,mBAAoB,SAAU93G,UAEnBtT,KAAK+a,OAAOC,MAAM1H,IAG7B+3G,WAAY,SAAU/3G,UAEXtT,KAAK+a,OAAOpG,KAAKrB,IAU5BsuC,gBAAiB,WAEb,IAAK,IAAItuC,KAAOtT,KAAK+a,OAAOC,MAExBhb,KAAK+a,OAAOC,MAAM1H,GAAK4H,KAAK1G,YAAc,IAclDwwG,YAAa,SAAUvsC,EAAK9jE,GAExB,OAAK3U,KAAK+iH,gBAKV/iH,KAAKojH,aAAaxzG,IAAM5P,KAAKsC,KAAKumC,KAAKyiF,QAAU7yC,EAEjDz4E,KAAKqjH,SAAWrjH,KAAKojH,aAAaxzG,IAGlC5P,KAAKojH,aAAaxzG,IAAM,GAGpB+E,IAEA3U,KAAKmjH,QAAQnjH,KAAKqjH,UAAY1uG,GAG3B3U,KAAKqjH,UAhBD,MA2BfthH,QAAS,WAEL,IAAK,IAAIE,EAAI,EAAGA,EAAIjC,KAAKujH,UAAUrhH,OAAQD,IAC3C,CACI,IAAI6Y,EAAQ9a,KAAKujH,UAAUthH,GAE3B,IAAK,IAAIqR,KAAOwH,EAEA,cAARxH,GAA+B,cAARA,IAEvBtT,KAAKurH,YAAYzwG,EAAMxH,WAEhBwH,EAAMxH,IAKzBtT,KAAKmjH,QAAU,KACfnjH,KAAKojH,aAAe,KACpBpjH,KAAKqjH,SAAW,MAQpBkI,YAAa,SAAUpkH,GAEfA,EAAKpF,QAELoF,EAAKpF,WAIDoF,EAAK+T,MAAQ/T,EAAK+T,KAAKnZ,SAEvBoF,EAAK+T,KAAKnZ,UAGVoF,EAAKwN,MAAQxN,EAAKwN,KAAK5S,SAEvBoF,EAAKwN,KAAK5S,UAGVoF,EAAK+sE,WAAa/sE,EAAK+sE,UAAUnyE,SAEjCoF,EAAK+sE,UAAUnyE,UAGfoF,EAAKrB,SAAWqB,EAAKrB,QAAQ/D,SAE7BoF,EAAKrB,QAAQ/D,SAAQ,KAUjCoiH,WAAY,WAERnkH,KAAKkkH,cAAgB,EAErBlkH,KAAKqlH,kBACLrlH,KAAKslH,kBAEL,IAAI/nF,EAAOv9B,KACPwrH,EAAezqH,EAAO+vC,MAAM2zE,cAEC,EAA7B1jH,EAAO+vC,MAAM2zE,cAEbhe,WAAW,WAEFlpE,EAAKmjB,UAENtwC,QAAQ+K,KAAK,sDAAuDqwG,GAEpEjuF,EAAKkuF,WAEV1qH,EAAO+vC,MAAM2zE,eAIhBzkH,KAAKyrH,UASbrG,YAAa,WAETplH,KAAKkkH,eAAiB,GAQ1BiB,eAAgB,WAEZnlH,KAAKkkH,eAAiB,EACtBlkH,KAAK0rH,eAQTA,YAAa,WAEL1rH,KAAK0gD,SAEL1gD,KAAKyrH,UASbA,OAAQ,WAEJzrH,KAAKkkH,cAAgB,EACrBlkH,KAAK2gD,QAAQ9Y,SAAS7nC,QAK9Be,EAAO+vC,MAAMjvC,UAAUC,YAAcf,EAAO+vC,MAO5CjqC,OAAOyF,eAAevL,EAAO+vC,MAAMjvC,UAAW,UAAW,CACrDkF,IAAK,WAED,OAAO/G,KAAKkkH,eAAiB,KAwBrCnjH,EAAO4+C,OAAS,SAAUr9C,GAOtBtC,KAAKsC,KAAOA,EAOZtC,KAAK8a,MAAQxY,EAAKwY,MAOlB9a,KAAKqlD,aAAc,EAOnBrlD,KAAK2rH,WAAY,EAOjB3rH,KAAKgN,WAAY,EAUjBhN,KAAK4rH,cAAgB,KAOrB5rH,KAAK6rH,aAAc,EASnB7rH,KAAKsrH,QAAU,GAsBftrH,KAAKyxF,KAAO,GAuBZzxF,KAAK8rH,QAAU,CACXC,eAAe,EACfhK,KAAM,mBACNY,IAAK,mBAST3iH,KAAKgsH,YAAc,IAAIjrH,EAAO0jC,OAQ9BzkC,KAAKisH,qBAAuB,IAAIlrH,EAAO0jC,OAQvCzkC,KAAKksH,eAAiB,IAAInrH,EAAO0jC,OAWjCzkC,KAAKmsH,eAAiB,IAAIprH,EAAO0jC,OAUjCzkC,KAAKosH,YAAc,IAAIrrH,EAAO0jC,OAa9BzkC,KAAKqsH,eAAiB,IAAItrH,EAAO0jC,OAWjCzkC,KAAKssH,YAAc,IAAIvrH,EAAO0jC,OAS9BzkC,KAAKusH,gBAAiB,EAWtBvsH,KAAKwsH,qBAAuB,EAM5BxsH,KAAKysH,oBAAsB,EAU3BzsH,KAAK0sH,UAAY,GAcjB1sH,KAAK2sH,aAAe,GAQpB3sH,KAAK4sH,gBAAkB,EASvB5sH,KAAK6sH,kBAAmB,EAOxB7sH,KAAK8sH,gBAAkB,EAOvB9sH,KAAK+sH,gBAAkB,EAOvB/sH,KAAKgtH,iBAAmB,EAOxBhtH,KAAKitH,iBAAmB,GAO5BlsH,EAAO4+C,OAAOutE,yBAA2B,EAMzCnsH,EAAO4+C,OAAOwtE,wBAA0B,EAMxCpsH,EAAO4+C,OAAO4nE,2BAA6B,EAM3CxmH,EAAO4+C,OAAOytE,yBAA2B,EAMzCrsH,EAAO4+C,OAAO0tE,oBAAsB,EAMpCtsH,EAAO4+C,OAAO6nE,yBAA2B,EAQzCzmH,EAAO4+C,OAAO2tE,WAAa,CACvBC,KAAM,aACNC,IAAK,YACLt/E,IAAK,eACLu/E,IAAK,YACLC,IAAK,eACLC,IAAK,aACLC,KAAM,aACNC,IAAK,YACLC,IAAK,gBACLC,IAAK,aACLC,KAAM,aACNC,KAAM,cAWVltH,EAAO4+C,OAAOuuE,aAAe,SAAUz1C,GAEnC,IAAIizB,EAAUjzB,EAAIxL,MAAM,YAExB,OAAKy+B,GAEE3qG,EAAO4+C,OAAO2tE,WAAW5hB,EAAQ,KAFjB,MAc3B3qG,EAAO4+C,OAAOwuE,WAAa,SAAUh/G,GAEjC,MAAsB,iBAAXA,EAEA,CAAEspE,IAAKtpE,EAAQ4E,KAAMhT,EAAO4+C,OAAOuuE,aAAa/+G,IAGpDA,GAGXpO,EAAO4+C,OAAO99C,UAAY,CActBusH,iBAAkB,SAAU5pG,EAAQuiB,GAEhCA,EAAYA,GAAa,EAEzB/mC,KAAK4rH,cAAgB,CAAEpnG,OAAQA,EAAQuiB,UAAWA,EAAWriC,MAAO8f,EAAO9f,MAAOC,OAAQ6f,EAAO7f,OAAQq4B,KAAM,MAK3Gh9B,KAAK4rH,cAAc5uF,KAHL,IAAd+J,EAG0B,IAAIhmC,EAAOS,UAAU,EAAG,EAAG,EAAGgjB,EAAO7f,QAKrC,IAAI5D,EAAOS,UAAU,EAAG,EAAGgjB,EAAO9f,MAAO,GAGvE8f,EAAO/W,KAAKzN,KAAK4rH,cAAc5uF,MAE/BxY,EAAO/jB,SAAU,GAWrBsF,OAAQ,WAEA/F,KAAK4rH,eAAiB5rH,KAAK4rH,cAAcjnH,SAAW3E,KAAK4rH,cAAcpnG,OAAO7f,SAE9E3E,KAAK4rH,cAAc5uF,KAAKr4B,OAAS3E,KAAK4rH,cAAcpnG,OAAO7f,SAcnE0pH,eAAgB,SAAUt6G,EAAMT,GAE5B,OAAwC,EAAjCtT,KAAKsuH,cAAcv6G,EAAMT,IAcpCg7G,cAAe,SAAUv6G,EAAMT,GAI3B,IAFA,IAAIi7G,GAAa,EAERtsH,EAAI,EAAGA,EAAIjC,KAAK0sH,UAAUxqH,OAAQD,IAC3C,CACI,IAAIghG,EAAOjjG,KAAK0sH,UAAUzqH,GAE1B,GAAIghG,EAAKlvF,OAASA,GAAQkvF,EAAK3vF,MAAQA,IAEnCi7G,EAAYtsH,GAGPghG,EAAKurB,SAAWvrB,EAAKwrB,SAEtB,MAKZ,OAAOF,GAcXG,SAAU,SAAU36G,EAAMT,GAEtB,IAAIq7G,EAAY3uH,KAAKsuH,cAAcv6G,EAAMT,GAEzC,OAAiB,EAAbq7G,GAEO,CAAElmH,MAAOkmH,EAAW1rB,KAAMjjG,KAAK0sH,UAAUiC,KAkBxDnmF,MAAO,SAAUof,EAAMy1D,QAECj3G,IAAhBi3G,IAA6BA,GAAc,GAE3Cr9G,KAAKqlD,cAKLuC,IAEA5nD,KAAK4rH,cAAgB,MAGzB5rH,KAAK2rH,WAAY,EAEjB3rH,KAAK4sH,gBAAkB,EACvB5sH,KAAK0sH,UAAUxqH,OAAS,EACxBlC,KAAK2sH,aAAazqH,OAAS,EAE3BlC,KAAK6sH,kBAAmB,EACxB7sH,KAAK+sH,gBAAkB,EACvB/sH,KAAK8sH,gBAAkB,EACvB9sH,KAAKgtH,iBAAmB,EACxBhtH,KAAKitH,iBAAmB,EAEpB5P,IAEAr9G,KAAKgsH,YAAY3/E,YACjBrsC,KAAKksH,eAAe7/E,YACpBrsC,KAAKmsH,eAAe9/E,YACpBrsC,KAAKosH,YAAY//E,YACjBrsC,KAAKqsH,eAAehgF,YACpBrsC,KAAKssH,YAAYjgF,eAiBzBuiF,cAAe,SAAU76G,EAAMT,EAAKmlE,EAAK8f,EAAYs2B,EAAWlK,GAI5D,QAFkBv+G,IAAdyoH,IAA2BA,GAAY,QAE/BzoH,IAARkN,GAA6B,KAARA,EAGrB,OADAlD,QAAQ+K,KAAK,kDAAoDpH,GAC1D/T,KAGX,GAAIy4E,MAAAA,EACJ,CACI,IAAIksC,EAOA,OADAv0G,QAAQ+K,KAAK,8CAAgDpH,EAAO,SAAWT,GACxEtT,KALPy4E,EAAMnlE,EAAMqxG,EASpB,IAAI1hB,EAAO,CACPlvF,KAAMA,EACNT,IAAKA,EACLm+E,KAAMzxF,KAAKyxF,KACXhZ,IAAKA,EACLq2C,UAAsC,EAA3B9uH,KAAKysH,oBAChB93G,KAAM,KACN85G,SAAS,EACTD,QAAQ,EACR3kG,OAAO,GAGX,GAAI0uE,EAEA,IAAK,IAAIrrB,KAAQqrB,EAEb0K,EAAK/1B,GAAQqrB,EAAWrrB,GAIhC,IAAIyhD,EAAY3uH,KAAKsuH,cAAcv6G,EAAMT,GAEzC,GAAIu7G,IAA0B,EAAbF,EACjB,CACI,IAAII,EAAc/uH,KAAK0sH,UAAUiC,GAE5BI,EAAYN,SAAYM,EAAYP,QAMrCxuH,KAAK0sH,UAAU/kH,KAAKs7F,GACpBjjG,KAAK+sH,mBALL/sH,KAAK0sH,UAAUiC,GAAa1rB,OAQZ,IAAf0rB,IAEL3uH,KAAK0sH,UAAU/kH,KAAKs7F,GACpBjjG,KAAK+sH,mBAGT,OAAO/sH,MAaXgvH,kBAAmB,SAAUj7G,EAAMT,EAAKmlE,EAAK8f,GAEzC,OAAOv4F,KAAK4uH,cAAc76G,EAAMT,EAAKmlE,EAAK8f,GAAY,IAyB1D02B,KAAM,SAAU37G,EAAKmlE,EAAK9jE,EAAM+2B,GAM5B,QAJYtlC,IAARqyE,IAAqBA,EAAM,WAClBryE,IAATuO,IAAsBA,EAAO,WACTvO,IAApBslC,IAAiCA,EAAkB,OAElD+sC,IAAQ9jE,EAIT,OAFAvE,QAAQ+K,KAAK,qEAENnb,KAGX,IAAIivH,EAAO,CACPl7G,KAAM,WACNT,IAAKA,EACLmlE,IAAKA,EACLgZ,KAAMzxF,KAAKyxF,KACXq9B,WAAW,EACXn6G,KAAM,KACN85G,SAAS,EACTD,QAAQ,EACR3kG,OAAO,EACP6hB,gBAAiBA,GAIjB/2B,IAEoB,iBAATA,IAEPA,EAAOkvG,KAAKjjF,MAAMjsB,IAGtBs6G,EAAKt6G,KAAOA,GAAQ,GAGpBs6G,EAAKT,QAAS,GAOlB,IAAK,IAAIvsH,EAAI,EAAGA,EAAIjC,KAAK0sH,UAAUxqH,OAAS,EAAGD,IAC/C,CACI,IAAIghG,EAAOjjG,KAAK0sH,UAAUzqH,GAE1B,IAAKghG,IAAUA,EAAKurB,SAAWvrB,EAAKwrB,SAAyB,aAAdxrB,EAAKlvF,KACpD,CACI/T,KAAK0sH,UAAU/jH,OAAO1G,EAAG,EAAGgtH,GAC5BjvH,KAAK8sH,kBACL,OAIR,OAAO9sH,MA6EXgb,MAAO,SAAU1H,EAAKmlE,EAAKo2C,GAEvB,OAAIvnH,MAAMC,QAAQkxE,GAEPz4E,KAAKkvH,SAAS57G,EAAKmlE,EAAKo2C,GAEhB,iBAARp2C,EAEAz4E,KAAK8F,QAAQwN,EAAKmlE,EAAKo2C,GAIvB7uH,KAAK4uH,cAAc,QAASt7G,EAAKmlE,OAAKryE,EAAWyoH,EAAW,SAiB3EK,SAAU,SAAU57G,EAAK67G,EAASN,GAE9B,IAAIO,EAAgBD,EAAQA,EAAQjtH,OAAS,GACzCu2E,EAAgC,iBAAlB22C,EAA8BA,EAAgBA,EAAc32C,IAE9E,OAAOz4E,KAAK4uH,cAAc,WAAYt7G,EAAKmlE,EAAK,CAAE02C,QAASA,GAAWN,IAY1EQ,oBAAqB,SAAU/7G,EAAKolE,EAAYm2C,GAE5C,OAAO7uH,KAAKgb,MAAM1H,EAAKolE,EAAW1gE,OAAOkmE,UAAU,aAAc2wC,IASrES,cAAe,SAAUh8G,EAAK5O,EAAOC,EAAQ2yC,EAAWC,EAAYpgC,GAEhE,OAAOnX,KAAKqvH,oBAAoB/7G,EAAKtT,KAAKsC,KAAK+F,OAAOiyD,KAAKhnD,EAAK5O,EAAOC,EAAQ2yC,EAAWC,EAAYpgC,GAAO,KASjHo4G,iBAAkB,SAAUj8G,EAAKqB,EAAM66G,EAAYC,EAAaC,GAE5D,OAAO1vH,KAAKqvH,oBAAoB/7G,EAAKtT,KAAKsC,KAAK+F,OAAOvC,QAAQwN,EAAKqB,EAAM66G,EAAYC,EAAaC,GAAS,KA+C/G5pH,QAAS,SAAUwN,EAAKqoC,EAAQkzE,GAE5B,GAAI7uH,KAAKsC,KAAKuqC,aAAe9rC,EAAO0W,MACpC,CACI,IACIk4G,EADA11G,EAAcja,KAAKsC,KAAK+B,SAASmT,WAAWyC,YAGhD,IAAK01G,KAASh0E,EAEV,GAAIg0E,EAAMzxB,gBAAiBjkF,EAEvB,OAAOja,KAAK4uH,cAAc,UAAWt7G,EAAKqoC,EAAOg0E,QAAQvpH,EAAWyoH,EAAW,QAe3F,OALIlzE,EAAOi0E,WAEP5vH,KAAK4uH,cAAc,QAASt7G,EAAKqoC,EAAOi0E,eAAWxpH,EAAWyoH,EAAW,QAGtE7uH,MA2BX6vH,OAAQ,SAAU97F,EAAM+7F,GAEpB,GAAIxoH,MAAMC,QAAQuoH,GAEd,IAAK,IAAI7tH,EAAI,EAAGA,EAAI8xB,EAAK7xB,OAAQD,IAE7BjC,KAAKgb,MAAM+Y,EAAK9xB,GAAI6tH,EAAK7tH,SAK7B,IAASA,EAAI,EAAGA,EAAI8xB,EAAK7xB,OAAQD,IAE7BjC,KAAKgb,MAAM+Y,EAAK9xB,IAIxB,OAAOjC,MAwBX22E,KAAM,SAAUrjE,EAAKmlE,EAAKo2C,GAEtB,OAAO7uH,KAAK4uH,cAAc,OAAQt7G,EAAKmlE,OAAKryE,EAAWyoH,EAAW,SAyBtE9M,KAAM,SAAUzuG,EAAKmlE,EAAKo2C,GAEtB,OAAO7uH,KAAK4uH,cAAc,OAAQt7G,EAAKmlE,OAAKryE,EAAWyoH,EAAW,UAwBtE/hH,OAAQ,SAAUwG,EAAKmlE,EAAKo2C,GAExB,OAAO7uH,KAAK4uH,cAAc,SAAUt7G,EAAKmlE,OAAKryE,EAAWyoH,EAAW,UAwBxElM,IAAK,SAAUrvG,EAAKmlE,EAAKo2C,GAErB,OAAO7uH,KAAK4uH,cAAc,MAAOt7G,EAAKmlE,OAAKryE,EAAWyoH,EAAW,SA4BrEkB,OAAQ,SAAUz8G,EAAKmlE,EAAKvhC,EAAUxL,GAMlC,YAJiBtlC,IAAb8wC,IAA0BA,GAAW,IAExB,IAAbA,QAA0C9wC,IAApBslC,IAAiCA,EAAkB1rC,MAEtEA,KAAK4uH,cAAc,SAAUt7G,EAAKmlE,EAAK,CAAEq2C,WAAW,EAAM53E,SAAUA,EAAUxL,gBAAiBA,IAAmB,EAAO,QA8BpIs3E,OAAQ,SAAU1vG,EAAKmlE,EAAKvhC,EAAUxL,GAOlC,YALiBtlC,IAAb8wC,IAA0BA,GAAW,IAGxB,IAAbA,QAA0C9wC,IAApBslC,IAAiCA,EAAkBwL,GAEtEl3C,KAAK4uH,cAAc,SAAUt7G,EAAKmlE,EAAK,CAAEvhC,SAAUA,EAAUxL,gBAAiBA,IAAmB,EAAO,SA0DnHskF,YAAa,SAAU18G,EAAKmlE,EAAKwoB,EAAYC,EAAakgB,EAAUC,EAAQC,EAASC,GAOjF,YALiBn7G,IAAbg7G,IAA0BA,GAAY,QAC3Bh7G,IAAXi7G,IAAwBA,EAAS,QACrBj7G,IAAZk7G,IAAyBA,EAAU,QACpBl7G,IAAfm7G,IAA4BA,EAAa,GAEtCvhH,KAAK4uH,cAAc,cAAet7G,EAAKmlE,EAAK,CAAEwoB,WAAYA,EAAYC,YAAaA,EAAakgB,SAAUA,EAAUC,OAAQA,EAAQC,QAASA,EAASC,WAAYA,IAAc,EAAO,SA4BlMlrC,MAAO,SAAU/iE,EAAKw8G,EAAMG,GAExB,OAAIjwH,KAAKsC,KAAKwmC,MAAMonF,QAETlwH,WAGQoG,IAAf6pH,IAA4BA,GAAa,GAEzB,iBAATH,IAEPA,EAAO,CAAEA,IAGN9vH,KAAK4uH,cAAc,QAASt7G,EAAKw8G,EAAM,CAAE3zG,OAAQ,KAAM8zG,WAAYA,MA2B9E35C,YAAa,SAAUhjE,EAAKw8G,EAAMK,EAASC,EAAUH,GAEjD,OAAIjwH,KAAKsC,KAAKwmC,MAAMonF,eAKJ9pH,IAAZ+pH,IAAyBA,EAAU,WACtB/pH,IAAbgqH,IAA0BA,EAAW,WACtBhqH,IAAf6pH,IAA4BA,GAAa,GAE7CjwH,KAAKq2E,MAAM/iE,EAAKw8G,EAAMG,GAElBE,EAEAnwH,KAAK+hH,KAAKzuG,EAAM,cAAe68G,GAE1BC,GAEmB,iBAAbA,IAEPA,EAAWvM,KAAKjjF,MAAMwvF,IAG1BpwH,KAAK8a,MAAMksG,QAAQ1zG,EAAM,cAAe,GAAI88G,IAI5ChgH,QAAQ+K,KAAK,+FAxBNnb,MA0CfqwH,YAAa,SAAU/8G,EAAKw8G,EAAMK,EAASC,EAAUH,GAEjD,OAAOjwH,KAAKs2E,YAAYhjE,EAAKw8G,EAAMK,EAASC,EAAUH,IAgC1Dz3C,MAAO,SAAUllE,EAAKw8G,EAAMQ,EAAWC,GAqBnC,YAnBkBnqH,IAAdkqH,IAIIA,EAFAtwH,KAAKsC,KAAKgqB,OAAOw3E,QAEL,aAIA,uBAIL19F,IAAXmqH,IAAwBA,GAAS,GAEjB,iBAATT,IAEPA,EAAO,CAAEA,IAGN9vH,KAAK4uH,cAAc,QAASt7G,EAAKw8G,EAAM,CAAE3zG,OAAQ,KAAMo0G,OAAQA,EAAQD,UAAWA,KAoC7Fp4C,QAAS,SAAU5kE,EAAKmlE,EAAK9jE,EAAMM,GAmB/B,QAjBY7O,IAARqyE,IAAqBA,EAAM,WAClBryE,IAATuO,IAAsBA,EAAO,WAClBvO,IAAX6O,IAAwBA,EAASlU,EAAOozE,QAAQq8C,KAE/C/3C,GAAQ9jE,IAIL8jE,EAFAxjE,IAAWlU,EAAOozE,QAAQq8C,IAEpBl9G,EAAM,OAINA,EAAM,SAKhBqB,EACJ,CACI,OAAQM,GAEJ,KAAKlU,EAAOozE,QAAQq8C,IAEhB,MAEJ,KAAKzvH,EAAOozE,QAAQs8C,WAGI,iBAAT97G,IAEPA,EAAOkvG,KAAKjjF,MAAMjsB,IAK9B3U,KAAK8a,MAAMgrG,WAAWxyG,EAAK,KAAMqB,EAAMM,QAIvCjV,KAAK4uH,cAAc,UAAWt7G,EAAKmlE,EAAK,CAAExjE,OAAQA,IAGtD,OAAOjV,MAcX0wH,WAAY,SAAUp9G,EAAKmlE,EAAK9jE,GAE5B,OAAO3U,KAAKk4E,QAAQ5kE,EAAKmlE,EAAK9jE,EAAM5T,EAAOozE,QAAQq8C,MAcvDG,iBAAkB,SAAUr9G,EAAKmlE,EAAK9jE,GAElC,OAAO3U,KAAKk4E,QAAQ5kE,EAAKmlE,EAAK9jE,EAAM5T,EAAOozE,QAAQs8C,aAkCvDvnF,QAAS,SAAU51B,EAAKmlE,EAAK9jE,EAAMM,GA0B/B,YAxBY7O,IAARqyE,IAAqBA,EAAM,WAClBryE,IAATuO,IAAsBA,EAAO,WAClBvO,IAAX6O,IAAwBA,EAASlU,EAAO6zC,QAAQg8E,kBAE/Cn4C,GAAQ9jE,IAET8jE,EAAMnlE,EAAM,SAIZqB,GAEoB,iBAATA,IAEPA,EAAOkvG,KAAKjjF,MAAMjsB,IAGtB3U,KAAK8a,MAAM+qG,eAAevyG,EAAK,KAAMqB,EAAMM,IAI3CjV,KAAK4uH,cAAc,UAAWt7G,EAAKmlE,EAAK,CAAExjE,OAAQA,IAG/CjV,MAyCXijH,WAAY,SAAU3vG,EAAKu9G,EAAYC,EAAU3K,EAAWvuC,EAAUC,GAmBlE,GAjBIg5C,MAAAA,IAEAA,EAAav9G,EAAM,aAGNlN,IAAb0qH,IAA0BA,EAAW,WACvB1qH,IAAd+/G,IAA2BA,EAAY,MAE1B,OAAb2K,GAAmC,OAAd3K,IAErB2K,EAAWx9G,EAAM,aAGJlN,IAAbwxE,IAA0BA,EAAW,QACxBxxE,IAAbyxE,IAA0BA,EAAW,GAGrCi5C,EAEA9wH,KAAK4uH,cAAc,aAAct7G,EAAKu9G,EAAY,CAAEC,SAAUA,EAAUl5C,SAAUA,EAAUC,SAAUA,SAKtG,GAAyB,iBAAdsuC,EACX,CACI,IAAIpE,EAAMY,EAEV,IAEIZ,EAAO8B,KAAKjjF,MAAMulF,GAEtB,MAAOz3G,GAEHi0G,EAAM3iH,KAAK+wH,SAAS5K,GAGxB,IAAKxD,IAAQZ,EAET,MAAM,IAAIn5G,MAAM,kDAGpB5I,KAAK4uH,cAAc,aAAct7G,EAAKu9G,EAAY,CAC9CC,SAAU,KAAM3K,UAAWpE,GAAQY,EACnCyD,UAAYrE,EAAO,OAAS,MAAQnqC,SAAUA,EAAUC,SAAUA,IAK9E,OAAO73E,MA2CXgxH,eAAgB,SAAU19G,EAAKu9G,EAAYC,EAAU3K,GAEjD,OAAOnmH,KAAKixH,MAAM39G,EAAKu9G,EAAYC,EAAU3K,EAAWplH,EAAO4+C,OAAOutE,2BA2C1EgE,cAAe,SAAU59G,EAAKu9G,EAAYC,EAAU3K,GAEhD,OAAOnmH,KAAKixH,MAAM39G,EAAKu9G,EAAYC,EAAU3K,EAAWplH,EAAO4+C,OAAOwtE,0BA2C1EgE,SAAU,SAAU79G,EAAKu9G,EAAYC,EAAU3K,GAU3C,YARiB//G,IAAb0qH,IAA0BA,EAAW,WACvB1qH,IAAd+/G,IAA2BA,EAAY,MAEtC2K,GAAa3K,IAEd2K,EAAWx9G,EAAM,QAGdtT,KAAKixH,MAAM39G,EAAKu9G,EAAYC,EAAU3K,EAAWplH,EAAO4+C,OAAO4nE,6BA0C1E0J,MAAO,SAAU39G,EAAKu9G,EAAYC,EAAU3K,EAAWlxG,GAwBnD,GAtBI47G,MAAAA,IAEAA,EAAav9G,EAAM,aAGNlN,IAAb0qH,IAA0BA,EAAW,WACvB1qH,IAAd+/G,IAA2BA,EAAY,WAC5B//G,IAAX6O,IAAwBA,EAASlU,EAAO4+C,OAAOutE,0BAE9C4D,GAAa3K,IAIV2K,EAFA77G,IAAWlU,EAAO4+C,OAAO4nE,2BAEdj0G,EAAM,OAINA,EAAM,SAKrBw9G,EAEA9wH,KAAK4uH,cAAc,eAAgBt7G,EAAKu9G,EAAY,CAAEC,SAAUA,EAAU77G,OAAQA,QAGtF,CACI,OAAQA,GAEJ,KAAKlU,EAAO4+C,OAAOutE,yBAGU,iBAAd/G,IAEPA,EAAYtC,KAAKjjF,MAAMulF,IAE3B,MAEJ,KAAKplH,EAAO4+C,OAAO4nE,2BAGf,GAAyB,iBAAdpB,EACX,CACI,IAAIxD,EAAM3iH,KAAK+wH,SAAS5K,GAExB,IAAKxD,EAED,MAAM,IAAI/5G,MAAM,kDAGpBu9G,EAAYxD,GAKxB3iH,KAAK4uH,cAAc,eAAgBt7G,EAAKu9G,EAAY,CAAEC,SAAU,KAAM3K,UAAWA,EAAWlxG,OAAQA,IAGxG,OAAOjV,MAgBXoxH,cAAe,SAAUl6E,EAAUxL,GAE/B1rC,KAAKysH,sBAEL,IAEIv1E,EAASnzC,KAAK2nC,GAAmB1rC,KAAMA,MAE3C,QAEIA,KAAKysH,sBAGT,OAAOzsH,MAcXqxH,aAAc,SAAUt9G,EAAMT,GAE1B,IAAIg+G,EAAQtxH,KAAK0uH,SAAS36G,EAAMT,GAOhC,OALIg+G,IAEAA,EAAMruB,KAAK6rB,WAAY,GAGpB9uH,MAaXuxH,WAAY,SAAUx9G,EAAMT,GAExB,IAAIg+G,EAAQtxH,KAAK0uH,SAAS36G,EAAMT,GAE5Bg+G,IAEKA,EAAM9C,QAAW8C,EAAM7C,SAExBzuH,KAAK0sH,UAAU/jH,OAAO2oH,EAAM7oH,MAAO,KAW/C4jC,UAAW,WAEPrsC,KAAK0sH,UAAUxqH,OAAS,EACxBlC,KAAK2sH,aAAazqH,OAAS,GAQ/BiK,MAAO,WAECnM,KAAK2rH,YAKT3rH,KAAKgN,WAAY,EACjBhN,KAAK2rH,WAAY,EAEjB3rH,KAAKwxH,iBAELxxH,KAAKyxH,qBAgBTA,iBAAkB,WAGd,GAAKzxH,KAAKsC,KAAKmpC,SAAf,CAKA,IAAKzrC,KAAK2rH,UAIN,OAFAv7G,QAAQ+K,KAAK,wDACbnb,KAAK0xH,iBAAgB,GAKzB,IAAK,IAAIzvH,EAAI,EAAGA,EAAIjC,KAAK2sH,aAAazqH,OAAQD,IAC9C,GACQghG,EAAOjjG,KAAK2sH,aAAa1qH,IAEpBusH,QAAUvrB,EAAKp5E,SAEpB7pB,KAAK2sH,aAAahkH,OAAO1G,EAAG,GAC5BA,IAEAghG,EAAKwrB,SAAU,EACfxrB,EAAK0uB,WAAa,KAClB1uB,EAAK2uB,cAAgB,KAEjB3uB,EAAKp5E,OAEL7pB,KAAKssH,YAAYzkF,SAASo7D,EAAK3vF,IAAK2vF,GAGtB,aAAdA,EAAKlvF,MAEL/T,KAAKitH,mBACLjtH,KAAKqsH,eAAexkF,SAAS7nC,KAAK6xH,SAAU5uB,EAAK3vF,KAAM2vF,EAAKp5E,MAAO7pB,KAAKitH,iBAAkBjtH,KAAK+sH,kBAE5E,aAAd9pB,EAAKlvF,MAAuBkvF,EAAKp5E,QAGtC7pB,KAAKgtH,mBACLhtH,KAAKmsH,eAAetkF,SAASo7D,EAAK3vF,KAAM2vF,EAAKp5E,MAAO7pB,KAAKgtH,iBAAkBhtH,KAAK8sH,mBAM5F,IAAIgF,GAAY,EAEZC,EAAgB/xH,KAAKusH,eAAiBtpH,KAAK2C,IAAI,EAAG5F,KAAKwsH,sBAAwB,EAEnF,IAASvqH,EAAIjC,KAAK4sH,gBAAiB3qH,EAAIjC,KAAK0sH,UAAUxqH,OAAQD,IAC9D,CACI,IAAIghG,EA2DJ,GAxDkB,cAHdA,EAAOjjG,KAAK0sH,UAAUzqH,IAGjB8R,OAAwBkvF,EAAKp5E,OAASo5E,EAAKurB,QAAUvsH,IAAMjC,KAAK4sH,kBAGrE5sH,KAAKgyH,YAAY/uB,GAEjBjjG,KAAKgtH,mBACLhtH,KAAKmsH,eAAetkF,SAASo7D,EAAK3vF,KAAM2vF,EAAKp5E,MAAO7pB,KAAKgtH,iBAAkBhtH,KAAK8sH,kBAGhF7pB,EAAKurB,QAAUvrB,EAAKp5E,MAGhB5nB,IAAMjC,KAAK4sH,kBAEX5sH,KAAK4sH,gBAAkB3qH,EAAI,IAGzBghG,EAAKwrB,SAAWzuH,KAAK2sH,aAAazqH,OAAS6vH,IAG/B,aAAd9uB,EAAKlvF,MAAwBkvF,EAAKtuF,KAW5Bm9G,IAED9xH,KAAK6sH,mBAEN7sH,KAAK6sH,kBAAmB,EACxB7sH,KAAKgsH,YAAYnkF,YAGrB7nC,KAAK2sH,aAAahlH,KAAKs7F,GACvBA,EAAKwrB,SAAU,EACfzuH,KAAKosH,YAAYvkF,SAAS7nC,KAAK6xH,SAAU5uB,EAAK3vF,IAAK2vF,EAAKxqB,KAExDz4E,KAAKiyH,SAAShvB,KAjBdjjG,KAAK2sH,aAAahlH,KAAKs7F,GACvBA,EAAKwrB,SAAU,EAEfzuH,KAAKiyH,SAAShvB,MAkBjBA,EAAKurB,QAAUvrB,EAAK6rB,YAErBgD,GAAY,GAOZ9xH,KAAK2sH,aAAazqH,QAAU6vH,GAC3BD,GAAa9xH,KAAKgtH,mBAAqBhtH,KAAK8sH,gBAE7C,MAUR,GANA9sH,KAAKwxH,iBAMDxxH,KAAK4sH,iBAAmB5sH,KAAK0sH,UAAUxqH,OAEvClC,KAAK0xH,uBAEJ,IAAK1xH,KAAK2sH,aAAazqH,OAC5B,CAKIkO,QAAQ+K,KAAK,8EAEb,IAAI0zB,EAAQ7uC,KAEZymG,WAAW,WAEP53D,EAAM6iF,iBAAgB,IACvB,QAWXA,gBAAiB,SAAUQ,IAGnBlyH,KAAKgN,WAAchN,KAAKsC,KAAKymC,QAKjC/oC,KAAKgN,WAAY,EACjBhN,KAAK2rH,WAAY,EAGZuG,GAAalyH,KAAK6sH,mBAEnB7sH,KAAK6sH,kBAAmB,EACxB7sH,KAAKgsH,YAAYnkF,YAGrB7nC,KAAKsC,KAAKymC,MAAMK,aAChBppC,KAAKisH,qBAAqBpkF,WAC1B7nC,KAAKwoC,QACLxoC,KAAKksH,eAAerkF,WACpB7nC,KAAKsC,KAAKymC,MAAMqD,iBAYpB+lF,cAAe,SAAUlvB,EAAMmvB,QAENhsH,IAAjBgsH,IAA8BA,EAAe,IAEjDnvB,EAAKurB,QAAS,EACdvrB,EAAKp5E,QAAUuoG,EAEXA,IAEAnvB,EAAKmvB,aAAeA,EAEpBhiH,QAAQ+K,KAAK,mBAAqB8nF,EAAKlvF,KAAO,IAAMkvF,EAAK3vF,IAAM,MAAa8+G,IAGhFpyH,KAAKyxH,oBAUTO,YAAa,SAAU/C,GAEnB,IAAIoD,EAAWpD,EAAKt6G,KAAKs6G,EAAK37G,KAE9B,GAAK++G,EAML,IAAK,IAAIpwH,EAAI,EAAGA,EAAIowH,EAASnwH,OAAQD,IACrC,CACI,IAAIghG,EAAOovB,EAASpwH,GAEpB,OAAQghG,EAAKlvF,MAET,IAAK,QACD/T,KAAKgb,MAAMioF,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK4rB,WACpC,MAEJ,IAAK,OACD7uH,KAAK22E,KAAKssB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK4rB,WACnC,MAEJ,IAAK,OACD7uH,KAAK+hH,KAAK9e,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK4rB,WACnC,MAEJ,IAAK,MACD7uH,KAAK2iH,IAAI1f,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK4rB,WAClC,MAEJ,IAAK,SACD7uH,KAAK+vH,OAAO9sB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK/rD,SAAU+3E,EAAKvjF,iBAAmB1rC,MACvE,MAEJ,IAAK,SACDA,KAAKgjH,OAAO/f,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK/rD,SAAU+3E,EAAKvjF,iBAAmB1rC,MACvE,MAEJ,IAAK,cACDA,KAAKgwH,YAAY/sB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKhC,WAAYgC,EAAK/B,YAAa+B,EAAKme,SAAUne,EAAKoe,OAAQpe,EAAKqe,QAASre,EAAKse,YACvH,MAEJ,IAAK,QACDvhH,KAAKw4E,MAAMyqB,EAAK3vF,IAAK2vF,EAAK6sB,MAC1B,MAEJ,IAAK,QACD9vH,KAAKq2E,MAAM4sB,EAAK3vF,IAAK2vF,EAAK6sB,KAAM7sB,EAAKgtB,YACrC,MAEJ,IAAK,cACDjwH,KAAKqwH,YAAYptB,EAAK3vF,IAAK2vF,EAAK6sB,KAAM7sB,EAAKktB,QAASltB,EAAKmtB,SAAUntB,EAAKgtB,YACxE,MAEJ,IAAK,UACDjwH,KAAKk4E,QAAQ+qB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAM5T,EAAOozE,QAAQ8uB,EAAKhuF,SAChE,MAEJ,IAAK,UACDjV,KAAKkpC,QAAQ+5D,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAM5T,EAAO4+C,OAAOsjD,EAAKhuF,SAC/D,MAEJ,IAAK,aACDjV,KAAKijH,WAAWhgB,EAAK3vF,IAAK2vF,EAAK4tB,WAAY5tB,EAAK6tB,SAAU7tB,EAAKkjB,UAAWljB,EAAKrrB,SAAUqrB,EAAKprB,UAC9F,MAEJ,IAAK,iBACD73E,KAAKgxH,eAAe/tB,EAAK3vF,IAAK2vF,EAAK4tB,WAAY5tB,EAAK6tB,SAAU7tB,EAAKkjB,WACnE,MAEJ,IAAK,gBACDnmH,KAAKkxH,cAAcjuB,EAAK3vF,IAAK2vF,EAAK4tB,WAAY5tB,EAAK6tB,SAAU7tB,EAAKkjB,WAClE,MAEJ,IAAK,WACDnmH,KAAKmxH,SAASluB,EAAK3vF,IAAK2vF,EAAK4tB,WAAY5tB,EAAK6tB,SAAU7tB,EAAKkjB,WAC7D,MAEJ,IAAK,QACDnmH,KAAKixH,MAAMhuB,EAAK3vF,IAAK2vF,EAAK4tB,WAAY5tB,EAAK6tB,SAAU7tB,EAAKkjB,UAAWplH,EAAO4+C,OAAOsjD,EAAKhuF,SACxF,MAEJ,IAAK,SACDjV,KAAK8M,OAAOm2F,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAK4rB,iBA/E7Cz+G,QAAQ+K,KAAK,mBAAqB8zG,EAAK37G,IAAM,0CAgGrDg/G,aAAc,SAAU75C,EAAKwqB,GAEzB,QAAKxqB,IAKDA,EAAIxL,MAAM,8CAEHwL,EAIAz4E,KAAKsrH,QAAUroB,EAAKxR,KAAOhZ,IAa1Cw5C,SAAU,SAAUhvB,GAGhB,OAAQA,EAAKlvF,MAET,IAAK,WACD/T,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKwyH,cACnE,MAEJ,IAAK,QACL,IAAK,cACL,IAAK,eACL,IAAK,aACDxyH,KAAKyyH,aAAaxvB,GAClB,MAEJ,IAAK,WACDjjG,KAAK0yH,eAAezvB,GACpB,MAEJ,IAAK,QACDA,EAAKxqB,IAAMz4E,KAAK2yH,YAAY1vB,EAAKxqB,KAE7BwqB,EAAKxqB,IAGDz4E,KAAKsC,KAAKwmC,MAAM8pF,cAEhB5yH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,cAAejjG,KAAKwyH,cAErExyH,KAAKsC,KAAKwmC,MAAM+pF,eAErB7yH,KAAK8yH,aAAa7vB,GAKtBjjG,KAAK+yH,UAAU9vB,EAAM,KAAM,mFAE/B,MAEJ,IAAK,QACDA,EAAKxqB,IAAMz4E,KAAKgzH,YAAY/vB,EAAKxqB,KAE7BwqB,EAAKxqB,IAEDwqB,EAAKstB,OAELvwH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKwyH,cAInExyH,KAAKizH,aAAahwB,GAKtBjjG,KAAK+yH,UAAU9vB,EAAM,KAAM,mFAE/B,MAEJ,IAAK,OAEDjjG,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKkzH,kBACnE,MAEJ,IAAK,MAEDlzH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKmzH,iBACnE,MAEJ,IAAK,UAEGlwB,EAAKhuF,SAAWlU,EAAOozE,QAAQs8C,WAE/BzwH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKkzH,kBAE9DjwB,EAAKhuF,SAAWlU,EAAOozE,QAAQq8C,IAEpCxwH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKozH,iBAInEpzH,KAAKmyH,cAAclvB,EAAM,2BAA6BA,EAAKhuF,QAE/D,MAEJ,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,UACDjV,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,OAAQjjG,KAAKwyH,cACnE,MAEJ,IAAK,UAEiC,cAA9BvvB,EAAK3vF,IAAI4gB,MAAM,KAAKpS,MAEpB9hB,KAAKyyH,aAAaxvB,GAIlBjjG,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,cAAejjG,KAAKwyH,cAE9E,MAEJ,IAAK,SACDxyH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAAO,cAAejjG,KAAKwyH,gBAStFC,aAAc,SAAUxvB,GAEpB,IAAIp0D,EAAQ7uC,KAEZijG,EAAKtuF,KAAO,IAAIkhE,MAChBotB,EAAKtuF,KAAK0f,KAAO4uE,EAAK3vF,IAElBtT,KAAK6rH,cAEL5oB,EAAKtuF,KAAKk3G,YAAc7rH,KAAK6rH,aAGjC5oB,EAAKtuF,KAAK0pE,OAAS,WAEX4kB,EAAKtuF,KAAK0pE,SAEV4kB,EAAKtuF,KAAK0pE,OAAS,KACnB4kB,EAAKtuF,KAAK2pE,QAAU,KACpBzvC,EAAM2jF,aAAavvB,KAI3BA,EAAKtuF,KAAK2pE,QAAU,WAEZ2kB,EAAKtuF,KAAK0pE,SAEV4kB,EAAKtuF,KAAK0pE,OAAS,KACnB4kB,EAAKtuF,KAAK2pE,QAAU,KACpBzvC,EAAMkkF,UAAU9vB,KAIxBA,EAAKtuF,KAAK/E,IAAM5P,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAMxCA,EAAKtuF,KAAK8X,UAAYw2E,EAAKtuF,KAAKjQ,OAASu+F,EAAKtuF,KAAKhQ,SAEnDs+F,EAAKtuF,KAAK0pE,OAAS,KACnB4kB,EAAKtuF,KAAK2pE,QAAU,KACpBt+E,KAAKwyH,aAAavvB,KAQ1ByvB,eAAgB,SAAUzvB,GAOtB,IALA,IAAIp0D,EAAQ7uC,KACRqzH,EAAS9gF,SAAS8mD,cAAc,WAChC81B,EAAUlsB,EAAKksB,QACfC,EAAgBruH,EAAO4+C,OAAOwuE,WAAWgB,EAAQrtG,OAE5C7f,EAAI,EAAGkxB,EAAMg8F,EAAQjtH,OAAQD,EAAIkxB,EAAKlxB,IAC/C,CACI,IAAIkN,EAASpO,EAAO4+C,OAAOwuE,WAAWgB,EAAQltH,IAEzCkN,EAAO4E,MAAS5E,EAAOspE,KAExBroE,QAAQ+K,KAAK,oEAAqE8nF,EAAK3vF,IAAKnE,EAAOspE,IAAKtpE,EAAO4E,MAGnH,IAAIu/G,EAAY/gF,SAAS8mD,cAAc,UAEvCi6B,EAAUC,aAAa,OAAQpkH,EAAO4E,MACtCu/G,EAAUC,aAAa,SAAUvzH,KAAKsyH,aAAanjH,EAAOspE,IAAKwqB,IAE/DowB,EAAOrnB,YAAYsnB,GAGvBrwB,EAAKtuF,KAAO49B,SAAS8mD,cAAc,OACnC4J,EAAKtuF,KAAK0f,KAAO4uE,EAAK3vF,IAElBtT,KAAK6rH,cAEL5oB,EAAKtuF,KAAKk3G,YAAc7rH,KAAK6rH,aAGjC5oB,EAAKtuF,KAAK0pE,OAAS,WAEX4kB,EAAKtuF,KAAK0pE,SAEV4kB,EAAKtuF,KAAK0pE,OAAS,KACnB4kB,EAAKtuF,KAAK2pE,QAAU,KACpB2kB,EAAKxqB,IAAMwqB,EAAKtuF,KAAK6+G,WACrB3kF,EAAM2jF,aAAavvB,KAI3BA,EAAKtuF,KAAK2pE,QAAU,WAEZ2kB,EAAKtuF,KAAK0pE,SAEV4kB,EAAKtuF,KAAK0pE,OAAS,KACnB4kB,EAAKtuF,KAAK2pE,QAAU,KACpB2kB,EAAKxqB,IAAMwqB,EAAKtuF,KAAK6+G,WACrB3kF,EAAMkkF,UAAU9vB,KAIxBowB,EAAOrnB,YAAY/I,EAAKtuF,MAExBsuF,EAAKtuF,KAAK/E,IAAM5P,KAAKsyH,aAAalD,EAAc32C,IAAKwqB,GAMjDA,EAAKtuF,KAAK8X,UAAYw2E,EAAKtuF,KAAKjQ,OAASu+F,EAAKtuF,KAAKhQ,SAEnDs+F,EAAKtuF,KAAK0pE,OAAS,KACnB4kB,EAAKtuF,KAAK2pE,QAAU,KACpBt+E,KAAKwyH,aAAavvB,KAQ1BgwB,aAAc,SAAUhwB,GAEpB,IAAIp0D,EAAQ7uC,KAEZijG,EAAKtuF,KAAO49B,SAAS8mD,cAAc,SACnC4J,EAAKtuF,KAAK0f,KAAO4uE,EAAK3vF,IACtB2vF,EAAKtuF,KAAKk3G,YAAc7rH,KAAK6rH,YAC7B5oB,EAAKtuF,KAAK8+G,UAAW,EACrBxwB,EAAKtuF,KAAK++G,UAAW,EACrBzwB,EAAKtuF,KAAKg/G,aAAc,EAExB,IAAIC,EAAiB,WAEjB3wB,EAAKtuF,KAAKw/B,oBAAoB8uD,EAAKqtB,UAAWsD,GAAgB,GAC9D3wB,EAAKtuF,KAAK2pE,QAAU,KACpB2kB,EAAKtuF,KAAKk/G,SAAU,EACpB9yH,EAAOgtB,MAAM8gB,EAAMvsC,KAAKmS,IAAIo0B,KAAK2pF,aAAavvB,IAGlDA,EAAKtuF,KAAK2pE,QAAU,WAEhB2kB,EAAKtuF,KAAKw/B,oBAAoB8uD,EAAKqtB,UAAWsD,GAAgB,GAC9D3wB,EAAKtuF,KAAK2pE,QAAU,KACpB2kB,EAAKtuF,KAAKk/G,SAAU,EACpBhlF,EAAMkkF,UAAU9vB,IAGpBA,EAAKtuF,KAAKu+B,iBAAiB+vD,EAAKqtB,UAAWsD,GAAgB,GAE3D3wB,EAAKtuF,KAAK/E,IAAM5P,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAC5CA,EAAKtuF,KAAKk0B,QAOdiqF,aAAc,SAAU7vB,GAEpB,IAAIp0D,EAAQ7uC,KAEZ,GAAIA,KAAKsC,KAAKwmC,MAAM68E,YAGhB1iB,EAAKtuF,KAAO,IAAIm/G,MAChB7wB,EAAKtuF,KAAK0f,KAAO4uE,EAAK3vF,IACtB2vF,EAAKtuF,KAAKw0B,QAAU,OACpB85D,EAAKtuF,KAAK/E,IAAM5P,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAE5CjjG,KAAKwyH,aAAavvB,OAGtB,CACIA,EAAKtuF,KAAO,IAAIm/G,MAChB7wB,EAAKtuF,KAAK0f,KAAO4uE,EAAK3vF,IAEtB,IAAIygH,EAAmB,WAEnB9wB,EAAKtuF,KAAKw/B,oBAAoB,iBAAkB4/E,GAAkB,GAClE9wB,EAAKtuF,KAAK2pE,QAAU,KACpBzvC,EAAM2jF,aAAavvB,IAGvBA,EAAKtuF,KAAK2pE,QAAU,WAEhB2kB,EAAKtuF,KAAKw/B,oBAAoB,iBAAkB4/E,GAAkB,GAClE9wB,EAAKtuF,KAAK2pE,QAAU,KACpBzvC,EAAMkkF,UAAU9vB,IAGpBA,EAAKtuF,KAAKw0B,QAAU,OACpB85D,EAAKtuF,KAAK/E,IAAM5P,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,GAC5CA,EAAKtuF,KAAKu+B,iBAAiB,iBAAkB6gF,GAAkB,GAC/D9wB,EAAKtuF,KAAKk0B,SAiBlB0pF,QAAS,SAAUtvB,EAAMxqB,EAAK1kE,EAAMsqE,EAAQC,GAExC,IAAI01C,EAAM,IAAIC,eACdD,EAAIE,KAAK,MAAOz7C,GAAK,GACrBu7C,EAAIG,aAAepgH,GAEgB,IAA/B/T,KAAK8rH,QAAQC,eAEbiI,EAAII,iBAAiB,mBAAoBp0H,KAAK8rH,QAAQC,eAGtD/rH,KAAK8rH,QAAQ7oB,EAAKlvF,OAElBigH,EAAII,iBAAiB,SAAUp0H,KAAK8rH,QAAQ7oB,EAAKlvF,OAGrDuqE,EAAUA,GAAWt+E,KAAK+yH,UAE1B,IAAIlkF,EAAQ7uC,KAEZg0H,EAAI31C,OAAS,WAET,IAEI,OAAuB,IAAnB21C,EAAIxtB,YAAkC,KAAdwtB,EAAI7a,QAAiB6a,EAAI7a,QAAU,IAEpD76B,EAAQv6E,KAAK8qC,EAAOo0D,EAAM+wB,GAI1B31C,EAAOt6E,KAAK8qC,EAAOo0D,EAAM+wB,GAGxC,MAAOtlH,GAOEmgC,EAAM7hC,UAMPoD,QAAQyZ,MAAMnb,GAJdmgC,EAAMsjF,cAAclvB,EAAMv0F,EAAE2lH,SAAW,eASnDL,EAAI11C,QAAU,WAEV,IAEI,OAAOA,EAAQv6E,KAAK8qC,EAAOo0D,EAAM+wB,GAErC,MAAOtlH,GAEEmgC,EAAM7hC,UAMPoD,QAAQyZ,MAAMnb,GAJdmgC,EAAMsjF,cAAclvB,EAAMv0F,EAAE2lH,SAAW,eASnDpxB,EAAK2uB,cAAgBoC,EACrB/wB,EAAK0uB,WAAal5C,EAElBu7C,EAAIM,QAaRtB,YAAa,SAAUlD,GAEnB,IAAK,IAAI7tH,EAAI,EAAGA,EAAI6tH,EAAK5tH,OAAQD,IACjC,CACI,IACIsyH,EADA97C,EAAMq3C,EAAK7tH,GAGf,GAAIw2E,EAAI+7C,KAKJ,GAHAD,EAAY97C,EAAI1kE,KAChB0kE,EAAMA,EAAI+7C,IAENx0H,KAAKsC,KAAKgqB,OAAOi/E,aAAagpB,GAE9B,OAAO97C,MAIf,CAEI,GAA6B,IAAzBA,EAAIvvE,QAAQ,UAA2C,IAAzBuvE,EAAIvvE,QAAQ,SAE1C,OAAOuvE,EAYX,GATwB,GAApBA,EAAIvvE,QAAQ,OAEZuvE,EAAMA,EAAIvtD,OAAO,EAAGutD,EAAIvvE,QAAQ,OAKpCqrH,EAFgB97C,EAAIvtD,QAAQjoB,KAAK2C,IAAI,EAAG6yE,EAAIg8C,YAAY,OAAS/pH,EAAAA,GAAY,GAEvD6lD,cAElBvwD,KAAKsC,KAAKgqB,OAAOi/E,aAAagpB,GAE9B,OAAOzE,EAAK7tH,IAKxB,OAAO,MAaX0wH,YAAa,SAAU7C,GAEnB,GAAI9vH,KAAKsC,KAAKwmC,MAAMonF,QAEhB,OAAO,KAGX,IAAK,IAAIjuH,EAAI,EAAGA,EAAI6tH,EAAK5tH,OAAQD,IACjC,CACI,IACIyyH,EADAj8C,EAAMq3C,EAAK7tH,GAGf,GAAIw2E,EAAI+7C,KAKJ,GAHAE,EAAYj8C,EAAI1kE,KAChB0kE,EAAMA,EAAI+7C,IAENx0H,KAAKsC,KAAKgqB,OAAOg/E,aAAaopB,GAE9B,OAAOj8C,MAIf,CAEI,GAA6B,IAAzBA,EAAIvvE,QAAQ,UAA2C,IAAzBuvE,EAAIvvE,QAAQ,SAE1C,OAAOuvE,EAYX,GATwB,GAApBA,EAAIvvE,QAAQ,OAEZuvE,EAAMA,EAAIvtD,OAAO,EAAGutD,EAAIvvE,QAAQ,OAKpCwrH,EAFgBj8C,EAAIvtD,QAAQjoB,KAAK2C,IAAI,EAAG6yE,EAAIg8C,YAAY,OAAS/pH,EAAAA,GAAY,GAEvD6lD,cAElBvwD,KAAKsC,KAAKgqB,OAAOg/E,aAAaopB,GAE9B,OAAO5E,EAAK7tH,IAKxB,OAAO,MAYX8wH,UAAW,SAAU9vB,EAAM+wB,EAAKW,GAE5B,IACIN,EAAU,iCADJpxB,EAAK0uB,YAAc3xH,KAAKsyH,aAAarvB,EAAKxqB,IAAKwqB,KAGpD0xB,GAAUX,IAEXW,EAASX,EAAI7a,QAGbwb,IAEAN,EAAUA,EAAU,KAAOM,EAAS,KAGxC30H,KAAKmyH,cAAclvB,EAAMoxB,IAW7B7B,aAAc,SAAUvvB,EAAM+wB,GAG1B,GAAKh0H,KAAKsC,KAAKmpC,SAAf,CAKA,IAAImpF,GAAW,EAEf,OAAQ3xB,EAAKlvF,MAET,IAAK,WAGD,IAAIY,EAAOkvG,KAAKjjF,MAAMozF,EAAIa,cAC1B5xB,EAAKtuF,KAAOA,GAAQ,GACpB,MAEJ,IAAK,UAED,IAAIgwG,EAAY,aAAezsB,KAAK+K,EAAKxqB,IAAIvkD,MAAM,IAAK,GAAG,IAAI,GAAGq8B,cAChD,OAAd0yC,EAAKtuF,KAEL3U,KAAK8a,MAAM4pG,6BAA6BzhB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKksC,EAAW1hB,EAAKtuF,MAI5E3U,KAAK8a,MAAM4pG,6BAA6BzhB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKksC,EAAWqP,EAAIc,UAE/E,MAEJ,IAAK,QACL,IAAK,WAED90H,KAAK8a,MAAMyjE,SAAS0kB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,MAC7C,MAEJ,IAAK,cAED3U,KAAK8a,MAAMusG,eAAepkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMsuF,EAAKhC,WAAYgC,EAAK/B,YAAa+B,EAAKme,SAAUne,EAAKoe,OAAQpe,EAAKqe,QAASre,EAAKse,YAC3I,MAEJ,IAAK,eAED,GAAqB,MAAjBte,EAAK6tB,SAEL9wH,KAAK8a,MAAMwsG,gBAAgBrkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMsuF,EAAKkjB,UAAWljB,EAAKhuF,aAO/E,GAFA2/G,GAAW,EAEP3xB,EAAKhuF,SAAWlU,EAAO4+C,OAAOutE,0BAA4BjqB,EAAKhuF,SAAWlU,EAAO4+C,OAAOwtE,yBAA2BlqB,EAAKhuF,SAAWlU,EAAO4+C,OAAO6nE,yBAEjJxnH,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAK6tB,SAAU7tB,GAAO,OAAQjjG,KAAKkzH,sBAEvE,CAAA,GAAIjwB,EAAKhuF,SAAWlU,EAAO4+C,OAAO4nE,2BAMnC,MAAM,IAAI3+G,MAAM,gDAAkDq6F,EAAKhuF,QAJvEjV,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAK6tB,SAAU7tB,GAAO,OAAQjjG,KAAKmzH,iBAOhF,MAEJ,IAAK,aAEIlwB,EAAK6tB,UAON8D,GAAW,EACX50H,KAAKuyH,QAAQtvB,EAAMjjG,KAAKsyH,aAAarvB,EAAK6tB,SAAU7tB,GAAO,OAAQ,SAAUA,EAAM+wB,GAE/E,IAAIjS,EAEJ,IAGIA,EAAO8B,KAAKjjF,MAAMozF,EAAIa,cAE1B,MAAOnmH,IAEHqzG,GAEA9e,EAAKmjB,UAAY,OACjBpmH,KAAKkzH,iBAAiBjwB,EAAM+wB,KAI5B/wB,EAAKmjB,UAAY,MACjBpmH,KAAKmzH,gBAAgBlwB,EAAM+wB,OAzBnCh0H,KAAK8a,MAAMorG,cAAcjjB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMsuF,EAAKkjB,UAAWljB,EAAKmjB,UAAWnjB,EAAKrrB,SAAUqrB,EAAKprB,UA6BhH,MAEJ,IAAK,QAED,GAAIorB,EAAKstB,OAEL,IAEIttB,EAAKtuF,KAAOq/G,EAAIc,SAEpB,MAAOpmH,GAEH,MAAM,IAAI9F,MAAM,sDAAwDq6F,EAAK3vF,KAIrFtT,KAAK8a,MAAMosG,SAASjkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMsuF,EAAKstB,QACxD,MAEJ,IAAK,QAEGvwH,KAAKsC,KAAKwmC,MAAM8pF,eAEhB3vB,EAAKtuF,KAAOq/G,EAAIc,SAEhB90H,KAAK8a,MAAMyqG,SAAStiB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,MAAM,GAAM,GAErDsuF,EAAKgtB,YAELjwH,KAAKsC,KAAKwmC,MAAMisF,OAAO9xB,EAAK3vF,MAKhCtT,KAAK8a,MAAMyqG,SAAStiB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,MAAM,GAAO,GAE9D,MAEJ,IAAK,OACDsuF,EAAKtuF,KAAOq/G,EAAIa,aAChB70H,KAAK8a,MAAM8qG,QAAQ3iB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,MAC5C,MAEJ,IAAK,SACDsuF,EAAKtuF,KAAOq/G,EAAIa,aAChB70H,KAAK8a,MAAMssG,UAAUnkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,MAC9C,MAEJ,IAAK,UACGA,EAAOkvG,KAAKjjF,MAAMozF,EAAIa,cAC1B70H,KAAK8a,MAAM+qG,eAAe5iB,EAAK3vF,IAAK2vF,EAAKxqB,IAAK9jE,EAAMsuF,EAAKhuF,QACzD,MAEJ,IAAK,SACDguF,EAAKtuF,KAAO49B,SAAS8mD,cAAc,UACnC4J,EAAKtuF,KAAKqgH,SAAW,aACrB/xB,EAAKtuF,KAAKZ,KAAO,kBACjBkvF,EAAKtuF,KAAKsgH,OAAQ,EAClBhyB,EAAKtuF,KAAKgiE,KAAOq9C,EAAIa,aACrBtiF,SAAS2iF,KAAKlpB,YAAY/I,EAAKtuF,MAC3BsuF,EAAK/rD,WAEL+rD,EAAKtuF,KAAOsuF,EAAK/rD,SAASnzC,KAAKk/F,EAAKv3D,gBAAiBu3D,EAAK3vF,IAAK0gH,EAAIa,eAEvE,MAEJ,IAAK,SACG5xB,EAAK/rD,SAEL+rD,EAAKtuF,KAAOsuF,EAAK/rD,SAASnzC,KAAKk/F,EAAKv3D,gBAAiBu3D,EAAK3vF,IAAK0gH,EAAIc,UAInE7xB,EAAKtuF,KAAOq/G,EAAIc,SAGpB90H,KAAK8a,MAAMkrG,UAAU/iB,EAAK3vF,IAAK2vF,EAAKtuF,MAKxCigH,GAEA50H,KAAKmyH,cAAclvB,KAY3BiwB,iBAAkB,SAAUjwB,EAAM+wB,GAE9B,IAAIr/G,EAAOkvG,KAAKjjF,MAAMozF,EAAIa,cAER,YAAd5xB,EAAKlvF,KAEL/T,KAAK8a,MAAMgrG,WAAW7iB,EAAK3vF,IAAK2vF,EAAKxqB,IAAK9jE,EAAMsuF,EAAKhuF,QAElC,eAAdguF,EAAKlvF,KAEV/T,KAAK8a,MAAMorG,cAAcjjB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMA,EAAMsuF,EAAKmjB,UAAWnjB,EAAKrrB,SAAUqrB,EAAKprB,UAE/E,SAAdorB,EAAKlvF,KAEV/T,KAAK8a,MAAMksG,QAAQ/jB,EAAK3vF,IAAK2vF,EAAKxqB,IAAK9jE,GAIvC3U,KAAK8a,MAAMwsG,gBAAgBrkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMA,EAAMsuF,EAAKhuF,QAGzEjV,KAAKmyH,cAAclvB,IAWvBmwB,gBAAiB,SAAUnwB,EAAM+wB,GAE7B,IAAIr/G,EAAOq/G,EAAIa,aAEf70H,KAAK8a,MAAMgrG,WAAW7iB,EAAK3vF,IAAK2vF,EAAKxqB,IAAK9jE,EAAMsuF,EAAKhuF,QAErDjV,KAAKmyH,cAAclvB,IAWvBkwB,gBAAiB,SAAUlwB,EAAM+wB,GAG7B,IAAIr/G,EAAOq/G,EAAIa,aACXlS,EAAM3iH,KAAK+wH,SAASp8G,GAExB,IAAKguG,EACL,CACI,IAAIwR,EAAeH,EAAIG,cAAgBH,EAAImB,YAG3C,OAFA/kH,QAAQ+K,KAAK,mBAAqB8nF,EAAK3vF,IAAM,kBAAoB6gH,EAAe,UAChFn0H,KAAKmyH,cAAclvB,EAAM,eAIX,eAAdA,EAAKlvF,KAEL/T,KAAK8a,MAAMorG,cAAcjjB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMguG,EAAK1f,EAAKmjB,UAAWnjB,EAAKrrB,SAAUqrB,EAAKprB,UAE9E,iBAAdorB,EAAKlvF,KAEV/T,KAAK8a,MAAMwsG,gBAAgBrkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKwqB,EAAKtuF,KAAMguG,EAAK1f,EAAKhuF,QAEjD,QAAdguF,EAAKlvF,MAEV/T,KAAK8a,MAAMmsG,OAAOhkB,EAAK3vF,IAAK2vF,EAAKxqB,IAAKkqC,GAG1C3iH,KAAKmyH,cAAclvB,IAWvB8tB,SAAU,SAAUp8G,GAEhB,IAAIguG,EAEJ,IAEI,GAAIxyG,OAAOilH,UAGPzS,GADgB,IAAIyS,WACJC,gBAAgB1gH,EAAM,iBAItCguG,EAAM,IAAI2S,cAAc,qBAGpBC,MAAQ,QACZ5S,EAAI6S,QAAQ7gH,GAGpB,MAAOjG,GAEHi0G,EAAM,KAGV,OAAKA,GAAQA,EAAI3X,kBAAmB2X,EAAIC,qBAAqB,eAAe1gH,OAMjEygH,EAJA,MAcf6O,eAAgB,WAERxxH,KAAK4rH,gBAEgC,IAAjC5rH,KAAK4rH,cAAc7kF,UAEnB/mC,KAAK4rH,cAAc5uF,KAAKt4B,MAAQzB,KAAKkvB,MAAOnyB,KAAK4rH,cAAclnH,MAAQ,IAAO1E,KAAK6xH,UAInF7xH,KAAK4rH,cAAc5uF,KAAKr4B,OAAS1B,KAAKkvB,MAAOnyB,KAAK4rH,cAAcjnH,OAAS,IAAO3E,KAAK6xH,UAGrF7xH,KAAK4rH,cAAcpnG,OAEnBxkB,KAAK4rH,cAAcpnG,OAAO+qD,aAK1BvvE,KAAK4rH,cAAgB,OAYjC6J,iBAAkB,WAEd,OAAOz1H,KAAKitH,kBAUhB/gF,iBAAkB,WAEd,OAAOlsC,KAAK+sH,gBAAkB/sH,KAAKitH,kBAUvCyI,iBAAkB,WAEd,OAAO11H,KAAK8sH,iBAUhB3gF,iBAAkB,WAEd,OAAOnsC,KAAK8sH,gBAAkB9sH,KAAKgtH,mBAc3CnmH,OAAOyF,eAAevL,EAAO4+C,OAAO99C,UAAW,gBAAiB,CAE5DkF,IAAK,WAED,IAAI8qH,EAAY7xH,KAAKitH,iBAAmBjtH,KAAK+sH,gBAAmB,IAChE,OAAOhsH,EAAOkC,KAAK47B,MAAMgzF,GAAY,EAAG,EAAG,QAWnDhrH,OAAOyF,eAAevL,EAAO4+C,OAAO99C,UAAW,WAAY,CAEvDkF,IAAK,WAED,OAAO9D,KAAK20B,MAAM53B,KAAK21H,kBAK/B50H,EAAO4+C,OAAO99C,UAAUC,YAAcf,EAAO4+C,OAa7C5+C,EAAO+jH,aAAe,CAclB7B,WAAY,SAAUN,EAAK18G,EAAa2xE,EAAUC,EAAU3qE,EAAO/I,GAE/D,OAAOnE,KAAKsmH,cAAc3D,EAAK18G,EAAa2xE,EAAUC,EAAU3qE,EAAO/I,IAe3EmiH,cAAe,SAAU3D,EAAK18G,EAAa2xE,EAAUC,EAAU3qE,EAAO/I,GAEhD,MAAdA,IAEAA,EAAa,GAGjB,IAAIwQ,EAAO,GACPihH,EAAOjT,EAAIC,qBAAqB,QAAQ,GACxCiT,EAASlT,EAAIC,qBAAqB,UAAU,GAEhDjuG,EAAK4iE,KAAOq+C,EAAKE,aAAa,QAC9BnhH,EAAKqO,KAAOuS,SAASqgG,EAAKE,aAAa,QAAS,IAChDnhH,EAAKohF,WAAaxgE,SAASsgG,EAAOC,aAAa,cAAe,IAAMj+C,EACpEljE,EAAK+iE,MAAQ,GAOb,IALA,IAAIq+C,EAAUpT,EAAIC,qBAAqB,QAEnCt/G,EAAI,EAAU4J,EAAM5J,EAAI,EACxBC,EAAI,EAAU2J,EAAM3J,EAAI,EAEnBtB,EAAI,EAAGA,EAAI8zH,EAAQ7zH,OAAQD,IACpC,CACI,IAAI8kE,EAAWxxC,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,MAAO,IAEnDE,EAAOrhH,EAAK+iE,MAAM3Q,GAAY,CAC9BzjE,EAAGiyB,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,KAAM,IAC1CvyH,EAAGgyB,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,KAAM,IAC1CpxH,MAAO6wB,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,SAAU,IAClDnxH,OAAQ4wB,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,UAAW,IACpDh+C,QAASviD,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,WAAY,IAAM3xH,EAC5D4zE,QAASxiD,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,WAAY,IAAM3xH,EAC5Dy2F,UAAWrlE,SAASwgG,EAAQ9zH,GAAG6zH,aAAa,YAAa,IAAMl+C,GAAYzzE,EAC3Ew2F,QAAS,IAEb,GAAIztF,GAASA,EAAMqnE,QACnB,CASI,GARIyhD,EAAK1yH,EAAI0yH,EAAKtxH,MAAQwI,EAAMsnE,kBAAoBtnE,EAAMozG,oBAEtD0V,EAAKtxH,OAASsxH,EAAK1yH,EAAI0yH,EAAKtxH,MAAQwI,EAAMsnE,kBAAoBtnE,EAAMozG,mBAEpE0V,EAAKzyH,EAAIyyH,EAAKrxH,OAASuI,EAAMunE,kBAAoBvnE,EAAMqzG,oBAEvDyV,EAAKrxH,QAAUqxH,EAAKzyH,EAAIyyH,EAAKrxH,OAASuI,EAAMunE,kBAAoBvnE,EAAMqzG,mBAEtEyV,EAAK1yH,EAAI4J,EAAMsnE,kBACnB,CACI,IAAIwrC,EAAO9yG,EAAMsnE,kBAAoBwhD,EAAK1yH,EAC1C0yH,EAAK1yH,EAAI,EACT0yH,EAAKtxH,OAASs7G,EACdgW,EAAKl+C,SAAWkoC,EAEpB,GAAIgW,EAAKzyH,EAAI2J,EAAMunE,kBACnB,CACQurC,EAAO9yG,EAAMunE,kBAAoBuhD,EAAKzyH,EAC1CyyH,EAAKzyH,EAAI,EACTyyH,EAAKrxH,QAAUq7G,EACfgW,EAAKj+C,SAAWioC,GAGxBgW,EAAK1yH,GAAKA,EACV0yH,EAAKzyH,GAAKA,EAGd,IAAI0yH,EAAWtT,EAAIC,qBAAqB,WAExC,IAAK3gH,EAAI,EAAGA,EAAIg0H,EAAS/zH,OAAQD,IACjC,CACI,IAAIyvD,EAAQn8B,SAAS0gG,EAASh0H,GAAG6zH,aAAa,SAAU,IACpDI,EAAS3gG,SAAS0gG,EAASh0H,GAAG6zH,aAAa,UAAW,IACtD38E,EAAS5jB,SAAS0gG,EAASh0H,GAAG6zH,aAAa,UAAW,IAAM3xH,EAE5DwQ,EAAK+iE,MAAMw+C,KAEXvhH,EAAK+iE,MAAMw+C,GAAQv7B,QAAQjpC,GAASvY,GAI5C,OAAOn5C,KAAKm2H,mBAAmBlwH,EAAa0O,IAehD0xG,eAAgB,SAAUtE,EAAM97G,EAAa2xE,EAAUC,EAAU3qE,EAAO/I,GAElD,MAAdA,IAEAA,EAAa,GAGjB,IAAIwQ,EAAO,CACP4iE,KAAMwqC,EAAKxqC,KAAKq+C,KAAKQ,MACrBpzG,KAAMuS,SAASwsF,EAAKxqC,KAAKq+C,KAAK14C,MAAO,IACrC6Y,WAAYxgE,SAASwsF,EAAKxqC,KAAKs+C,OAAOQ,YAAa,IAAMx+C,EACzDH,MAAO,IAGPp0E,EAAI,EAAU4J,EAAM5J,EAAI,EACxBC,EAAI,EAAU2J,EAAM3J,EAAI,EAgE5B,OA9DAw+G,EAAKxqC,KAAKG,MAAMs+C,KAAKhjG,QAEjB,SAAoB2jE,GAEhB,IAAI5vB,EAAWxxC,SAASohE,EAAO2/B,IAAK,IAEhCN,EAAOrhH,EAAK+iE,MAAM3Q,GAAY,CAC9BzjE,EAAGiyB,SAASohE,EAAO5wC,GAAI,IACvBxiD,EAAGgyB,SAASohE,EAAO3wC,GAAI,IACvBthD,MAAO6wB,SAASohE,EAAOpqF,OAAQ,IAC/B5H,OAAQ4wB,SAASohE,EAAOnqF,QAAS,IACjCsrE,QAASviD,SAASohE,EAAO4/B,SAAU,IAAMpyH,EACzC4zE,QAASxiD,SAASohE,EAAO6/B,SAAU,IAAMryH,EACzCy2F,UAAWrlE,SAASohE,EAAO8/B,UAAW,IAAM7+C,GAAYzzE,EACxDw2F,QAAS,IAEb,GAAIztF,GAASA,EAAMqnE,QACnB,CASI,GARIyhD,EAAK1yH,EAAI0yH,EAAKtxH,MAAQwI,EAAMsnE,kBAAoBtnE,EAAMozG,oBAEtD0V,EAAKtxH,OAASsxH,EAAK1yH,EAAI0yH,EAAKtxH,MAAQwI,EAAMsnE,kBAAoBtnE,EAAMozG,mBAEpE0V,EAAKzyH,EAAIyyH,EAAKrxH,OAASuI,EAAMunE,kBAAoBvnE,EAAMqzG,oBAEvDyV,EAAKrxH,QAAUqxH,EAAKzyH,EAAIyyH,EAAKrxH,OAASuI,EAAMunE,kBAAoBvnE,EAAMqzG,mBAEtEyV,EAAK1yH,EAAI4J,EAAMsnE,kBACnB,CACI,IAAIwrC,EAAO9yG,EAAMsnE,kBAAoBwhD,EAAK1yH,EAC1C0yH,EAAK1yH,EAAI,EACT0yH,EAAKtxH,OAASs7G,EACdgW,EAAKl+C,SAAWkoC,EAEpB,GAAIgW,EAAKzyH,EAAI2J,EAAMunE,kBACnB,CACQurC,EAAO9yG,EAAMunE,kBAAoBuhD,EAAKzyH,EAC1CyyH,EAAKzyH,EAAI,EACTyyH,EAAKrxH,QAAUq7G,EACfgW,EAAKj+C,SAAWioC,GAGxBgW,EAAK1yH,GAAKA,EACV0yH,EAAKzyH,GAAKA,IAKdw+G,EAAKxqC,KAAK0+C,UAAYlU,EAAKxqC,KAAK0+C,SAASt7B,SAEzConB,EAAKxqC,KAAK0+C,SAASt7B,QAAQ3nE,QAEvB,SAAuB2nE,GAEfhmF,EAAK+iE,MAAMijB,EAAQ+7B,WAEnB/hH,EAAK+iE,MAAMijB,EAAQ+7B,SAAS/7B,QAAQA,EAAQg8B,QAAUphG,SAASolE,EAAQi8B,QAAS,IAAMzyH,KAO/FnE,KAAKm2H,mBAAmBlwH,EAAa0O,IAYhDwhH,mBAAoB,SAAUlwH,EAAa4wH,GAavC,OAXAhwH,OAAOktB,KAAK8iG,EAAen/C,OAAO1kD,QAE9B,SAAqB+zC,GAEjB,IAAI4vB,EAASkgC,EAAen/C,MAAM3Q,GAElC4vB,EAAO7wF,QAAU,IAAI7F,KAAKyM,QAAQzG,EAAa,IAAIlF,EAAOS,UAAUm1F,EAAOrzF,EAAGqzF,EAAOpzF,EAAGozF,EAAOjyF,MAAOiyF,EAAOhyF,WAK9GkyH,GAUXC,IAAK,SAAUlS,GAoBX,IAIIznG,EAJA45G,EAAY,IAAItzG,YAAYmhG,EAAY/2F,MAAM,EAAG,KACjDmpG,EAAY,IAAIxkC,WAAWoyB,GAC3BqS,EAAY,KACZC,EAAeH,EAAU,IAAM,GAAKA,EAAU,GAE9Cp6G,EAAoB,EAExB,GAAqB,WAAjBo6G,EAAU,IAIgB,GAH1B,CACI,EAAG,EAAG,EAAG,EACT,EAAG,EAAG,EAAG,IACX7tH,QAAQguH,GAEd,CAcI,OAbmB,GAAfA,GAAoBA,GAAe,EAEnC/5G,EAAuB,QAEH,GAAf+5G,GAAoBA,GAAe,GAExC/5G,EAAuB,OAEF,IAAhB+5G,IAEL/5G,EAAuB,QAGnB+5G,GAEJ,KAAK,EACDv6G,EAAoB,MACpB,MACJ,KAAK,EACDA,EAAoB,MACpB,MACJ,KAAK,EACDA,EAAoB,MACpB,MACJ,KAAK,EACDA,EAAoB,MACpB,MACJ,KAAK,EACDA,EAAoB,MACpB,MACJ,KAAK,EACDA,EAAoB,MACpB,MACJ,KAAK,EACDA,EAAoB,MACpB,MACJ,KAAK,GACDA,EAAoB,MACpB,MACJ,QACIA,GAAqB,EAG7Bs6G,EAAY,CACRxqG,UAAU,EACVs4F,WAAY,MACZ5nG,qBAAsBA,EACtBg6G,MAAOJ,EAAU,GACjBG,YAAaA,EACbE,WAAYL,EAAU,GACtBM,YAAaN,EAAU,GACvBpyH,OAAQoyH,EAAU,GAClBryH,MAAOqyH,EAAU,GACjBO,MAAOP,EAAU,GACjBQ,iBAAkBR,EAAU,GAC5BS,cAAeT,EAAU,IACzBU,gBAAiBV,EAAU,IAC3BW,aAAcX,EAAU,IACxBriH,YAAasiH,EAAU1wG,SAAS,GAAKywG,EAAU,IAAKC,EAAUW,YAC9Dh7G,kBAAmBA,GAI3B,OAAOs6G,GAUXW,IAAK,SAAUhT,GAoCX,IAAIoS,EAAY,IAAIxkC,WAAWoyB,GAC3BmS,EAAY,IAAItzG,YAAYmhG,GAC5BiT,EAAY,KA4DhB,OA1DqB,KAAjBb,EAAU,IACO,KAAjBA,EAAU,IACO,KAAjBA,EAAU,IACO,KAAjBA,EAAU,KAqCqB,UAnC/Ba,EAAY,CACRprG,UAAU,EACVs4F,WAAY,MACZ5nG,qBAAsB,OACtB6F,KAAM+zG,EAAU,GAChBI,MAAOJ,EAAU,GACjBpyH,OAAQoyH,EAAU,GAClBryH,MAAOqyH,EAAU,GACjBe,MAAOf,EAAU,GACjBO,MAAOP,EAAU,GACjBgB,YAAahB,EAAU,GACvBiB,WAAYjB,EAAU,IACtBkB,WAAYlB,EAAU,IACtBmB,aAAc,CACVrxD,OAAOC,aAAakwD,EAAU,KAC9BnwD,OAAOC,aAAakwD,EAAU,KAC9BnwD,OAAOC,aAAakwD,EAAU,KAC9BnwD,OAAOC,aAAakwD,EAAU,MAChCnnH,KAAK,IACPsoH,eAAgBpB,EAAU,IAC1BqB,eAAgBrB,EAAU,IAC1BsB,eAAgBtB,EAAU,IAC1BuB,eAAgBvB,EAAU,IAC1BwB,eAAgBxB,EAAU,IAC1ByB,MAAOzB,EAAU,IACjB0B,MAAO1B,EAAU,IACjB2B,MAAO3B,EAAU,IACjB4B,MAAO5B,EAAU,IACjB6B,UAAW7B,EAAU,IACrB8B,WAAY,KACZC,kBAAmB,KACnBC,SAAU,KACVC,UAAW,KACXtkH,YAAasiH,EAAU1wG,SAASywG,EAAU,GAAK,EAAGC,EAAUW,cAElDO,cAEVL,EAAUgB,WAAa9B,EAAU,IACjCc,EAAUiB,kBAAoB/B,EAAU,IACxCc,EAAUkB,SAAWhC,EAAU,IAC/Bc,EAAUmB,UAAYjC,EAAU,IAChCc,EAAUkB,SAAWhC,EAAU,KAEA,SAA3Bc,EAAUK,aAEdL,EAAUl7G,kBAAoB,MAEC,SAA3Bk7G,EAAUK,eAEdL,EAAUl7G,kBAAoB,QAI/Bk7G,GAUXoB,IAAK,SAAUrU,GA0BX,IAAIoS,EAAY,IAAIxkC,WAAWoyB,GAC3BmS,EAAY,IAAItzG,YAAYmhG,GAC5BsU,EAAY,KACZC,EAAkB,GAAMpC,EAAU,IAAM,EAAK,EAC7CqC,EAAYrC,EAAUoC,GACtBE,EAAmBtC,EAAU,GAC7B55G,EAAuB,EAE3B,GAAqB,MAAjB65G,EAAU,IAAgC,KAAjBA,EAAU,IAClB,KAAjBA,EAAU,IAAgC,KAAjBA,EAAU,IAClB,KAAjBA,EAAU,IAAgC,KAAjBA,EAAU,IAClB,KAAjBA,EAAU,IAAgC,MAAjBA,EAAU,IAClB,KAAjBA,EAAU,IAAgC,KAAjBA,EAAU,IACjB,KAAlBA,EAAU,KAAkC,KAAlBA,EAAU,KAYL,GAT/B,CAEI,MAGA,MAAQ,MAAQ,MAAQ,MAGxB,MAAQ,MAAQ,MAAQ,OAC1B9tH,QAAQmwH,GACd,CACI,OAAQA,GAEJ,KAAK,MACDl8G,EAAuB,OACvB,MACJ,KAAK,MACL,KAAK,MACL,KAAK,MACL,KAAK,MACDA,EAAuB,QACvB,MACJ,KAAK,MACL,KAAK,MACL,KAAK,MACL,KAAK,MACDA,EAAuB,OAI/B+7G,EAAY,CACRzsG,UAAU,EACVs4F,WAAY,MACZ5nG,qBAAsBA,EACtBm8G,WAAYvC,EAAU,GACtBwC,OAAQxC,EAAU,GAClByC,WAAYzC,EAAU,GACtB0C,SAAU1C,EAAU,GACpBsC,iBAAkBtC,EAAU,GAC5B2C,qBAAsB3C,EAAU,GAChCryH,MAAOqyH,EAAU,GACjBpyH,OAAQoyH,EAAU,IAClB4C,WAAY5C,EAAU,IACtB6C,sBAAuB7C,EAAU,IACjCS,cAAeT,EAAU,IACzB8C,qBAAsB9C,EAAU,IAChC+C,oBAAqB/C,EAAU,IAC/BgD,oBAAqBhD,EAAU,IAC/BqC,UAAWA,EACX1kH,YAAasiH,EAAU1wG,SAAiC,GAAvB6yG,EAAkB,GAAQC,EAAY,MAI/E,OAAOF,GAUXc,IAAK,SAAUpV,GAeX,IAAIoS,EAAY,IAAIxkC,WAAWoyB,GAC3BqV,EAAY,KAoBhB,OAlBqB,KAAjBjD,EAAU,IACO,KAAjBA,EAAU,IACO,KAAjBA,EAAU,IACO,KAAjBA,EAAU,KAEViD,EAAY,CACRxtG,UAAU,EACVs4F,WAAY,MACZ5nG,qBAAsB,OACtBlI,OAA+C,OAArC+hH,EAAU,IAAM,EAAIA,EAAU,IACxCtyH,MAA8C,OAArCsyH,EAAU,IAAM,EAAIA,EAAU,IACvCryH,OAAiD,OAAvCqyH,EAAU,KAAO,EAAIA,EAAU,KACzCkD,cAAwD,OAAvClD,EAAU,KAAO,EAAIA,EAAU,KAChDmD,eAAyD,OAAvCnD,EAAU,KAAO,EAAIA,EAAU,KACjDtiH,YAAasiH,EAAU1wG,SAAS,GAAI0wG,EAAU90H,UAI/C+3H,IAqBfl5H,EAAOq6E,YAAc,SAAU94E,EAAMgR,GAuCjC,IAAK,IAAIimB,KAjCTv5B,KAAKsC,KAAOA,EAMZtC,KAAKsT,IAAMA,EAMXtT,KAAKsX,OAAStX,KAAKsC,KAAKwY,MAAMgsG,QAAQxzG,EAAM,eAM5CtT,KAAKo6H,YAAc,KAOnBp6H,KAAK0zH,UAAW,EAMhB1zH,KAAKq6H,OAAS,GAEAr6H,KAAKsX,OAAOgjH,UAC1B,CACI,IAAIt/C,EAASh7E,KAAKsX,OAAOgjH,UAAU/gG,GAC/BuP,EAAQ9oC,KAAKsC,KAAK+4B,IAAIyN,MAAM9oC,KAAKsT,KAErCw1B,EAAMyxF,UAAUhhG,EAAGyhD,EAAO7uE,MAAQ6uE,EAAO1+D,IAAM0+D,EAAO7uE,MAAQ,KAAM6uE,EAAOvN,MAE3EztE,KAAKq6H,OAAO9gG,GAAKuP,EAGjB9oC,KAAKsX,OAAOo8G,WAEZ1zH,KAAKo6H,YAAcp6H,KAAKsX,OAAOo8G,SAC/B1zH,KAAKutE,KAAKvtE,KAAKo6H,aACfp6H,KAAK0zH,SAAW1zH,KAAKq6H,OAAOr6H,KAAKo6H,eAIzCr5H,EAAOq6E,YAAYv5E,UAAY,CAU3B0rE,KAAM,SAAUyN,EAAQr3C,GAIpB,YAFev9B,IAAXu9B,IAAwBA,EAAS,GAE9B3jC,KAAKq6H,OAAOr/C,GAAQzN,KAAKyN,EAAQ,KAAMr3C,IASlD33B,KAAM,SAAUgvE,GAEZ,GAAKA,EASDh7E,KAAKq6H,OAAOr/C,GAAQhvE,YAPpB,IAAK,IAAIsH,KAAOtT,KAAKq6H,OAEjBr6H,KAAKq6H,OAAO/mH,GAAKtH,QAgB7BjF,IAAK,SAAUi0E,GAEX,OAAOh7E,KAAKq6H,OAAOr/C,KAK3Bj6E,EAAOq6E,YAAYv5E,UAAUC,YAAcf,EAAOq6E,YAkBlDr6E,EAAOo6E,MAAQ,SAAU74E,EAAMgR,EAAKqwB,EAAQ8pC,EAAMvP,QAE/B93D,IAAXu9B,IAAwBA,EAAS,QACxBv9B,IAATqnE,IAAsBA,GAAO,QACjBrnE,IAAZ83D,IAAyBA,EAAU57D,EAAKwmC,MAAM0xF,iBAMlDx6H,KAAKsC,KAAOA,EAKZtC,KAAKq0B,KAAO/gB,EAKZtT,KAAKsT,IAAMA,EAKXtT,KAAKytE,KAAOA,EAKZztE,KAAKy6H,QAAU,GAKfz6H,KAAK2N,QAAU,KAKf3N,KAAK0zH,UAAW,EAKhB1zH,KAAK06H,cAAgB,EAMrB16H,KAAKk5G,UAAY,EAKjBl5G,KAAK26H,YAAc,EAKnB36H,KAAKilC,SAAW,EAKhBjlC,KAAK46H,WAAa,EAKlB56H,KAAKG,SAAW,EAKhBH,KAAK66H,SAAW,EAMhB76H,KAAKwpC,QAAS,EAKdxpC,KAAK86H,eAAiB,EAKtB96H,KAAK+6H,WAAa,EAMlB/6H,KAAKs+G,WAAY,EAMjBt+G,KAAKg7H,cAAgB,GAKrBh7H,KAAKi7H,UAAY,KAMjBj7H,KAAKk7H,iBAAkB,EAMvBl7H,KAAKm7H,UAAW,EAMhBn7H,KAAKo7H,eAAgB,EAMrBp7H,KAAKq7H,UAAW,EAMhBr7H,KAAK4yH,cAAgB5yH,KAAKsC,KAAKwmC,MAAM8pF,cAMrC5yH,KAAK6yH,cAAgB7yH,KAAKsC,KAAKwmC,MAAM+pF,cAKrC7yH,KAAKs7H,aAAe,KAKpBt7H,KAAKu7H,eAAiB,KAKtBv7H,KAAKw7H,SAAW,KAMhBx7H,KAAKy7H,OAAS,KAMdz7H,KAAK07H,cAAgB,EAMrB17H,KAAK27H,iBAAkB,EAMvB37H,KAAK47H,eAAgB,EAMrB57H,KAAK67H,yBAA0B,EAM/B77H,KAAK87H,UAAY,EAEb97H,KAAK4yH,eAEL5yH,KAAK2N,QAAU3N,KAAKsC,KAAKwmC,MAAMn7B,QAC/B3N,KAAKu7H,eAAiBv7H,KAAKsC,KAAKwmC,MAAMizF,gBAEN31H,IAA5BpG,KAAK2N,QAAQquH,WAEbh8H,KAAKw7H,SAAWx7H,KAAK2N,QAAQsuH,iBAI7Bj8H,KAAKw7H,SAAWx7H,KAAK2N,QAAQquH,aAGjCh8H,KAAKw7H,SAASU,KAAKj1H,MAAQ08B,EAEvBu6B,GAEAl+D,KAAKw7H,SAASt9D,QAAQl+D,KAAKu7H,iBAG1Bv7H,KAAK6yH,gBAEN7yH,KAAKsC,KAAKwY,MAAM6sG,SAASr0G,IAAQtT,KAAKsC,KAAKwY,MAAMktG,aAAa10G,IAE9DtT,KAAKy7H,OAASz7H,KAAKsC,KAAKwY,MAAMsuG,aAAa91G,GAC3CtT,KAAK06H,cAAgB,EAEjB16H,KAAKy7H,OAAOx2F,WAEZjlC,KAAK06H,cAAgB16H,KAAKy7H,OAAOx2F,WAKrCjlC,KAAKsC,KAAKwY,MAAMwoG,cAAcjoF,IAAIr7B,KAAKm8H,iBAAkBn8H,OAOjEA,KAAKo8H,UAAY,IAAIr7H,EAAO0jC,OAK5BzkC,KAAKq8H,OAAS,IAAIt7H,EAAO0jC,OAKzBzkC,KAAKmrC,QAAU,IAAIpqC,EAAO0jC,OAK1BzkC,KAAKqrC,SAAW,IAAItqC,EAAO0jC,OAK3BzkC,KAAK23G,OAAS,IAAI52G,EAAO0jC,OAKzBzkC,KAAKs8H,OAAS,IAAIv7H,EAAO0jC,OAKzBzkC,KAAKu8H,OAAS,IAAIx7H,EAAO0jC,OAKzBzkC,KAAKw8H,iBAAmB,IAAIz7H,EAAO0jC,OAKnCzkC,KAAK2kC,eAAiB,IAAI5jC,EAAO0jC,OAMjCzkC,KAAKy8H,QAAU94F,EAMf3jC,KAAK08H,QAAU,KAMf18H,KAAK28H,QAAS,EAMd38H,KAAK48H,YAAc,EAMnB58H,KAAK68H,cAAgB,EAMrB78H,KAAK88H,YAAc,EAMnB98H,KAAK+8H,WAAa,EAMlB/8H,KAAKg9H,YAAc,EAMnBh9H,KAAKi9H,UAAY,EAMjBj9H,KAAKo+C,SAAU,EAMfp+C,KAAKk9H,2BAA4B,GAGrCn8H,EAAOo6E,MAAMt5E,UAAY,CAQrBs6H,iBAAkB,SAAU7oH,GAEpBA,IAAQtT,KAAKsT,MAEbtT,KAAKy7H,OAASz7H,KAAKsC,KAAKwY,MAAMsuG,aAAappH,KAAKsT,KAChDtT,KAAK06H,cAAgB16H,KAAKy7H,OAAOx2F,WAezCs1F,UAAW,SAAUlmG,EAAMloB,EAAO84B,EAAUtB,EAAQ8pC,GAE5CxoC,MAAAA,IAA+CA,EAAW,GAC1DtB,MAAAA,IAA2CA,EAAS,QAC3Cv9B,IAATqnE,IAAsBA,GAAO,GAEjCztE,KAAKy6H,QAAQpmG,GAAQ,CACjBA,KAAMA,EACNloB,MAAOA,EACPH,KAAMG,EAAQ84B,EACdtB,OAAQA,EACRsB,SAAUA,EACV21F,WAAuB,IAAX31F,EACZwoC,KAAMA,IASd0vD,aAAc,SAAU9oG,UAEbr0B,KAAKy6H,QAAQpmG,IAUxB+oG,eAAgB,WAEPp9H,KAAKy7H,SAOVz7H,KAAKq9H,wBACLr9H,KAAKs+G,WAAY,EACjBt+G,KAAK26H,YAAc36H,KAAK46H,WACxB56H,KAAKgM,OAEDhM,KAAKq7H,WAELr7H,KAAK27H,iBAAkB,EACvB37H,KAAK67H,yBAA0B,GAG/B77H,KAAK27H,kBAEL37H,KAAKs9H,oBAEDt9H,KAAK67H,wBAEL77H,KAAKsC,KAAKwmC,MAAMzrB,OAAOrd,OAIvBA,KAAKy6H,QAAU,GACfz6H,KAAK2N,QAAU,KACf3N,KAAK08H,QAAU,KACf18H,KAAKs7H,aAAe,KAEpBt7H,KAAKo8H,UAAUxtF,UACf5uC,KAAKq8H,OAAOztF,UACZ5uC,KAAKmrC,QAAQyD,UACb5uC,KAAKqrC,SAASuD,UACd5uC,KAAK23G,OAAO/oE,UACZ5uC,KAAKs8H,OAAO1tF,UACZ5uC,KAAKu8H,OAAO3tF,UACZ5uC,KAAKw8H,iBAAiB5tF,cAUlCrH,OAAQ,WAEJ,GAAKvnC,KAAKsC,KAAKwY,MAAMwtG,cAActoH,KAAKsT,KAAxC,CAMItT,KAAKu9H,YAAcv9H,KAAKk9H,4BAExBl9H,KAAKo8H,UAAUv0F,SAAS7nC,MACxBA,KAAKk9H,2BAA4B,GAGjCl9H,KAAKk7H,iBAAmBl7H,KAAKsC,KAAKwY,MAAMktG,aAAahoH,KAAKsT,OAE1DtT,KAAKk7H,iBAAkB,EACvBl7H,KAAKutE,KAAKvtE,KAAK48H,YAAa58H,KAAK68H,cAAe78H,KAAK88H,YAAa98H,KAAKi9H,YAG3E,IAAI79E,EAAMp/C,KAAKsC,KAAKqlC,KAAKA,KAEzB,GAAI3nC,KAAKs+G,UACT,CACI,GAAIt+G,KAAK47H,cACT,CACI,IAAIjB,EAAc36H,KAAKy7H,OAAOd,YAE9B,KAAIA,IAAgB36H,KAAKwpC,OAASxpC,KAAK+8H,WAAa,IAAM/8H,KAAKG,UAAY,IAUvE,OARAH,KAAK47H,eAAgB,EACrB57H,KAAKk5G,UAAY95D,EAAO,IAAOu7E,EAC/B36H,KAAK66H,SAAW76H,KAAKk5G,UAAYl5G,KAAK46H,WAU9C56H,KAAK26H,YAAcv7E,EAAMp/C,KAAKk5G,UAE1Bl5G,KAAK26H,aAAe36H,KAAK46H,aAErB56H,KAAK4yH,cAED5yH,KAAKytE,MAGLztE,KAAK23G,OAAO9vE,SAAS7nC,MAGrBA,KAAKs+G,WAAY,EAEU,KAAvBt+G,KAAKg7H,eAELh7H,KAAK26H,YAAc,EACnB36H,KAAKk5G,UAAY95D,EACjBp/C,KAAKs+G,WAAY,IAIjBt+G,KAAKw8H,iBAAiB30F,SAAS7nC,KAAKg7H,cAAeh7H,MACnDA,KAAKutE,KAAKvtE,KAAKg7H,cAAe,EAAGh7H,KAAK2jC,QAAQ,GAAM,GAAM,KAMnC,KAAvB3jC,KAAKg7H,eAELh7H,KAAKgM,OAIRhM,KAAKytE,MAEVztE,KAAK23G,OAAO9vE,SAAS7nC,MAEM,KAAvBA,KAAKg7H,gBAELh7H,KAAK26H,YAAc,EACnB36H,KAAKk5G,UAAY95D,GAIrBp/C,KAAKs+G,WAAY,EAEjBt+G,KAAKutE,KAAKvtE,KAAKg7H,cAAe,EAAGh7H,KAAK2jC,QAAQ,GAAM,GAAM,IAI1D3jC,KAAKgM,cA1FbhM,KAAK+B,WAuGby7H,SAAU,SAAU75F,GAEhB,OAAO3jC,KAAKutE,KAAK,KAAM,EAAG5pC,GAAQ,IAetC4pC,KAAM,SAAUyN,EAAQ76E,EAAUwjC,EAAQ8pC,EAAMgwD,EAAcpB,GAM1D,QAJej2H,IAAX40E,IAAmC,IAAXA,GAA+B,OAAXA,IAAmBA,EAAS,SACvD50E,IAAjBq3H,IAA8BA,GAAe,QAClCr3H,IAAXi2H,IAAwBA,GAAS,GAEjCr8H,KAAKs+G,YAAct+G,KAAKo7H,gBAAkBqC,IAAiBz9H,KAAKm7H,SAGhE,OAAOn7H,KAkBX,GAfIA,KAAKy7H,QAAUz7H,KAAKs+G,YAAct+G,KAAKo7H,gBAAkBp7H,KAAKm7H,UAAYsC,KAEtEz9H,KAAK4yH,cAEL5yH,KAAK09H,2BAEA19H,KAAK6yH,gBAEV7yH,KAAKy7H,OAAOrwF,QACZprC,KAAKy7H,OAAOd,YAAc,GAG9B36H,KAAKs+G,WAAY,GAGN,KAAXtjC,GAAoD,EAAnCn0E,OAAOktB,KAAK/zB,KAAKy6H,SAASv4H,OAM3C,OAAOlC,KAGX,GAAe,KAAXg7E,EACJ,CACI,IAAIh7E,KAAKy6H,QAAQz/C,GA6Bb,OADA5qE,QAAQ+K,KAAK,mCAAqC6/D,EAAS,kBACpDh7E,KA3BPA,KAAKg7H,cAAgBhgD,EAGrBh7E,KAAKG,SAAWH,KAAKy6H,QAAQz/C,GAAQ7uE,MACrCnM,KAAK2jC,OAAS3jC,KAAKy6H,QAAQz/C,GAAQr3C,OACnC3jC,KAAKytE,KAAOztE,KAAKy6H,QAAQz/C,GAAQvN,KACjCztE,KAAKilC,SAAWjlC,KAAKy6H,QAAQz/C,GAAQ/1C,SACrCjlC,KAAK46H,WAAa56H,KAAKy6H,QAAQz/C,GAAQ4/C,gBAEjB,IAAXj3F,IAEP3jC,KAAK2jC,OAASA,QAGE,IAAT8pC,IAEPztE,KAAKytE,KAAOA,GAGhBztE,KAAK48H,YAAc5hD,EACnBh7E,KAAK68H,cAAgB78H,KAAKG,SAC1BH,KAAK88H,YAAc98H,KAAK2jC,OACxB3jC,KAAKi9H,UAAYj9H,KAAKytE,UAU1BttE,EAAWA,GAAY,OAERiG,IAAXu9B,IAAwBA,EAAS3jC,KAAKy8H,cAC7Br2H,IAATqnE,IAAsBA,EAAOztE,KAAKytE,MAEtCztE,KAAKG,SAAW8C,KAAK2C,IAAI,EAAGzF,GAC5BH,KAAK2jC,OAASA,EACd3jC,KAAKytE,KAAOA,EACZztE,KAAKilC,SAAW,EAChBjlC,KAAK46H,WAAa,EAElB56H,KAAK48H,YAAc5hD,EACnBh7E,KAAK68H,cAAgB18H,EACrBH,KAAK88H,YAAcn5F,EACnB3jC,KAAKi9H,UAAYxvD,EAyHrB,OAtHIztE,KAAK4yH,cAGD5yH,KAAKsC,KAAKwY,MAAMitG,eAAe/nH,KAAKsT,MAEpCtT,KAAK29H,0BAED39H,KAAKytE,MAAmB,KAAXuN,IAEbh7E,KAAKy7H,OAAOhuD,MAAO,GAGlBztE,KAAKytE,MAAmB,KAAXuN,GAEdh7E,KAAK49H,qBAGT59H,KAAK06H,cAAgB16H,KAAKy7H,OAAOt/G,OAAO8oB,SAElB,IAAlBjlC,KAAKilC,WAELjlC,KAAKilC,SAAWjlC,KAAK06H,cACrB16H,KAAK46H,WAAa33H,KAAK4C,KAA0B,IAArB7F,KAAK06H,gBAGjC16H,KAAKytE,MAAmB,KAAXuN,EAEbh7E,KAAK69H,aAAa,EAAG,GAIrB79H,KAAK69H,aAAa,EAAG79H,KAAKG,SAAUH,KAAKilC,UAG7CjlC,KAAKs+G,WAAY,EACjBt+G,KAAKwpC,QAAS,EACdxpC,KAAKk5G,UAAYl5G,KAAKsC,KAAKqlC,KAAKA,KAChC3nC,KAAK26H,YAAc,EACnB36H,KAAK66H,SAAW76H,KAAKk5G,UAAYl5G,KAAK46H,WAElCyB,GAEAr8H,KAAKq8H,OAAOx0F,SAAS7nC,QAKzBA,KAAKk7H,iBAAkB,EAEnBl7H,KAAKsC,KAAKwY,MAAM6sG,SAAS3nH,KAAKsT,OAA0D,IAAlDtT,KAAKsC,KAAKwY,MAAM6sG,SAAS3nH,KAAKsT,KAAKoyG,YAEzE1lH,KAAKsC,KAAKwmC,MAAMisF,OAAO/0H,KAAKsT,IAAKtT,OAIpCA,KAAKsC,KAAKwY,MAAM6sG,SAAS3nH,KAAKsT,MAAQtT,KAAKsC,KAAKwY,MAAM6sG,SAAS3nH,KAAKsT,KAAKy9C,QAE9E/wD,KAAKsC,KAAKwY,MAAM4sG,YAAY1nH,KAAKsT,KACjCtT,KAAKk7H,iBAAkB,GAElBl7H,KAAKy7H,SAAWz7H,KAAKsC,KAAKgqB,OAAOk1B,UAAuC,IAA3BxhD,KAAKy7H,OAAOj1B,aAE9DxmG,KAAKy7H,OAAOluD,OAEZvtE,KAAKy7H,OAAOhuD,KAAOztE,KAAKytE,KAGxBztE,KAAK06H,cAAgB16H,KAAKy7H,OAAOx2F,SAEX,IAAlBjlC,KAAKilC,WAELjlC,KAAKilC,SAAWjlC,KAAK06H,cACrB16H,KAAK46H,WAAkC,IAArB56H,KAAK06H,eAG3B16H,KAAK07H,cAAgB17H,KAAKsC,KAAKwmC,MAAMnF,OAErC3jC,KAAKy7H,OAAOd,YAAc36H,KAAKG,SAC/BH,KAAKy7H,OAAOqC,MAAQ99H,KAAK28H,OAErB38H,KAAK28H,QAAU38H,KAAKsC,KAAKwmC,MAAMi1F,KAE/B/9H,KAAKy7H,OAAO93F,OAAS,EAIrB3jC,KAAKy7H,OAAO93F,OAAS3jC,KAAKy8H,QAAUz8H,KAAK07H,cAG7C17H,KAAK47H,eAAiB57H,KAAKg7H,cAC3Bh7H,KAAKs+G,WAAY,EACjBt+G,KAAKwpC,QAAS,EACdxpC,KAAK+8H,WAAa,EAClB/8H,KAAKk5G,UAAYl5G,KAAKsC,KAAKqlC,KAAKA,KAChC3nC,KAAK26H,YAAc,EACnB36H,KAAK66H,SAAW76H,KAAKk5G,UAAYl5G,KAAK46H,WAElCyB,GAEAr8H,KAAKq8H,OAAOx0F,SAAS7nC,OAKzBA,KAAKk7H,iBAAkB,EAGvBl7H,KAAKq7H,WAEDr7H,KAAKytE,MAELr9D,QAAQ+K,KAAK,iCAAmCnb,KAAKq0B,KAAO,qCAGhEr0B,KAAK27H,iBAAkB,EACvB37H,KAAK67H,yBAA0B,GAG5B77H,MAYX8rC,QAAS,SAAUkvC,EAAQ76E,EAAUwjC,EAAQ8pC,GAEzCuN,EAASA,GAAU,GACnB76E,EAAWA,GAAY,EACvBwjC,EAASA,GAAU,OACNv9B,IAATqnE,IAAsBA,GAAO,GAEjCztE,KAAKutE,KAAKyN,EAAQ76E,EAAUwjC,EAAQ8pC,GAAM,IAQ9CriC,MAAO,WAECprC,KAAKs+G,YAELt+G,KAAKwpC,QAAS,EACdxpC,KAAK86H,eAAiB96H,KAAK26H,YAC3B36H,KAAK+6H,WAAa/6H,KAAKsC,KAAKqlC,KAAKA,KACjC3nC,KAAK+8H,WAAa/8H,KAAKy7H,OAAOd,YAC9B36H,KAAKmrC,QAAQtD,SAAS7nC,MACtBA,KAAKgM,SASbs/B,OAAQ,WAEJ,GAAItrC,KAAKwpC,OACT,CACI,GAAIxpC,KAAK4yH,cACT,CACI,IAAIrwH,EAAIU,KAAK2C,IAAI,EAAG5F,KAAKG,SAAYH,KAAK86H,eAAiB,KAE3D96H,KAAK29H,0BAEsB,KAAvB39H,KAAKg7H,gBAEDh7H,KAAKytE,KAELztE,KAAKy7H,OAAOhuD,MAAO,EAInBztE,KAAK49H,sBAIb,IAAI34F,EAAWjlC,KAAKilC,SAAYjlC,KAAK86H,eAAiB,IAElD96H,KAAKytE,MAA+B,KAAvBztE,KAAKg7H,cAElBh7H,KAAK69H,aAAa,EAAGt7H,GAIrBvC,KAAK69H,aAAa,EAAGt7H,EAAG0iC,QAK5BjlC,KAAK47H,eAAiB57H,KAAKg7H,cAC3Bh7H,KAAKy7H,OAAOd,YAAc36H,KAAK+8H,WAC/B/8H,KAAK+8H,WAAa,EAClB/8H,KAAKy7H,OAAOluD,OAGhBvtE,KAAKs+G,WAAY,EACjBt+G,KAAKwpC,QAAS,EACdxpC,KAAKk5G,WAAcl5G,KAAKsC,KAAKqlC,KAAKA,KAAO3nC,KAAK+6H,WAC9C/6H,KAAKqrC,SAASxD,SAAS7nC,QAS/BgM,KAAM,WAkBF,GAhBIhM,KAAKs+G,WAAat+G,KAAKy7H,SAEnBz7H,KAAK4yH,cAEL5yH,KAAK09H,2BAEA19H,KAAK6yH,gBAEV7yH,KAAKy7H,OAAOrwF,QACZprC,KAAKy7H,OAAOd,YAAc,IAIlC36H,KAAKk7H,iBAAkB,EACvBl7H,KAAKs+G,WAAY,GAEZt+G,KAAKwpC,OACV,CACI,IAAIw0F,EAAah+H,KAAKg7H,cAEK,KAAvBh7H,KAAKg7H,eAELh7H,KAAKw8H,iBAAiB30F,SAAS7nC,KAAKg7H,cAAeh7H,MAGvDA,KAAKg7H,cAAgB,GAEE,OAAnBh7H,KAAKi7H,WAELj7H,KAAKi7H,UAAUjvH,OAGnBhM,KAAKs8H,OAAOz0F,SAAS7nC,KAAMg+H,KAgBnC12F,OAAQ,SAAUrC,EAAUwoC,EAAMuN,QAEjB50E,IAATqnE,IAAsBA,GAAO,QAClBrnE,IAAX40E,IAAwBA,EAASh7E,KAAKg7H,eAEtCh7H,KAAKwpC,SAKTxpC,KAAKutE,KAAKyN,EAAQ,EAAG,EAAGvN,GAExBztE,KAAKi+H,OAAOh5F,EAAU,KAW1Bi5F,QAAS,SAAUj5F,GAEfjlC,KAAKi+H,OAAOh5F,EAAU,IAY1Bg5F,OAAQ,SAAUh5F,EAAUtB,GAEnB3jC,KAAKs+G,YAAat+G,KAAKwpC,QAAU7F,IAAW3jC,KAAK2jC,cAKrCv9B,IAAb6+B,IAA0BA,EAAW,UAE1B7+B,IAAXu9B,GAMJ3jC,KAAKi7H,UAAYj7H,KAAKsC,KAAK+4B,IAAI66C,MAAMl2E,MAAMwzB,GAAG,CAAEmQ,OAAQA,GAAUsB,EAAUlkC,EAAOiyG,OAAOK,OAAOC,MAAM,GAEvGtzG,KAAKi7H,UAAUnjB,WAAWz8E,IAAIr7B,KAAKm+H,aAAcn+H,OAN7CoQ,QAAQ+K,KAAK,+CAerBgjH,aAAc,WAEVn+H,KAAK2kC,eAAekD,SAAS7nC,KAAMA,KAAK2jC,QAEpB,IAAhB3jC,KAAK2jC,QAEL3jC,KAAKgM,QAeboyH,mBAAoB,SAAUC,GAItBr+H,KAAK6yH,eAAiB7yH,KAAKy7H,SAE3Bz7H,KAAK07H,cAAgB2C,EACrBr+H,KAAKy7H,OAAO93F,OAAS3jC,KAAK07H,cAAgB17H,KAAKy8H,UAUvD16H,QAAS,SAAUsb,QAEAjX,IAAXiX,IAAwBA,GAAS,GAErCrd,KAAK27H,iBAAkB,EACvB37H,KAAK67H,wBAA0Bx+G,EAC/Brd,KAAKgM,OAEDqR,EAEArd,KAAKsC,KAAKwmC,MAAMzrB,OAAOrd,OAIvBA,KAAKy6H,QAAU,GACfz6H,KAAK2N,QAAU,KACf3N,KAAK08H,QAAU,KACf18H,KAAKs7H,aAAe,KAEpBt7H,KAAKo8H,UAAUxtF,UACf5uC,KAAKq8H,OAAOztF,UACZ5uC,KAAKmrC,QAAQyD,UACb5uC,KAAKqrC,SAASuD,UACd5uC,KAAK23G,OAAO/oE,UACZ5uC,KAAKs8H,OAAO1tF,UACZ5uC,KAAKu8H,OAAO3tF,UACZ5uC,KAAKw8H,iBAAiB5tF,YAI9B+uF,wBAAyB,WAErB39H,KAAKy7H,OAASz7H,KAAK2N,QAAQ2wH,qBAC3Bt+H,KAAKy7H,OAAOv9D,QAAQl+D,KAAKs7H,cAAgBt7H,KAAKw7H,UAC9Cx7H,KAAK08H,QAAU18H,KAAKsC,KAAKwY,MAAMsuG,aAAappH,KAAKsT,KACjDtT,KAAKy7H,OAAOt/G,OAASnc,KAAK08H,QAC1B18H,KAAK87H,aAGTwB,kBAAmB,WAEft9H,KAAKy7H,OAAOr9D,WAAWp+D,KAAKs7H,cAAgBt7H,KAAKw7H,WAGrDqC,aAAc,SAAUU,EAAMhmH,EAAQ0sB,QAIjB7+B,IAAb6+B,EAEAjlC,KAAKy7H,OAAOtvH,MAAMoyH,GAAQ,EAAGhmH,GAAU,GAIvCvY,KAAKy7H,OAAOtvH,MAAMoyH,GAAQ,EAAGhmH,GAAU,EAAG0sB,IAIlDy4F,yBAA0B,WAGtB19H,KAAKq9H,wBAEL,IAEIr9H,KAAKy7H,OAAOzvH,KAAK,GAErB,MAAO0C,IAKP1O,KAAKs9H,oBAELt9H,KAAKy7H,OAAS,MAGlBmC,mBAAoB,WAEhB59H,KAAKy7H,OAAO+C,QAAUx+H,KAAKo9H,eAAe/qG,KAAKryB,OAGnDq9H,sBAAuB,WAEnBr9H,KAAKy7H,OAAO+C,QAAU,OAK9Bz9H,EAAOo6E,MAAMt5E,UAAUC,YAAcf,EAAOo6E,MAO5Ct0E,OAAOyF,eAAevL,EAAOo6E,MAAMt5E,UAAW,aAAc,CAExDkF,IAAK,WAED,OAAO/G,KAAKsC,KAAKwY,MAAM6sG,SAAS3nH,KAAKsT,KAAKoyG,cAUlD7+G,OAAOyF,eAAevL,EAAOo6E,MAAMt5E,UAAW,YAAa,CAEvDkF,IAAK,WAED,OAAO/G,KAAKsC,KAAKwY,MAAMitG,eAAe/nH,KAAKsT,QASnDzM,OAAOyF,eAAevL,EAAOo6E,MAAMt5E,UAAW,OAAQ,CAElDkF,IAAK,WAED,OAAQ/G,KAAK28H,QAAU38H,KAAKsC,KAAKwmC,MAAMi1F,MAG3C/2H,IAAK,SAAUC,IAEXA,EAAQA,IAAS,KAEHjH,KAAK28H,SAKf11H,GAEAjH,KAAK28H,QAAS,EACd38H,KAAKg9H,YAAch9H,KAAK88H,YAEpB98H,KAAK4yH,cAEL5yH,KAAKw7H,SAASU,KAAKj1H,MAAQ,EAEtBjH,KAAK6yH,eAAiB7yH,KAAKy7H,SAEhCz7H,KAAKy7H,OAAO93F,OAAS,KAKzB3jC,KAAK28H,QAAS,EAEV38H,KAAK4yH,cAEL5yH,KAAKw7H,SAASU,KAAKj1H,MAAQjH,KAAKg9H,YAE3Bh9H,KAAK6yH,eAAiB7yH,KAAKy7H,SAEhCz7H,KAAKy7H,OAAO93F,OAAS3jC,KAAKg9H,cAIlCh9H,KAAKu8H,OAAO10F,SAAS7nC,UAS7B6G,OAAOyF,eAAevL,EAAOo6E,MAAMt5E,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAKy8H,SAGhBz1H,IAAK,SAAUC,GAGPjH,KAAK6yH,gBAEL5rH,EAAQjH,KAAKsC,KAAK2lC,KAAKpJ,MAAM53B,EAAO,EAAG,IAGvCjH,KAAK28H,OAEL38H,KAAKg9H,YAAc/1H,GAIvBjH,KAAK88H,YAAc71H,EACnBjH,KAAKy8H,QAAUx1H,EAEXjH,KAAK4yH,cAEL5yH,KAAKw7H,SAASU,KAAKj1H,MAAQA,EAEtBjH,KAAK6yH,eAAiB7yH,KAAKy7H,SAEhCz7H,KAAKy7H,OAAO93F,OAAS3jC,KAAK07H,cAAgBz0H,OAMtDJ,OAAOyF,eAAevL,EAAOo6E,MAAMt5E,UAAW,WAAY,CAEtDkF,IAAK,WAED,OAAO/G,KAAKy7H,OAASz7H,KAAK87H,UAAY,QA8B9C/6H,EAAOg/C,aAAe,SAAUz9C,GAK5BtC,KAAKsC,KAAOA,EAKZtC,KAAKy+H,cAAgB,IAAI19H,EAAO0jC,OAMhCzkC,KAAK0+H,eAAiB,IAAI39H,EAAO0jC,OAMjCzkC,KAAKu8H,OAAS,IAAIx7H,EAAO0jC,OAMzBzkC,KAAK2+H,SAAW,IAAI59H,EAAO0jC,OAO3BzkC,KAAK4+H,cAAgB,IAAI79H,EAAO0jC,OAMhCzkC,KAAKqqC,cAAgB,IAAItpC,EAAO0jC,OAMhCzkC,KAAK2N,QAAU,KAUf3N,KAAK6+H,YAAc,KAMnB7+H,KAAK4yH,eAAgB,EAMrB5yH,KAAK6yH,eAAgB,EAMrB7yH,KAAKkwH,SAAU,EAMflwH,KAAKw6H,iBAAkB,EAMvBx6H,KAAK2lH,aAAc,EAMnB3lH,KAAK8+H,SAAW,GAShB9+H,KAAK4iD,aAAc,EAOnB5iD,KAAK++H,YAAa,EAOlB/+H,KAAK28H,QAAS,EAOd38H,KAAKg/H,cAAgB,KAOrBh/H,KAAKy8H,QAAU,EAMfz8H,KAAKi/H,QAAU,GAMfj/H,KAAKk/H,WAAa,IAAIn+H,EAAOw5C,SAM7Bv6C,KAAKm/H,WAAY,EAMjBn/H,KAAKo/H,eAAiB,KAMtBp/H,KAAKq/H,cAAgB,KAMrBr/H,KAAKgzC,SAAWhzC,KAAKgzC,SAAS3gB,KAAKryB,MAMnCA,KAAKs/H,eAAiBt/H,KAAKs/H,eAAejtG,KAAKryB,OAGnDe,EAAOg/C,aAAal+C,UAAY,CAO5BskC,KAAM,WAEF,IAAI7Z,EAAStsB,KAAKsC,KAAKgqB,OACnBs0B,EAAezwC,OAAOywC,aAQ1B,GANIt0B,EAAOm2B,MAA2B,IAApBn2B,EAAOy0B,WAErB/gD,KAAK8+H,SAAW,GAIhBl+E,EACJ,CAEI,IAAkC,IAA9BA,EAAa2+E,aAIb,OAFAv/H,KAAKkwH,SAAU,OACflwH,KAAK2lH,aAAc,GAKvB,IAAqC,IAAjC/kE,EAAa4+E,gBAIb,OAFAx/H,KAAK6yH,eAAgB,OACrB7yH,KAAK2lH,aAAc,GAK3B,GAAI/kE,GAAgBA,EAAa6+E,aAE7Bz/H,KAAK2N,QAAUizC,EAAa6+E,iBAGhC,CACI,IAAIn4B,EAAen3F,OAAOm3F,cAAgBn3F,OAAOo3F,mBAEjD,GAAID,EAEA,IAEItnG,KAAK2N,QAAU,IAAI25F,EAEvB,MAAOz9E,GAEH7pB,KAAK2N,QAAU,KACf3N,KAAK4yH,eAAgB,EACrB5yH,KAAK2lH,aAAc,EAEnBv1G,QAAQ+K,KAAK0O,IAKzB,GAAqB,OAAjB7pB,KAAK2N,QACT,CAEI,QAAqBvH,IAAjB+J,OAAO2jH,MAGP,YADA9zH,KAAKkwH,SAAU,GAKflwH,KAAK6yH,eAAgB,OAKzB7yH,KAAK4yH,eAAgB,EAErB5yH,KAAK6+H,YAAc7+H,KAAK2N,QAAQkxH,aAAgB,KAAO7+H,KAAK2N,QAAQuiC,YAAc,YAElD9pC,IAA5BpG,KAAK2N,QAAQquH,WAEbh8H,KAAK+7H,WAAa/7H,KAAK2N,QAAQsuH,iBAI/Bj8H,KAAK+7H,WAAa/7H,KAAK2N,QAAQquH,aAGnCh8H,KAAK+7H,WAAWG,KAAKj1H,MAAQ,EAC7BjH,KAAK+7H,WAAW79D,QAAQl+D,KAAK2N,QAAQo0E,aAIrC/hF,KAAK2N,QAAQ+xH,cAAgB1/H,KAAKs/H,eAEP,cAAvBt/H,KAAK2N,QAAQo7B,OAEb/oC,KAAKsC,KAAK0V,OAAOk7B,iBAAiB,QAASlzC,KAAKgzC,UAInDhzC,KAAKkwH,SAGF5jG,EAAOk/E,oBAEPxrG,KAAK2/H,eAIT3/H,KAAK4yH,eAAiBtmG,EAAOq3E,QAAUr3E,EAAOs3E,eAAiB,IAE/DxzF,QAAQC,IAAI,6IAUpBsvH,aAAc,WAEN3/H,KAAKkwH,SAAY//G,OAAOywC,eAAqD,IAArCzwC,OAAOywC,aAAa2+E,eAKhEv/H,KAAKsC,KAAKsmC,MAAMye,qBAAqBrnD,KAAK4/H,OAAQ5/H,MAAM,GAExDA,KAAK2lH,aAAc,IASvBka,eAAgB,WAEZ7/H,KAAK2lH,aAAc,EACnB3lH,KAAKg/H,cAAgB,KACrBh/H,KAAK4+H,cAAc/2F,YAQvBi4F,oBAAqB,WAEjB,OAAQ9/H,KAAK4yH,eAAwC,cAAvB5yH,KAAK2N,QAAQo7B,OAQ/Cg3F,eAAgB,WAEZ,GAAI//H,KAAK4yH,cAEL,OAAO5yH,KAAK2N,QAAQ29B,UAS5B00F,0BAA2B,WAEvB,GAAIhgI,KAAK8/H,sBAEL,OAAO9/H,KAAK2N,QAAQ29B,UAU5Bs0F,OAAQ,WAEJ,GAAI5/H,KAAKkwH,UAAYlwH,KAAK2lH,aAAsC,OAAvB3lH,KAAKg/H,cAE1C,OAAO,EAIX,GAAIh/H,KAAK6yH,cAEL7yH,KAAK6/H,sBAEJ,GAAI7/H,KAAK4yH,cACd,CAMI,IAAIz2G,EAASnc,KAAK2N,QAAQyW,aAAa,EAAG,EAAG,OAC7CpkB,KAAKg/H,cAAgBh/H,KAAK2N,QAAQ2wH,qBAClCt+H,KAAKg/H,cAAc7iH,OAASA,EAC5Bnc,KAAKg/H,cAAc9gE,QAAQl+D,KAAK2N,QAAQo0E,aAExC,IAAIlzC,EAAQ7uC,KAEZA,KAAKg/H,cAAcR,QAAU,WAEzB3vF,EAAMgxF,iBACNhxF,EAAMmxF,kCAGuB55H,IAA7BpG,KAAKg/H,cAAc7yH,MAEnBnM,KAAKg/H,cAAciB,OAAO,GAI1BjgI,KAAKg/H,cAAc7yH,MAAM,GAI7BnM,KAAKggI,4BAIT,OAAO,GAQXE,QAAS,WAEL,IAAIlgI,KAAKkwH,QAKT,IAAK,IAAIjuH,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,IAEbjC,KAAKi/H,QAAQh9H,GAAG+J,QAU5BorG,SAAU,WAEN,IAAIp3G,KAAKkwH,QAKT,IAAK,IAAIjuH,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,IAEbjC,KAAKi/H,QAAQh9H,GAAGmpC,SAU5BisE,UAAW,WAEP,IAAIr3G,KAAKkwH,QAKT,IAAK,IAAIjuH,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,IAEbjC,KAAKi/H,QAAQh9H,GAAGqpC,UAY5BypF,OAAQ,SAAUzhH,EAAKw1B,GAEnBA,EAAQA,GAAS,KAEjB,IAAIq3F,EAAYngI,KAAKsC,KAAKwY,MAAMsuG,aAAa91G,GAE7C,GAAI6sH,IAE4C,IAAxCngI,KAAKsC,KAAKwY,MAAMitG,eAAez0G,GACnC,CACItT,KAAKsC,KAAKwY,MAAM+sG,YAAYv0G,EAAK,cAAc,GAE/C,IAAIu7B,EAAQ7uC,KAEZ,IAEIA,KAAK2N,QAAQyyH,gBAAgBD,EAAW,SAAUhkH,GAEzC0yB,EAAMvsC,KAAKmpC,UAOZtvB,IAEA0yB,EAAMvsC,KAAKwY,MAAMgtG,aAAax0G,EAAK6I,GACnC0yB,EAAM4vF,cAAc52F,SAASv0B,EAAKw1B,MAI9C,MAAOp6B,OAgBnB2xH,mBAAoB,SAAUC,EAAOppF,EAAUxL,GAEtB,iBAAV40F,IAEPA,EAAQ,CAAEA,IAGdtgI,KAAKk/H,WAAW12F,QAEhB,IAAK,IAAIvmC,EAAI,EAAGA,EAAIq+H,EAAMp+H,OAAQD,IAE1Bq+H,EAAMr+H,aAAclB,EAAOo6E,MAEtBn7E,KAAKsC,KAAKwY,MAAMitG,eAAeuY,EAAMr+H,GAAGqR,MAEzCtT,KAAKk/H,WAAW7jG,IAAIilG,EAAMr+H,GAAGqR,KAG3BtT,KAAKsC,KAAKwY,MAAMitG,eAAeuY,EAAMr+H,KAE3CjC,KAAKk/H,WAAW7jG,IAAIilG,EAAMr+H,IAKJ,IAA1BjC,KAAKk/H,WAAWhkF,OAEhBl7C,KAAKm/H,WAAY,EACjBjoF,EAASnzC,KAAK2nC,KAId1rC,KAAKm/H,WAAY,EACjBn/H,KAAKo/H,eAAiBloF,EACtBl3C,KAAKq/H,cAAgB3zF,IAU7BnE,OAAQ,WAEJ,IAAIvnC,KAAKkwH,QAAT,CAOA,IAAKlwH,KAAK8/H,sBAEN,IAAK,IAAI79H,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAErCjC,KAAKi/H,QAAQh9H,GAAGslC,SAIxB,GAAIvnC,KAAKm/H,UACT,CAGI,IAFA,IAAI7rH,EAAMtT,KAAKk/H,WAAWxtE,MAEnBp+C,GAECtT,KAAKsC,KAAKwY,MAAMitG,eAAez0G,IAE/BtT,KAAKk/H,WAAW7hH,OAAO/J,GAG3BA,EAAMtT,KAAKk/H,WAAWxnF,KAGI,IAA1B13C,KAAKk/H,WAAWhkF,QAEhBl7C,KAAKm/H,WAAY,EACjBn/H,KAAKo/H,eAAer7H,KAAK/D,KAAKq/H,mBAe1ChkG,IAAK,SAAU/nB,EAAKqwB,EAAQ8pC,EAAMvP,QAEf93D,IAAXu9B,IAAwBA,EAAS,QACxBv9B,IAATqnE,IAAsBA,GAAO,QACjBrnE,IAAZ83D,IAAyBA,EAAUl+D,KAAKw6H,iBAE5C,IAAI1xF,EAAQ,IAAI/nC,EAAOo6E,MAAMn7E,KAAKsC,KAAMgR,EAAKqwB,EAAQ8pC,EAAMvP,GAI3D,OAFAl+D,KAAKi/H,QAAQt3H,KAAKmhC,GAEXA,GAUXytC,UAAW,SAAUjjE,GAIjB,OAFkB,IAAIvS,EAAOq6E,YAAYp7E,KAAKsC,KAAMgR,IAYxD+J,OAAQ,SAAUyrB,GAId,IAFA,IAAI7mC,EAAIjC,KAAKi/H,QAAQ/8H,OAEdD,KAEH,GAAIjC,KAAKi/H,QAAQh9H,KAAO6mC,EAIpB,OAFA9oC,KAAKi/H,QAAQh9H,GAAGF,SAAQ,GACxB/B,KAAKi/H,QAAQt2H,OAAO1G,EAAG,IAChB,EAIf,OAAO,GASXoqC,UAAW,WAEPrsC,KAAKkgI,UAEL,IAAK,IAAIj+H,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,IAEbjC,KAAKi/H,QAAQh9H,GAAGF,UAIxB/B,KAAKi/H,QAAQ/8H,OAAS,GAW1Bq+H,YAAa,SAAUjtH,GAKnB,IAHA,IAAIrR,EAAIjC,KAAKi/H,QAAQ/8H,OACjB2H,EAAU,EAEP5H,KAECjC,KAAKi/H,QAAQh9H,GAAGqR,MAAQA,IAExBtT,KAAKi/H,QAAQh9H,GAAGF,SAAQ,GACxB/B,KAAKi/H,QAAQt2H,OAAO1G,EAAG,GACvB4H,KAIR,OAAOA,GAYX0jE,KAAM,SAAUj6D,EAAKqwB,EAAQ8pC,GAEzB,IAAIztE,KAAKkwH,QAAT,CAKA,IAAIpnF,EAAQ9oC,KAAKq7B,IAAI/nB,EAAKqwB,EAAQ8pC,GAIlC,OAFA3kC,EAAMykC,OAECzkC,IASX+Z,QAAS,WAEL,IAAI7iD,KAAK28H,OAAT,CAKA38H,KAAK28H,QAAS,EAEV38H,KAAK4yH,gBAEL5yH,KAAKg9H,YAAch9H,KAAK+7H,WAAWG,KAAKj1H,MACxCjH,KAAK+7H,WAAWG,KAAKj1H,MAAQ,GAIjC,IAAK,IAAIhF,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,GAAG4wH,gBAEhB7yH,KAAKi/H,QAAQh9H,GAAG87H,MAAO,GAI/B/9H,KAAKu8H,OAAO10F,aAShBib,UAAW,WAEP,GAAK9iD,KAAK28H,SAAU38H,KAAK++H,WAAzB,CAKA/+H,KAAK28H,QAAS,EAEV38H,KAAK4yH,gBAEL5yH,KAAK+7H,WAAWG,KAAKj1H,MAAQjH,KAAKg9H,aAItC,IAAK,IAAI/6H,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,GAAG4wH,gBAEhB7yH,KAAKi/H,QAAQh9H,GAAG87H,MAAO,GAI/B/9H,KAAK2+H,SAAS92F,aAOlBkM,WAAY,WAEJ/zC,KAAK4iD,aAEL5iD,KAAK6iD,WAQb7O,YAAa,WAETh0C,KAAK+/H,iBAED//H,KAAK4iD,aAEL5iD,KAAK8iD,aASb/gD,QAAS,WAEL/B,KAAKqsC,YAELrsC,KAAKu8H,OAAO3tF,UACZ5uC,KAAKy+H,cAAc7vF,UACnB5uC,KAAKqqC,cAAcuE,UACnB5uC,KAAK4+H,cAAchwF,UACnB5uC,KAAK2+H,SAAS/vF,UACd5uC,KAAK0+H,eAAe9vF,UAEpB5uC,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,QAASn0C,KAAKgzC,UAE/ChzC,KAAK2N,UAEL3N,KAAK2N,QAAQ+xH,cAAgB,KAEzBvvH,OAAOywC,aAGPzwC,OAAOywC,aAAa6+E,aAAez/H,KAAK2N,QAGxC3N,KAAK2N,QAAQ6yH,OAEbxgI,KAAK2N,QAAQ6yH,QAGjBxgI,KAAK2N,QAAU,OAQvB2xH,eAAgB,WAEZt/H,KAAKqqC,cAAcxC,SAAS7nC,KAAK2N,QAAQo7B,QAO7CiK,SAAU,WAENhzC,KAAKggI,4BAELhgI,KAAKsC,KAAK0V,OAAOm8B,oBAAoB,QAASn0C,KAAKgzC,YAK3DjyC,EAAOg/C,aAAal+C,UAAUC,YAAcf,EAAOg/C,aAMnDl5C,OAAOyF,eAAevL,EAAOg/C,aAAal+C,UAAW,OAAQ,CAEzDkF,IAAK,WAED,OAAO/G,KAAK28H,QAGhB31H,IAAK,SAAUC,GAIX,GAFAA,EAAQA,IAAS,EAGjB,CACI,GAAIjH,KAAK28H,OAEL,OAGJ38H,KAAK++H,YAAa,EAClB/+H,KAAK6iD,cAGT,CACI,IAAK7iD,KAAK28H,OAEN,OAGJ38H,KAAK++H,YAAa,EAClB/+H,KAAK8iD,gBAUjBj8C,OAAOyF,eAAevL,EAAOg/C,aAAal+C,UAAW,SAAU,CAE3DkF,IAAK,WAED,OAAO/G,KAAKy8H,SAGhBz1H,IAAK,SAAUC,GAWX,GATIA,EAAQ,EAERA,EAAQ,EAEK,EAARA,IAELA,EAAQ,GAGRjH,KAAKy8H,UAAYx1H,EACrB,CAGI,GAFAjH,KAAKy8H,QAAUx1H,EAEXjH,KAAK4yH,cAEL5yH,KAAK+7H,WAAWG,KAAKj1H,MAAQA,OAK7B,IAAK,IAAIhF,EAAI,EAAGA,EAAIjC,KAAKi/H,QAAQ/8H,OAAQD,IAEjCjC,KAAKi/H,QAAQh9H,GAAG4wH,eAEhB7yH,KAAKi/H,QAAQh9H,GAAGm8H,mBAAmBn3H,GAK/CjH,KAAK0+H,eAAe72F,SAAS5gC,OAyEzClG,EAAOw+C,aAAe,SAAUj9C,EAAMoC,EAAOC,GAQzC3E,KAAKsC,KAAOA,EAQZtC,KAAKygI,IAAM1/H,EAAOmxC,IAOlBlyC,KAAKs6D,KAAO,KAOZt6D,KAAK0E,MAAQ,EAOb1E,KAAK2E,OAAS,EASd3E,KAAK0gI,SAAW,KAUhB1gI,KAAKu6F,SAAW,KAShBv6F,KAAK2gI,UAAY,KAUjB3gI,KAAK4gI,UAAY,KASjB5gI,KAAKuY,OAAS,IAAIxX,EAAOX,MAUzBJ,KAAK6gI,gBAAiB,EAUtB7gI,KAAK8gI,eAAgB,EAWrB9gI,KAAK+gI,sBAAuB,EAO5B/gI,KAAKghI,wBAAyB,EAO9BhhI,KAAKihI,sBAAuB,EA0B5BjhI,KAAKkhI,oBAAsB,IAAIngI,EAAO0jC,OAUtCzkC,KAAKmhI,0BAA4B,IAAIpgI,EAAO0jC,OAU5CzkC,KAAKohI,0BAA4B,IAAIrgI,EAAO0jC,OAY5CzkC,KAAKqhI,wBAAyB,EAe9BrhI,KAAKshI,iBAAmB,KAQxBthI,KAAKuhI,yBAA2B,KAuBhCvhI,KAAKwhI,iBAAmB,IAAIzgI,EAAO0jC,OAWnCzkC,KAAKyhI,mBAAqB,IAAI1gI,EAAO0jC,OAWrCzkC,KAAK0hI,kBAAoB,IAAI3gI,EAAO0jC,OAUpCzkC,KAAK2hI,kBAAoB3hI,KAAKygI,IAAImB,uBAOlC5hI,KAAK6hI,YAAc,IAAI9gI,EAAOX,MAAM,EAAG,GAQvCJ,KAAK8hI,oBAAsB,IAAI/gI,EAAOX,MAAM,EAAG,GAS/CJ,KAAKqhH,OAAS,CAAC7oF,KAAM,EAAGC,IAAK,EAAG3C,MAAO,EAAG4C,OAAQ,EAAGp1B,EAAG,EAAGC,EAAG,GAO9DvD,KAAKsE,OAAS,IAAIvD,EAAOS,UAOzBxB,KAAK+hI,YAAc,EAOnB/hI,KAAKgiI,kBAAoB,EAQzBhiI,KAAK4yC,MAAQ,KAeb5yC,KAAKiiI,kBAAoB,CACrBnsG,MAAO,SACP4C,OAAQ,IA6BZ14B,KAAKkiI,cAAgB,CACjBC,oBAAoB,EACpBC,oBAAqB,KACrBC,WAAW,EACXC,SAAU,KACVC,4BAA4B,EAC5BC,iBAAiB,EACjBC,gBAAiB,IAQrBziI,KAAK0iI,WAAa3hI,EAAOw+C,aAAaojF,SAOtC3iI,KAAK4iI,qBAAuB7hI,EAAOw+C,aAAaojF,SAWhD3iI,KAAK6iI,gBAAiB,EAYtB7iI,KAAKisG,WAAa,KAOlBjsG,KAAK8iI,kBAAoB,IAAI/hI,EAAOX,MAAM,EAAG,GAW7CJ,KAAK+iI,oBAAsB,IAkB3B/iI,KAAKgjI,aAAe,IAAIjiI,EAAO0jC,OAO/BzkC,KAAKijI,SAAW,KAOhBjjI,KAAKkjI,gBAAkB,KAMvBljI,KAAKmjI,kBAAoB,KAOzBnjI,KAAKojI,mBAAqB,KAO1BpjI,KAAKqjI,UAAY,IAAItiI,EAAOS,UAO5BxB,KAAKsjI,iBAAmB,IAAIviI,EAAOX,MAAM,EAAG,GAO5CJ,KAAKujI,eAAiB,IAAIxiI,EAAOX,MAAM,EAAG,GAO1CJ,KAAKwjI,YAAc,EASnBxjI,KAAKyjI,gBAAkB,EAOvBzjI,KAAK0jI,qBAAuB,IAO5B1jI,KAAK2jI,cAAgB,IAAI5iI,EAAOS,UAOhCxB,KAAK4jI,YAAc,IAAI7iI,EAAOS,UAO9BxB,KAAK6jI,wBAA0B,IAAI9iI,EAAOS,UAO1CxB,KAAK8jI,sBAAwB,IAAI/iI,EAAOS,UAMxCxB,KAAK+jI,SAAU,EAEXzhI,EAAKgV,QAELtX,KAAK+xC,YAAYzvC,EAAKgV,QAG1BtX,KAAKgkI,WAAWt/H,EAAOC,IAS3B5D,EAAOw+C,aAAa0kF,UAAY,EAQhCljI,EAAOw+C,aAAaojF,SAAW,EAQ/B5hI,EAAOw+C,aAAa2kF,SAAW,EAQ/BnjI,EAAOw+C,aAAa4kF,OAAS,EAQ7BpjI,EAAOw+C,aAAa6kF,WAAa,EAQjCrjI,EAAOw+C,aAAa8kF,MAAQ,CACxB,YACA,WACA,WACA,SACA,cAGJtjI,EAAOw+C,aAAa19C,UAAY,CAQ5BskC,KAAM,WAIF,IAAIm+F,EAAStkI,KAAKkiI,cAElBoC,EAAOnC,mBAAqBniI,KAAKsC,KAAKgqB,OAAOw5E,aAAe9lG,KAAKsC,KAAKgqB,OAAOk1B,SAGxExhD,KAAKsC,KAAKgqB,OAAOo5E,MAAS1lG,KAAKsC,KAAKgqB,OAAOk4E,QAAWxkG,KAAKsC,KAAKgqB,OAAO61E,UAEpEniG,KAAKsC,KAAKgqB,OAAOo2E,UAAY1iG,KAAKsC,KAAKgqB,OAAOq3E,OAE9C2gC,EAAOhC,SAAW,IAAIvhI,EAAOX,MAAM,EAAG,GAItCkkI,EAAOhC,SAAW,IAAIvhI,EAAOX,MAAM,EAAG,IAI1CJ,KAAKsC,KAAKgqB,OAAO61E,SAEjBmiC,EAAOlC,oBAAsB,SAC7BkC,EAAO7B,gBAAkB,mBAIzB6B,EAAOlC,oBAAsB,GAC7BkC,EAAO7B,gBAAkB,IAK7B,IAAI5zF,EAAQ7uC,KAEZA,KAAKukI,mBAAqB,SAAU3xF,GAEhC,OAAO/D,EAAM21F,kBAAkB5xF,IAGnC5yC,KAAKykI,cAAgB,SAAU7xF,GAE3B,OAAO/D,EAAM61F,aAAa9xF,IAI9BziC,OAAO+iC,iBAAiB,oBAAqBlzC,KAAKukI,oBAAoB,GACtEp0H,OAAO+iC,iBAAiB,SAAUlzC,KAAKykI,eAAe,GAElDzkI,KAAKkiI,cAAcC,qBAEnBniI,KAAK2kI,kBAAoB,SAAU/xF,GAE/B,OAAO/D,EAAM+1F,iBAAiBhyF,IAGlC5yC,KAAK6kI,iBAAmB,SAAUjyF,GAE9B,OAAO/D,EAAMi2F,gBAAgBlyF,IAGjCL,SAASW,iBAAiB,yBAA0BlzC,KAAK2kI,mBAAmB,GAC5EpyF,SAASW,iBAAiB,sBAAuBlzC,KAAK2kI,mBAAmB,GACzEpyF,SAASW,iBAAiB,qBAAsBlzC,KAAK2kI,mBAAmB,GACxEpyF,SAASW,iBAAiB,mBAAoBlzC,KAAK2kI,mBAAmB,GAEtEpyF,SAASW,iBAAiB,wBAAyBlzC,KAAK6kI,kBAAkB,GAC1EtyF,SAASW,iBAAiB,qBAAsBlzC,KAAK6kI,kBAAkB,GACvEtyF,SAASW,iBAAiB,oBAAqBlzC,KAAK6kI,kBAAkB,GACtEtyF,SAASW,iBAAiB,kBAAmBlzC,KAAK6kI,kBAAkB,IAGxE7kI,KAAKsC,KAAK+oC,SAAShQ,IAAIr7B,KAAK+kI,aAAc/kI,MAI1CA,KAAKygI,IAAItuF,UAAUnyC,KAAKsC,KAAK0V,OAAQhY,KAAKuY,QAE1CvY,KAAKsE,OAAOizB,MAAMv3B,KAAKuY,OAAOjV,EAAGtD,KAAKuY,OAAOhV,EAAGvD,KAAK0E,MAAO1E,KAAK2E,QAEjE3E,KAAKglI,YAAYhlI,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QAG5C3E,KAAK2hI,kBAAoB3hI,KAAKygI,IAAImB,qBAAqB5hI,KAAKkiI,cAAcE,qBAEtErhI,EAAOkkI,WAEPjlI,KAAKs6D,KAAO,IAAIv5D,EAAOkkI,SAASjlI,KAAMA,KAAK0E,MAAO1E,KAAK2E,SAG3D3E,KAAK+jI,SAAU,EAEgB,OAA3B/jI,KAAKmjI,oBAELnjI,KAAKoE,UAAYpE,KAAKmjI,kBACtBnjI,KAAKmjI,kBAAoB,OAWjCpxF,YAAa,SAAUz6B,QAEMlR,IAArBkR,EAAOlT,YAEHpE,KAAK+jI,QAEL/jI,KAAKoE,UAAYkT,EAAOlT,UAIxBpE,KAAKmjI,kBAAoB7rH,EAAOlT,gBAILgC,IAA/BkR,EAAO4tH,sBAEPllI,KAAKklI,oBAAsB5tH,EAAO4tH,qBAGlC5tH,EAAOgqH,mBAEPthI,KAAKshI,iBAAmBhqH,EAAOgqH,kBAGnCthI,KAAKmlI,sBAAwB7tH,EAAO8tH,SAAU,EAC9CplI,KAAKqlI,oBAAsB/tH,EAAOguH,SAAU,EAExChuH,EAAOiuH,QAAUjuH,EAAOkuH,QAExBxlI,KAAKylI,aAAanuH,EAAOiuH,OAAQjuH,EAAOkuH,OAAQluH,EAAOouH,MAAOpuH,EAAOquH,QAc7E3B,WAAY,SAAUt/H,EAAOC,GAEzB,IAAIkD,EACAm1B,EAAO,IAAIj8B,EAAOS,UAEG,KAArBxB,KAAKsC,KAAK1B,SAEsB,iBAArBZ,KAAKsC,KAAK1B,OAGjBiH,EAAS0qC,SAASu5D,eAAe9rG,KAAKsC,KAAK1B,QAEtCZ,KAAKsC,KAAK1B,QAAwC,IAA9BZ,KAAKsC,KAAK1B,OAAOo1B,WAG1CnuB,EAAS7H,KAAKsC,KAAK1B,SAKtBiH,GAaD7H,KAAKisG,WAAapkG,EAClB7H,KAAK6iI,gBAAiB,EAEtB7iI,KAAK4lI,gBAAgB5lI,KAAK2jI,cAAe3jI,KAAKisG,YAE9CjvE,EAAKt4B,MAAQ1E,KAAK2jI,cAAcj/H,MAChCs4B,EAAKr4B,OAAS3E,KAAK2jI,cAAch/H,OAEjC3E,KAAKuY,OAAOvR,IAAIhH,KAAK2jI,cAAcrgI,EAAGtD,KAAK2jI,cAAcpgI,KAlBzDvD,KAAKisG,WAAa,KAClBjsG,KAAK6iI,gBAAiB,EAEtB7lG,EAAKt4B,MAAQ1E,KAAKygI,IAAIoF,aAAanhI,MACnCs4B,EAAKr4B,OAAS3E,KAAKygI,IAAIoF,aAAalhI,OAEpC3E,KAAKuY,OAAOvR,IAAI,EAAG,IAevB,IAAIy5E,EAAW,EACXC,EAAY,EAIZD,EAFiB,iBAAV/7E,EAEIA,GAKX1E,KAAK8iI,kBAAkBx/H,EAAIiyB,SAAS7wB,EAAO,IAAM,IACtCs4B,EAAKt4B,MAAQ1E,KAAK8iI,kBAAkBx/H,GAK/Co9E,EAFkB,iBAAX/7E,EAEKA,GAKZ3E,KAAK8iI,kBAAkBv/H,EAAIgyB,SAAS5wB,EAAQ,IAAM,IACtCq4B,EAAKr4B,OAAS3E,KAAK8iI,kBAAkBv/H,GAGrDk9E,EAAWx9E,KAAKkvB,MAAMsuD,GACtBC,EAAYz9E,KAAKkvB,MAAMuuD,GAEvB1gF,KAAKqjI,UAAU9rG,MAAM,EAAG,EAAGkpD,EAAUC,GAErC1gF,KAAK8lI,iBAAiBrlD,EAAUC,GAAW,IAS/CqkD,aAAc,WAEV/kI,KAAK+lI,aAAY,IAkBrBf,YAAa,SAAUtgI,EAAOC,GAE1B3E,KAAKqjI,UAAU9rG,MAAM,EAAG,EAAG7yB,EAAOC,GAE9B3E,KAAKgmI,mBAAqBjlI,EAAOw+C,aAAa4kF,QAE9CnkI,KAAK8lI,iBAAiBphI,EAAOC,GAAQ,GAGzC3E,KAAK+lI,aAAY,IAqBrBN,aAAc,SAAUQ,EAAQC,EAAQC,EAAOC,EAAOL,EAAaj/F,GAE/D9mC,KAAKsjI,iBAAiB/rG,MAAM0uG,EAAQC,GACpClmI,KAAKujI,eAAehsG,MAAc,EAAR4uG,EAAmB,EAARC,QAEjBhgI,IAAhB2/H,IAA6BA,GAAc,QACjC3/H,IAAV0gC,IAAuBA,GAAQ,GAE/Bi/F,GAEA/lI,KAAK+lI,YAAYj/F,IA8BzBu/F,kBAAmB,SAAUnvF,EAAUvpC,GAEnC3N,KAAKijI,SAAW/rF,EAChBl3C,KAAKkjI,gBAAkBv1H,GAa3B24H,iBAAkB,WAEd,IAAKvlI,EAAOS,UAAUoiC,eAAe5jC,KAAMA,KAAK6jI,2BAC3C9iI,EAAOS,UAAUoiC,eAAe5jC,KAAKsC,KAAMtC,KAAK8jI,uBACrD,CACI,IAAIp/H,EAAQ1E,KAAK0E,MACbC,EAAS3E,KAAK2E,OAElB3E,KAAK6jI,wBAAwBtsG,MAAM,EAAG,EAAG7yB,EAAOC,GAChD3E,KAAK8jI,sBAAsBvsG,MAAM,EAAG,EAAGv3B,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QAE9D3E,KAAKs6D,MAELt6D,KAAKs6D,KAAK2oE,SAASv+H,EAAOC,GAG9B3E,KAAKgjI,aAAan7F,SAAS7nC,KAAM0E,EAAOC,GAGpC3E,KAAKgmI,mBAAqBjlI,EAAOw+C,aAAa4kF,SAE9CnkI,KAAKsC,KAAKymC,MAAMhjC,OAAOrB,EAAOC,GAC9B3E,KAAKsC,KAAKumC,KAAK9iC,OAAOrB,EAAOC,MAoBzC4hI,UAAW,SAAU7F,EAAUC,EAAWpmC,EAAUqmC,GAEhD5gI,KAAK0gI,SAAWA,EAChB1gI,KAAK2gI,UAAYA,OAEO,IAAbpmC,IAEPv6F,KAAKu6F,SAAWA,QAGK,IAAdqmC,IAEP5gI,KAAK4gI,UAAYA,IAUzB38H,UAAW,WAEP,KAAIjE,KAAKsC,KAAKqlC,KAAKA,KAAQ3nC,KAAKwjI,YAAcxjI,KAAKyjI,iBAAnD,CAKA,IAAI+C,EAAexmI,KAAKyjI,gBACxBzjI,KAAK0jI,qBAAuC,KAAhB8C,EAAsB,EAAI,IAEtDxmI,KAAKygI,IAAItuF,UAAUnyC,KAAKsC,KAAK0V,OAAQhY,KAAKuY,QAE1C,IAAIkuH,EAAYzmI,KAAK2jI,cAAcj/H,MAC/BgiI,EAAa1mI,KAAK2jI,cAAch/H,OAChCL,EAAStE,KAAK4lI,gBAAgB5lI,KAAK2jI,eAEnCgD,EAAgBriI,EAAOI,QAAU+hI,GAAaniI,EAAOK,SAAW+hI,EAGhEE,EAAqB5mI,KAAK6mI,0BAE1BF,GAAiBC,KAEb5mI,KAAKijI,UAELjjI,KAAKijI,SAASl/H,KAAK/D,KAAKkjI,gBAAiBljI,KAAMsE,GAGnDtE,KAAK8mI,eAEL9mI,KAAKsmI,oBAIT,IAAIS,EAAkC,EAAvB/mI,KAAKyjI,gBAGhBzjI,KAAKyjI,gBAAkB+C,IAEvBO,EAAW9jI,KAAKy4B,IAAI8qG,EAAcxmI,KAAK0jI,uBAG3C1jI,KAAKyjI,gBAAkB1iI,EAAOkC,KAAK47B,MAAMkoG,EAAU,GAAI/mI,KAAK+iI,qBAC5D/iI,KAAKwjI,YAAcxjI,KAAKsC,KAAKqlC,KAAKA,OAStC+B,YAAa,WAET1pC,KAAKiE,YAGLjE,KAAKyjI,gBAAkBzjI,KAAK+iI,qBAYhC+C,iBAAkB,SAAUphI,EAAOC,EAAQoB,GAEvC/F,KAAK0E,MAAQA,EAAQ1E,KAAK8iI,kBAAkBx/H,EAC5CtD,KAAK2E,OAASA,EAAS3E,KAAK8iI,kBAAkBv/H,EAE9CvD,KAAKsC,KAAKoC,MAAQ1E,KAAK0E,MACvB1E,KAAKsC,KAAKqC,OAAS3E,KAAK2E,OAExB3E,KAAKgiI,kBAAoBhiI,KAAK0E,MAAQ1E,KAAK2E,OAC3C3E,KAAKgnI,yBAEDjhI,IAGA/F,KAAKsC,KAAK+B,SAAS0B,OAAO/F,KAAK0E,MAAO1E,KAAK2E,QAG3C3E,KAAKsC,KAAKwZ,OAAOysB,QAAQvoC,KAAK0E,MAAO1E,KAAK2E,QAG1C3E,KAAKsC,KAAKE,MAAMuD,OAAO/F,KAAK0E,MAAO1E,KAAK2E,UAWhDqiI,uBAAwB,WAEpBhnI,KAAK6hI,YAAYv+H,EAAItD,KAAKsC,KAAKoC,MAAQ1E,KAAK0E,MAC5C1E,KAAK6hI,YAAYt+H,EAAIvD,KAAKsC,KAAKqC,OAAS3E,KAAK2E,OAE7C3E,KAAK8hI,oBAAoBx+H,EAAItD,KAAK0E,MAAQ1E,KAAKsC,KAAKoC,MACpD1E,KAAK8hI,oBAAoBv+H,EAAIvD,KAAK2E,OAAS3E,KAAKsC,KAAKqC,OAErD3E,KAAK+hI,YAAc/hI,KAAK0E,MAAQ1E,KAAK2E,OAGjC3E,KAAKsC,KAAK0V,QAEVhY,KAAKygI,IAAItuF,UAAUnyC,KAAKsC,KAAK0V,OAAQhY,KAAKuY,QAG9CvY,KAAKsE,OAAOizB,MAAMv3B,KAAKuY,OAAOjV,EAAGtD,KAAKuY,OAAOhV,EAAGvD,KAAK0E,MAAO1E,KAAK2E,QAG7D3E,KAAKsC,KAAKsmC,OAAS5oC,KAAKsC,KAAKsmC,MAAMvoC,OAEnCL,KAAKsC,KAAKsmC,MAAMvoC,MAAMk3B,MAAMv3B,KAAK6hI,YAAYv+H,EAAGtD,KAAK6hI,YAAYt+H,IAkBzE0jI,iBAAkB,SAAUpG,EAAgBC,QAElB16H,IAAlB06H,IAA+BA,GAAgB,IAE5B,IAAnBD,IAA6C,IAAlBC,GAM/B9gI,KAAK6gI,eAAiBA,EACtB7gI,KAAK8gI,cAAgBA,EAErB9gI,KAAK+lI,aAAY,IAPb31H,QAAQ+K,KAAK,+EAkBrB+rH,oBAAqB,SAAUC,GAE3B,MAAoB,qBAAhBA,GAAsD,uBAAhBA,EAE/B,WAEc,sBAAhBA,GAAuD,wBAAhBA,EAErC,YAIA,MAWfN,uBAAwB,WAEpB,IAAIO,EAAsBpnI,KAAK2hI,kBAC3B0F,EAAsBrnI,KAAK+gI,qBAE/B/gI,KAAK2hI,kBAAoB3hI,KAAKygI,IAAImB,qBAAqB5hI,KAAKkiI,cAAcE,qBAE1EpiI,KAAK+gI,qBAAwB/gI,KAAK6gI,iBAAmB7gI,KAAKsnI,aACrDtnI,KAAK8gI,gBAAkB9gI,KAAKunI,WAEjC,IAAIC,EAAUJ,IAAwBpnI,KAAK2hI,kBACvC8F,EAAqBJ,IAAwBrnI,KAAK+gI,qBAmBtD,OAjBI0G,IAEIznI,KAAK+gI,qBAEL/gI,KAAKmhI,0BAA0Bt5F,WAI/B7nC,KAAKohI,0BAA0Bv5F,aAInC2/F,GAAWC,IAEXznI,KAAKkhI,oBAAoBr5F,SAAS7nC,KAAMonI,EAAqBC,GAG1DG,GAAWC,GAUtBjD,kBAAmB,SAAU5xF,GAEzB5yC,KAAK4yC,MAAQA,EAEb5yC,KAAK+lI,aAAY,IAUrBrB,aAAc,SAAU9xF,GAEpB5yC,KAAK4yC,MAAQA,EAEb5yC,KAAK+lI,aAAY,IASrB2B,UAAW,WAEP,IAAIpF,EAAWtiI,KAAKkiI,cAAcI,SAE9BA,GAEAnyH,OAAOmyH,SAASA,EAASh/H,EAAGg/H,EAAS/+H,IAwB7CsoB,QAAS,WAEL7rB,KAAK0nI,YACL1nI,KAAK+lI,aAAY,IASrBe,aAAc,WAEV,IAAI1iI,EAAYpE,KAAKgmI,iBAErB,GAAI5hI,IAAcrD,EAAOw+C,aAAa4kF,OAAtC,CAwDA,GAlDAnkI,KAAK0nI,YAED1nI,KAAKkiI,cAAcK,6BAMnBhwF,SAASy4D,gBAAgBzuF,MAAMokH,UAAYxwH,OAAOslB,YAAc,MAGhEz1B,KAAK+gI,qBAEL/gI,KAAK2nI,aAGLvjI,IAAcrD,EAAOw+C,aAAa0kF,UAElCjkI,KAAK4nI,cAEAxjI,IAAcrD,EAAOw+C,aAAa2kF,WAElClkI,KAAK6nI,cAAgB7nI,KAAK8nI,gBACvB9nI,KAAKkiI,cAAcM,kBAOvBxiI,KAAK+nI,YAAW,GAChB/nI,KAAKgoI,eACLhoI,KAAK+nI,cAOJ3jI,IAAcrD,EAAOw+C,aAAaojF,UAEvC3iI,KAAK0E,MAAQ1E,KAAKsC,KAAKoC,MACvB1E,KAAK2E,OAAS3E,KAAKsC,KAAKqC,QAEnBP,IAAcrD,EAAOw+C,aAAa6kF,aAEvCpkI,KAAK0E,MAAS1E,KAAKsC,KAAKoC,MAAQ1E,KAAKsjI,iBAAiBhgI,EAAKtD,KAAKujI,eAAejgI,EAC/EtD,KAAK2E,OAAU3E,KAAKsC,KAAKqC,OAAS3E,KAAKsjI,iBAAiB//H,EAAKvD,KAAKujI,eAAehgI,IAGhFvD,KAAKkiI,cAAcM,kBACnBp+H,IAAcrD,EAAOw+C,aAAa2kF,UAAY9/H,IAAcrD,EAAOw+C,aAAa6kF,YACrF,CACI,IAAI9/H,EAAStE,KAAK4lI,gBAAgB5lI,KAAK4jI,aACvC5jI,KAAK0E,MAAQzB,KAAKy4B,IAAI17B,KAAK0E,MAAOJ,EAAOI,OACzC1E,KAAK2E,OAAS1B,KAAKy4B,IAAI17B,KAAK2E,OAAQL,EAAOK,QAI/C3E,KAAK0E,MAAqB,EAAb1E,KAAK0E,MAClB1E,KAAK2E,OAAuB,EAAd3E,KAAK2E,OAEnB3E,KAAKioI,oBAlEDjoI,KAAKkoI,cAsFbtC,gBAAiB,SAAU/9H,EAAQjH,GAE/B,IAAI0D,EAASuD,GAAU,IAAI9G,EAAOS,UAC9ByqG,EAAarrG,GAAUZ,KAAK8nI,eAC5BjC,EAAe7lI,KAAKygI,IAAIoF,aACxBsC,EAAenoI,KAAKygI,IAAI0H,aAE5B,GAAKl8B,EAKL,CAEI,IAAIm8B,EAAan8B,EAAWo8B,wBACxBC,EAAcr8B,EAAuB,aAAIA,EAAWs8B,aAAaF,wBAA0Bp8B,EAAWo8B,wBAE1G/jI,EAAOizB,MAAM6wG,EAAW5vG,KAAO8vG,EAAW9vG,KAAM4vG,EAAW3vG,IAAM6vG,EAAW7vG,IAAK2vG,EAAW1jI,MAAO0jI,EAAWzjI,QAE9G,IAAI6jI,EAAKxoI,KAAKiiI,kBAEd,GAAIuG,EAAG1yG,MACP,CACI,IAAI2yG,EAA4B,WAAbD,EAAG1yG,MAAqBqyG,EAAetC,EAC1DvhI,EAAOwxB,MAAQ7yB,KAAKy4B,IAAIp3B,EAAOwxB,MAAO2yG,EAAa/jI,OAGvD,GAAI8jI,EAAG9vG,OACP,CACQ+vG,EAA6B,WAAdD,EAAG9vG,OAAsByvG,EAAetC,EAC3DvhI,EAAOo0B,OAASz1B,KAAKy4B,IAAIp3B,EAAOo0B,OAAQ+vG,EAAa9jI,cArBzDL,EAAOizB,MAAM,EAAG,EAAGsuG,EAAanhI,MAAOmhI,EAAalhI,QA6BxD,OAJAL,EAAOizB,MACHt0B,KAAK20B,MAAMtzB,EAAOhB,GAAIL,KAAK20B,MAAMtzB,EAAOf,GACxCN,KAAK20B,MAAMtzB,EAAOI,OAAQzB,KAAK20B,MAAMtzB,EAAOK,SAEzCL,GAUX+yC,MAAO,SAAUnS,EAAYC,GAEP,MAAdD,IAEAllC,KAAKmlI,sBAAwBjgG,GAGjB,MAAZC,IAEAnlC,KAAKqlI,oBAAsBlgG,IAcnCujG,YAAa,SAAUxjG,EAAYC,GAE/B,IAAIwjG,EAAe3oI,KAAK4lI,gBAAgB5lI,KAAK4jI,aACzC5rH,EAAShY,KAAKsC,KAAK0V,OACnBqpG,EAASrhH,KAAKqhH,OAElB,GAAIn8E,EACJ,CACIm8E,EAAO7oF,KAAO6oF,EAAOvrF,MAAQ,EAE7B,IAAI8yG,EAAe5wH,EAAOqwH,wBAE1B,GAAIroI,KAAK0E,MAAQikI,EAAajkI,QAAU1E,KAAK+gI,qBAC7C,CACI,IAAI8H,EAAcD,EAAapwG,KAAOmwG,EAAarlI,EAC/CwlI,EAAcH,EAAajkI,MAAQ,EAAM1E,KAAK0E,MAAQ,EAItD6T,GAFJuwH,EAAa7lI,KAAK2C,IAAIkjI,EAAY,IAERD,EAE1BxnB,EAAO7oF,KAAOv1B,KAAK20B,MAAMrf,GAG7BP,EAAOuE,MAAMwsH,WAAa1nB,EAAO7oF,KAAO,KAEpB,IAAhB6oF,EAAO7oF,OAEP6oF,EAAOvrF,QAAU6yG,EAAajkI,MAAQkkI,EAAalkI,MAAQ28G,EAAO7oF,MAClExgB,EAAOuE,MAAMysH,YAAc3nB,EAAOvrF,MAAQ,MAIlD,GAAIqP,EACJ,CACIk8E,EAAO5oF,IAAM4oF,EAAO3oF,OAAS,EAEzBkwG,EAAe5wH,EAAOqwH,wBAE1B,GAAIroI,KAAK2E,OAASgkI,EAAahkI,SAAW3E,KAAK+gI,qBAC/C,CACQ8H,EAAcD,EAAanwG,IAAMkwG,EAAaplI,EAC9CulI,EAAcH,EAAahkI,OAAS,EAAM3E,KAAK2E,OAAS,EAIxD4T,GAFJuwH,EAAa7lI,KAAK2C,IAAIkjI,EAAY,IAERD,EAC1BxnB,EAAO5oF,IAAMx1B,KAAK20B,MAAMrf,GAG5BP,EAAOuE,MAAM0sH,UAAY5nB,EAAO5oF,IAAM,KAEnB,IAAf4oF,EAAO5oF,MAEP4oF,EAAO3oF,SAAWiwG,EAAahkI,OAASikI,EAAajkI,OAAS08G,EAAO5oF,KACrEzgB,EAAOuE,MAAM2sH,aAAe7nB,EAAO3oF,OAAS,MAKpD2oF,EAAO/9G,EAAI+9G,EAAO7oF,KAClB6oF,EAAO99G,EAAI89G,EAAO5oF,KAWtByvG,WAAY,WAERloI,KAAKgoI,YAAY,GAAI,IAErB,IAAI1jI,EAAStE,KAAK4lI,gBAAgB5lI,KAAK4jI,aACvC5jI,KAAK8lI,iBAAiBxhI,EAAOI,MAAOJ,EAAOK,QAAQ,IAWvDsjI,aAAc,WAELjoI,KAAK+gI,uBAEN/gI,KAAK0E,MAAQ3D,EAAOkC,KAAK47B,MAAM7+B,KAAK0E,MAAO1E,KAAK0gI,UAAY,EAAG1gI,KAAKu6F,UAAYv6F,KAAK0E,OACrF1E,KAAK2E,OAAS5D,EAAOkC,KAAK47B,MAAM7+B,KAAK2E,OAAQ3E,KAAK2gI,WAAa,EAAG3gI,KAAK4gI,WAAa5gI,KAAK2E,SAG7F3E,KAAKgoI,cAEAhoI,KAAKkiI,cAAcG,YAEhBriI,KAAK6nI,cAAgB7nI,KAAKuhI,yBAE1BvhI,KAAK0oI,aAAY,GAAM,GAIvB1oI,KAAK0oI,YAAY1oI,KAAKmlI,sBAAuBnlI,KAAKqlI,sBAI1DrlI,KAAKgnI,0BAWTgB,YAAa,SAAUmB,EAAUC,QAEZhjI,IAAb+iI,IAA0BA,EAAWnpI,KAAK0E,MAAQ,WACpC0B,IAAdgjI,IAA2BA,EAAYppI,KAAK2E,OAAS,MAEzD,IAAIqT,EAAShY,KAAKsC,KAAK0V,OAElBhY,KAAKkiI,cAAcG,YAEpBrqH,EAAOuE,MAAMwsH,WAAa,GAC1B/wH,EAAOuE,MAAM0sH,UAAY,GACzBjxH,EAAOuE,MAAMysH,YAAc,GAC3BhxH,EAAOuE,MAAM2sH,aAAe,IAGhClxH,EAAOuE,MAAM7X,MAAQykI,EACrBnxH,EAAOuE,MAAM5X,OAASykI,GAU1BrD,YAAa,SAAUj/F,GAEfA,IAEA9mC,KAAK2jI,cAAcj/H,MAAQ,EAC3B1E,KAAK2jI,cAAch/H,OAAS,GAGhC3E,KAAKyjI,gBAAkBzjI,KAAK0jI,sBAShCl7F,MAAO,SAAUmD,GAETA,GAAc3rC,KAAKs6D,MAEnBt6D,KAAKs6D,KAAK9xB,SAUlBm/F,WAAY,WAER3nI,KAAK0E,MAAQ1E,KAAKygI,IAAIoF,aAAanhI,MACnC1E,KAAK2E,OAAS3E,KAAKygI,IAAIoF,aAAalhI,QAUxCojI,WAAY,SAAUsB,GAElB,IAIIC,EAJAhlI,EAAStE,KAAK4lI,gBAAgB5lI,KAAK4jI,aACnCl/H,EAAQJ,EAAOI,MACfC,EAASL,EAAOK,OAMhB2kI,EAFAD,EAEapmI,KAAK2C,IAAKjB,EAAS3E,KAAKsC,KAAKqC,OAAUD,EAAQ1E,KAAKsC,KAAKoC,OAIzDzB,KAAKy4B,IAAK/2B,EAAS3E,KAAKsC,KAAKqC,OAAUD,EAAQ1E,KAAKsC,KAAKoC,OAG1E1E,KAAK0E,MAAQzB,KAAK20B,MAAM53B,KAAKsC,KAAKoC,MAAQ4kI,GAC1CtpI,KAAK2E,OAAS1B,KAAK20B,MAAM53B,KAAKsC,KAAKqC,OAAS2kI,IAUhD1B,YAAa,WAET,IAAItjI,EAAStE,KAAK4lI,gBAAgB5lI,KAAK4jI,aAEvC5jI,KAAK0E,MAAQJ,EAAOI,MACpB1E,KAAK2E,OAASL,EAAOK,OAEjB3E,KAAK6nI,eAML7nI,KAAKu6F,WAELv6F,KAAK0E,MAAQzB,KAAKy4B,IAAI17B,KAAK0E,MAAO1E,KAAKu6F,WAGvCv6F,KAAK4gI,YAEL5gI,KAAK2E,OAAS1B,KAAKy4B,IAAI17B,KAAK2E,OAAQ3E,KAAK4gI,cAajD2I,uBAAwB,WAEpB,IAAIC,EAAWj3F,SAAS8mD,cAAc,OAMtC,OAJAmwC,EAASjtH,MAAM8kG,OAAS,IACxBmoB,EAASjtH,MAAMmL,QAAU,IACzB8hH,EAASjtH,MAAMktH,WAAa,OAErBD,GA+BXE,gBAAiB,SAAUxxH,EAAWyxH,EAAiBzzG,GAEnD,GAAIl2B,KAAK6nI,aAEL,OAAO,EAGX,GAAK7nI,KAAKkiI,cAAcC,mBAAxB,CAaA,GAA2C,mBAAvCniI,KAAKkiI,cAAcO,gBACvB,CACI,IAAI75F,EAAQ5oC,KAAKsC,KAAKsmC,MAEtB,GAAIA,EAAMmc,eACNnc,EAAMmc,gBAAkBnc,EAAMoc,eAC7B2kF,IAAuC,IAApBA,GAGpB,YADA/gG,EAAMmc,cAAcwN,mBAAmB,kBAAmBvyD,KAAK0pI,gBAAiB1pI,KAAM,CAAEkY,GAAW,SAKzF9R,IAAd8R,GAA2BlY,KAAKsC,KAAKuqC,aAAe9rC,EAAO6qB,SAE3D5rB,KAAKsC,KAAK8Y,MAAMqmC,SAAWvpC,GAG/B,IAAIsxH,EAAWxpI,KAAKshI,iBAEfkI,IAEDxpI,KAAK4pI,uBAEL5pI,KAAKuhI,yBAA2BvhI,KAAKupI,yBACrCC,EAAWxpI,KAAKuhI,0BAGpB,IAAIsI,EAAW,CAACC,cAAeN,GAM/B,GAJAxpI,KAAKqhI,wBAAyB,EAE9BrhI,KAAKwhI,iBAAiB35F,SAAS7nC,KAAM6pI,GAEjC7pI,KAAKuhI,yBACT,CAKI,IAAIvpH,EAAShY,KAAKsC,KAAK0V,OACVA,EAAOi0F,WACb1D,aAAaihC,EAAUxxH,GAC9BwxH,EAASx9B,YAAYh0F,GAiBzB,YAdgB5R,IAAZ8vB,IAEAA,EAAU,CAAE6zG,aAAc,SAG1B/pI,KAAKsC,KAAKgqB,OAAO25E,mBAEjBujC,EAASxpI,KAAKsC,KAAKgqB,OAAOy5E,mBAAmB8E,QAAQC,sBAIrD0+B,EAASxpI,KAAKsC,KAAKgqB,OAAOy5E,mBAAmB7vE,IAG1C,EAtEH,IAAI2Y,EAAQ7uC,KAEZymG,WAAW,WAEP53D,EAAMi2F,mBACP,KA2EXkF,eAAgB,WAEZ,SAAKhqI,KAAK6nI,eAAiB7nI,KAAKkiI,cAAcC,sBAK9CniI,KAAKqhI,wBAAyB,EAE9B9uF,SAASvyC,KAAKsC,KAAKgqB,OAAO05E,qBAEnB,IAUX4jC,qBAAsB,WAElB,IAAIJ,EAAWxpI,KAAKuhI,yBAEpB,GAAIiI,GAAYA,EAASv9B,WACzB,CAKI,IAAIrrG,EAAS4oI,EAASv9B,WACtBrrG,EAAO2nG,aAAavoG,KAAKsC,KAAK0V,OAAQwxH,GACtC5oI,EAAO8H,YAAY8gI,GAGvBxpI,KAAKuhI,yBAA2B,MAWpC0I,eAAgB,SAAUC,GAEtB,IAAIC,IAAkBnqI,KAAKuhI,yBACvBiI,EAAWxpI,KAAKuhI,0BAA4BvhI,KAAKshI,iBAEjD4I,GAEIC,GAAiBnqI,KAAKklI,sBAAwBnkI,EAAOw+C,aAAa0kF,YAG9DuF,IAAaxpI,KAAKsC,KAAK0V,SAEvBhY,KAAKojI,mBAAqB,CACtB1hC,YAAa8nC,EAASjtH,MAAM7X,MAC5Bi9F,aAAc6nC,EAASjtH,MAAM5X,QAGjC6kI,EAASjtH,MAAM7X,MAAQ,OACvB8kI,EAASjtH,MAAM5X,OAAS,SAO5B3E,KAAKojI,qBAELoG,EAASjtH,MAAM7X,MAAQ1E,KAAKojI,mBAAmB1hC,YAC/C8nC,EAASjtH,MAAM5X,OAAS3E,KAAKojI,mBAAmBzhC,aAEhD3hG,KAAKojI,mBAAqB,MAI9BpjI,KAAK8lI,iBAAiB9lI,KAAKqjI,UAAU3+H,MAAO1E,KAAKqjI,UAAU1+H,QAAQ,GACnE3E,KAAKgoI,gBAWbpD,iBAAkB,SAAUhyF,GAExB5yC,KAAK4yC,MAAQA,EAET5yC,KAAK6nI,aAEL7nI,KAAKiqI,gBAAe,IAOpBjqI,KAAKiqI,gBAAe,GAEpBjqI,KAAK4pI,wBAPL5pI,KAAK8mI,eACL9mI,KAAK+lI,aAAY,GAYrB/lI,KAAKyhI,mBAAmB55F,SAAS7nC,KAAMA,KAAK0E,MAAO1E,KAAK2E,SAW5DmgI,gBAAiB,SAAUlyF,GAEvB5yC,KAAK4yC,MAAQA,EAEb5yC,KAAK4pI,uBAELx5H,QAAQ+K,KAAK,+FAEbnb,KAAK0hI,kBAAkB75F,SAAS7nC,OAkBpCoqI,YAAa,SAAU5lH,EAAQ9f,EAAOC,EAAQ0lI,GAM1C,QAJcjkI,IAAV1B,IAAuBA,EAAQ1E,KAAK0E,YACzB0B,IAAXzB,IAAwBA,EAAS3E,KAAK2E,aACxByB,IAAdikI,IAA2BA,GAAY,IAEtC7lH,IAAWA,EAAOnkB,MAEnB,OAAOmkB,EAMX,GAHAA,EAAOnkB,MAAMiD,EAAI,EACjBkhB,EAAOnkB,MAAMkD,EAAI,EAEZihB,EAAO9f,OAAS,GAAO8f,EAAO7f,QAAU,GAAOD,GAAS,GAAOC,GAAU,EAE1E,OAAO6f,EAGX,IAAI8lH,EAAU5lI,EACV6lI,EAAW/lH,EAAO7f,OAASD,EAAS8f,EAAO9f,MAE3C8lI,EAAWhmH,EAAO9f,MAAQC,EAAU6f,EAAO7f,OAC3C8lI,EAAU9lI,EAEV+lI,EAA0BhmI,EAAV8lI,EA4BpB,OAxBIE,EAFAA,EAEeL,GAICA,IAKhB7lH,EAAO9f,MAAQzB,KAAKkvB,MAAMm4G,GAC1B9lH,EAAO7f,OAAS1B,KAAKkvB,MAAMo4G,KAI3B/lH,EAAO9f,MAAQzB,KAAKkvB,MAAMq4G,GAC1BhmH,EAAO7f,OAAS1B,KAAKkvB,MAAMs4G,IASxBjmH,GAUXziB,QAAS,WAEL/B,KAAKsC,KAAK+oC,SAAShuB,OAAOrd,KAAK+kI,aAAc/kI,MAE7CmQ,OAAOgkC,oBAAoB,oBAAqBn0C,KAAKukI,oBAAoB,GACzEp0H,OAAOgkC,oBAAoB,SAAUn0C,KAAKykI,eAAe,GAErDzkI,KAAKkiI,cAAcC,qBAEnB5vF,SAAS4B,oBAAoB,yBAA0Bn0C,KAAK2kI,mBAAmB,GAC/EpyF,SAAS4B,oBAAoB,sBAAuBn0C,KAAK2kI,mBAAmB,GAC5EpyF,SAAS4B,oBAAoB,qBAAsBn0C,KAAK2kI,mBAAmB,GAC3EpyF,SAAS4B,oBAAoB,mBAAoBn0C,KAAK2kI,mBAAmB,GAEzEpyF,SAAS4B,oBAAoB,wBAAyBn0C,KAAK6kI,kBAAkB,GAC7EtyF,SAAS4B,oBAAoB,qBAAsBn0C,KAAK6kI,kBAAkB,GAC1EtyF,SAAS4B,oBAAoB,oBAAqBn0C,KAAK6kI,kBAAkB,GACzEtyF,SAAS4B,oBAAoB,kBAAmBn0C,KAAK6kI,kBAAkB,MAMnF9jI,EAAOw+C,aAAa19C,UAAUC,YAAcf,EAAOw+C,aAYnD14C,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,iBAAkB,CAEnEkF,IAAK,WAED,OAAI/G,KAAK6iI,gBACJ7iI,KAAK6nI,cAAgB7nI,KAAKqhI,yBAA2BrhI,KAAKuhI,yBAEpD,KAGMvhI,KAAKsC,KAAK0V,QAAUhY,KAAKsC,KAAK0V,OAAOi0F,YAEjC,QA0C7BplG,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,YAAa,CAE9DkF,IAAK,WAED,OAAO/G,KAAK0iI,YAGhB17H,IAAK,SAAUC,GAaX,OAXIA,IAAUjH,KAAK0iI,aAEV1iI,KAAK6nI,eAEN7nI,KAAK8lI,iBAAiB9lI,KAAKqjI,UAAU3+H,MAAO1E,KAAKqjI,UAAU1+H,QAAQ,GACnE3E,KAAK+lI,aAAY,IAGrB/lI,KAAK0iI,WAAaz7H,GAGfjH,KAAK0iI,cAapB77H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,sBAAuB,CAExEkF,IAAK,WAED,OAAO/G,KAAK4iI,sBAGhB57H,IAAK,SAAUC,GAmBX,OAjBIA,IAAUjH,KAAK4iI,uBAGX5iI,KAAK6nI,cAEL7nI,KAAKiqI,gBAAe,GACpBjqI,KAAK4iI,qBAAuB37H,EAC5BjH,KAAKiqI,gBAAe,GAEpBjqI,KAAK+lI,aAAY,IAIjB/lI,KAAK4iI,qBAAuB37H,GAI7BjH,KAAK4iI,wBAepB/7H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,mBAAoB,CAErEkF,IAAK,WAED,OAAO/G,KAAK6nI,aAAe7nI,KAAK4iI,qBAAuB5iI,KAAK0iI,cAiBpE77H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,wBAAyB,CAE1EkF,IAAK,WAED,OAAO/G,KAAKghI,wBAGhBh6H,IAAK,SAAUC,GAEPA,IAAUjH,KAAKghI,yBAEfhhI,KAAKghI,uBAAyB/5H,EAC9BjH,KAAK+lI,aAAY,OAyB7Bl/H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,sBAAuB,CAExEkF,IAAK,WAED,OAAO/G,KAAKihI,sBAGhBj6H,IAAK,SAAUC,GAEPA,IAAUjH,KAAKihI,uBAEfjhI,KAAKihI,qBAAuBh6H,EAC5BjH,KAAK+lI,aAAY,OAY7Bl/H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,eAAgB,CAEjEkF,IAAK,WAED,SAAUwrC,SAASo4F,mBACfp4F,SAASq4F,yBACTr4F,SAASs4F,sBACTt4F,SAASu4F,wBAYrBjkI,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,aAAc,CAE/DkF,IAAK,WAED,MAA4D,aAArD/G,KAAKknI,oBAAoBlnI,KAAK2hI,sBAY7C96H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,cAAe,CAEhEkF,IAAK,WAED,MAA4D,cAArD/G,KAAKknI,oBAAoBlnI,KAAK2hI,sBAe7C96H,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,iBAAkB,CAEnEkF,IAAK,WAED,OAAQ/G,KAAK2E,OAAS3E,KAAK0E,SAenCmC,OAAOyF,eAAevL,EAAOw+C,aAAa19C,UAAW,kBAAmB,CAEpEkF,IAAK,WAED,OAAQ/G,KAAK0E,MAAQ1E,KAAK2E,UA2BlC5D,EAAO8yB,MAAMqsB,MAAQ,SAAU59C,GAK3BtC,KAAKsC,KAAOA,EAKZtC,KAAKwkB,OAAS,KAKdxkB,KAAK+qI,IAAM,KAKX/qI,KAAKgY,OAAS,KAKdhY,KAAK2N,QAAU,KAMf3N,KAAKu3E,KAAO,iBAMZv3E,KAAKgrI,YAAc,IAMnBhrI,KAAK+1F,WAAa,GAMlB/1F,KAAKuiF,UAAY,EAMjBviF,KAAKirI,cAAe,EAOpBjrI,KAAKkrI,aAAe,KAMpBlrI,KAAK47F,SAAW,EAMhB57F,KAAK67F,SAAW,EAMhB77F,KAAKmrI,aAAe,EAMpBnrI,KAAKwR,OAAQ,EAObxR,KAAKogD,YAAa,EAMlBpgD,KAAKorI,MAAQ,KAMbprI,KAAKqrI,MAAQ,MAOjBtqI,EAAO8yB,MAAMqsB,MAAMorF,UAAY,EAM/BvqI,EAAO8yB,MAAMqsB,MAAMqrF,eAAiB,EAMpCxqI,EAAO8yB,MAAMqsB,MAAMsrF,YAAc,EAMjCzqI,EAAO8yB,MAAMqsB,MAAMurF,WAAa,EAMhC1qI,EAAO8yB,MAAMqsB,MAAMwrF,UAAY,EAM/B3qI,EAAO8yB,MAAMqsB,MAAMyrF,aAAe,EAElC5qI,EAAO8yB,MAAMqsB,MAAMr+C,UAAY,CAQ3BskC,KAAM,WAEEnmC,KAAKsC,KAAKuqC,aAAe9rC,EAAO6qB,OAEhC5rB,KAAK2N,QAAU3N,KAAKsC,KAAKqL,SAIzB3N,KAAK+qI,IAAM,IAAIhqI,EAAO+yE,WAAW9zE,KAAKsC,KAAM,UAAWtC,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QAAQ,GAC1F3E,KAAKwkB,OAASxkB,KAAKsC,KAAKqmC,KAAK3tB,MAAM,EAAG,EAAGhb,KAAK+qI,KAC9C/qI,KAAKwkB,OAAOhe,OAAOQ,IAAI,EAAG,GAC1BhH,KAAKsC,KAAK8Y,MAAM9S,SAAStI,KAAKwkB,QAE9BxkB,KAAKsC,KAAKjC,MAAM2iI,aAAa3nG,IAAIr7B,KAAK+F,OAAQ/F,MAE9CA,KAAKgY,OAASjX,EAAO2F,WAAW2B,OAAOrI,KAAMA,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QACxE3E,KAAK2N,QAAU3N,KAAKgY,OAAOsB,WAAW,OAG1CtZ,KAAKorI,MAAQ,IAAIrqI,EAAOs5B,KACxBr6B,KAAKqrI,MAAQ,IAAItqI,EAAOS,WAU5BuE,OAAQ,WAEJ/F,KAAK+qI,IAAIhlI,OAAO/F,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QAE3C3E,KAAKgY,OAAOtT,MAAQ1E,KAAKsC,KAAKoC,MAC9B1E,KAAKgY,OAAOrT,OAAS3E,KAAKsC,KAAKqC,QASnCV,UAAW,WAEHjE,KAAKwR,OAASxR,KAAKwkB,SAEnBxkB,KAAK+qI,IAAInvH,QACT5b,KAAK+qI,IAAIhtD,KAAK/9E,KAAKgY,OAAQ,EAAG,GAE9BhY,KAAK2N,QAAQ0c,UAAU,EAAG,EAAGrqB,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QACxD3E,KAAKwR,OAAQ,IASrBg3B,MAAO,WAECxoC,KAAK2N,SAEL3N,KAAK2N,QAAQ0c,UAAU,EAAG,EAAGrqB,KAAKsC,KAAKoC,MAAO1E,KAAKsC,KAAKqC,QAGxD3E,KAAKwkB,QAELxkB,KAAK+qI,IAAInvH,SAcjBzP,MAAO,SAAU7I,EAAGC,EAAG4T,EAAO6zH,GAET,iBAAN1nI,IAAkBA,EAAI,GAChB,iBAANC,IAAkBA,EAAI,GACjC4T,EAAQA,GAAS,wBACG/Q,IAAhB4kI,IAA6BA,EAAc,GAE/ChrI,KAAK47F,SAAWt4F,EAChBtD,KAAK67F,SAAWt4F,EAChBvD,KAAKkrI,aAAe/zH,EACpBnX,KAAKgrI,YAAcA,EAEnBhrI,KAAKwR,OAAQ,EAEbxR,KAAK2N,QAAQ4c,OACbvqB,KAAK2N,QAAQiB,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GACzC5O,KAAK2N,QAAQ60E,YAAcrrE,EAC3BnX,KAAK2N,QAAQqd,UAAY7T,EACzBnX,KAAK2N,QAAQ4pE,KAAOv3E,KAAKu3E,KACzBv3E,KAAK2N,QAAQG,YAAc9N,KAAKmrI,cASpCn/H,KAAM,WAEFhM,KAAK2N,QAAQkd,WASjBiQ,KAAM,WAIF,IAFA,IAAIx3B,EAAItD,KAAK47F,SAEJ35F,EAAI,EAAGA,EAAIuwB,UAAUtwB,OAAQD,IAE9BjC,KAAKirI,eAELjrI,KAAK2N,QAAQqd,UAAY,aACzBhrB,KAAK2N,QAAQs0E,SAASzvD,UAAUvwB,GAAIqB,EAAI,EAAGtD,KAAK67F,SAAW,GAC3D77F,KAAK2N,QAAQqd,UAAYhrB,KAAKkrI,cAGlClrI,KAAK2N,QAAQs0E,SAASzvD,UAAUvwB,GAAIqB,EAAGtD,KAAK67F,UAE5Cv4F,GAAKtD,KAAKgrI,YAGdhrI,KAAK67F,UAAY77F,KAAK+1F,YAW1B61C,SAAU,SAAUtoI,EAAGC,EAAG4T,GAEtB,IAAI7U,EAAOtC,KAAKsC,KAEhBtC,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjBnX,KAAK86B,KAAK,WAAax4B,EAAKmS,IAC5BzU,KAAK86B,KAAK,CAAC+wG,EAAG,SAAUC,EAAG,QAASC,EAAG,WAAYC,EAAG,sBAAsB1pI,EAAKuqC,YAAc,KAAOvqC,EAAKoC,MAAQ,MAAQpC,EAAKqC,OAAS,KACzI3E,KAAK86B,KAAK,WAAax4B,EAAKknC,QAC5BxpC,KAAK86B,KAAK,aAAex4B,EAAKw7C,SAAW,KAAOx7C,EAAK07C,UAAY,KAEjEh+C,KAAKgM,QAaT+8B,MAAO,SAAUzlC,EAAGC,EAAG4T,GAEnB,IAAI4xB,EAAQ/oC,KAAKsC,KAAKymC,MAClBhV,EAAOltB,OAAOktB,KAAKgV,EAAMe,QAE7B9pC,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjB,IAAK,IAAIlV,EAAI,EAAGA,EAAI8xB,EAAK7xB,OAAQD,IACjC,CACI,IAAIqR,EAAMygB,EAAK9xB,GAEXqR,IAAQy1B,EAAMqB,QAEdpqC,KAAK86B,MAAMiO,EAAMmB,SAAW,KAAO,MAAQ52B,GAEtCA,IAAQy1B,EAAMgB,cAEnB/pC,KAAK86B,KAAK,KAAOxnB,GAIjBtT,KAAK86B,KAAK,KAAOxnB,GAIzBtT,KAAKgM,QAWT88B,MAAO,SAAUxlC,EAAGC,EAAG4T,GAEnB,IAAI2xB,EAAQ9oC,KAAKsC,KAAKwmC,MAEtB9oC,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEb2xB,EAAMonF,QAENlwH,KAAK86B,KAAK,sBAIV96B,KAAK86B,KAAK,WAAagO,EAAMnF,OAAO8M,QAAQ,IAAM3H,EAAMi1F,KAAO,UAAY,KAC3E/9H,KAAK86B,KAAK,kBAAoBgO,EAAM8Z,aACpC5iD,KAAK86B,KAAK,WAAagO,EAAM8pF,cAAiB,eAAiB9pF,EAAMn7B,QAAQo7B,MAAS,cACtF/oC,KAAK86B,KAAK,iBAAmBgO,EAAM68E,aACnC3lH,KAAK86B,KAAK,WAAagO,EAAMm2F,QAAQ/8H,SAGzClC,KAAKgM,QAYTigI,UAAW,SAAUnjG,EAAOxlC,EAAGC,EAAG4T,GAgB9B,GAdAnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,GACjBnX,KAAK86B,KAAK,UAAYgO,EAAMx1B,IAAM,mBAAqBw1B,EAAMxmC,KAAKwmC,MAAM68E,aACxE3lH,KAAK86B,KAAK,cAAgB96B,KAAKsC,KAAKwY,MAAMktG,aAAal/E,EAAMx1B,KAAO,uBAAyBw1B,EAAMoyF,iBACnGl7H,KAAK86B,KAAK,YAAcgO,EAAMy0F,UAAY,eAAiBz0F,EAAM48E,YACjE1lH,KAAK86B,KAAK,YAAcgO,EAAMw1E,UAAY,WAAax1E,EAAM2kC,MAC7DztE,KAAK86B,KAAK,UAAYgO,EAAM6xF,YAAc,KAAMlqF,QAAQ,GAAK,aAAe3H,EAAM4xF,cAAcjqF,QAAQ,GAAK,KAC7GzwC,KAAK86B,KAAK,WAAagO,EAAMnF,OAAO8M,QAAQ,IAAM3H,EAAMi1F,KAAO,UAAY,KAC3E/9H,KAAK86B,KAAK,WAAagO,EAAM8pF,cAAgB,YAAc,cAEvD9pF,EAAM8pF,eAEN5yH,KAAK86B,KAAK,cAAgBgO,EAAMojG,UAAY,SAG5CpjG,EAAM+pF,eAAiB/pF,EAAM2yF,OACjC,CACI,IAAItsH,EAAS25B,EAAM2yF,OAEnBz7H,KAAK86B,KAAK,iBAAmB3rB,EAAOqkH,YACpCxzH,KAAK86B,KAAK,kBAAoB3rB,EAAOwrH,aACrC36H,KAAK86B,KAAK,eAAiB3rB,EAAO81B,UAClCjlC,KAAK86B,KAAK,YAAc3rB,EAAOg9H,OAC/BnsI,KAAK86B,KAAK,WAAa3rB,EAAOs+D,MAC9BztE,KAAK86B,KAAK,YAAc3rB,EAAO2uH,OAC/B99H,KAAK86B,KAAK,aAAe3rB,EAAOq6B,QAGR,KAAxBV,EAAMkyF,gBAENh7H,KAAK86B,KAAK,WAAagO,EAAMkyF,cAAgB,eAAiBlyF,EAAM7D,SAASwL,QAAQ,GAAK,MAAQ3H,EAAM8xF,WAAa,OACrH56H,KAAK86B,KAAK,UAAYgO,EAAM2xF,QAAQ3xF,EAAMkyF,eAAe7uH,MAAMskC,QAAQ,GAAK,WAAa3H,EAAM2xF,QAAQ3xF,EAAMkyF,eAAehvH,KAAKykC,QAAQ,IACzIzwC,KAAK86B,KAAK,aAAegO,EAAM3oC,SAASswC,QAAQ,KAGpDzwC,KAAKgM,QAWT8P,OAAQ,SAAUA,EAAQ3E,EAAOi1H,GAE7B,IAAIjoG,EAAWroB,EAAOqoB,SAClBt8B,EAASiU,EAAOjU,OAChBkQ,EAAO+D,EAAO/D,KAEdosB,IAEAnkC,KAAKqrI,MAAM9zG,MAAMxf,EAAKzU,EAAI6gC,EAAS7gC,EAAGyU,EAAKxU,EAAI4gC,EAAS5gC,EAAG4gC,EAASz/B,MAAOy/B,EAASx/B,QACpF3E,KAAKqsI,UAAUrsI,KAAKqrI,MAAOl0H,EAAOi1H,IAGlCvkI,IAEA7H,KAAKorI,MAAM7zG,MAAMxf,EAAKkiB,QAASliB,EAAKmiB,QAASryB,EAAOvE,EAAGuE,EAAOtE,GAC9DvD,KAAKssI,KAAKtsI,KAAKorI,MAAOj0H,EAAOi1H,GAC7BpsI,KAAKssI,KAAKzkI,EAAQsP,GAAO,EAAO,KAaxCo1H,WAAY,SAAUzwH,EAAQxY,EAAGC,EAAG4T,GAEhC,IAAI7S,EAASwX,EAAOxX,OAChB6/B,EAAWroB,EAAOqoB,SAClBt8B,EAASiU,EAAOjU,OAChBkQ,EAAO+D,EAAO/D,KAElB/X,KAAKmM,MAAM7I,EAAGC,EAAG4T,GACjBnX,KAAK86B,KAAK,WAAahf,EAAOpX,MAAQ,MAAQoX,EAAOnX,OAAS,KAC9D3E,KAAK86B,KAAK,MAAQhf,EAAOxY,EAAI,OAASwY,EAAOvY,GAC7CvD,KAAK86B,KAAK,YAAcx2B,EAAU,MAAQA,EAAOhB,EAAI,OAASgB,EAAOf,EAAI,OAASe,EAAOI,MAAQ,OAASJ,EAAOK,OAAU,SAC3H3E,KAAK86B,KAAK,YAAc/iB,EAAKzU,EAAI,OAASyU,EAAKxU,EAAI,OAASwU,EAAKrT,MAAQ,OAASqT,EAAKpT,QACvF3E,KAAK86B,KAAK,cAAgBhf,EAAOme,QAAU,OAASne,EAAOoe,SAC3Dl6B,KAAK86B,KAAK,cAAgBqJ,EAAY,MAAQA,EAAS7gC,EAAI,OAAS6gC,EAAS5gC,EAAI,OAAS4gC,EAASz/B,MAAQ,OAASy/B,EAASx/B,OAAUw/B,IACvInkC,KAAK86B,KAAK,kBAAoBhf,EAAOwoB,aACrCtkC,KAAK86B,KAAK,gBAAkBhf,EAAOuoB,QAAQ/gC,EAAI,OAASwY,EAAOuoB,QAAQ9gC,GACvEvD,KAAK86B,KAAK,YAAcjzB,EAAUA,EAAOwsB,MAAQxsB,EAAU,SAC3D7H,KAAKgM,QAYT4vG,MAAO,SAAUA,EAAOt4G,EAAGC,EAAG4T,GAE1BnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,GACjBnX,KAAK86B,KAAK,mBAAqB8gF,EAAMU,QAAU,aAAeV,EAAMW,QAAU,KAC9Ev8G,KAAK86B,KAAK,cAAgB8gF,EAAMlkE,KAAO,cAAgBkkE,EAAM32E,UAC7DjlC,KAAK86B,KAAK,WAAa8gF,EAAMpyE,OAAS,YAAcoyE,EAAM15G,QAC1DlC,KAAKgM,QAcTwkC,QAAS,SAAUA,EAASg8F,EAAUC,EAAWC,EAASv1H,EAAOw1H,GAE7D,GAAe,MAAXn8F,SAKapqC,IAAbomI,IAA0BA,GAAW,GAEzCC,EAAYA,GAAa,oBACzBC,EAAUA,GAAW,sBACrBC,EAAgBA,GAAiB,qBAEhB,IAAbH,IAAsC,IAAjBh8F,EAAQ6c,MAAjC,CAKArtD,KAAKmM,MAAMqkC,EAAQltC,EAAGktC,EAAQjtC,EAAI,IAAK4T,GACvCnX,KAAK2N,QAAQu0E,YACbliF,KAAK2N,QAAQw0E,IAAI3xC,EAAQltC,EAAGktC,EAAQjtC,EAAGitC,EAAQiT,OAAOnsB,OAAQ,EAAa,EAAVr0B,KAAKk0B,IAElEqZ,EAAQtD,OAERltC,KAAK2N,QAAQqd,UAAYwlB,EAAQ4c,OAASq/E,EAAYC,EAItD1sI,KAAK2N,QAAQqd,UAAY2hH,EAG7B3sI,KAAK2N,QAAQo7C,OACb/oD,KAAK2N,QAAQy0E,YAGbpiF,KAAK2N,QAAQu0E,YACbliF,KAAK2N,QAAQ00E,OAAO7xC,EAAQuf,aAAazsD,EAAGktC,EAAQuf,aAAaxsD,GACjEvD,KAAK2N,QAAQ20E,OAAO9xC,EAAQrwC,SAASmD,EAAGktC,EAAQrwC,SAASoD,GACzDvD,KAAK2N,QAAQ40E,UAAY,EACzBviF,KAAK2N,QAAQ80E,SACbziF,KAAK2N,QAAQy0E,YAEb,IAAIwqD,EAAKp8F,EAAQ+e,UACbs9E,EAAKr8F,EAAQgf,WAEbo9E,GAAMC,KAEN7sI,KAAK2N,QAAQu0E,YACbliF,KAAK2N,QAAQ00E,OAAOuqD,EAAKp8F,EAAQrwC,SAASmD,EAAGupI,EAAKr8F,EAAQrwC,SAASoD,GACnEvD,KAAK2N,QAAQ20E,OAAO9xC,EAAQrwC,SAASmD,EAAGktC,EAAQrwC,SAASoD,GACzDvD,KAAK2N,QAAQ40E,UAAY,EACzBviF,KAAK2N,QAAQ80E,SACbziF,KAAK2N,QAAQy0E,aAIjBpiF,KAAK86B,KAAK,OAAS0V,EAAQ/7B,GAAK,YAAc+7B,EAAQtD,QACtDltC,KAAK86B,KAAK,YAAc0V,EAAQs8F,OAAOr8F,QAAQ,GAAK,aAAeD,EAAQu8F,OAAOt8F,QAAQ,IAC1FzwC,KAAK86B,KAAK,aAAe0V,EAAQltC,EAAEmtC,QAAQ,GAAK,cAAgBD,EAAQjtC,EAAEktC,QAAQ,GAAK,QAAUD,EAAQua,YACzG/qD,KAAK86B,KAAK,gBAAkB8xG,EAAK,OAASC,GAC1C7sI,KAAK86B,KAAK,aAAe0V,EAAQvL,SAAW,OAC5CjlC,KAAK86B,KAAK,YAAc0V,EAAQ4c,OAAS,WAAa5c,EAAQ6c,MAC9DrtD,KAAK86B,KAAK,eAAiB0V,EAAQyX,WAAa,gBAAkBzX,EAAQgY,WAEtEhY,EAAQif,SAERzvD,KAAK86B,KAAK,YAAc96B,KAAKgtI,mBAAmBx8F,EAAQ4d,YAAc,IAC9CpuD,KAAKgtI,mBAAmBx8F,EAAQ6d,cAAgB,IAChDruD,KAAKgtI,mBAAmBx8F,EAAQ8d,cAG5DtuD,KAAKgM,SAGTghI,mBAAoB,SAAUC,GAE1B,OAAIA,EAAI7/E,OAAiB,IAChB6/E,EAAI5/E,KAAe,IAErB,KAYX6/E,gBAAiB,SAAU1oH,EAAQlhB,EAAGC,EAAG4T,GAErCnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,GACjBnX,KAAK86B,KAAK,kBAAoBtW,EAAO9f,MAAQ,MAAQ8f,EAAO7f,OAAS,KACrE3E,KAAK86B,KAAK,MAAQtW,EAAOokB,MAAMyuB,WAAW5mB,QAAQ,GAAK,OAASjsB,EAAOokB,MAAM0uB,WAAW7mB,QAAQ,IAChGzwC,KAAK86B,KAAK,SAAWtW,EAAOokB,MAAM+uB,cAAgB,cAAgBnzC,EAAOokB,MAAMgxB,eAAenpB,QAAQ,IACtGzwC,KAAK86B,KAAK,SAAWtW,EAAOokB,MAAM2uB,cAAgB,cAAgB/yC,EAAOokB,MAAMguB,eAAenmB,QAAQ,IACtGzwC,KAAK86B,KAAK,cAAgBtW,EAAOokB,MAAM8wB,WAAa,cAAgBl1C,EAAOokB,MAAMixB,WACjF75D,KAAKgM,QAYTsH,IAAK,SAAUA,EAAKhQ,EAAGC,EAAG4T,GAEtBnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,EAAO,KAExBnX,KAAK86B,KAAK,OAAQxnB,EAAI2xD,QAAS,UAAW3xD,EAAI85C,QAC9CptD,KAAK86B,KAAK,YAAaxnB,EAAI65H,SAAU,UAAW75H,EAAI85H,QACpDptI,KAAK86B,KAAK,aAAcxnB,EAAIg6C,SAAS7c,QAAQ,GAAI,YAAan9B,EAAI2xB,SAASwL,QAAQ,IAEnFzwC,KAAKgM,QAYTqhI,UAAW,SAAU/pI,EAAGC,EAAG4T,EAAOm2H,GAE9B,IAAI1kG,EAAQ5oC,KAAKsC,KAAKsmC,MAetB,QAboBxiC,IAAhBknI,IAEAA,GAAc,GAGlBttI,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjBnX,KAAK86B,KAAK,SACV96B,KAAK86B,KAAK,MAAQ8N,EAAMtlC,EAAI,OAASslC,EAAMrlC,GAC3CvD,KAAK86B,KAAK,YAAc8N,EAAMkkG,OAAS,aAAelkG,EAAMmkG,QAC5D/sI,KAAK86B,KAAK,YAAc8N,EAAMvoC,MAAMiD,EAAEmtC,QAAQ,GAAK,aAAe7H,EAAMvoC,MAAMiD,EAAEmtC,QAAQ,IACxFzwC,KAAK86B,KAAK,aAAe8N,EAAMmc,cAAcoK,QAAQ1e,QAAQ,GAAK,cAAgB7H,EAAMmc,cAAcqK,QAAQ3e,QAAQ,IAEjH68F,EAAL,CAOAttI,KAAK86B,KAAK,YACV96B,KAAK86B,KAAK,KAAO96B,KAAKutI,cAAc3kG,EAAM8G,MAAO,UACjD1vC,KAAK86B,KAAK,KAAO96B,KAAKutI,cAAc3kG,EAAMuc,UAAW,cACrDnlD,KAAK86B,KAAK,KAAO96B,KAAKutI,cAAc3kG,EAAMsc,MAAO,UAEjD,IAAIJ,EAAWlc,EAAMkc,SACjBE,EAAepc,EAAMoc,aACrBznC,EAAQxc,EAAO8xD,aACf3lB,EAAS,EACTsgG,EAAO,EAEXxtI,KAAK86B,KAAK,aACV96B,KAAK86B,KAAK,MAAQkqB,EAAaoI,OAAS,IAAM,KAAO,IAAM7vC,EAAMynC,EAAakJ,aAAe,IAAMlJ,EAAaiD,YAEhH,IAAK,IAAIhmD,EAAI,EAAGA,EAAI6iD,EAAS5iD,OAAQD,IACrC,CACI,IAAIM,EAAIuiD,EAAS7iD,GAEjBjC,KAAK86B,KAAK,MAAQv4B,EAAE2qC,OAAS,IAAM,KAAO,IAAM3vB,EAAMhb,EAAE2rD,aAAe,IAAM3rD,EAAE0lD,YAE3E1lD,EAAE2qC,OAAUA,GAAU,EACnBsgG,GAAQ,EAGnBxtI,KAAK86B,KAAK,aAAeoS,EAAS,UAAYsgG,EAAO,SAAW5kG,EAAM8a,aAEtE1jD,KAAKgM,YA/BDhM,KAAKgM,QA4CbyhI,aAAc,SAAUvkF,EAAS70B,EAAM/wB,EAAGC,EAAG4T,GAEzCnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjBnX,KAAK86B,KAAKzG,GAAQ,KAClBr0B,KAAK86B,KAAK,WAAaouB,EAAQhc,QAE1Bgc,EAAQhc,SAObltC,KAAK86B,KAAK,YAAcouB,EAAQ7F,SAE5B,YAAa6F,GAEblpD,KAAK86B,KAAK,YAAcouB,EAAQK,SAGhC,mBAAoBL,GAEpBlpD,KAAK86B,KAAK,mBAAqBouB,EAAQvH,gBAGvC,UAAWuH,GAEXlpD,KAAK86B,KAAK,WAAaouB,EAAQtW,MAAQsW,EAAQtW,MAAM7+B,KAAOm1C,EAAQtW,SAGxE5yC,KAAKgM,QAGTuhI,cAAe,SAAUrkF,EAAS70B,GAE9B,OAAOr0B,KAAK0tI,wBAAwBxkF,GAAW,IAAM70B,EAAO,IAAMr0B,KAAK2tI,yBAAyBzkF,IAGpGwkF,wBAAyB,SAAUxkF,GAE/B,OAAKA,EAAQhc,OAKNgc,EAAQ7F,QAAU,IAAM,IAHpB,KAMfsqF,yBAA0B,SAAUzkF,GAEhC,OAAKA,EAAQhc,SAKLgc,EAAQK,SAAWL,EAAQvH,gBAAkB,IAH1C,KAcfisF,aAAc,SAAUppH,EAAQrN,EAAOi1H,GAEnC,IAAI9nI,EAASkgB,EAAOza,YAEpBzF,EAAOhB,GAAKtD,KAAKsC,KAAKwZ,OAAOxY,EAC7BgB,EAAOf,GAAKvD,KAAKsC,KAAKwZ,OAAOvY,EAE7BvD,KAAKqsI,UAAU/nI,EAAQ6S,EAAOi1H,IAWlCyB,aAAc,SAAUp3D,EAAMt/D,EAAOi1H,GAEjC,IAAI17C,EAAWja,EAAKia,SAEhBnzD,EAAOv9B,KAEX0wF,EAAS19D,QAAQ,SAAU86G,GAEvBvwG,EAAK8uG,UAAUyB,EAAS32H,EAAOi1H,IAChCpsI,OAYP+tI,WAAY,SAAUvpH,EAAQlhB,EAAGC,EAAG4T,GAEhCnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjBnX,KAAK86B,KAAK,YAActW,EAAO6P,MAAQ,IAAM,KAAO7P,EAAO9f,MAAQ,MAAQ8f,EAAO7f,OAAS,aAAe6f,EAAOhe,OAAOlD,EAAI,MAAQkhB,EAAOhe,OAAOjD,GAClJvD,KAAK86B,KAAK,MAAQtW,EAAOlhB,EAAEmtC,QAAQ,GAAK,OAASjsB,EAAOjhB,EAAEktC,QAAQ,IAClEzwC,KAAK86B,KAAK,UAAYtW,EAAOuT,MAAM0Y,QAAQ,GAAK,cAAgBjsB,EAAOjkB,SAASkwC,QAAQ,IACxFzwC,KAAK86B,KAAK,YAActW,EAAO/jB,QAAU,eAAiB+jB,EAAOspD,UACjE9tE,KAAK86B,KAAK,aAAetW,EAAOjjB,QAAQ+B,EAAEmtC,QAAQ,GAAK,OAASjsB,EAAOjjB,QAAQgC,EAAEktC,QAAQ,GAAK,OAASjsB,EAAOjjB,QAAQmD,MAAM+rC,QAAQ,GAAK,OAASjsB,EAAOjjB,QAAQoD,OAAO8rC,QAAQ,IAChLzwC,KAAK86B,KAAK,YAActW,EAAO5jB,OAAU4jB,EAAO5jB,OAAOyzB,MAAQ,kBAAqB,WAEpFr0B,KAAKgM,QAYTgiI,aAAc,SAAUxpH,EAAQlhB,EAAGC,EAAG4T,GAElCnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,EAAO,KAEpBqN,EAAO6P,MAEPr0B,KAAK86B,KAAKtW,EAAO6P,MAGrBr0B,KAAK86B,KAAK,KAAMtW,EAAOlhB,EAAEmtC,QAAQ,GAAI,KAAMjsB,EAAOjhB,EAAEktC,QAAQ,IAC5DzwC,KAAK86B,KAAK,SAAUtW,EAAOrkB,SAASmD,EAAEmtC,QAAQ,GAAI,SAAUjsB,EAAOrkB,SAASoD,EAAEktC,QAAQ,IACtFzwC,KAAK86B,KAAK,WAAYtW,EAAOhiB,MAAMc,EAAEmtC,QAAQ,GAAI,WAAYjsB,EAAOhiB,MAAMe,EAAEktC,QAAQ,IAEpFzwC,KAAKgM,QAYTiiI,SAAU,SAAUnzG,EAAMx3B,EAAGC,EAAG4T,GAE5BnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,EAAO,IACxBnX,KAAK86B,KAAK,WAAYA,EAAK3uB,MAAM7I,EAAEmtC,QAAQ,GAAI,WAAY3V,EAAK3uB,MAAM5I,EAAEktC,QAAQ,IAChFzwC,KAAK86B,KAAK,SAAUA,EAAKxe,IAAIhZ,EAAEmtC,QAAQ,GAAI,SAAU3V,EAAKxe,IAAI/Y,EAAEktC,QAAQ,IACxEzwC,KAAK86B,KAAK,UAAWA,EAAK54B,OAAOuuC,QAAQ,GAAI,SAAU3V,EAAK/C,OAC5D/3B,KAAKgM,QAYTyyE,MAAO,SAAUn7E,EAAGC,EAAG4T,EAAO6L,GAE1BA,EAAOA,GAAQ,EAEfhjB,KAAKmM,QACLnM,KAAK2N,QAAQqd,UAAY7T,EACzBnX,KAAK2N,QAAQwd,SAAS7nB,EAAGC,EAAGyf,EAAMA,GAClChjB,KAAKgM,QAYTsgI,KAAM,SAAU3wF,EAAQxkC,EAAOi1H,EAAQ8B,QAEpB9nI,IAAXgmI,IAAwBA,GAAS,QACnBhmI,IAAd8nI,IAA2BA,EAAY,GAE3C/2H,EAAQA,GAAS,oBAEjBnX,KAAKmM,QAELnM,KAAK2N,QAAQqd,UAAY7T,EACzBnX,KAAK2N,QAAQ60E,YAAcrrE,EAC3BnX,KAAK2N,QAAQ40E,UAAYviF,KAAKuiF,UAE9B,IAAIriC,EAAQn/C,EAAO8yB,MAAMqsB,MAErBguF,IAAchuF,EAAMqrF,gBAAkB5vF,aAAkB56C,EAAOS,UAE3D4qI,EAEApsI,KAAK2N,QAAQwd,SAASwwB,EAAOr4C,EAAItD,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOp4C,EAAIvD,KAAKsC,KAAKwZ,OAAOvY,EAAGo4C,EAAOj3C,MAAOi3C,EAAOh3C,QAIzG3E,KAAK2N,QAAQ2/E,WAAW3xC,EAAOr4C,EAAItD,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOp4C,EAAIvD,KAAKsC,KAAKwZ,OAAOvY,EAAGo4C,EAAOj3C,MAAOi3C,EAAOh3C,QAG1GupI,IAAchuF,EAAMsrF,aAAe7vF,aAAkB56C,EAAO+1B,QAEjE92B,KAAK2N,QAAQu0E,YACbliF,KAAK2N,QAAQw0E,IAAIxmC,EAAOr4C,EAAItD,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOp4C,EAAIvD,KAAKsC,KAAKwZ,OAAOvY,EAAGo4C,EAAOrkB,OAAQ,EAAa,EAAVr0B,KAAKk0B,IAAQ,GAC9Gn3B,KAAK2N,QAAQy0E,YAETgqD,EAEApsI,KAAK2N,QAAQo7C,OAIb/oD,KAAK2N,QAAQ80E,UAGZyrD,IAAchuF,EAAMurF,YAAc9vF,aAAkB56C,EAAOX,MAEhEJ,KAAK2N,QAAQwd,SAASwwB,EAAOr4C,EAAItD,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOp4C,EAAIvD,KAAKsC,KAAKwZ,OAAOvY,EAAG,EAAG,GAElF2qI,IAAchuF,EAAMwrF,WAAa/vF,aAAkB56C,EAAOs5B,MAE/Dr6B,KAAK2N,QAAQu0E,YACbliF,KAAK2N,QAAQ00E,OAAQ1mC,EAAOxvC,MAAM7I,EAAI,GAAOtD,KAAKsC,KAAKwZ,OAAOxY,EAAIq4C,EAAOxvC,MAAM5I,EAAI,GAAOvD,KAAKsC,KAAKwZ,OAAOvY,GAC3GvD,KAAK2N,QAAQ20E,OAAQ3mC,EAAOr/B,IAAIhZ,EAAI,GAAOtD,KAAKsC,KAAKwZ,OAAOxY,EAAIq4C,EAAOr/B,IAAI/Y,EAAI,GAAOvD,KAAKsC,KAAKwZ,OAAOvY,GACvGvD,KAAK2N,QAAQy0E,YACbpiF,KAAK2N,QAAQ80E,WAERyrD,IAAchuF,EAAMyrF,cAAgBhwF,aAAkB56C,EAAOi5B,WAElEh6B,KAAK2N,QAAQu0E,YACbliF,KAAK2N,QAAQwgI,QAAQxyF,EAAO1hB,QAAUj6B,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOzhB,QAAUl6B,KAAKsC,KAAKwZ,OAAOvY,EAAGo4C,EAAOj3C,MAAQ,EAAGi3C,EAAOh3C,OAAS,EAAG,EAAG,EAAI1B,KAAKk0B,IAAI,GACpJn3B,KAAK2N,QAAQy0E,YAETgqD,EAEApsI,KAAK2N,QAAQo7C,OAIb/oD,KAAK2N,QAAQ80E,UAIrBziF,KAAKgM,QAWTqgI,UAAW,SAAU1wF,EAAQxkC,EAAOi1H,QAEjBhmI,IAAXgmI,IAAwBA,GAAS,GAErCj1H,EAAQA,GAAS,uBAEjBnX,KAAKmM,QAEDigI,GAEApsI,KAAK2N,QAAQqd,UAAY7T,EACzBnX,KAAK2N,QAAQwd,SAASwwB,EAAOr4C,EAAItD,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOp4C,EAAIvD,KAAKsC,KAAKwZ,OAAOvY,EAAGo4C,EAAOj3C,MAAOi3C,EAAOh3C,UAIzG3E,KAAK2N,QAAQ40E,UAAYviF,KAAKuiF,UAC9BviF,KAAK2N,QAAQ60E,YAAcrrE,EAC3BnX,KAAK2N,QAAQ2/E,WAAW3xC,EAAOr4C,EAAItD,KAAKsC,KAAKwZ,OAAOxY,EAAGq4C,EAAOp4C,EAAIvD,KAAKsC,KAAKwZ,OAAOvY,EAAGo4C,EAAOj3C,MAAOi3C,EAAOh3C,SAG/G3E,KAAKgM,QAaT2qE,KAAM,SAAUA,EAAMrzE,EAAGC,EAAG4T,EAAOogE,GAE/BpgE,EAAQA,GAAS,mBACjBogE,EAAOA,GAAQv3E,KAAKu3E,KAEpBv3E,KAAKmM,QACLnM,KAAK2N,QAAQ4pE,KAAOA,EAEhBv3E,KAAKirI,eAELjrI,KAAK2N,QAAQqd,UAAY,aACzBhrB,KAAK2N,QAAQs0E,SAAStL,EAAMrzE,EAAI,EAAGC,EAAI,IAG3CvD,KAAK2N,QAAQqd,UAAY7T,EACzBnX,KAAK2N,QAAQs0E,SAAStL,EAAMrzE,EAAGC,GAE/BvD,KAAKgM,QAUToiI,SAAU,SAAUC,EAAUl3H,GAE1BA,EAAQA,GAAS,oBAEjBnX,KAAKmM,QAEL,IAAI7H,EAAS+pI,EAAS/pI,OAEtB,GAA8B,IAA1B+pI,EAASl8B,MAAMjwG,OACnB,CACIlC,KAAK2N,QAAQ60E,YAAcrrE,EAC3BnX,KAAK2N,QAAQ2/E,WAAWhpF,EAAOhB,EAAGgB,EAAOf,EAAGe,EAAOI,MAAOJ,EAAOK,QACjE3E,KAAK22E,KAAK,SAAW03D,EAASn8B,QAAQhwG,OAAQoC,EAAOhB,EAAI,EAAGgB,EAAOf,EAAI,GAAI,eAAgB,gBAE3FvD,KAAK2N,QAAQ60E,YAAc,eAE3B,IAAK,IAAIvgF,EAAI,EAAGA,EAAIosI,EAASn8B,QAAQhwG,OAAQD,IAEzCjC,KAAK2N,QAAQ2/E,WAAW+gD,EAASn8B,QAAQjwG,GAAGqB,EAAG+qI,EAASn8B,QAAQjwG,GAAGsB,EAAG8qI,EAASn8B,QAAQjwG,GAAGyC,MAAO2pI,EAASn8B,QAAQjwG,GAAG0C,aAKzH,IAAS1C,EAAI,EAAGA,EAAIosI,EAASl8B,MAAMjwG,OAAQD,IAEvCjC,KAAKouI,SAASC,EAASl8B,MAAMlwG,IAIrCjC,KAAKgM,QAaTqoC,KAAM,SAAU7vB,EAAQrN,EAAOi1H,GAEvB5nH,EAAO6vB,OAEPr0C,KAAKmM,QAEDqY,EAAO6vB,KAAKtgC,OAAShT,EAAO6zC,QAAQC,OAEpC9zC,EAAO6zC,QAAQwiC,OAAOk3D,KAAKzpI,OAAO7E,KAAK2N,QAAS6W,EAAO6vB,KAAMl9B,EAAOi1H,EAAQpsI,KAAKuiF,WAE5E/9D,EAAO6vB,KAAKtgC,OAAShT,EAAO6zC,QAAQ25F,MAEzCxtI,EAAO6zC,QAAQ45F,MAAMF,KAAKzpI,OAAO7E,KAAK2N,QAAS6W,EAAO6vB,KAAMl9B,EAAOi1H,GAE9D5nH,EAAO6vB,KAAKtgC,OAAShT,EAAO6zC,QAAQ65F,OAEzC1tI,EAAO6zC,QAAQ85F,MAAMC,WAAW3uI,KAAK2N,QAAS6W,EAAO6vB,KAAMl9B,GAG/DnX,KAAKgM,SAab4iI,SAAU,SAAUpqH,EAAQlhB,EAAGC,EAAG4T,GAE1BqN,EAAO6vB,OAEPr0C,KAAKmM,MAAM7I,EAAGC,EAAG4T,EAAO,KAEpBqN,EAAO6vB,KAAKtgC,OAAShT,EAAO6zC,QAAQC,OAEpC9zC,EAAO6zC,QAAQwiC,OAAOk3D,KAAKO,eAAe7uI,KAAMwkB,EAAO6vB,MAElD7vB,EAAO6vB,KAAKtgC,OAAShT,EAAO6zC,QAAQ65F,OAEzCzuI,KAAKsC,KAAK4mC,QAAQ4lG,MAAMD,eAAe7uI,KAAMwkB,EAAO6vB,MAGxDr0C,KAAKgM,SAWb+iI,WAAY,WAER/uI,KAAKmM,QAELnM,KAAK2N,QAAQswB,WAAWj+B,KAAKsC,KAAKwZ,OAAO/D,KAAKzU,GAAItD,KAAKsC,KAAKwZ,OAAO/D,KAAKxU,EAAG,GAC3EvD,KAAKsC,KAAK4mC,QAAQ4lG,MAAME,gBAAgBhvI,KAAK2N,SAE7C3N,KAAKgM,QAWTijI,UAAW,SAAU56F,EAAMl9B,GAEvBnX,KAAKmM,QACLpL,EAAO6zC,QAAQ85F,MAAMC,WAAW3uI,KAAK2N,QAAS0mC,EAAMl9B,GACpDnX,KAAKgM,QAaTkjI,YAAa,SAAUhzH,GAanB,QAXsB9V,IAAlB8V,IAA+BA,EAAgBlc,KAAKsC,KAAKE,OAEzD0Z,EAAcwX,eAAe,iBAE7BtjB,QAAQC,IAAI,IAAM6L,EAAcm+B,cAAgB,IAAKn+B,GAIrD9L,QAAQC,IAAI,KAAM6L,GAGlBA,EAAcla,UAA4C,EAAhCka,EAAcla,SAASE,OAEjD,IAAK,IAAID,EAAI,EAAGA,EAAIia,EAAcla,SAASE,OAAQD,IAE/CjC,KAAKsC,KAAKgqC,MAAM4iG,YAAYhzH,EAAcla,SAASC,KAa/DoC,SAAU,SAAUf,EAAGC,EAAG4T,GAEtB,IAAI1T,EAAIzD,KAAKsC,KAAK+B,SACdT,EAAIH,EAAE6B,cAWV,GATAtF,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjBnX,KAAK86B,MAAMr3B,EAAE+B,GAAK,QAAU,UAAY,cAAgB/B,EAAEiB,MAAQ,MAAQjB,EAAEkB,OAAS,KACrF3E,KAAK86B,KAAK,eAAiBr3B,EAAEkU,YAC7B3X,KAAK86B,KAAK,sBAAwBr3B,EAAEoU,mBACpC7X,KAAK86B,KAAK,eAAiBr3B,EAAEU,YAC7BnE,KAAK86B,KAAK,gBAAkBr3B,EAAEiU,aAC9B1X,KAAK86B,KAAK,kBAENr3B,EAAE+B,GACN,CACIxF,KAAK86B,KAAK,8BAAgCr3B,EAAEwV,uBAAuB/W,OAAS,KAE5E,IAAK,IAAID,EAAI,EAAGA,EAAIwB,EAAEwV,uBAAuB/W,OAAQD,IAEjDjC,KAAK86B,KAAK,OAASr3B,EAAEwV,uBAAuBhX,IAGhDjC,KAAK86B,KAAK,gBAAkBl3B,EAAEsV,WAC9BlZ,KAAK86B,KAAK,kBAAoBr3B,EAAE8V,aAChCvZ,KAAK86B,KAAK,qBAAuBr3B,EAAE+V,gBACnCxZ,KAAK86B,KAAK,+BAAiCl3B,EAAEuV,0BAC7CnZ,KAAK86B,KAAK,kBAAoBl3B,EAAE+K,kBAIhC3O,KAAK86B,KAAK,kBAAoBl3B,EAAE+K,aAChC3O,KAAK86B,KAAK,iBAAmC,IAAhBl3B,EAAEQ,UAAkB,SAA4B,IAAhBR,EAAEQ,UAAkB,UAAYR,EAAEQ,YAGnGpE,KAAKgM,QAGTmjI,WAAY,SAAU7rI,EAAGC,EAAG4T,EAAO6zH,GAE/B,IAAIlpC,EAAO/gG,EAAO2F,WAElB1G,KAAKmM,MAAM7I,EAAGC,EAAG4T,EAAO6zH,GAAe,KACvChrI,KAAK86B,KAAK,eACV96B,KAAK86B,KAAK,QAASgnE,EAAKC,YACxB/hG,KAAK86B,KAAK,QAASgnE,EAAKE,WACxBhiG,KAAK86B,KAAK,SAAUgnE,EAAK5/F,QACzBlC,KAAKgM,QAYTmqE,aAAc,SAAU15B,EAAOtlC,EAAOi1H,EAAQvyF,GAE1C4C,EAAMzpB,QAAQhzB,KAAKq0C,KAAMr0C,KAAM65C,EAAa1iC,EAAOi1H,IAWvDgD,OAAQ,SAAU9rI,EAAGC,EAAG4T,GAEpBnX,KAAK22E,KAAK,WAAa51E,EAAO+sB,QAAU,KACnC9tB,KAAKsC,KAAKuqC,aAAe9rC,EAAO0W,MAAQ,QAAU,UAAY,KAC9DzX,KAAKsC,KAAKgqB,OAAOy0B,SAAW,WAAa,cAC9Cz9C,EAAGC,EAAG4T,EAAOnX,KAAKu3E,OAWtBl3E,MAAO,SAAUiD,EAAGC,EAAG4T,GAEnBnX,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjB,IAAI9W,EAAQL,KAAKsC,KAAKjC,MAClBgvI,EAAShvI,EAAMyhI,oBACfx9H,EAASjE,EAAMsjI,cACfrgI,EAAI,MAERtD,KAAK86B,KAAK,SAAW96B,KAAKsC,KAAKoC,MAAQpB,EAAItD,KAAKsC,KAAKqC,QACrD3E,KAAK86B,KAAK,WAAaz6B,EAAMqE,MAAQpB,EAAIjD,EAAMsE,OAC3C,KAAO0qI,EAAO/rI,EAAEmtC,QAAQ,GAAKntC,EAAI+rI,EAAO9rI,EAAEktC,QAAQ,GAAK,MAChDpwC,EAAM0hI,YAAYtxF,QAAQ,GAAK,KAC1CzwC,KAAK86B,KAAK,SAAW/5B,EAAOw+C,aAAa8kF,MAAMhkI,EAAM2lI,mBAChD3lI,EAAM2lI,mBAAqBjlI,EAAOw+C,aAAa6kF,WAC3C,KAAO/jI,EAAMijI,iBAAiBhgI,EAAIA,EAAIjD,EAAMijI,iBAAiB//H,EAAI,IAClE,KACRvD,KAAK86B,KAAK,YAAcz6B,EAAMwiI,eAAiB,SAAWxiI,EAAM4rG,aAC3D3nG,EAAO24B,MAAQ,GAAM,KAAO34B,EAAOI,MAAQpB,EAAIgB,EAAOK,OAAS,MACpE3E,KAAK86B,KAAK,WAAaz6B,EAAM6mI,oBAAoB7mI,EAAMshI,oBAClDthI,EAAM0gI,qBAAuB,eAAiB,KAEnD/gI,KAAKgM,QAiBTsjI,OAAQ,SAAUA,EAAQhsI,EAAGC,EAAG4T,GAE5B,IAAIue,EAAM30B,EAAO8yB,MAAM6B,IAEvB11B,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEbm4H,EAAOtiI,UAEPhN,KAAK86B,KAAK,YAAcw0G,EAAOjqF,YAAc,YAAc,KAEtDiqF,EAAO3jB,UAEZ3rH,KAAK86B,KAAK,WAIV96B,KAAK86B,KAAK,eAGTw0G,EAAOtiI,YAAasiI,EAAOjqF,cAE5BrlD,KAAK86B,KAAK,aAAgBpF,EAAI45G,EAAOzd,SAAU,GAAK,KACpD7xH,KAAK86B,KAAK,UAAYw0G,EAAOriB,iBAAmB,OAC1BqiB,EAAOviB,iBAC7B/sH,KAAK86B,KAAK,UAAYw0G,EAAOtiB,iBAAmB,OAC1BsiB,EAAOtiB,mBAGjChtH,KAAKgM,QAWTsgB,OAAQ,SAAUhpB,EAAGC,EAAG4T,GAEpB,IAAImV,EAAStsB,KAAKsC,KAAKgqB,OAEvBtsB,KAAKmM,MAAM7I,EAAGC,EAAG4T,GAEjBnX,KAAK86B,KAAK,UACV96B,KAAK86B,KAAK,mBAAqBxO,EAAO64B,WACtCnlD,KAAK86B,KAAK,UAAYxO,EAAO44B,OAC7BllD,KAAK86B,KAAK,cAAgBxO,EAAOy0B,UACjC/gD,KAAK86B,KAAK,UAAYxO,EAAO+0B,OAE7BrhD,KAAKgM,QAQTjK,QAAS,WAELhB,EAAO2F,WAAW2W,OAAOrd,QAKjCe,EAAO8yB,MAAMqsB,MAAMr+C,UAAUC,YAAcf,EAAO8yB,MAAMqsB,MAmBxDn/C,EAAOmxC,IAAM,CAYTC,UAAW,SAAU+Y,EAAS3yB,GAE1BA,EAAQA,GAAS,IAAIx3B,EAAOX,MAE5B,IAAImvI,EAAMrkF,EAAQm9E,wBAEdX,EAAY3mI,EAAOmxC,IAAIs9F,QACvBC,EAAa1uI,EAAOmxC,IAAIw9F,QACxBC,EAAYp9F,SAASy4D,gBAAgB2kC,UACrCC,EAAar9F,SAASy4D,gBAAgB4kC,WAK1C,OAHAr3G,EAAMj1B,EAAIisI,EAAI/2G,KAAOi3G,EAAaG,EAClCr3G,EAAMh1B,EAAIgsI,EAAI92G,IAAMivG,EAAYiI,EAEzBp3G,GAgBXxuB,UAAW,SAAUmhD,EAAS2kF,GAM1B,YAJgBzpI,IAAZypI,IAAyBA,EAAU,OAEvC3kF,EAAUA,IAAYA,EAAQl1B,SAAWk1B,EAAQ,GAAKA,IAEjB,IAArBA,EAAQl1B,WAMbh2B,KAAK8vI,UAAU5kF,EAAQm9E,wBAAyBwH,IAa/DC,UAAW,SAAUC,EAAQF,GAEzBA,GAAWA,GAAW,EAEtB,IAAIh4G,EAAS,CAAEnzB,MAAO,EAAGC,OAAQ,EAAG6zB,KAAM,EAAG1C,MAAO,EAAG2C,IAAK,EAAGC,OAAQ,GAKvE,OAHAb,EAAOnzB,OAASmzB,EAAO/B,MAAQi6G,EAAOj6G,MAAQ+5G,IAAYh4G,EAAOW,KAAOu3G,EAAOv3G,KAAOq3G,GACtFh4G,EAAOlzB,QAAUkzB,EAAOa,OAASq3G,EAAOr3G,OAASm3G,IAAYh4G,EAAOY,IAAMs3G,EAAOt3G,IAAMo3G,GAEhFh4G,GAUXm4G,eAAgB,SAAUr0F,GAItB,IAAIxlC,GAFJwlC,EAAmB,MAAVA,EAAiB37C,KAAK6lI,aAAmC,IAApBlqF,EAAO3lB,SAAiBh2B,KAAK+J,UAAU4xC,GAAUA,GAEhFj3C,MACX+gB,EAAIk2B,EAAOh3C,OAYf,MAViB,mBAANwR,IAEPA,EAAIA,EAAEpS,KAAK43C,IAGE,mBAANl2B,IAEPA,EAAIA,EAAE1hB,KAAK43C,IAGRxlC,EAAIsP,GAgBfwqH,iBAAkB,SAAU/kF,EAAS2kF,GAEjC,IAAIpsI,EAAIzD,KAAK+J,UAAUmhD,EAAS2kF,GAEhC,QAASpsI,GAAiB,GAAZA,EAAEi1B,QAA0B,GAAXj1B,EAAEqyB,OAAcryB,EAAEg1B,KAAOz4B,KAAKmoI,aAAazjI,OAASjB,EAAE+0B,MAAQx4B,KAAKmoI,aAAaxjI,QA4BnHi9H,qBAAsB,SAAUsO,GAE5B,IAAIC,EAAShgI,OAAOggI,OAChBhJ,EAAcgJ,EAAOhJ,aAAegJ,EAAOC,gBAAkBD,EAAOE,cAExE,GAAIlJ,GAA2C,iBAArBA,EAAYpzH,KAGlC,OAAOozH,EAAYpzH,KAElB,GAA2B,iBAAhBozH,EAGZ,OAAOA,EAGX,IAAI12G,EAAW,mBACXD,EAAY,oBAEhB,GAAwB,WAApB0/G,EAEA,OAAQC,EAAOxrI,OAASwrI,EAAOzrI,MAAS+rB,EAAWD,EAElD,GAAwB,aAApB0/G,EAEL,OAAQlwI,KAAK6lI,aAAalhI,OAAS3E,KAAK6lI,aAAanhI,MAAS+rB,EAAWD,EAExE,GAAwB,uBAApB0/G,GAA0E,iBAAvB//H,OAAOg3H,YAG/D,OAA+B,IAAvBh3H,OAAOg3H,aAA4C,MAAvBh3H,OAAOg3H,YAAuB12G,EAAWD,EAE5E,GAAIrgB,OAAOmgI,WAChB,CACI,GAAIngI,OAAOmgI,WAAW,2BAA2B5kC,QAE7C,OAAOj7E,EAEN,GAAItgB,OAAOmgI,WAAW,4BAA4B5kC,QAEnD,OAAOl7E,EAIf,OAAQxwB,KAAK6lI,aAAalhI,OAAS3E,KAAK6lI,aAAanhI,MAAS+rB,EAAWD,GAoB7Eq1G,aAAc,IAAI9kI,EAAOS,UAqBzB2mI,aAAc,IAAIpnI,EAAOS,UAczB+uI,eAAgB,IAAIxvI,EAAOS,WAI/BT,EAAO68C,OAAOyB,UAAU,SAAU/yB,GAG9B,IAAIojH,EAAUv/H,QAAW,gBAAiBA,OACtC,WAAc,OAAOA,OAAOqgI,aAC5B,WAAc,OAAOj+F,SAASy4D,gBAAgBykC,YAE9CD,EAAUr/H,QAAW,gBAAiBA,OACtC,WAAc,OAAOA,OAAOsgI,aAC5B,WAAc,OAAOl+F,SAASy4D,gBAAgB08B,WAuClD,GA7BA7gI,OAAOyF,eAAevL,EAAOmxC,IAAK,UAAW,CAACnrC,IAAK2oI,IAUnD7oI,OAAOyF,eAAevL,EAAOmxC,IAAK,UAAW,CAACnrC,IAAKyoI,IAEnD3oI,OAAOyF,eAAevL,EAAOmxC,IAAI2zF,aAAc,IAAK,CAAC9+H,IAAK2oI,IAE1D7oI,OAAOyF,eAAevL,EAAOmxC,IAAI2zF,aAAc,IAAK,CAAC9+H,IAAKyoI,IAE1D3oI,OAAOyF,eAAevL,EAAOmxC,IAAIi2F,aAAc,IAAK,CAAClhI,MAAO,IAE5DJ,OAAOyF,eAAevL,EAAOmxC,IAAIi2F,aAAc,IAAK,CAAClhI,MAAO,IAEvCqlB,EAAO61E,SACvB5vD,SAASy4D,gBAAgB0lC,aAAevgI,OAAOqlB,YAC/C+c,SAASy4D,gBAAgB2lC,cAAgBxgI,OAAOslB,YAQrD,CAKI,IAAIi7G,EAAc,WAEd,OAAOztI,KAAK2C,IAAIuK,OAAOqlB,WAAY+c,SAASy4D,gBAAgB0lC,cAE5DC,EAAe,WAEf,OAAO1tI,KAAK2C,IAAIuK,OAAOslB,YAAa8c,SAASy4D,gBAAgB2lC,eAIjE9pI,OAAOyF,eAAevL,EAAOmxC,IAAI2zF,aAAc,QAAS,CAAC9+H,IAAK2pI,IAE9D7pI,OAAOyF,eAAevL,EAAOmxC,IAAI2zF,aAAc,SAAU,CAAC9+H,IAAK4pI,IAE/D9pI,OAAOyF,eAAevL,EAAOmxC,IAAIi2F,aAAc,QAAS,CAACphI,IAAK2pI,IAE9D7pI,OAAOyF,eAAevL,EAAOmxC,IAAIi2F,aAAc,SAAU,CAACphI,IAAK4pI,SAI/D9pI,OAAOyF,eAAevL,EAAOmxC,IAAI2zF,aAAc,QAAS,CACpD9+H,IAAK,WAED,OAAOoJ,OAAOqlB,cAItB3uB,OAAOyF,eAAevL,EAAOmxC,IAAI2zF,aAAc,SAAU,CACrD9+H,IAAK,WAED,OAAOoJ,OAAOslB,eAItB5uB,OAAOyF,eAAevL,EAAOmxC,IAAIi2F,aAAc,QAAS,CAEpDphI,IAAK,WAED,IAAItE,EAAI8vC,SAASy4D,gBAAgB0lC,YAC7BhuI,EAAIyN,OAAOqlB,WAEf,OAAO/yB,EAAIC,EAAIA,EAAID,KAK3BoE,OAAOyF,eAAevL,EAAOmxC,IAAIi2F,aAAc,SAAU,CAErDphI,IAAK,WAED,IAAItE,EAAI8vC,SAASy4D,gBAAgB2lC,aAC7BjuI,EAAIyN,OAAOslB,YAEf,OAAOhzB,EAAIC,EAAIA,EAAID,KAW/BoE,OAAOyF,eAAevL,EAAOmxC,IAAIq+F,eAAgB,IAAK,CAACtpI,MAAO,IAE9DJ,OAAOyF,eAAevL,EAAOmxC,IAAIq+F,eAAgB,IAAK,CAACtpI,MAAO,IAE9DJ,OAAOyF,eAAevL,EAAOmxC,IAAIq+F,eAAgB,QAAS,CAEtDxpI,IAAK,WAED,IAAInE,EAAI2vC,SAASy4D,gBACjB,OAAO/nG,KAAK2C,IAAIhD,EAAE8tI,YAAa9tI,EAAEguI,YAAahuI,EAAEiuI,gBAKxDhqI,OAAOyF,eAAevL,EAAOmxC,IAAIq+F,eAAgB,SAAU,CAEvDxpI,IAAK,WAED,IAAInE,EAAI2vC,SAASy4D,gBACjB,OAAO/nG,KAAK2C,IAAIhD,EAAE+tI,aAAc/tI,EAAEkuI,aAAcluI,EAAEmuI,kBAI3D,MAAM,GAoBThwI,EAAOw5C,SAAW,SAAU6B,GAOxBp8C,KAAKG,SAAW,EAMhBH,KAAKo8C,KAAOA,GAAQ,IAGxBr7C,EAAOw5C,SAAS14C,UAAY,CAUxBw5B,IAAK,SAAUl0B,GAOX,OALKnH,KAAK+M,OAAO5F,IAEbnH,KAAKo8C,KAAKz0C,KAAKR,GAGZA,GAUX4wC,SAAU,SAAU5wC,GAEhB,OAAOnH,KAAKo8C,KAAKlzC,QAAQ/B,IAY7B6pI,SAAU,SAAU93F,EAAUjyC,GAI1B,IAFA,IAAIhF,EAAIjC,KAAKo8C,KAAKl6C,OAEXD,KAEH,GAAIjC,KAAKo8C,KAAKn6C,GAAGi3C,KAAcjyC,EAE3B,OAAOjH,KAAKo8C,KAAKn6C,GAIzB,OAAO,MAUX8K,OAAQ,SAAU5F,GAEd,OAAmC,EAA3BnH,KAAKo8C,KAAKlzC,QAAQ/B,IAQ9BqhC,MAAO,WAEHxoC,KAAKo8C,KAAKl6C,OAAS,GAUvBmb,OAAQ,SAAUlW,GAEd,IAAI06F,EAAM7hG,KAAKo8C,KAAKlzC,QAAQ/B,GAE5B,IAAW,EAAP06F,EAGA,OADA7hG,KAAKo8C,KAAKzzC,OAAOk5F,EAAK,GACf16F,GAWf0xC,OAAQ,SAAUvlC,EAAKrM,GAInB,IAFA,IAAIhF,EAAIjC,KAAKo8C,KAAKl6C,OAEXD,KAECjC,KAAKo8C,KAAKn6C,KAEVjC,KAAKo8C,KAAKn6C,GAAGqR,GAAOrM,IAehCgzC,QAAS,SAAU3mC,GAMf,IAJA,IAAIqf,EAAOrrB,MAAMzF,UAAUgsB,MAAM9pB,KAAKyuB,UAAW,GAE7CvwB,EAAIjC,KAAKo8C,KAAKl6C,OAEXD,KAECjC,KAAKo8C,KAAKn6C,IAAMjC,KAAKo8C,KAAKn6C,GAAGqR,IAE7BtT,KAAKo8C,KAAKn6C,GAAGqR,GAAKrO,MAAMjF,KAAKo8C,KAAKn6C,GAAI0wB,IAWlD0Z,UAAW,SAAUtqC,QAEDqE,IAAZrE,IAAyBA,GAAU,GAIvC,IAFA,IAAIE,EAAIjC,KAAKo8C,KAAKl6C,OAEXD,KAEH,GAAIjC,KAAKo8C,KAAKn6C,GACd,CACI,IAAIkF,EAAOnH,KAAKqd,OAAOrd,KAAKo8C,KAAKn6C,IAE7BF,GAEAoF,EAAKpF,UAKjB/B,KAAKG,SAAW,EAChBH,KAAKo8C,KAAO,KAWpBv1C,OAAOyF,eAAevL,EAAOw5C,SAAS14C,UAAW,QAAS,CAEtDkF,IAAK,WAED,OAAO/G,KAAKo8C,KAAKl6C,UAWzB2E,OAAOyF,eAAevL,EAAOw5C,SAAS14C,UAAW,QAAS,CAEtDkF,IAAK,WAID,OAFA/G,KAAKG,SAAW,GAEZH,KAAKo8C,KAAKl6C,OAEHlC,KAAKo8C,KAAK,GAIV,QAYnBv1C,OAAOyF,eAAevL,EAAOw5C,SAAS14C,UAAW,OAAQ,CAErDkF,IAAK,WAED,OAAI/G,KAAKG,SAAWH,KAAKo8C,KAAKl6C,QAE1BlC,KAAKG,WAEEH,KAAKo8C,KAAKp8C,KAAKG,WAIf,QAMnBY,EAAOw5C,SAAS14C,UAAUC,YAAcf,EAAOw5C,SAc/Cx5C,EAAOk7C,WAAa,CAchBC,cAAe,SAAUg2D,EAAStrF,EAAY1kB,GAE1C,GAAgB,OAAZgwG,EAAoB,OAAO,UACZ9rG,IAAfwgB,IAA4BA,EAAa,QAC9BxgB,IAAXlE,IAAwBA,EAASgwG,EAAQhwG,QAE7C,IAAI+uI,EAAcrqH,EAAa3jB,KAAKkvB,MAAMlvB,KAAK+xB,SAAW9yB,GAE1D,YAAgCkE,IAAzB8rG,EAAQ++B,GAA6B,KAAO/+B,EAAQ++B,IAe/DC,iBAAkB,SAAUh/B,EAAStrF,EAAY1kB,GAE7C,GAAe,MAAXgwG,EAEA,OAAO,UAGQ9rG,IAAfwgB,IAA4BA,EAAa,QAC9BxgB,IAAXlE,IAAwBA,EAASgwG,EAAQhwG,QAE7C,IAAI+uI,EAAcrqH,EAAa3jB,KAAKkvB,MAAMlvB,KAAK+xB,SAAW9yB,GAC1D,GAAI+uI,EAAc/+B,EAAQhwG,OAC1B,CACI,IAAI2H,EAAUqoG,EAAQvpG,OAAOsoI,EAAa,GAC1C,YAAsB7qI,IAAfyD,EAAQ,GAAmB,KAAOA,EAAQ,GAIjD,OAAO,MAoBfwT,OAAQ,SAAUygB,EAAOlX,EAAYnH,GAEjC,IAAIvd,EAAS47B,EAAM57B,OAEnB,KAAkBA,GAAd0kB,GAAkC,IAAVnH,GAA5B,CAEa,MAATA,IAAiBA,EAAQ,GAI7B,IAFA,IAAI0xH,EAAYjvI,EAASud,EAEhBxd,EAAI2kB,EAAY3kB,EAAIkvI,IAAalvI,EAEtC67B,EAAM77B,GAAK67B,EAAM77B,EAAIwd,GAGzBqe,EAAM57B,OAASivI,IAUnBt0F,QAAS,SAAU/e,GAEf,IAAK,IAAI77B,EAAI67B,EAAM57B,OAAS,EAAO,EAAJD,EAAOA,IACtC,CACI,IAAIyF,EAAIzE,KAAKkvB,MAAMlvB,KAAK+xB,UAAY/yB,EAAI,IACpCuL,EAAOswB,EAAM77B,GACjB67B,EAAM77B,GAAK67B,EAAMp2B,GACjBo2B,EAAMp2B,GAAK8F,EAGf,OAAOswB,GAUXszG,gBAAiB,SAAUtzG,GAOvB,IALA,IAAIuzG,EAAiBvzG,EAAM57B,OACvBovI,EAAiBxzG,EAAM,GAAG57B,OAE1B84B,EAAS,IAAI1zB,MAAMgqI,GAEdrvI,EAAI,EAAGA,EAAIqvI,EAAgBrvI,IACpC,CACI+4B,EAAO/4B,GAAK,IAAIqF,MAAM+pI,GAEtB,IAAK,IAAI3pI,EAAI2pI,EAAiB,GAAQ,EAAL3pI,EAAQA,IAErCszB,EAAO/4B,GAAGyF,GAAKo2B,EAAMp2B,GAAGzF,GAIhC,OAAO+4B,GAaXu2G,aAAc,SAAUhkI,EAAQw5B,GAO5B,GALyB,iBAAdA,IAEPA,GAAcA,EAAY,IAAO,KAAO,KAG1B,KAAdA,IAAmC,MAAfA,GAAoC,eAAdA,EAG1Cx5B,GADAA,EAASxM,EAAOk7C,WAAWm1F,gBAAgB7jI,IAC3BiS,eAEf,IAAmB,KAAfunB,GAAmC,MAAdA,GAAmC,gBAAdA,EAE/Cx5B,EAASA,EAAOiS,UAChBjS,EAASxM,EAAOk7C,WAAWm1F,gBAAgB7jI,QAE1C,GAA4B,MAAxBtK,KAAK81B,IAAIgO,IAAoC,cAAdA,EACxC,CACI,IAAK,IAAI9kC,EAAI,EAAGA,EAAIsL,EAAOrL,OAAQD,IAE/BsL,EAAOtL,GAAGud,UAGdjS,EAASA,EAAOiS,UAGpB,OAAOjS,GAYXikI,YAAa,SAAUvqI,EAAOwqI,GAE1B,IAAKA,EAAIvvI,OAEL,OAAOwvI,IAEN,GAAmB,IAAfD,EAAIvvI,QAAgB+E,EAAQwqI,EAAI,GAErC,OAAOA,EAAI,GAIf,IADA,IAAIxvI,EAAI,EACDwvI,EAAIxvI,GAAKgF,GAEZhF,IAGJ,IAAI0vI,EAAMF,EAAIxvI,EAAI,GACd2vI,EAAQ3vI,EAAIwvI,EAAIvvI,OAAUuvI,EAAIxvI,GAAKggC,OAAO8B,kBAE9C,OAAS6tG,EAAO3qI,GAAWA,EAAQ0qI,EAAQC,EAAOD,GAgBtDE,YAAa,SAAU/zG,GAEnB,IAAIl6B,EAAIk6B,EAAMhc,MAGd,OAFAgc,EAAMiuD,QAAQnoF,GAEPA,GAgBXkuI,WAAY,SAAUh0G,GAElB,IAAIl6B,EAAIk6B,EAAM8yB,QAGd,OAFA9yB,EAAMn2B,KAAK/D,GAEJA,GAsBXmuI,YAAa,SAAU5lI,EAAOmQ,GAEtBA,MAAAA,IAEAA,EAAMnQ,EACNA,EAAQ,GAKZ,IAFA,IAAI6uB,EAAS,GAEJ/4B,EAAIkK,EAAOlK,GAAKqa,EAAKra,IAE1B+4B,EAAOrzB,KAAK1F,GAGhB,OAAO+4B,GAoCXg3G,gBAAiB,SAAU7lI,EAAOmQ,EAAKgmC,GAE/Bn2C,MAAAA,IAAyCA,EAAQ,GAEjDmQ,MAAAA,IAEAA,EAAMnQ,EACNA,EAAQ,QAGC/F,IAATk8C,IAAsBA,EAAO,GAKjC,IAHA,IAAItnB,EAAS,GACTkgB,EAAQj4C,KAAK2C,IAAI7E,EAAOkC,KAAKktG,mBAAmB7zF,EAAMnQ,IAAUm2C,GAAQ,IAAK,GAExErgD,EAAI,EAAGA,EAAIi5C,EAAOj5C,IAEvB+4B,EAAOrzB,KAAKwE,GACZA,GAASm2C,EAGb,OAAOtnB,IAsBfj6B,EAAOkxI,WAAa,WAOhBjyI,KAAK03C,KAAO,KAOZ13C,KAAKs9E,KAAO,KAOZt9E,KAAK0xD,MAAQ,KAOb1xD,KAAK0lF,KAAO,KAOZ1lF,KAAKk7C,MAAQ,GAGjBn6C,EAAOkxI,WAAWpwI,UAAY,CAS1Bw5B,IAAK,SAAUl0B,GAGX,OAAmB,IAAfnH,KAAKk7C,OAA8B,OAAfl7C,KAAK0xD,OAAgC,OAAd1xD,KAAK0lF,MAEhD1lF,KAAK0xD,MAAQvqD,EACbnH,KAAK0lF,KAAOv+E,IACZnH,KAAK03C,KAAOvwC,GACPm2E,KAAOt9E,MACPk7C,WAKTl7C,KAAK0lF,KAAKhuC,KAAOvwC,GAEZm2E,KAAOt9E,KAAK0lF,KAEjB1lF,KAAK0lF,KAAOv+E,EAEZnH,KAAKk7C,SAVM/zC,GAoBfqhC,MAAO,WAEHxoC,KAAK0xD,MAAQ,KACb1xD,KAAK0lF,KAAO,KACZ1lF,KAAK03C,KAAO,KACZ13C,KAAKs9E,KAAO,KACZt9E,KAAKk7C,MAAQ,GASjB79B,OAAQ,SAAUlW,GAEd,GAAmB,IAAfnH,KAAKk7C,MAIL,OAFAl7C,KAAKwoC,aACLrhC,EAAKuwC,KAAOvwC,EAAKm2E,KAAO,MAIxBn2E,IAASnH,KAAK0xD,MAGd1xD,KAAK0xD,MAAQ1xD,KAAK0xD,MAAMha,KAEnBvwC,IAASnH,KAAK0lF,OAGnB1lF,KAAK0lF,KAAO1lF,KAAK0lF,KAAKpI,MAGtBn2E,EAAKm2E,OAGLn2E,EAAKm2E,KAAK5lC,KAAOvwC,EAAKuwC,MAGtBvwC,EAAKuwC,OAGLvwC,EAAKuwC,KAAK4lC,KAAOn2E,EAAKm2E,MAG1Bn2E,EAAKuwC,KAAOvwC,EAAKm2E,KAAO,KAEL,OAAft9E,KAAK0xD,QAEL1xD,KAAK0lF,KAAO,MAGhB1lF,KAAKk7C,SAUTjB,QAAS,SAAU/C,GAEf,GAAKl3C,KAAK0xD,OAAU1xD,KAAK0lF,KAOzB,IAFA,IAAIwsD,EAASlyI,KAAK0xD,MAIVwgF,GAAUA,EAAOh7F,IAEjBg7F,EAAOh7F,GAAUnzC,KAAKmuI,IAG1BA,EAASA,EAAOx6F,QAEF13C,KAAK0lF,KAAKhuC,UAKpC32C,EAAOkxI,WAAWpwI,UAAUC,YAAcf,EAAOkxI,WAmBjDlxI,EAAOk/C,OAAS,SAAU39C,GAKtBtC,KAAKsC,KAAOA,EAKZtC,KAAK+qI,IAAM,KAKX/qI,KAAKgY,OAAS,KAKdhY,KAAKw8E,IAAM,KAKXx8E,KAAKmyI,SAAW,CACZ,CAAEC,EAAG,OAAQvG,EAAG,UAAWC,EAAG,OAAQC,EAAG,UAAWC,EAAG,UAAWqG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWzrE,EAAG,UAAWE,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWx0C,EAAG,WACjN,CAAEu/G,EAAG,OAAQvG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWqG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWzrE,EAAG,UAAWE,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWx0C,EAAG,WACpN,CAAEu/G,EAAG,OAAQvG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWqG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWzrE,EAAG,UAAWE,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWx0C,EAAG,QACpN,CAAEu/G,EAAG,OAAQvG,EAAG,OAAQC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWqG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWzrE,EAAG,UAAWE,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWx0C,EAAG,WACjN,CAAEu/G,EAAG,OAAQvG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWqG,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWzrE,EAAG,UAAWE,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWC,EAAG,UAAWx0C,EAAG,UAS5N9xB,EAAOk/C,OAAOyyF,aAAe,EAO7B3xI,EAAOk/C,OAAO0yF,YAAc,EAO5B5xI,EAAOk/C,OAAO2yF,YAAc,EAO5B7xI,EAAOk/C,OAAO4yF,YAAc,EAO5B9xI,EAAOk/C,OAAO6yF,yBAA2B,EAEzC/xI,EAAOk/C,OAAOp+C,UAAY,CAsCtBiE,QAAS,SAAUwN,EAAKqB,EAAM66G,EAAYC,EAAaC,EAASxrH,EAAiBgzC,EAAUxL,QAEpEtlC,IAAfopH,IAA4BA,EAAa,QACzBppH,IAAhBqpH,IAA6BA,EAAcD,QAC/BppH,IAAZspH,IAAyBA,EAAU,QACftpH,IAApBlC,IAAiCA,GAAkB,GAEvD,IAAIiS,EAAIxB,EAAK,GAAGzS,OAASstH,EACrB/pG,EAAI9Q,EAAKzS,OAASutH,EAGL,OAAbzvH,KAAK+qI,MAEL/qI,KAAK+qI,IAAM/qI,KAAKsC,KAAKqmC,KAAK+vC,aAC1B14E,KAAKgY,OAAShY,KAAK+qI,IAAI/yH,OACvBhY,KAAKw8E,IAAMx8E,KAAK+qI,IAAIp9H,SAGxB3N,KAAK+qI,IAAIhlI,OAAOoQ,EAAGsP,GACnBzlB,KAAK+qI,IAAInvH,QAGT,IAAK,IAAIrY,EAAI,EAAGA,EAAIoR,EAAKzS,OAAQqB,IAI7B,IAFA,IAAIi+G,EAAM7sG,EAAKpR,GAEND,EAAI,EAAGA,EAAIk+G,EAAIt/G,OAAQoB,IAChC,CACI,IAAIV,EAAI4+G,EAAIl+G,GAEF,MAANV,GAAmB,MAANA,IAEb5C,KAAKw8E,IAAIxxD,UAAYhrB,KAAKmyI,SAASziB,GAAS9sH,GAC5C5C,KAAKw8E,IAAIrxD,SAAS7nB,EAAIksH,EAAYjsH,EAAIksH,EAAaD,EAAYC,IAK3E,OAAOvrH,EACHlE,KAAK+qI,IAAI7mI,gBAAgBoP,EAAK4jC,EAAUxL,GACxC1rC,KAAKm2B,QAoBbmkC,KAAM,SAAUhnD,EAAK5O,EAAOC,EAAQ2yC,EAAWC,EAAYpgC,EAAOjT,EAAiBgzC,EAAUxL,QAEjEtlC,IAApBlC,IAAiCA,GAAkB,GAGtC,OAAblE,KAAK+qI,MAEL/qI,KAAK+qI,IAAM/qI,KAAKsC,KAAKqmC,KAAK+vC,aAC1B14E,KAAKgY,OAAShY,KAAK+qI,IAAI/yH,OACvBhY,KAAKw8E,IAAMx8E,KAAK+qI,IAAIp9H,SAGxB3N,KAAK+qI,IAAIhlI,OAAOrB,EAAOC,GAEvB3E,KAAKw8E,IAAIxxD,UAAY7T,EAErB,IAAK,IAAI5T,EAAI,EAAGA,EAAIoB,EAAQpB,GAAKg0C,EAE7Bv3C,KAAKw8E,IAAIrxD,SAAS,EAAG5nB,EAAGmB,EAAO,GAGnC,IAAK,IAAIpB,EAAI,EAAGA,EAAIoB,EAAOpB,GAAKg0C,EAE5Bt3C,KAAKw8E,IAAIrxD,SAAS7nB,EAAG,EAAG,EAAGqB,GAG/B,OAAOT,EACHlE,KAAK+qI,IAAI7mI,gBAAgBoP,EAAK4jC,EAAUxL,GACxC1rC,KAAKm2B,QAebA,KAAM,SAAUuB,EAAMp0B,EAAGC,EAAGmB,EAAOC,EAAQmD,EAAWs8B,GAMlD,OAJY,MAAR1M,IAAgBA,EAAO13B,KAAKsC,KAAKqmC,KAAK+vC,cAE1ChhD,EAAK3xB,OAAO/F,KAAK+qI,IAAIrmI,MAAO1E,KAAK+qI,IAAIpmI,QAE9B+yB,EAAKqmD,KAAK/9E,KAAK+qI,IAAKznI,EAAGC,EAAGmB,EAAOC,EAAQmD,EAAWs8B,KAKnErjC,EAAOk/C,OAAOp+C,UAAUC,YAAcf,EAAOk/C,OAsB7Cl/C,EAAOkkI,SAAW,SAAU3tB,EAAS5yG,EAAOC,GAKxC3E,KAAKsC,KAAOg1G,EAAQh1G,KAKpBtC,KAAKs3G,QAAUA,EAGft3G,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEd3E,KAAK+yI,aAAe,IAAIhyI,EAAOS,UAAU,EAAG,EAAGkD,EAAOC,GACtD3E,KAAKu6D,YAAc,IAAIx5D,EAAOS,UAAU,EAAG,EAAGkD,EAAOC,GACrD3E,KAAKgzI,WAAa,IAAIjyI,EAAOS,UAAU,EAAG,EAAGkD,EAAOC,GACpD3E,KAAKizI,WAAa,IAAIlyI,EAAOS,UAAU,EAAG,EAAGkD,EAAOC,GAMpD3E,KAAKkzI,eAAiB,IAAInyI,EAAOX,MAAM,EAAG,GAC1CJ,KAAKmzI,cAAgB,IAAIpyI,EAAOX,MAAM,EAAG,GACzCJ,KAAKozI,aAAe,IAAIryI,EAAOX,MAAM,EAAG,GACxCJ,KAAKqzI,aAAe,IAAItyI,EAAOX,MAAM,EAAG,GAMxCJ,KAAKszI,YAAc,IAAIvyI,EAAOX,MAAM,EAAG,GACvCJ,KAAKuzI,WAAa,IAAIxyI,EAAOX,MAAM,EAAG,GACtCJ,KAAKw6D,mBAAqB,IAAIz5D,EAAOX,MAAM,EAAG,GAC9CJ,KAAKwzI,UAAY,IAAIzyI,EAAOX,MAAM,EAAG,GACrCJ,KAAKyzI,UAAY,IAAI1yI,EAAOX,MAAM,EAAG,GAErCJ,KAAK0zI,YAAc,EACnB1zI,KAAK2zI,aAAe,EACpB3zI,KAAK4zI,cAAgB,EACrB5zI,KAAK6zI,cAAgB,EAErB7zI,KAAK8zI,OAASpvI,EAAQC,EACtB3E,KAAK+zI,OAASpvI,EAASD,EAEvB1E,KAAKspI,WAAa,EAElBtpI,KAAKqiH,OAAS,IAGlBthH,EAAOkkI,SAASpjI,UAAY,CASxB0mC,QAAS,SAAU7jC,EAAOC,GAGtB3E,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEd3E,KAAK8zI,OAASpvI,EAAQC,EACtB3E,KAAK+zI,OAASpvI,EAASD,EAEvB1E,KAAKyzI,UAAY,IAAI1yI,EAAOX,MAAM,EAAG,GAErCJ,KAAKizI,WAAWvuI,MAAQ1E,KAAK0E,MAC7B1E,KAAKizI,WAAWtuI,OAAS3E,KAAK2E,OAE9B3E,KAAK6rB,WAcTmoH,kBAAmB,SAAUtvI,EAAOC,EAAQ3C,EAAU2uC,QAE/BvqC,IAAfuqC,IAA4BA,GAAa,GAE7C3wC,KAAK0zI,YAAchvI,EACnB1E,KAAK2zI,aAAehvI,EAEpB3E,KAAK+yI,aAAaruI,MAAQA,EAC1B1E,KAAK+yI,aAAapuI,OAASA,EAE3B,IAAIsvI,EAAQ,IAAIlzI,EAAOmzI,UAAUl0I,KAAMA,KAAKkzI,eAAgBlzI,KAAK+yI,aAAc/yI,KAAKszI,aAcpF,OAZI3iG,GAEA3wC,KAAKsC,KAAKE,MAAM64B,IAAI44G,GAGxBj0I,KAAKqiH,OAAO16G,KAAKssI,GAEbjyI,GAEAiyI,EAAMp9F,YAAY70C,GAGfiyI,GAUXE,iBAAkB,SAAUnyI,EAAU2uC,QAEfvqC,IAAfuqC,IAA4BA,GAAa,GAE7C,IAAIsjG,EAAQ,IAAIlzI,EAAOmzI,UAAUl0I,KAAMA,KAAKmzI,cAAenzI,KAAKu6D,YAAav6D,KAAKuzI,YAclF,OAZI5iG,GAEA3wC,KAAKsC,KAAKE,MAAM64B,IAAI44G,GAGxBj0I,KAAKqiH,OAAO16G,KAAKssI,GAEbjyI,GAEAiyI,EAAMp9F,YAAY70C,GAGfiyI,GAUXG,gBAAiB,SAAUpyI,GAEvB,IAAIiyI,EAAQ,IAAIlzI,EAAOmzI,UAAUl0I,KAAMA,KAAKozI,aAAcpzI,KAAKgzI,WAAYhzI,KAAKuzI,YAWhF,OATAvzI,KAAKsC,KAAKE,MAAM64B,IAAI44G,GAEpBj0I,KAAKqiH,OAAO16G,KAAKssI,QAEO,IAAbjyI,GAEPiyI,EAAMp9F,YAAY70C,GAGfiyI,GAUXI,iBAAkB,SAAUryI,GAExB,IAAIiyI,EAAQ,IAAIlzI,EAAOmzI,UAAUl0I,KAAMA,KAAKqzI,aAAcrzI,KAAKizI,WAAYjzI,KAAKyzI,WAWhF,OATAzzI,KAAKsC,KAAKE,MAAM64B,IAAI44G,GAEpBj0I,KAAKqiH,OAAO16G,KAAKssI,QAEO,IAAbjyI,GAEPiyI,EAAMp9F,YAAY70C,GAGfiyI,GAQXzrG,MAAO,WAIH,IAFA,IAAIvmC,EAAIjC,KAAKqiH,OAAOngH,OAEbD,KAEEjC,KAAKqiH,OAAOpgH,GAAGqyI,UAGhBt0I,KAAKqiH,OAAOpgH,GAAG9B,SAAW,KAC1BH,KAAKqiH,OAAOpgH,GAAG5B,MAAQ,KACvBL,KAAKqiH,OAAOx0F,MAAM5rB,EAAG,KAYjCghI,SAAU,SAAUv+H,EAAOC,GAEvB3E,KAAK8zI,OAASpvI,EAAQC,EACtB3E,KAAK+zI,OAASpvI,EAASD,EAEvB1E,KAAK6rB,QAAQnnB,EAAOC,IAQxBknB,QAAS,WAEL7rB,KAAKspI,WAAarmI,KAAKy4B,IAAK17B,KAAKs3G,QAAQ3yG,OAAS3E,KAAK2E,OAAU3E,KAAKs3G,QAAQ5yG,MAAQ1E,KAAK0E,OAE3F1E,KAAKu6D,YAAY71D,MAAQzB,KAAK20B,MAAM53B,KAAK0E,MAAQ1E,KAAKspI,YACtDtpI,KAAKu6D,YAAY51D,OAAS1B,KAAK20B,MAAM53B,KAAK2E,OAAS3E,KAAKspI,YAExDtpI,KAAKuzI,WAAWvsI,IAAIhH,KAAKu6D,YAAY71D,MAAQ1E,KAAK0E,MAAO1E,KAAKu6D,YAAY51D,OAAS3E,KAAK2E,QACxF3E,KAAKw6D,mBAAmBxzD,IAAIhH,KAAK0E,MAAQ1E,KAAKu6D,YAAY71D,MAAO1E,KAAK2E,OAAS3E,KAAKu6D,YAAY51D,QAEhG3E,KAAKwzI,UAAUxsI,IAAIhH,KAAKgzI,WAAWtuI,MAAQ1E,KAAK0E,MAAO1E,KAAKgzI,WAAWruI,OAAS3E,KAAK2E,QAErF3E,KAAKgzI,WAAWtuI,MAAQzB,KAAK20B,MAAM53B,KAAKs3G,QAAQ5yG,MAAQ1E,KAAKw6D,mBAAmBl3D,GAChFtD,KAAKgzI,WAAWruI,OAAS1B,KAAK20B,MAAM53B,KAAKs3G,QAAQ3yG,OAAS3E,KAAKw6D,mBAAmBj3D,GAElFvD,KAAKu6D,YAAYn/B,SAASp7B,KAAKs3G,QAAQhzG,OAAO21B,QAASj6B,KAAKs3G,QAAQhzG,OAAO41B,SAC3El6B,KAAKizI,WAAW73G,SAASp7B,KAAKs3G,QAAQhzG,OAAO21B,QAASj6B,KAAKs3G,QAAQhzG,OAAO41B,SAE1El6B,KAAKmzI,cAAcnsI,IAAIhH,KAAKu6D,YAAYj3D,EAAGtD,KAAKu6D,YAAYh3D,GAC5DvD,KAAKqzI,aAAarsI,IAAIhH,KAAKizI,WAAW3vI,EAAGtD,KAAKizI,WAAW1vI,IAS7DgxI,UAAW,SAAU/vH,GAEjBxkB,KAAKs3G,QAAQ8yB,YAAY5lH,GAEzBA,EAAOlhB,EAAItD,KAAKs3G,QAAQhzG,OAAO21B,QAC/BzV,EAAOjhB,EAAIvD,KAAKs3G,QAAQhzG,OAAO41B,SAQnCoS,MAAO,WAcHtsC,KAAKsC,KAAKgqC,MAAMqqC,KAAK32E,KAAKu6D,YAAY71D,MAAQ,MAAQ1E,KAAKu6D,YAAY51D,OAAQ3E,KAAKu6D,YAAYj3D,EAAI,EAAGtD,KAAKu6D,YAAYh3D,EAAI,IAC5HvD,KAAKsC,KAAKgqC,MAAMggG,KAAKtsI,KAAKu6D,YAAa,oBAAoB,KAenEx5D,EAAOkkI,SAASpjI,UAAUC,YAAcf,EAAOkkI,SAuB/ClkI,EAAOmzI,UAAY,SAAU58B,EAASn3G,EAAUmE,EAAQjE,GAEpDU,EAAOyzC,MAAMzwC,KAAK/D,KAAMs3G,EAAQh1G,KAAM,KAAM,cAAgBg1G,EAAQh1G,KAAKwlC,IAAIwwC,QAAQ,GAKrFt4E,KAAKs3G,QAAUA,EAAQA,QAKvBt3G,KAAKs6D,KAAOg9C,EAOZt3G,KAAKs0I,SAAU,EAKft0I,KAAKG,SAAWA,EAKhBH,KAAKsE,OAASA,EAKdtE,KAAKK,MAAQA,EAKbL,KAAKw0I,QAAUlwI,EAAOkwI,QAKtBx0I,KAAKy0I,UAAY,IAAI1zI,EAAOX,MAAMkE,EAAO00B,UAAW,GAKpDh5B,KAAK00I,SAAWpwI,EAAOowI,SAKvB10I,KAAK20I,WAAarwI,EAAOqwI,WAKzB30I,KAAK40I,aAAe,IAAI7zI,EAAOX,MAAMkE,EAAO00B,UAAW10B,EAAOo0B,QAK9D14B,KAAK60I,YAAcvwI,EAAOuwI,aAG9B9zI,EAAOmzI,UAAUryI,UAAYgF,OAAOwB,OAAOtH,EAAOyzC,MAAM3yC,WACxDd,EAAOmzI,UAAUryI,UAAUC,YAAcf,EAAOmzI,UAOhDnzI,EAAOmzI,UAAUryI,UAAUkE,OAAS,aASpChF,EAAOmzI,UAAUryI,UAAUyqC,MAAQ,WAE/BtsC,KAAKsC,KAAKgqC,MAAMqqC,KAAK32E,KAAKsE,OAAOI,MAAQ,MAAQ1E,KAAKsE,OAAOK,OAAQ3E,KAAKsE,OAAOhB,EAAI,EAAGtD,KAAKsE,OAAOf,EAAI,IACxGvD,KAAKsC,KAAKgqC,MAAMggG,KAAKtsI,KAAKsE,OAAQ,oBAAoB,GAEtDtE,KAAKsC,KAAKgqC,MAAMggG,KAAKtsI,KAAKw0I,QAAS,wBACnCx0I,KAAKsC,KAAKgqC,MAAMggG,KAAKtsI,KAAKy0I,UAAW,wBACrCz0I,KAAKsC,KAAKgqC,MAAMggG,KAAKtsI,KAAK00I,SAAU,yBAcxC3zI,EAAOsgB,MAAQ,CASXyzH,IAAK,SASLC,OAAQ,SASRC,OAAQ,SASRC,MAAO,MASPC,KAAM,MASNC,KAAM,IASNC,OAAQ,SASRC,MAAO,SASPC,MAAO,EASPC,KAAM,QAeNl2D,UAAW,SAAU57E,EAAGkY,EAAGjZ,EAAGD,GAE1B,OAAI1B,EAAO68C,OAAOoiC,eAELv9E,GAAK,GAAOC,GAAK,GAAOiZ,GAAK,EAAKlY,KAAO,GAIzCA,GAAK,GAAOkY,GAAK,GAAOjZ,GAAK,EAAKD,KAAO,GAuB1Dk8E,YAAa,SAAUxyD,EAAMiL,EAAKgpD,EAAKC,GAkCnC,OAhCIjpD,MAAAA,IAAqCA,EAAMr2B,EAAOsgB,MAAMq9D,eACxD0B,MAAAA,IAAqCA,GAAM,GAC3CC,MAAAA,IAAqCA,GAAM,GAE3Ct/E,EAAO68C,OAAOoiC,eAEd5oD,EAAI30B,GAAa,WAAP0pB,KAAuB,GACjCiL,EAAI10B,GAAa,SAAPypB,KAAuB,GACjCiL,EAAIzb,GAAa,MAAPwQ,KAAuB,EACjCiL,EAAI3zB,EAAa,IAAP0oB,IAIViL,EAAI3zB,GAAa,WAAP0oB,KAAuB,GACjCiL,EAAIzb,GAAa,SAAPwQ,KAAuB,GACjCiL,EAAI10B,GAAa,MAAPypB,KAAuB,EACjCiL,EAAI30B,EAAa,IAAP0pB,GAGdiL,EAAIjgB,MAAQgV,EACZiL,EAAIjL,KAAO,QAAUiL,EAAI3zB,EAAI,IAAM2zB,EAAIzb,EAAI,IAAMyb,EAAI10B,EAAI,IAAO00B,EAAI30B,EAAI,IAAO,IAE3E29E,GAEAr/E,EAAOsgB,MAAMm0H,SAASp+G,EAAI3zB,EAAG2zB,EAAIzb,EAAGyb,EAAI10B,EAAG00B,GAG3CipD,GAEAt/E,EAAOsgB,MAAMo0H,SAASr+G,EAAI3zB,EAAG2zB,EAAIzb,EAAGyb,EAAI10B,EAAG00B,GAGxCA,GAcXs+G,SAAU,SAAUvpH,EAAMiL,GActB,OAZKA,IAEDA,EAAMr2B,EAAOsgB,MAAMq9D,eAGvBtnD,EAAI3zB,GAAa,WAAP0oB,KAAuB,GACjCiL,EAAIzb,GAAa,SAAPwQ,KAAuB,GACjCiL,EAAI10B,GAAa,MAAPypB,KAAuB,EACjCiL,EAAI30B,EAAa,IAAP0pB,EAEViL,EAAIjL,KAAO,QAAUiL,EAAI3zB,EAAI,IAAM2zB,EAAIzb,EAAI,IAAMyb,EAAI10B,EAAI,IAAM00B,EAAI30B,EAAI,IAEhE20B,GAeXu+G,OAAQ,SAAUlyI,EAAGkY,EAAGjZ,EAAGD,GAEvB,OAAQgB,GAAK,GAAOkY,GAAK,GAAOjZ,GAAK,EAAKD,GAc9CmzI,OAAQ,SAAUnyI,EAAGkY,EAAGjZ,EAAGD,GAEvB,OAASA,GAAK,GAAOC,GAAK,GAAOiZ,GAAK,EAAKlY,KAAO,GAWtD6d,cAAe,SAAUnK,GAErB,MAAO,EACFA,GAAS,GAAK,KAAQ,KACtBA,GAAS,EAAI,KAAQ,KACb,IAARA,GAAgB,MAYzB0+H,cAAe,SAAUC,GAErB,OAAkB,IAATA,EAAI,IAAY,KAAgB,IAATA,EAAI,IAAY,GAAc,IAATA,EAAI,IAiB7DN,SAAU,SAAU/xI,EAAGkY,EAAGjZ,EAAG00B,GAEpBA,IAEDA,EAAMr2B,EAAOsgB,MAAMq9D,YAAYj7E,EAAGkY,EAAGjZ,EAAG,IAG5Ce,GAAK,IACLkY,GAAK,IACLjZ,GAAK,IAEL,IAAIg5B,EAAMz4B,KAAKy4B,IAAIj4B,EAAGkY,EAAGjZ,GACrBkD,EAAM3C,KAAK2C,IAAInC,EAAGkY,EAAGjZ,GAOzB,GAJA00B,EAAI3R,EAAI,EACR2R,EAAIxzB,EAAI,EACRwzB,EAAIiC,GAAKzzB,EAAM81B,GAAO,EAElB91B,IAAQ81B,EACZ,CACI,IAAI94B,EAAIgD,EAAM81B,EAEdtE,EAAIxzB,EAAY,GAARwzB,EAAIiC,EAAUz2B,GAAK,EAAIgD,EAAM81B,GAAO94B,GAAKgD,EAAM81B,GAEnD91B,IAAQnC,EAER2zB,EAAI3R,GAAK9J,EAAIjZ,GAAKE,GAAK+Y,EAAIjZ,EAAI,EAAI,GAE9BkD,IAAQ+V,EAEbyb,EAAI3R,GAAK/iB,EAAIe,GAAKb,EAAI,EAEjBgD,IAAQlD,IAEb00B,EAAI3R,GAAKhiB,EAAIkY,GAAK/Y,EAAI,GAG1Bw0B,EAAI3R,GAAK,EAGb,OAAO2R,GAiBXsoD,SAAU,SAAUj6D,EAAG7hB,EAAGy1B,EAAGjC,GAczB,GAZKA,GAODA,EAAI3zB,EAAI41B,EACRjC,EAAIzb,EAAI0d,EACRjC,EAAI10B,EAAI22B,GAPRjC,EAAMr2B,EAAOsgB,MAAMq9D,YAAYrlD,EAAGA,EAAGA,GAU/B,IAANz1B,EACJ,CACI,IAAIqkF,EAAI5uD,EAAI,GAAMA,GAAK,EAAIz1B,GAAKy1B,EAAIz1B,EAAIy1B,EAAIz1B,EACxCrB,EAAI,EAAI82B,EAAI4uD,EAChB7wD,EAAI3zB,EAAI1C,EAAOsgB,MAAM00H,WAAWxzI,EAAG0lF,EAAGxiE,EAAI,EAAI,GAC9C2R,EAAIzb,EAAI5a,EAAOsgB,MAAM00H,WAAWxzI,EAAG0lF,EAAGxiE,GACtC2R,EAAI10B,EAAI3B,EAAOsgB,MAAM00H,WAAWxzI,EAAG0lF,EAAGxiE,EAAI,EAAI,GAelD,OANA2R,EAAI3zB,EAAIR,KAAKkvB,MAAe,IAARiF,EAAI3zB,EAAU,GAClC2zB,EAAIzb,EAAI1Y,KAAKkvB,MAAe,IAARiF,EAAIzb,EAAU,GAClCyb,EAAI10B,EAAIO,KAAKkvB,MAAe,IAARiF,EAAI10B,EAAU,GAElC3B,EAAOsgB,MAAM6yB,YAAY9c,GAElBA,GAiBXq+G,SAAU,SAAUhyI,EAAGkY,EAAGjZ,EAAG00B,GAEpBA,IAEDA,EAAMr2B,EAAOsgB,MAAMq9D,YAAYj7E,EAAGkY,EAAGjZ,EAAG,MAG5Ce,GAAK,IACLkY,GAAK,IACLjZ,GAAK,IAEL,IAAIg5B,EAAMz4B,KAAKy4B,IAAIj4B,EAAGkY,EAAGjZ,GACrBkD,EAAM3C,KAAK2C,IAAInC,EAAGkY,EAAGjZ,GACrBE,EAAIgD,EAAM81B,EAyBd,OAtBAtE,EAAI3R,EAAI,EACR2R,EAAIxzB,EAAY,IAARgC,EAAY,EAAIhD,EAAIgD,GAC5BwxB,EAAI0pB,EAAIl7C,KAEI81B,IAEJ91B,IAAQnC,EAER2zB,EAAI3R,GAAK9J,EAAIjZ,GAAKE,GAAK+Y,EAAIjZ,EAAI,EAAI,GAE9BkD,IAAQ+V,EAEbyb,EAAI3R,GAAK/iB,EAAIe,GAAKb,EAAI,EAEjBgD,IAAQlD,IAEb00B,EAAI3R,GAAKhiB,EAAIkY,GAAK/Y,EAAI,GAG1Bw0B,EAAI3R,GAAK,GAGN2R,GAiBX4+G,SAAU,SAAUvwH,EAAG7hB,EAAGk9C,EAAG1pB,GAIzB,IAAI3zB,EAAGkY,EAAGjZ,OAFE0D,IAARgxB,IAAqBA,EAAMr2B,EAAOsgB,MAAMq9D,YAAY,EAAG,EAAG,EAAG,EAAGj5D,EAAG7hB,EAAG,EAAGk9C,IAG7E,IAAI7+C,EAAIgB,KAAKkvB,MAAU,EAAJ1M,GACf6P,EAAQ,EAAJ7P,EAAQxjB,EACZM,EAAIu+C,GAAK,EAAIl9C,GACbqkF,EAAInnC,GAAK,EAAIxrB,EAAI1xB,GACjBsvB,EAAI4tB,GAAK,GAAK,EAAIxrB,GAAK1xB,GAE3B,OAAQ3B,EAAI,GAER,KAAK,EACDwB,EAAIq9C,EACJnlC,EAAIuX,EACJxwB,EAAIH,EACJ,MACJ,KAAK,EACDkB,EAAIwkF,EACJtsE,EAAImlC,EACJp+C,EAAIH,EACJ,MACJ,KAAK,EACDkB,EAAIlB,EACJoZ,EAAImlC,EACJp+C,EAAIwwB,EACJ,MACJ,KAAK,EACDzvB,EAAIlB,EACJoZ,EAAIssE,EACJvlF,EAAIo+C,EACJ,MACJ,KAAK,EACDr9C,EAAIyvB,EACJvX,EAAIpZ,EACJG,EAAIo+C,EACJ,MACJ,KAAK,EACDr9C,EAAIq9C,EACJnlC,EAAIpZ,EACJG,EAAIulF,EAUZ,OANA7wD,EAAI3zB,EAAIR,KAAKkvB,MAAU,IAAJ1uB,GACnB2zB,EAAIzb,EAAI1Y,KAAKkvB,MAAU,IAAJxW,GACnByb,EAAI10B,EAAIO,KAAKkvB,MAAU,IAAJzvB,GAEnB3B,EAAOsgB,MAAM6yB,YAAY9c,GAElBA,GAcX2+G,WAAY,SAAUxzI,EAAG0lF,EAAG/0D,GAYxB,OAVIA,EAAI,IAEJA,GAAK,GAGD,EAAJA,IAEAA,GAAK,GAGLA,EAAI,EAAI,EAED3wB,EAAc,GAAT0lF,EAAI1lF,GAAS2wB,EAGzBA,EAAI,GAEG+0D,EAGP/0D,EAAI,EAAI,EAED3wB,GAAK0lF,EAAI1lF,IAAM,EAAI,EAAI2wB,GAAK,EAGhC3wB,GAsBXm8E,YAAa,SAAUj7E,EAAGkY,EAAGjZ,EAAGD,EAAGgjB,EAAG7hB,EAAGy1B,EAAGynB,GAExC,IAAI1pB,EAAM,CAAE3zB,EAAGA,GAAK,EAAGkY,EAAGA,GAAK,EAAGjZ,EAAGA,GAAK,EAAGD,EAAGA,GAAK,EAAGgjB,EAAGA,GAAK,EAAG7hB,EAAGA,GAAK,EAAGy1B,EAAGA,GAAK,EAAGynB,EAAGA,GAAK,EAAG3pC,MAAO,EAAG8+H,QAAS,EAAG9pH,KAAM,IAEhI,OAAOprB,EAAOsgB,MAAM6yB,YAAY9c,IAWpC8c,YAAa,SAAU9c,GAMnB,OAJAA,EAAIjL,KAAO,QAAUiL,EAAI3zB,EAAEgtC,UAAY,IAAMrZ,EAAIzb,EAAE80B,UAAY,IAAMrZ,EAAI10B,EAAE+tC,UAAY,IAAMrZ,EAAI30B,EAAEwoB,WAAa,IAChHmM,EAAIjgB,MAAQpW,EAAOsgB,MAAM60H,SAAS9+G,EAAI3zB,EAAG2zB,EAAIzb,EAAGyb,EAAI10B,GACpD00B,EAAI6+G,QAAUl1I,EAAOsgB,MAAM80H,WAAmB,IAAR/+G,EAAI30B,EAAS20B,EAAI3zB,EAAG2zB,EAAIzb,EAAGyb,EAAI10B,GAE9D00B,GAcX++G,WAAY,SAAU1zI,EAAGgB,EAAGkY,EAAGjZ,GAE3B,OAAOD,GAAK,GAAKgB,GAAK,GAAKkY,GAAK,EAAIjZ,GAaxCwzI,SAAU,SAAUzyI,EAAGkY,EAAGjZ,GAEtB,OAAOe,GAAK,GAAKkY,GAAK,EAAIjZ,GAgB9B0zI,YAAa,SAAU3yI,EAAGkY,EAAGjZ,EAAGD,EAAG0pG,GAK/B,YAHU/lG,IAAN3D,IAAmBA,EAAI,UACZ2D,IAAX+lG,IAAwBA,EAAS,KAEtB,MAAXA,EAEO,MAAQ,GAAK,KAAO1oG,GAAK,KAAOkY,GAAK,GAAKjZ,GAAGuoB,SAAS,IAAI4C,MAAM,GAIhE,KAAO9sB,EAAOsgB,MAAMg1H,eAAe5zI,GAAK1B,EAAOsgB,MAAMg1H,eAAe5yI,GAAK1C,EAAOsgB,MAAMg1H,eAAe16H,GAAK5a,EAAOsgB,MAAMg1H,eAAe3zI,IAYrJ4zI,SAAU,SAAUC,GAEhB,IAAIT,EAAM/0I,EAAOsgB,MAAMm1H,WAAWD,GAElC,GAAIT,EAEA,OAAO/0I,EAAOsgB,MAAM80H,WAAWL,EAAIrzI,EAAGqzI,EAAIryI,EAAGqyI,EAAIn6H,EAAGm6H,EAAIpzI,IAiBhE8zI,WAAY,SAAUD,EAAKn/G,GAGvBm/G,EAAMA,EAAI9/G,QAAQ,0CAA2C,SAAU+C,EAAG/1B,EAAGkY,EAAGjZ,GAE5E,OAAOe,EAAIA,EAAIkY,EAAIA,EAAIjZ,EAAIA,IAG/B,IAAIs4B,EAAS,mDAAqDk9D,KAAKq+C,GAEvE,GAAIv7G,EACJ,CACI,IAAIv3B,EAAI8xB,SAASyF,EAAO,GAAI,IACxBrf,EAAI4Z,SAASyF,EAAO,GAAI,IACxBt4B,EAAI6yB,SAASyF,EAAO,GAAI,IAEvB5D,GAMDA,EAAI3zB,EAAIA,EACR2zB,EAAIzb,EAAIA,EACRyb,EAAI10B,EAAIA,GANR00B,EAAMr2B,EAAOsgB,MAAMq9D,YAAYj7E,EAAGkY,EAAGjZ,GAU7C,OAAO00B,GAcXq/G,WAAY,SAAUC,EAAKt/G,GAElBA,IAEDA,EAAMr2B,EAAOsgB,MAAMq9D,eAGvB,IAAI1jD,EAAS,4EAA8Ek9D,KAAKw+C,GAWhG,OATI17G,IAEA5D,EAAI3zB,IAAMw+B,OAAOjH,EAAO,IACxB5D,EAAIzb,IAAMsmB,OAAOjH,EAAO,IACxB5D,EAAI10B,IAAMu/B,OAAOjH,EAAO,IACxB5D,EAAI30B,OAAkB2D,IAAd40B,EAAO,GAAmBiH,OAAOjH,EAAO,IAAM,EACtDj6B,EAAOsgB,MAAM6yB,YAAY9c,IAGtBA,GAgBX6c,aAAc,SAAUhtC,EAAOmwB,GAW3B,GALKA,IAEDA,EAAMr2B,EAAOsgB,MAAMq9D,eAGF,iBAAVz3E,EAEP,OAA6B,IAAzBA,EAAMiC,QAAQ,OAEPnI,EAAOsgB,MAAMo1H,WAAWxvI,EAAOmwB,IAKtCA,EAAI30B,EAAI,EACD1B,EAAOsgB,MAAMm1H,WAAWvvI,EAAOmwB,IAGzC,GAAqB,iBAAVnwB,EAeZ,OAAOmwB,EATP,IAAIu/G,EAAY51I,EAAOsgB,MAAMu1H,OAAO3vI,GAKpC,OAJAmwB,EAAI3zB,EAAIkzI,EAAUlzI,EAClB2zB,EAAIzb,EAAIg7H,EAAUh7H,EAClByb,EAAI10B,EAAIi0I,EAAUj0I,EAClB00B,EAAI30B,EAAIk0I,EAAUl0I,EAAI,IACf20B,GAgBfi/G,eAAgB,SAAUl/H,GAEtB,IAAIo/H,EAAMp/H,EAAM8T,SAAS,IAEzB,OAAuB,IAAfsrH,EAAIr0I,OAAgB,IAAMq0I,EAAMA,GAY5CM,cAAe,SAAUjzI,EAAGk9C,QAEd16C,IAANxC,IAAmBA,EAAI,QACjBwC,IAAN06C,IAAmBA,EAAI,GAI3B,IAFA,IAAIt9B,EAAS,GAEJ7gB,EAAI,EAAGA,GAAK,IAAKA,IAEtB6gB,EAAO7b,KAAK5G,EAAOsgB,MAAM20H,SAASrzI,EAAI,IAAKiB,EAAGk9C,IAGlD,OAAOt9B,GAYXszH,cAAe,SAAUlzI,EAAGy1B,QAEdjzB,IAANxC,IAAmBA,EAAI,SACjBwC,IAANizB,IAAmBA,EAAI,IAI3B,IAFA,IAAI7V,EAAS,GAEJ7gB,EAAI,EAAGA,GAAK,IAAKA,IAEtB6gB,EAAO7b,KAAK5G,EAAOsgB,MAAMq+D,SAAS/8E,EAAI,IAAKiB,EAAGy1B,IAGlD,OAAO7V,GAgBXuzH,iBAAkB,SAAUC,EAAQC,EAAQ/+G,EAAOg/G,EAAa12I,EAAO42H,QAErDhxH,IAAV5F,IAAuBA,EAAQ,UAChB4F,IAAfgxH,IAA4BA,EAAa,GAE7C,IAAI+f,EAAOp2I,EAAOsgB,MAAMu1H,OAAOI,GAC3BI,EAAOr2I,EAAOsgB,MAAMu1H,OAAOK,GAE/B,GAAmB,IAAf7f,EAEA,IAAI3zH,GAAO2zI,EAAKx3D,IAAMu3D,EAAKv3D,KAAOs3D,EAAeh/G,EAASi/G,EAAKv3D,IAC3DjkE,GAAOy7H,EAAKv3D,MAAQs3D,EAAKt3D,OAASq3D,EAAeh/G,EAASi/G,EAAKt3D,MAC/Dn9E,GAAO00I,EAAKt3D,KAAOq3D,EAAKr3D,MAAQo3D,EAAeh/G,EAASi/G,EAAKr3D,KAGrE,GAAmB,IAAfs3C,EACJ,CACI,IAGI3xG,EAHA4xH,EAAOt2I,EAAOsgB,MAAMo0H,SAAS0B,EAAK1zI,EAAG0zI,EAAKx7H,EAAGw7H,EAAKz0I,GAClD40I,EAAOv2I,EAAOsgB,MAAMo0H,SAAS2B,EAAK3zI,EAAG2zI,EAAKz7H,EAAGy7H,EAAK10I,GAClD60I,EAAKD,EAAK7xH,EAAI4xH,EAAK5xH,EAGvB,GAAI4xH,EAAK5xH,EAAI6xH,EAAK7xH,EAClB,CACI,IAAI+xH,EAAKF,EAAK7xH,EACd6xH,EAAK7xH,EAAI4xH,EAAK5xH,EACd4xH,EAAK5xH,EAAI+xH,EACTD,GAAMA,EACNL,EAAch/G,EAAQg/G,EAGjB,GAALK,IAEAF,EAAK5xH,EAAI4xH,EAAK5xH,EAAI,EAClBA,IAAO6xH,EAAK7xH,EAAI4xH,EAAK5xH,GAAKyxH,EAAch/G,EAASm/G,EAAK5xH,GAAK,GAG3D8xH,GAAM,KAEN9xH,GAAM6xH,EAAK7xH,EAAI4xH,EAAK5xH,GAAKyxH,EAAch/G,EAASm/G,EAAK5xH,GAGzD,IAAI7hB,GAAO0zI,EAAK1zI,EAAIyzI,EAAKzzI,GAAKszI,EAAeh/G,EAASm/G,EAAKzzI,EACvDk9C,GAAOw2F,EAAKx2F,EAAIu2F,EAAKv2F,GAAKo2F,EAAeh/G,EAASm/G,EAAKv2F,EAEvDg1F,EAAM/0I,EAAOsgB,MAAM20H,SAASvwH,EAAG7hB,EAAGk9C,EAAGg1F,GACrCryI,EAAIqyI,EAAIryI,EACRkY,EAAIm6H,EAAIn6H,EACRjZ,EAAIozI,EAAIpzI,EAGhB,OAAO3B,EAAOsgB,MAAM80H,WAAW31I,EAAOiD,EAAGkY,EAAGjZ,IAgBhD+0I,wBAAyB,SAAUtgI,EAAO1T,EAAGkY,EAAGjZ,EAAGw1B,EAAOg/G,GAEtD,IAAItnI,EAAM7O,EAAOsgB,MAAMu1H,OAAOz/H,GAC1BugI,GAAQj0I,EAAImM,EAAIgwE,KAAOs3D,EAAeh/G,EAAStoB,EAAIgwE,IACnD+3D,GAAQh8H,EAAI/L,EAAIiwE,OAASq3D,EAAeh/G,EAAStoB,EAAIiwE,MACrD+3D,GAAQl1I,EAAIkN,EAAIkwE,MAAQo3D,EAAeh/G,EAAStoB,EAAIkwE,KAExD,OAAO/+E,EAAOsgB,MAAM60H,SAASwB,EAAIC,EAAIC,IAiBzCC,eAAgB,SAAU74D,EAAIC,EAAIziD,EAAI0iD,EAAIC,EAAI1iD,EAAIvE,EAAOg/G,GAErD,IAAIzzI,GAAOy7E,EAAKF,GAAMk4D,EAAeh/G,EAAS8mD,EAC1CrjE,GAAOwjE,EAAKF,GAAMi4D,EAAeh/G,EAAS+mD,EAC1Cv8E,GAAO+5B,EAAKD,GAAM06G,EAAeh/G,EAASsE,EAE9C,OAAOz7B,EAAOsgB,MAAM60H,SAASzyI,EAAGkY,EAAGjZ,IAgBvC21B,OAAQ,SAAU2+G,EAAQC,EAAQ/jH,GAE9B,OAAOlzB,KAAK+2I,iBAAiBC,EAAQC,EAAQ,EAAG/jH,IAepDy8E,oBAAqB,SAAUnsF,EAAQ0P,GAEnC,IAAIqG,EAAIx4B,EAAOkC,KAAKo1B,OAAO,EAAG7U,EAAOthB,OAAS,EAAGgxB,GAC7C8jH,EAASxzH,EAAOvgB,KAAKkvB,MAAMoH,IAC3B09G,EAASzzH,EAAOvgB,KAAK4C,KAAK0zB,IAE9B,OAAOv5B,KAAKq4B,OAAO2+G,EAAQC,EAAQ19G,EAAI,IAe3Cu+G,eAAgB,SAAUp8G,EAAK91B,EAAKpF,GAOhC,QALY4F,IAARs1B,IAAqBA,EAAM,QACnBt1B,IAARR,IAAqBA,EAAM,UACjBQ,IAAV5F,IAAuBA,EAAQ,KAGzB,IAANoF,GAAmBA,EAAN81B,EAEb,OAAO36B,EAAOsgB,MAAM60H,SAAS,IAAK,IAAK,KAG3C,IAAIt2D,EAAMlkD,EAAMz4B,KAAK20B,MAAM30B,KAAK+xB,UAAYpvB,EAAM81B,IAC9CmkD,EAAQnkD,EAAMz4B,KAAK20B,MAAM30B,KAAK+xB,UAAYpvB,EAAM81B,IAChDokD,EAAOpkD,EAAMz4B,KAAK20B,MAAM30B,KAAK+xB,UAAYpvB,EAAM81B,IAEnD,OAAO36B,EAAOsgB,MAAM80H,WAAW31I,EAAOo/E,EAAKC,EAAOC,IAatD82D,OAAQ,SAAUz/H,GAEd,OAAY,SAARA,EAGO,CACH3W,MAAO2W,IAAU,GACjByoE,IAAKzoE,GAAS,GAAK,IACnB0oE,MAAO1oE,GAAS,EAAI,IACpB2oE,KAAc,IAAR3oE,EACN1U,EAAG0U,IAAU,GACb1T,EAAG0T,GAAS,GAAK,IACjBwE,EAAGxE,GAAS,EAAI,IAChBzU,EAAW,IAARyU,GAKA,CACH3W,MAAO,IACPo/E,IAAKzoE,GAAS,GAAK,IACnB0oE,MAAO1oE,GAAS,EAAI,IACpB2oE,KAAc,IAAR3oE,EACN1U,EAAG,IACHgB,EAAG0T,GAAS,GAAK,IACjBwE,EAAGxE,GAAS,EAAI,IAChBzU,EAAW,IAARyU,IAaf4gI,UAAW,SAAU5gI,GAEjB,GAAqB,iBAAVA,EAEP,MAAO,QAAUA,EAAM1T,EAAEwnB,WAAa,IAAM9T,EAAMwE,EAAEsP,WAAa,IAAM9T,EAAMzU,EAAEuoB,WAAa,KAAO9T,EAAM1U,EAAI,KAAKwoB,WAAa,IAI/H,IAAI6qH,EAAM/0I,EAAOsgB,MAAMu1H,OAAOz/H,GAC9B,MAAO,QAAU2+H,EAAIryI,EAAEwnB,WAAa,IAAM6qH,EAAIn6H,EAAEsP,WAAa,IAAM6qH,EAAIpzI,EAAEuoB,WAAa,KAAO6qH,EAAIrzI,EAAI,KAAKwoB,WAAa,KAY/H+sH,SAAU,SAAU7gI,GAEhB,OAAOA,IAAU,IAWrB8gI,cAAe,SAAU9gI,GAErB,OAAQA,IAAU,IAAM,KAW5B+gI,OAAQ,SAAU/gI,GAEd,OAAOA,GAAS,GAAK,KAWzBghI,SAAU,SAAUhhI,GAEhB,OAAOA,GAAS,EAAI,KAWxBihI,QAAS,SAAUjhI,GAEf,OAAe,IAARA,GAYXkhI,YAAa,SAAU51I,GAEnB,OAAOA,GAYXihF,aAAc,SAAUjhF,EAAGC,GAEvB,OAAYD,EAAJC,EAASA,EAAID,GAYzBghF,YAAa,SAAUhhF,EAAGC,GAEtB,OAAYD,EAAJC,EAASD,EAAIC,GAezB4gF,cAAe,SAAU7gF,EAAGC,GAExB,OAAQD,EAAIC,EAAK,KAYrB41I,aAAc,SAAU71I,EAAGC,GAEvB,OAAQD,EAAIC,GAAK,GAYrB2gF,SAAU,SAAU5gF,EAAGC,GAEnB,OAAOO,KAAKy4B,IAAI,IAAKj5B,EAAIC,IAY7B61I,cAAe,SAAU91I,EAAGC,GAExB,OAAOO,KAAK2C,IAAI,EAAGnD,EAAIC,EAAI,MAc/BqhF,gBAAiB,SAAUthF,EAAGC,GAE1B,OAAOO,KAAK81B,IAAIt2B,EAAIC,IAYxB81I,cAAe,SAAU/1I,EAAGC,GAExB,OAAO,IAAMO,KAAK81B,IAAI,IAAMt2B,EAAIC,IAcpC6gF,YAAa,SAAU9gF,EAAGC,GAEtB,OAAO,MAAS,IAAMD,IAAM,IAAMC,IAAO,IAa7CshF,eAAgB,SAAUvhF,EAAGC,GAEzB,OAAOD,EAAIC,EAAI,EAAID,EAAIC,EAAI,KAc/B8gF,aAAc,SAAU/gF,EAAGC,GAEvB,OAAOA,EAAI,IAAO,EAAID,EAAIC,EAAI,IAAQ,IAAM,GAAK,IAAMD,IAAM,IAAMC,GAAK,KAsB5EohF,eAAgB,SAAUrhF,EAAGC,GAEzB,OAAOA,EAAI,IAAO,GAAgB,IAAVD,GAAK,KAAaC,EAAI,KAAO,IAAO,GAAK,KAAkB,IAAVD,GAAK,MAAa,IAAMC,GAAK,KAuB1GmhF,eAAgB,SAAUphF,EAAGC,GAEzB,OAAO3B,EAAOsgB,MAAMmiE,aAAa9gF,EAAGD,IAaxCkhF,gBAAiB,SAAUlhF,EAAGC,GAE1B,OAAa,MAANA,EAAYA,EAAIO,KAAKy4B,IAAI,KAAOj5B,GAAK,IAAM,IAAMC,KAa5DkhF,eAAgB,SAAUnhF,EAAGC,GAEzB,OAAa,IAANA,EAAUA,EAAIO,KAAK2C,IAAI,EAAI,KAAQ,IAAMnD,GAAM,GAAKC,IAY/D+1I,iBAAkB,SAAUh2I,EAAGC,GAE3B,OAAO3B,EAAOsgB,MAAMgiE,SAAS5gF,EAAGC,IAYpCg2I,gBAAiB,SAAUj2I,EAAGC,GAE1B,OAAO3B,EAAOsgB,MAAMk3H,cAAc91I,EAAGC,IAczCi2I,iBAAkB,SAAUl2I,EAAGC,GAE3B,OAAOA,EAAI,IAAM3B,EAAOsgB,MAAMq3H,gBAAgBj2I,EAAG,EAAIC,GAAK3B,EAAOsgB,MAAMo3H,iBAAiBh2I,EAAI,GAAKC,EAAI,OAezGk2I,gBAAiB,SAAUn2I,EAAGC,GAE1B,OAAOA,EAAI,IAAM3B,EAAOsgB,MAAMuiE,eAAenhF,EAAG,EAAIC,GAAK3B,EAAOsgB,MAAMsiE,gBAAgBlhF,EAAI,GAAKC,EAAI,OAavGm2I,cAAe,SAAUp2I,EAAGC,GAExB,OAAOA,EAAI,IAAM3B,EAAOsgB,MAAMoiE,YAAYhhF,EAAG,EAAIC,GAAK3B,EAAOsgB,MAAMqiE,aAAajhF,EAAI,GAAKC,EAAI,OAejGo2I,aAAc,SAAUr2I,EAAGC,GAEvB,OAAO3B,EAAOsgB,MAAMu3H,gBAAgBn2I,EAAGC,GAAK,IAAM,EAAI,KAY1Dq2I,aAAc,SAAUt2I,EAAGC,GAEvB,OAAa,MAANA,EAAYA,EAAIO,KAAKy4B,IAAI,IAAMj5B,EAAIA,GAAK,IAAMC,KAYzDs2I,UAAW,SAAUv2I,EAAGC,GAEpB,OAAO3B,EAAOsgB,MAAM03H,aAAar2I,EAAGD,IAYxCw2I,aAAc,SAAUx2I,EAAGC,GAEvB,OAAOO,KAAKy4B,IAAIj5B,EAAGC,GAAKO,KAAK2C,IAAInD,EAAGC,GAAK,MAyBjD3B,EAAO6zC,QAAU,SAAUtyC,EAAMgV,GAE7BA,EAASA,GAAU,GAKnBtX,KAAKsC,KAAOA,EAKZtC,KAAKsX,OAASA,EAKdtX,KAAKk5I,OAAS,KAKdl5I,KAAKoiC,GAAK,KAKVpiC,KAAKm5I,MAAQ,KAKbn5I,KAAK8uI,MAAQ,KAKb9uI,KAAKo5I,SAAW,KAKhBp5I,KAAKq5I,OAAS,KAEdr5I,KAAK+xC,eAOThxC,EAAO6zC,QAAQC,OAAS,EAMxB9zC,EAAO6zC,QAAQq6B,KAAO,EAMtBluE,EAAO6zC,QAAQ25F,MAAQ,EAMvBxtI,EAAO6zC,QAAQ65F,MAAQ,EAMvB1tI,EAAO6zC,QAAQ0kG,SAAW,EAM1Bv4I,EAAO6zC,QAAQ2kG,SAAW,EAE1Bx4I,EAAO6zC,QAAQ/yC,UAAY,CAOvBkwC,YAAa,WAEH/xC,KAAKsX,OAAOoc,eAAe,YAAoC,IAAvB1zB,KAAKsX,OAAO4hI,SAAoBn4I,EAAO6zC,QAAQlhB,eAAe,YAGxG1zB,KAAKk5I,OAAS,IAAIn4I,EAAO6zC,QAAQwiC,OAAOp3E,KAAKsC,OAG7CtC,KAAKsX,OAAOoc,eAAe,WAAkC,IAAtB1zB,KAAKsX,OAAO6hI,OAAkBp4I,EAAO6zC,QAAQlhB,eAAe,WAEnG1zB,KAAKm5I,MAAQ,IAAIp4I,EAAO6zC,QAAQ45F,MAAMxuI,KAAKsC,OAG3CtC,KAAKsX,OAAOoc,eAAe,QAA4B,IAAnB1zB,KAAKsX,OAAO8qB,IAAerhC,EAAO6zC,QAAQlhB,eAAe,QAE7F1zB,KAAKoiC,GAAK,IAAIrhC,EAAO6zC,QAAQ4kG,GAAGx5I,KAAKsC,KAAMtC,KAAKsX,SAGhDtX,KAAKsX,OAAOoc,eAAe,WAAkC,IAAtB1zB,KAAKsX,OAAOw3H,OAAkB/tI,EAAO6zC,QAAQlhB,eAAe,WAEnG1zB,KAAK8uI,MAAQ,IAAI/tI,EAAO6zC,QAAQ85F,MAAM1uI,KAAKsC,KAAMtC,KAAKsX,SAGtDtX,KAAKsX,OAAOoc,eAAe,YAAoC,IAAvB1zB,KAAKsX,OAAO+hI,QAAmBt4I,EAAO6zC,QAAQlhB,eAAe,YAErG1zB,KAAKq5I,OAAS,IAAIt4I,EAAO6zC,QAAQ6kG,OAAOz5I,KAAKsC,KAAMtC,KAAKsX,UAwBhEoiI,YAAa,SAAUC,GAEfA,IAAW54I,EAAO6zC,QAAQC,OAE1B70C,KAAKk5I,OAAS,IAAIn4I,EAAO6zC,QAAQwiC,OAAOp3E,KAAKsC,MAExCq3I,IAAW54I,EAAO6zC,QAAQq6B,KAEf,OAAZjvE,KAAKoiC,GAELpiC,KAAKoiC,GAAK,IAAIrhC,EAAO6zC,QAAQ4kG,GAAGx5I,KAAKsC,KAAMtC,KAAKsX,QAIhDtX,KAAKoiC,GAAGoG,QAGPmxG,IAAW54I,EAAO6zC,QAAQ25F,MAE/BvuI,KAAKm5I,MAAQ,IAAIp4I,EAAO6zC,QAAQ45F,MAAMxuI,KAAKsC,MAEtCq3I,IAAW54I,EAAO6zC,QAAQ65F,MAEZ,OAAfzuI,KAAK8uI,MAEL9uI,KAAK8uI,MAAQ,IAAI/tI,EAAO6zC,QAAQ85F,MAAM1uI,KAAKsC,KAAMtC,KAAKsX,QAItDtX,KAAK8uI,MAAMtmG,QAGVmxG,IAAW54I,EAAO6zC,QAAQ2kG,WAEX,OAAhBv5I,KAAKq5I,OAELr5I,KAAKq5I,OAAS,IAAIt4I,EAAO6zC,QAAQ6kG,OAAOz5I,KAAKsC,KAAMtC,KAAKsX,QAIxDtX,KAAKq5I,OAAO7wG,UAyBxB1uB,OAAQ,SAAU6hC,EAAQg+F,EAAQrtG,QAEflmC,IAAXuzI,IAAwBA,EAAS54I,EAAO6zC,QAAQC,aACtCzuC,IAAVkmC,IAAuBA,GAAQ,GAE/BqtG,IAAW54I,EAAO6zC,QAAQC,OAE1B70C,KAAKk5I,OAAOp/H,OAAO6hC,GAEdg+F,IAAW54I,EAAO6zC,QAAQq6B,MAAQjvE,KAAKoiC,GAE5CpiC,KAAKoiC,GAAGtoB,OAAO6hC,EAAQrP,GAElBqtG,IAAW54I,EAAO6zC,QAAQ25F,OAASvuI,KAAKm5I,MAE7Cn5I,KAAKm5I,MAAMS,WAAWj+F,GAEjBg+F,IAAW54I,EAAO6zC,QAAQ65F,OAASzuI,KAAK8uI,MAE7C9uI,KAAK8uI,MAAMh1H,OAAO6hC,GAEbg+F,IAAW54I,EAAO6zC,QAAQ2kG,UAAYv5I,KAAKq5I,OAEhDr5I,KAAKq5I,OAAOv/H,OAAO6hC,GAInBvrC,QAAQ+K,KAAKwgC,EAAOroC,IAAM,6EAUlCrP,UAAW,WAIHjE,KAAKoiC,IAELpiC,KAAKoiC,GAAGn+B,YAGRjE,KAAK8uI,OAEL9uI,KAAK8uI,MAAM7qI,YAGXjE,KAAKq5I,QAELr5I,KAAKq5I,OAAOp1I,aAUpBsjC,OAAQ,WAIAvnC,KAAKoiC,IAELpiC,KAAKoiC,GAAGmF,SAGRvnC,KAAK8uI,OAEL9uI,KAAK8uI,MAAMvnG,SAGXvnC,KAAKq5I,QAELr5I,KAAKq5I,OAAO9xG,UAUpBW,iBAAkB,WAEVloC,KAAKk5I,QAELl5I,KAAKk5I,OAAOhxG,mBAGZloC,KAAKm5I,OAELn5I,KAAKm5I,MAAMjxG,mBAGXloC,KAAKoiC,IAELpiC,KAAKoiC,GAAG8F,mBAGRloC,KAAK8uI,OAEL9uI,KAAK8uI,MAAM5mG,mBAGXloC,KAAKq5I,QAELr5I,KAAKq5I,OAAOnxG,oBAUpBtsB,MAAO,WAEC5b,KAAKoiC,IAELpiC,KAAKoiC,GAAGxmB,QAGR5b,KAAK8uI,OAEL9uI,KAAK8uI,MAAMlzH,QAGX5b,KAAKq5I,QAELr5I,KAAKq5I,OAAOz9H,SAUpB4sB,MAAO,WAECxoC,KAAKoiC,IAELpiC,KAAKoiC,GAAGoG,QAGRxoC,KAAK8uI,OAEL9uI,KAAK8uI,MAAMtmG,QAGXxoC,KAAKq5I,QAELr5I,KAAKq5I,OAAO7wG,SASpBzmC,QAAS,WAED/B,KAAKoiC,IAELpiC,KAAKoiC,GAAGrgC,UAGR/B,KAAK8uI,OAEL9uI,KAAK8uI,MAAM/sI,UAGX/B,KAAKq5I,QAELr5I,KAAKq5I,OAAOt3I,UAGhB/B,KAAKk5I,OAAS,KACdl5I,KAAKm5I,MAAQ,KACbn5I,KAAKoiC,GAAK,KACVpiC,KAAK8uI,MAAQ,KACb9uI,KAAKq5I,OAAS,OAKtBt4I,EAAO6zC,QAAQ/yC,UAAUC,YAAcf,EAAO6zC,QAe9C7zC,EAAOi/C,UAAY,SAAU19C,GAKzBtC,KAAKsC,KAAOA,EAKZtC,KAAK65I,SAAW,GAMhB75I,KAAK85I,GAAK,GAGd/4I,EAAOi/C,UAAUn+C,UAAY,CAQzBw5B,IAAK,SAAU67C,GAGX,OADAl3E,KAAK65I,SAAS3iE,EAAQziE,IAAMyiE,GAShC75D,OAAQ,SAAU65D,UAEPl3E,KAAK65I,SAAS3iE,EAAQziE,MAKrC1T,EAAOi/C,UAAUn+C,UAAUC,YAAcf,EAAOi/C,UAuChDj/C,EAAOqvE,MAAQ,SAAU9tE,EAAMgR,EAAKmlE,GA6MhC,QA3MYryE,IAARkN,IAAqBA,EAAM,WACnBlN,IAARqyE,IAAqBA,EAAM,MAK/Bz4E,KAAKsC,KAAOA,EAMZtC,KAAKsT,IAAMA,EAMXtT,KAAK0E,MAAQ,EAMb1E,KAAK2E,OAAS,EAMd3E,KAAK+T,KAAOhT,EAAOqvB,MAKnBpwB,KAAK88E,sBAAuB,EAM5B98E,KAAK2lH,aAAc,EAKnB3lH,KAAKq8H,OAAS,IAAIt7H,EAAO0jC,OAKzBzkC,KAAKqwE,eAAiB,IAAItvE,EAAO0jC,OAKjCzkC,KAAK83G,WAAa,IAAI/2G,EAAO0jC,OAK7BzkC,KAAK+5I,SAAW,IAAIh5I,EAAO0jC,OAK3BzkC,KAAKo7D,QAAU,IAAIr6D,EAAO0jC,OAO1BzkC,KAAKg6I,UAAY,IAAIj5I,EAAO0jC,OAM5BzkC,KAAK4+H,cAAgB,IAAI79H,EAAO0jC,OAOhCzkC,KAAKi6I,kBAAmB,EAMxBj6I,KAAKk6I,QAAU,KAMfl6I,KAAK4sG,WAAa,KAKlB5sG,KAAKw4E,MAAQ,KAKbx4E,KAAKm6I,YAAc,KAKnBn6I,KAAKo6I,aAAc,EASnBp6I,KAAKq6I,WAAa,GAMlBr6I,KAAKs6I,MAAQ,EAMbt6I,KAAKu6I,cAAgB,IAMrBv6I,KAAKw6I,SAAW,KAOhBx6I,KAAK++H,YAAa,EAOlB/+H,KAAK28H,QAAS,EAOd38H,KAAKq+C,aAAc,EAOnBr+C,KAAKo+C,SAAU,EAOfp+C,KAAKy6I,UAAW,EAOhBz6I,KAAK06I,sBAAuB,EAO5B16I,KAAK26I,WAAY,EAMjB36I,KAAK46I,aAAe,KAMpB56I,KAAK66I,cAAgB,KAEjBvnI,GAAOtT,KAAKsC,KAAKwY,MAAMiuG,cAAcz1G,GACzC,CACI,IAAIwnI,EAAS96I,KAAKsC,KAAKwY,MAAM+uG,SAASv2G,GAElCwnI,EAAO3zB,OAEPnnH,KAAK+6I,oBAAoBD,EAAOnmI,MAIhC3U,KAAKw4E,MAAQsiE,EAAOnmI,KAGxB3U,KAAK0E,MAAQ1E,KAAKw4E,MAAMwiE,WACxBh7I,KAAK2E,OAAS3E,KAAKw4E,MAAMyiE,iBAEpBxiE,GAELz4E,KAAKk7I,mBAAmBziE,GAAK,GAO7Bz4E,KAAKw4E,QAAUC,EAEfz4E,KAAKiG,YAAc,IAAIhG,KAAKusB,YAAYxsB,KAAKw4E,MAAO,KAAMx4E,KAAKsC,KAAK6B,YAKpEnE,KAAKiG,YAAc,IAAIhG,KAAKusB,YAAYzrB,EAAO+vC,MAAM/mB,QAAQ9jB,YAAYkJ,OAAQ,KAAMnP,KAAKsC,KAAK6B,YAJjGnE,KAAKiG,YAAY2mB,YAAY5sB,KAAK0E,MAAO1E,KAAK2E,QAYlD3E,KAAK8F,QAAU,IAAI7F,KAAKyM,QAAQ1M,KAAKiG,aAMrCjG,KAAK28E,aAAe,IAAI57E,EAAO87E,MAAM,EAAG,EAAG,EAAG78E,KAAK0E,MAAO1E,KAAK2E,OAAQ,SAEvE3E,KAAK8F,QAAQsnB,SAASptB,KAAK28E,cAE3B38E,KAAK8F,QAAQwH,OAAQ,EAET,OAARgG,GAAgBtT,KAAKw4E,QAErBx4E,KAAK8F,QAAQwH,MAAQtN,KAAKw4E,MAAMq7C,SAWpC7zH,KAAKm7I,SAAW,KAEZp6I,EAAO+yE,aAEP9zE,KAAKm7I,SAAW,IAAIp6I,EAAO+yE,WAAW9zE,KAAKsC,KAAM,GAAItC,KAAK0E,MAAO1E,KAAK2E,SAGtE3E,KAAKsC,KAAKgqB,OAAOk/E,mBAEjBxrG,KAAK2/H,eAGLmb,IAEAA,EAAO/pF,QAAS,IAIxBhwD,EAAOqvE,MAAMvuE,UAAY,CAUrBu5I,qBAAsB,SAAU5iE,EAAO6iE,GAcnC,OAZI7iE,GAAS6iE,IAETr7I,KAAKw4E,MAAQA,EACbx4E,KAAKm6I,YAAckB,EAEnBr7I,KAAKo6I,aAAc,EACnBp6I,KAAKiG,YAAYkJ,OAASnP,KAAKw4E,MAC/Bx4E,KAAKsW,cAAc,KAAMtW,KAAKw4E,MAAMwiE,WAAYh7I,KAAKw4E,MAAMyiE,aAE3Dj7I,KAAK+5I,SAASlyG,SAAS7nC,OAGpBA,MAuBXs7I,iBAAkB,SAAUC,EAAc72I,EAAOC,EAAQ62I,GAOrD,QALqBp1I,IAAjBm1I,IAA8BA,GAAe,QACnCn1I,IAAV1B,IAAuBA,EAAQ,WACpB0B,IAAXzB,IAAwBA,EAAS,WAChByB,IAAjBo1I,IAA8BA,GAAe,IAE5Cx7I,KAAKsC,KAAKgqB,OAAOk3E,aAGlB,OADAxjG,KAAKo7D,QAAQvzB,SAAS7nC,KAAM,oBACrB,EAmCX,GAhCyB,OAArBA,KAAKm6I,cAEDn6I,KAAKm6I,YAAYjtG,OAEjBltC,KAAKm6I,YAAYjtG,QAAS,EAI1BltC,KAAKm6I,YAAYnuI,QAIzBhM,KAAKy7I,qBAELz7I,KAAKw4E,MAAQjmC,SAAS8mD,cAAc,SACpCr5F,KAAKw4E,MAAM+6C,aAAa,WAAY,YACpCvzH,KAAKw4E,MAAM+6C,aAAa,cAAe,eAEzB,OAAV7uH,IAEA1E,KAAKw4E,MAAM9zE,MAAQA,GAGR,OAAXC,IAEA3E,KAAKw4E,MAAM7zE,OAASA,GAKxB3E,KAAK4sG,WAAaz8F,OAAOs2F,WAAWzmG,KAAK07I,oBAAoBrpH,KAAKryB,MAAOA,KAAKk6I,SAE1EluH,UAAU2vH,cAAgB3vH,UAAU2vH,aAAan4C,aAEjDx3E,UAAU2vH,aAAan4C,aAAa,CAAEntB,MAAOklE,EAAc/iE,MAAOgjE,IAC7DI,KAAK57I,KAAK67I,oBAAoBxpH,KAAKryB,OACnC87I,MAAM97I,KAAK+7I,kBAAkB1pH,KAAKryB,YAIvC,IAEIgsB,UAAUw3E,aAAa,CAAEntB,MAAOklE,EAAc/iE,MAAOgjE,GACjDx7I,KAAK67I,oBAAoBxpH,KAAKryB,MAC9BA,KAAK+7I,kBAAkB1pH,KAAKryB,OAEpC,MAAO6pB,GAEH7pB,KAAK+7I,kBAAkBlyH,GAI/B,OAAO7pB,MAOX07I,oBAAqB,WAEjBzuC,aAAajtG,KAAK4sG,YAElB5sG,KAAKg6I,UAAUnyG,SAAS7nC,OAO5B+7I,kBAAmB,SAAUnpG,GAEzBq6D,aAAajtG,KAAK4sG,YAElB5sG,KAAKo7D,QAAQvzB,SAAS7nC,KAAM4yC,IAOhCipG,oBAAqB,SAAUR,GAE3BpuC,aAAajtG,KAAK4sG,YAGlB5sG,KAAKm6I,YAAckB,OAGaj1I,IAA5BpG,KAAKw4E,MAAMwjE,aAEXh8I,KAAKw4E,MAAMwjE,aAAeX,OAEIj1I,IAAzBpG,KAAKw4E,MAAMyjE,UAEhBj8I,KAAKw4E,MAAMyjE,UAAYZ,EAIvBr7I,KAAKw4E,MAAM5oE,IAAOO,OAAOg6F,KAAOh6F,OAAOg6F,IAAI+xC,gBAAgBb,IAAYA,EAG3E,IAAI99G,EAAOv9B,KAEXA,KAAKw4E,MAAM2jE,aAAe,WAEtB,IAAI7B,EAAQ,IAEZ,SAAS8B,IAEL,GAAY,EAAR9B,EAEA,GAA4B,EAAxB/8G,EAAKi7C,MAAMwiE,WACf,CAEI,IAAIt2I,EAAQ64B,EAAKi7C,MAAMwiE,WACnBr2I,EAAS44B,EAAKi7C,MAAMyiE,YAEpB/2E,MAAM3mC,EAAKi7C,MAAMyiE,eAEjBt2I,EAASD,GAAS,EAAI,IAG1B64B,EAAKi7C,MAAMjL,OAEXhwC,EAAK68G,aAAc,EACnB78G,EAAKt3B,YAAYkJ,OAASouB,EAAKi7C,MAC/Bj7C,EAAKjnB,cAAc,KAAM5R,EAAOC,GAChC44B,EAAKw8G,SAASlyG,SAAStK,QAIvBptB,OAAOs2F,WAAW21C,EAAa,UAKnChsI,QAAQ+K,KAAK,oDAGjBm/H,IAGJ8B,KAYRrB,oBAAqB,SAAU3gC,GAE3B,IAAIvrE,EAAQ7uC,KAUZ,OARAA,KAAKw4E,MAAQjmC,SAAS8mD,cAAc,SACpCr5F,KAAKw4E,MAAMi7C,UAAW,EACtBzzH,KAAKw4E,MAAM+6C,aAAa,WAAY,YACpCvzH,KAAKw4E,MAAM+6C,aAAa,cAAe,eACvCvzH,KAAKw4E,MAAMtlC,iBAAiB,aAAc,SAAUN,GAAS/D,EAAMv4B,cAAcs8B,KAAW,GAC5F5yC,KAAKw4E,MAAM5oE,IAAMO,OAAOg6F,IAAI+xC,gBAAgB9hC,GAC5Cp6G,KAAKw4E,MAAMq7C,SAAU,EAEd7zH,MAYXk7I,mBAAoB,SAAUziE,EAAKi7C,EAAU7H,GAqCzC,YAnCiBzlH,IAAbstH,IAA0BA,GAAW,GAGrC1zH,KAAK8F,UAEL9F,KAAK8F,QAAQwH,OAAQ,GAGzBtN,KAAKw4E,MAAQjmC,SAAS8mD,cAAc,SACpCr5F,KAAKw4E,MAAMi7C,UAAW,EAElBC,GAEA1zH,KAAKw4E,MAAM+6C,aAAa,WAAY,iBAGpBntH,IAAhBylH,IAEA7rH,KAAKw4E,MAAMqzC,YAAcA,GAG7B7rH,KAAKw4E,MAAM+6C,aAAa,cAAe,eAEvCvzH,KAAKw4E,MAAM5oE,IAAM6oE,EAEjBz4E,KAAKw4E,MAAMq7C,SAAU,EAErB7zH,KAAKw4E,MAAM3vC,OAEX7oC,KAAKs6I,MAAQt6I,KAAKq6I,WAElBr6I,KAAKw6I,SAAWrqI,OAAOs2F,WAAWzmG,KAAKq8I,mBAAmBhqH,KAAKryB,MAAOA,KAAKu6I,eAE3Ev6I,KAAKsT,IAAMmlE,EAEJz4E,MAYXsW,cAAe,SAAUs8B,EAAOluC,EAAOC,GAEnC,IAAI23I,GAAS,EAET53I,MAAAA,IAAyCA,EAAQ1E,KAAKw4E,MAAMwiE,WAAYsB,GAAS,GACjF33I,MAAAA,IAA2CA,EAAS3E,KAAKw4E,MAAMyiE,aAEnEj7I,KAAK0E,MAAQA,EACb1E,KAAK2E,OAASA,EAEV3E,KAAKiG,YAAYkJ,SAAWnP,KAAKw4E,QAEjCx4E,KAAKiG,YAAYkJ,OAASnP,KAAKw4E,OAGnCx4E,KAAKiG,YAAY2mB,YAAYloB,EAAOC,GAEpC3E,KAAK8F,QAAQoH,MAAMnH,OAAOrB,EAAOC,GAEjC3E,KAAK8F,QAAQpB,MAAQA,EACrB1E,KAAK8F,QAAQnB,OAASA,EAEtB3E,KAAK8F,QAAQwH,OAAQ,EAEjBtN,KAAKm7I,UAELn7I,KAAKm7I,SAASp1I,OAAOrB,EAAOC,GAG5B23I,GAAuB,OAAbt8I,KAAKsT,MAEftT,KAAKqwE,eAAexoC,SAAS7nC,KAAM0E,EAAOC,GAEtC3E,KAAK26I,YAEL36I,KAAKw4E,MAAMjL,OACXvtE,KAAKq8H,OAAOx0F,SAAS7nC,KAAMA,KAAKytE,KAAMztE,KAAKu8I,iBAWvD9vH,SAAU,WAENzsB,KAAK83G,WAAWjwE,SAAS7nC,OAa7ButE,KAAM,SAAUE,EAAM8uE,GAElB,OAAIv8I,KAAK06I,4BAKIt0I,IAATqnE,IAAsBA,GAAO,QACZrnE,IAAjBm2I,IAA8BA,EAAe,GAE7Cv8I,KAAKsC,KAAKwmC,MAAMyzF,SAEhBv8H,KAAKsC,KAAKwmC,MAAMyzF,OAAOlhG,IAAIr7B,KAAK6iD,QAAS7iD,MACzCA,KAAKsC,KAAKwmC,MAAM61F,SAAStjG,IAAIr7B,KAAK8iD,UAAW9iD,MAEzCA,KAAKsC,KAAKwmC,MAAMi1F,MAEhB/9H,KAAK6iD,WAIb7iD,KAAKsC,KAAK6oC,QAAQ9P,IAAIr7B,KAAKw8I,SAAUx8I,MACrCA,KAAKsC,KAAK+oC,SAAShQ,IAAIr7B,KAAKy8I,UAAWz8I,MAEvCA,KAAK46I,aAAe56I,KAAKysB,SAAS4F,KAAKryB,MAEvCA,KAAKw4E,MAAMtlC,iBAAiB,QAASlzC,KAAK46I,cAAc,GACxD56I,KAAKw4E,MAAMtlC,iBAAiB,sBAAuBlzC,KAAK46I,cAAc,GAIlE56I,KAAKw4E,MAAM/K,OAFXA,EASJztE,KAAKw4E,MAAM+jE,aAAeA,EAEtBv8I,KAAK2lH,YAEL3lH,KAAKy6I,UAAW,GAIhBz6I,KAAKy6I,UAAW,EAEC,OAAbz6I,KAAKsT,MAEyB,IAA1BtT,KAAKw4E,MAAMguB,YAEXxmG,KAAKs6I,MAAQt6I,KAAKq6I,WAClBr6I,KAAKw6I,SAAWrqI,OAAOs2F,WAAWzmG,KAAKq8I,mBAAmBhqH,KAAKryB,MAAOA,KAAKu6I,iBAI3Ev6I,KAAK66I,cAAgB76I,KAAK08I,YAAYrqH,KAAKryB,MAC3CA,KAAKw4E,MAAMtlC,iBAAiB,UAAWlzC,KAAK66I,eAAe,KAInE76I,KAAKw4E,MAAMjL,OAEXvtE,KAAKq8H,OAAOx0F,SAAS7nC,KAAMytE,EAAM8uE,KA5D1Bv8I,MAwEf08I,YAAa,WAET18I,KAAKw4E,MAAMrkC,oBAAoB,UAAWn0C,KAAK66I,eAAe,GAE9D76I,KAAKsW,iBAiBTtK,KAAM,WAkEF,OAhEIhM,KAAKsC,KAAKwmC,MAAMyzF,SAEhBv8H,KAAKsC,KAAKwmC,MAAMyzF,OAAOl/G,OAAOrd,KAAK6iD,QAAS7iD,MAC5CA,KAAKsC,KAAKwmC,MAAM61F,SAASthH,OAAOrd,KAAK8iD,UAAW9iD,OAGpDA,KAAKsC,KAAK6oC,QAAQ9tB,OAAOrd,KAAKw8I,SAAUx8I,MACxCA,KAAKsC,KAAK+oC,SAAShuB,OAAOrd,KAAKy8I,UAAWz8I,MAItCA,KAAKo6I,aAEDp6I,KAAKw4E,MAAMwjE,cAEXh8I,KAAKw4E,MAAMwjE,aAAahwI,OACxBhM,KAAKw4E,MAAM5oE,IAAM,MAEZ5P,KAAKw4E,MAAMyjE,WAEhBj8I,KAAKw4E,MAAMyjE,UAAUjwI,OACrBhM,KAAKw4E,MAAM5oE,IAAM,OAIjB5P,KAAKw4E,MAAM5oE,IAAM,GAEb5P,KAAKm6I,YAAYjtG,OAEjBltC,KAAKm6I,YAAYjtG,QAAS,EAG1BltC,KAAKm6I,YAAYwC,UAEjB38I,KAAKm6I,YAAYwC,YAAY3pH,QAAQ,SAAU4pH,GAE3CA,EAAM5wI,SAKVhM,KAAKm6I,YAAYnuI,QAIzBhM,KAAKm6I,YAAc,KACnBn6I,KAAKo6I,aAAc,IAInBp6I,KAAKw4E,MAAMrkC,oBAAoB,QAASn0C,KAAK46I,cAAc,GAC3D56I,KAAKw4E,MAAMrkC,oBAAoB,sBAAuBn0C,KAAK46I,cAAc,GACzE56I,KAAKw4E,MAAMrkC,oBAAoB,UAAWn0C,KAAK66I,eAAe,GAE1D76I,KAAK2lH,YAEL3lH,KAAKy6I,UAAW,EAIhBz6I,KAAKw4E,MAAMptC,SAIZprC,MAWXq7B,IAAK,SAAUsgB,GAEX,GAAIr0C,MAAMC,QAAQo0C,GAEd,IAAK,IAAI15C,EAAI,EAAGA,EAAI05C,EAAOz5C,OAAQD,IAE3B05C,EAAO15C,GAAGs5C,aAEVI,EAAO15C,GAAGs5C,YAAYv7C,WAM9B27C,EAAOJ,YAAYv7C,MAGvB,OAAOA,MAeX2wC,WAAY,SAAUrtC,EAAGC,EAAGqtC,EAASC,EAAS/qB,EAAQE,GAElDF,EAASA,GAAU,EACnBE,EAASA,GAAU,EAEnB,IAAIhL,EAAQhb,KAAKsC,KAAK+4B,IAAIrgB,MAAM1X,EAAGC,EAAGvD,MAKtC,OAHAgb,EAAMxU,OAAOQ,IAAI4pC,EAASC,GAC1B71B,EAAM3a,MAAM2G,IAAI8e,EAAQE,GAEjBhL,GAUXnW,OAAQ,YAEC7E,KAAK88E,sBAAwB98E,KAAK68I,SAEnC78I,KAAKiG,YAAYuL,SAUzBqxC,QAAS,WAED7iD,KAAK28H,SAKT38H,KAAK28H,QAAS,EAEd38H,KAAKw4E,MAAMslD,OAAQ,IASvBh7E,UAAW,WAEF9iD,KAAK28H,SAAU38H,KAAK++H,aAKzB/+H,KAAK28H,QAAS,EAEd38H,KAAKw4E,MAAMslD,OAAQ,IASvB0e,SAAU,WAEFx8I,KAAKo+C,SAAWp+C,KAAK2lH,cAKzB3lH,KAAKo+C,SAAU,EAEfp+C,KAAKw4E,MAAMptC,UASfqxG,UAAW,YAEFz8I,KAAKo+C,SAAWp+C,KAAKq+C,aAAer+C,KAAK2lH,cAK9C3lH,KAAKo+C,SAAU,EAEVp+C,KAAKw4E,MAAM2zD,OAEZnsI,KAAKw4E,MAAMjL,SAyBnBuvE,aAAc,SAAUltI,EAAK8jH,GA0BzB,YAxBiBttH,IAAbstH,IAA0BA,GAAW,GAGzC1zH,KAAK8F,QAAQwH,OAAQ,EAErBtN,KAAKw4E,MAAMptC,QAEXprC,KAAK06I,sBAAuB,EAE5B16I,KAAKs6I,MAAQt6I,KAAKq6I,WAElBr6I,KAAKw6I,SAAWrqI,OAAOs2F,WAAWzmG,KAAKq8I,mBAAmBhqH,KAAKryB,MAAOA,KAAKu6I,eAE3Ev6I,KAAKw4E,MAAM5oE,IAAMA,EAEjB5P,KAAKw4E,MAAM3vC,QAEX7oC,KAAK26I,UAAYjnB,KAIb1zH,KAAKwpC,QAAS,GAGXxpC,MASXq8I,mBAAoB,WAGc,IAA1Br8I,KAAKw4E,MAAMguB,YAEXxmG,KAAK06I,sBAAuB,EAG5B16I,KAAKsW,kBAILtW,KAAKs6I,QAEY,EAAbt6I,KAAKs6I,MAELt6I,KAAKw6I,SAAWrqI,OAAOs2F,WAAWzmG,KAAKq8I,mBAAmBhqH,KAAKryB,MAAOA,KAAKu6I,eAI3EnqI,QAAQ+K,KAAK,0DAA2Dnb,KAAKo6I,eAWzFza,aAAc,WAEV3/H,KAAKsC,KAAKsmC,MAAMye,qBAAqBrnD,KAAK4/H,OAAQ5/H,MAAM,GACxDA,KAAK2lH,aAAc,GAUvBia,OAAQ,WAWJ,GATA5/H,KAAK2lH,aAAc,EAEf3lH,KAAKi6I,mBAELj6I,KAAKw4E,MAAMjL,OAEXvtE,KAAKq8H,OAAOx0F,SAAS7nC,KAAMA,KAAKytE,KAAMztE,KAAKu8I,eAG3Cv8I,KAAKsT,IACT,CACI,IAAIwnI,EAAS96I,KAAKsC,KAAKwY,MAAM+uG,SAAS7pH,KAAKsT,KAEvCwnI,IAAWA,EAAO3zB,SAElB2zB,EAAO/pF,QAAS,GAMxB,OAFA/wD,KAAK4+H,cAAc/2F,SAAS7nC,OAErB,GAgBX+8I,KAAM,SAAUnhI,EAAOpb,EAAOsH,GAM1B,QAJc1B,IAAVwV,IAAuBA,GAAQ,QACrBxV,IAAV5F,IAAuBA,EAAQ,QACjB4F,IAAd0B,IAA2BA,EAAY,MAErB,OAAlB9H,KAAKm7I,SAaT,OAPIv/H,GAEA5b,KAAKm7I,SAASp+D,MAGlB/8E,KAAKm7I,SAAShlH,KAAKn2B,KAAKw4E,MAAO,EAAG,EAAGx4E,KAAK0E,MAAO1E,KAAK2E,OAAQ,EAAG,EAAG3E,KAAK0E,MAAO1E,KAAK2E,OAAQ,EAAG,EAAG,EAAG,EAAG,EAAGnE,EAAOsH,GAE5G9H,KAAKm7I,SAXR/qI,QAAQ+K,KAAK,mEAoBrBsgI,mBAAoB,WAEhB,GAAKz7I,KAAKw4E,MAAV,CAUA,IALIx4E,KAAKw4E,MAAMyzB,YAEXjsG,KAAKw4E,MAAMyzB,WAAWvjG,YAAY1I,KAAKw4E,OAGpCx4E,KAAKw4E,MAAMwkE,iBAEdh9I,KAAKw4E,MAAM9vE,YAAY1I,KAAKw4E,MAAMykE,YAGtCj9I,KAAKw4E,MAAM0kE,gBAAgB,YAC3Bl9I,KAAKw4E,MAAM0kE,gBAAgB,OAE3Bl9I,KAAKw4E,MAAQ,OASjBz2E,QAAS,WAEL/B,KAAKgM,OAELhM,KAAKy7I,qBAEDz7I,KAAK2lH,aAEL3lH,KAAKsC,KAAKsmC,MAAM2e,wBAAwBvnD,KAAK4/H,OAAQ5/H,MAGrDA,KAAKw6I,UAELrqI,OAAO88F,aAAajtG,KAAKw6I,YAUrC3zI,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,cAAe,CAEzDkF,IAAK,WAED,OAAQ/G,KAAU,MAAIA,KAAKw4E,MAAMmiD,YAAc,GAGnD3zH,IAAK,SAAUC,GAEXjH,KAAKw4E,MAAMmiD,YAAc1zH,KAUjCJ,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,WAAY,CAEtDkF,IAAK,WAED,OAAQ/G,KAAU,MAAIA,KAAKw4E,MAAMvzC,SAAW,KAUpDp+B,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,WAAY,CAEtDkF,IAAK,WAED,OAAQ/G,KAAU,MAAKA,KAAKw4E,MAAMmiD,YAAc36H,KAAKw4E,MAAMvzC,SAAY,KAS/Ep+B,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,OAAQ,CAElDkF,IAAK,WAED,OAAO/G,KAAK28H,QAGhB31H,IAAK,SAAUC,GAIX,GAFAA,EAAQA,GAAS,KAGjB,CACI,GAAIjH,KAAK28H,OAEL,OAGJ38H,KAAK++H,YAAa,EAClB/+H,KAAK6iD,cAGT,CACI,IAAK7iD,KAAK28H,OAEN,OAGJ38H,KAAK++H,YAAa,EAClB/+H,KAAK8iD,gBAajBj8C,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAO/G,KAAKo+C,SAGhBp3C,IAAK,SAAUC,GAIX,GAFAA,EAAQA,GAAS,MAEbjH,KAAK2lH,YAKT,GAAI1+G,EACJ,CACI,GAAIjH,KAAKo+C,QAEL,OAGJp+C,KAAKq+C,aAAc,EACnBr+C,KAAKw8I,eAGT,CACI,IAAKx8I,KAAKo+C,QAEN,OAGJp+C,KAAKq+C,aAAc,EACnBr+C,KAAKy8I,gBAUjB51I,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,SAAU,CAEpDkF,IAAK,WAED,OAAQ/G,KAAU,MAAIA,KAAKw4E,MAAM70C,OAAS,GAG9C38B,IAAK,SAAUC,GAEPA,EAAQ,EAERA,EAAQ,EAEK,EAARA,IAELA,EAAQ,GAGRjH,KAAKw4E,QAELx4E,KAAKw4E,MAAM70C,OAAS18B,MAUhCJ,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,eAAgB,CAE1DkF,IAAK,WAED,OAAQ/G,KAAU,MAAIA,KAAKw4E,MAAM+jE,aAAe,GAGpDv1I,IAAK,SAAUC,GAEPjH,KAAKw4E,QAELx4E,KAAKw4E,MAAM+jE,aAAet1I,MActCJ,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,OAAQ,CAElDkF,IAAK,WAED,QAAQ/G,KAAU,OAAIA,KAAKw4E,MAAM/K,MAGrCzmE,IAAK,SAAUC,GAEPA,GAASjH,KAAKw4E,MAEdx4E,KAAKw4E,MAAM/K,MAAO,EAEbztE,KAAKw4E,QAEVx4E,KAAKw4E,MAAM/K,MAAO,MAW9B5mE,OAAOyF,eAAevL,EAAOqvE,MAAMvuE,UAAW,UAAW,CAErDkF,IAAK,WAED,QAAQ/G,KAAU,SAAMA,KAAKw4E,MAAMhvC,QAAUxpC,KAAKw4E,MAAM2zD,UAKhEprI,EAAOqvE,MAAMvuE,UAAUC,YAAcf,EAAOqvE,WAWpBhqE,IAApBnG,KAAK8H,aAEL9H,KAAK8H,WAAahH,EAAOgH,iBAGL3B,IAApBnG,KAAK+N,aAEL/N,KAAK+N,WAAajN,EAAOiN,iBAGK5H,IAA9BnG,KAAKyM,QAAQC,eAEb1M,KAAKyM,QAAQC,aAAe,IAAI1M,KAAKyM,QAAQ,IAAIzM,KAAKusB,mBAGnBpmB,IAAnCnG,KAAKC,cAAc0E,cAEnB3E,KAAKC,cAAc0E,YAAc,IAAI7D,EAAOC,QAGhDf,KAAK+sB,mBAAoB,EAGzB/sB,KAAKk9I,0BAA4B,WAE7B,OAAOp8I,EAAO68C,OAAOrxB,gBASE,oBAAZkB,SACe,oBAAXC,QAA0BA,OAAOD,UACxCA,QAAUC,OAAOD,QAAU1sB,GAE/B0sB,QAAQ1sB,OAASA,GACQ,oBAAX4sB,QAA0BA,OAAOC,IAC/CD,OAAO,SAA+B5tB,EAAKgB,OAASA,GAEpDhB,EAAKgB,OAASA,EAGXA,GACRgD,KAAK/D","file":"phaser-no-physics.min.js"} \ No newline at end of file diff --git a/build/custom/phaser-no-physics.min.js b/build/custom/phaser-no-physics.min.js index 8ad4164dc..b2848ea34 100644 --- a/build/custom/phaser-no-physics.min.js +++ b/build/custom/phaser-no-physics.min.js @@ -1,4 +1,4 @@ -/* Phaser v2.19.1 - http://phaser.io - @photonstorm - (c) 2016 Photon Storm Ltd. */ +/* Phaser v2.19.2 - http://phaser.io - @photonstorm - (c) 2016 Photon Storm Ltd. */ -(function(){var t=this,k=k||{};k.DisplayObject=function(){this.position=new k.Point(0,0),this.scale=new k.Point(1,1),this.pivot=new k.Point(0,0),this.rotation=0,this.alpha=1,this.visible=!0,this.hitArea=null,this.renderable=!1,this.parent=null,this.worldAlpha=1,this.worldTransform=new Phaser.Matrix,this.worldPosition=new k.Point(0,0),this.worldScale=new k.Point(1,1),this.worldRotation=0,this.filterArea=null,this._sr=0,this._cr=1,this._bounds=new k.Rectangle(0,0,0,0),this._currentBounds=null,this._mask=null,this._cacheAsBitmap=!1,this._cacheIsDirty=!1},k.DisplayObject.prototype={constructor:k.DisplayObject,destroy:function(){if(this.children){for(var t=this.children.length;t--;)this.children[t].destroy();this.children=[]}this.hitArea=null,this.parent=null,this.worldTransform=null,this.filterArea=null,this.renderable=!1,this._bounds=null,this._currentBounds=null,this._mask=null,this._destroyCachedSprite(),this._destroyTintedTexture()},updateTransform:function(t){if(!t&&!this.parent&&!this.game)return this;var e=this.parent;t?e=t:this.parent||(e=this.game.world);var i,s,n,r,o,a,h=e.worldTransform,u=this.worldTransform;this.rotation%Phaser.Math.PI2?(this.rotation!==this.rotationCache&&(this.rotationCache=this.rotation,this._sr=Math.sin(this.rotation),this._cr=Math.cos(this.rotation)),i=this._cr*this.scale.x,s=this._sr*this.scale.x,n=-this._sr*this.scale.y,r=this._cr*this.scale.y,o=this.position.x,a=this.position.y,(this.pivot.x||this.pivot.y)&&(o-=this.pivot.x*i+this.pivot.y*n,a-=this.pivot.x*s+this.pivot.y*r),u.a=i*h.a+s*h.c,u.b=i*h.b+s*h.d,u.c=n*h.a+r*h.c,u.d=n*h.b+r*h.d):(i=this.scale.x,n=s=0,r=this.scale.y,o=this.position.x-this.pivot.x*i,a=this.position.y-this.pivot.y*r,u.a=i*h.a,u.b=i*h.b,u.c=r*h.c,u.d=r*h.d),u.tx=o*h.a+a*h.c+h.tx,u.ty=o*h.b+a*h.d+h.ty,i=u.a,s=u.b,n=u.c;var l=i*(r=u.d)-s*n;if(i||s){var c=Math.sqrt(i*i+s*s);this.worldRotation=0=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},k.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},k.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},k.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},k.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},k.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},k.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=k.compileProgram(t,this.vertexSrc||k.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],k.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,k._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},k.PixiFastShader.prototype.constructor=k.PixiFastShader,k.PixiFastShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},k.StripShader.prototype.constructor=k.StripShader,k.StripShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,u,l,c=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-c*p.width)+i.crop.width,u=(l=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-c),h=i.frame.width*-c,u=i.frame.height*(1-d),l=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,g=i.baseTexture.resolution,m=i.baseTexture.textureIndex,y=r.a/g,v=r.b/g,x=r.c/g,_=r.d/g,b=r.tx,T=r.ty,w=i.crop.height;if(i.rotated){var C=r.a,S=r.b,P=r.c,E=r.d,A=h,M=a;b=r.c*w+b,T=r.d*w+T,y=6123233995736766e-32*C-P,v=6123233995736766e-32*S-E,x=C+6123233995736766e-32*P,_=S+6123233995736766e-32*E,i._updateUvsInverted(),a=u,h=l,u=M,l=A}var R=this.colors,I=this.positions,O=t.tint,L=(O>>16)+(65280&O)+((255&O)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(I[f++]=y*h+x*l+b|0,I[f++]=_*l+v*h+T|0,I[f++]=o.x0,I[f++]=o.y0,R[f++]=L,I[f++]=m,I[f++]=y*a+x*l+b|0,I[f++]=_*l+v*a+T|0,I[f++]=o.x1,I[f++]=o.y1,R[f++]=L,I[f++]=m,I[f++]=y*a+x*u+b|0,I[f++]=_*u+v*a+T|0,I[f++]=o.x2,I[f++]=o.y2,R[f++]=L,I[f++]=m,I[f++]=y*h+x*u+b|0,I[f++]=_*u+v*h+T|0):(I[f++]=y*h+x*l+b,I[f++]=_*l+v*h+T,I[f++]=o.x0,I[f++]=o.y0,R[f++]=L,I[f++]=m,I[f++]=y*a+x*l+b,I[f++]=_*l+v*a+T,I[f++]=o.x1,I[f++]=o.y1,R[f++]=L,I[f++]=m,I[f++]=y*a+x*u+b,I[f++]=_*u+v*a+T,I[f++]=o.x2,I[f++]=o.y2,R[f++]=L,I[f++]=m,I[f++]=y*h+x*u+b,I[f++]=_*u+v*h+T),I[f++]=o.x3,I[f++]=o.y3,R[f++]=L,I[f++]=m,this.sprites[this.currentBatchSize++]=t}},k.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(k._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;k.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),k.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new k.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),u=t.tilePosition.y/(a*t.tileScaleOffset.y),l=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),c=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-u,r.x1=1*l-h,r.y1=0-u,r.x2=1*l-h,r.y2=1*c-u,r.x3=0-h,r.y3=1*c-u;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,g=this.colors,m=t.width,y=t.height,v=t.anchor.x,x=t.anchor.y,_=m*(1-v),b=m*-v,T=y*(1-x),w=y*-x,C=this.currentBatchSize*this.vertexSize,S=e.baseTexture.resolution,P=t.worldTransform,E=P.a/S,A=P.b/S,M=P.c/S,R=P.d/S,I=P.tx,O=P.ty;f[C++]=E*b+M*w+I,f[C++]=R*w+A*b+O,f[C++]=r.x0,f[C++]=r.y0,g[C++]=p,f[C++]=i,f[C++]=E*_+M*w+I,f[C++]=R*w+A*_+O,f[C++]=r.x1,f[C++]=r.y1,g[C++]=p,f[C++]=i,f[C++]=E*_+M*T+I,f[C++]=R*T+A*_+O,f[C++]=r.x2,f[C++]=r.y2,g[C++]=p,f[C++]=i,f[C++]=E*b+M*T+I,f[C++]=R*T+A*b+O,f[C++]=r.x3,f[C++]=r.y3,g[C++]=p,f[C++]=i,this.sprites[this.currentBatchSize++]=t},k.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),k._enableMultiTextureToggle&&n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,u=0,l=null,c=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,g=0,m=this.currentBatchSize;g=this.size&&this.flush()}},k.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},k.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},k.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},k.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},k.WebGLFilterManager.prototype.constructor=k.WebGLFilterManager,k.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},k.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},k.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new k.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new k.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},k.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!k.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},k.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},k.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},k.Texture.fromCanvas=function(t,e){var i=k.BaseTexture.fromCanvas(t,e);return new k.Texture(i)},k.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=k),exports.PIXI=k):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=k):t.PIXI=k,k}).call(this),function(){var r,t=this,X=X||{VERSION:"2.19.1",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,u=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,u=r;uthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,u){return void 0===u&&(u=this.world),u.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,u){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,u),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",u="Out",l="Down",c="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(u,e,!this.input.pointerOver()),this.setStateFrame(l,i,this.input.pointerDown()),this.setStateFrame(c,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(u,n,r),this.setStateSound(l,i,s),this.setStateSound(c,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(u),this.playStateSound(u),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(c),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(u):this.changeStateFrame(c)||(i?this.changeStateFrame(h):this.changeStateFrame(u)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,u,l,c,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof u&&(this._rotate=u),"number"==typeof l&&(this._anchor.x=l),"number"==typeof c&&(this._anchor.y=c),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,l=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,c=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(u,l,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=c;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,u=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,l=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,u=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=l.width),n+=t.lineHeight*i,e=e.substr(l.text.length+1)}while(!1===l.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,u=0;u?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,u={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),u.font=X.LoaderParser.jsonBitmapFont(h,u.base,r,o,a,this.game.resolution)):(h=this.getXML(s),u.font=X.LoaderParser.xmlBitmapFont(h,u.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=u}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var u={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=u,this._resolveURL(e,u)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,u=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var l=0;le.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Particles=function(t){this.game=t,this.emitters={},this.ID=0},X.Particles.prototype={add:function(t){return this.emitters[t.id]=t},remove:function(t){delete this.emitters[t.id]}},X.Particles.prototype.constructor=X.Particles,X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},k.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},k.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},k.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},k.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},k.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},k.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=k.compileProgram(t,this.vertexSrc||k.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],k.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,k._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},k.PixiFastShader.prototype.constructor=k.PixiFastShader,k.PixiFastShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},k.StripShader.prototype.constructor=k.StripShader,k.StripShader.prototype.init=function(){var t=this.gl,e=k.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=k._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),k._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,u,l,c=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-c*p.width)+i.crop.width,u=(l=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-c),h=i.frame.width*-c,u=i.frame.height*(1-d),l=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,g=i.baseTexture.resolution,m=i.baseTexture.textureIndex,y=r.a/g,v=r.b/g,x=r.c/g,_=r.d/g,b=r.tx,T=r.ty,w=i.crop.height;if(i.rotated){var C=r.a,S=r.b,P=r.c,E=r.d,A=h,M=a;b=r.c*w+b,T=r.d*w+T,y=6123233995736766e-32*C-P,v=6123233995736766e-32*S-E,x=C+6123233995736766e-32*P,_=S+6123233995736766e-32*E,i._updateUvsInverted(),a=u,h=l,u=M,l=A}var R=this.colors,I=this.positions,O=t.tint,L=(O>>16)+(65280&O)+((255&O)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(I[f++]=y*h+x*l+b|0,I[f++]=_*l+v*h+T|0,I[f++]=o.x0,I[f++]=o.y0,R[f++]=L,I[f++]=m,I[f++]=y*a+x*l+b|0,I[f++]=_*l+v*a+T|0,I[f++]=o.x1,I[f++]=o.y1,R[f++]=L,I[f++]=m,I[f++]=y*a+x*u+b|0,I[f++]=_*u+v*a+T|0,I[f++]=o.x2,I[f++]=o.y2,R[f++]=L,I[f++]=m,I[f++]=y*h+x*u+b|0,I[f++]=_*u+v*h+T|0):(I[f++]=y*h+x*l+b,I[f++]=_*l+v*h+T,I[f++]=o.x0,I[f++]=o.y0,R[f++]=L,I[f++]=m,I[f++]=y*a+x*l+b,I[f++]=_*l+v*a+T,I[f++]=o.x1,I[f++]=o.y1,R[f++]=L,I[f++]=m,I[f++]=y*a+x*u+b,I[f++]=_*u+v*a+T,I[f++]=o.x2,I[f++]=o.y2,R[f++]=L,I[f++]=m,I[f++]=y*h+x*u+b,I[f++]=_*u+v*h+T),I[f++]=o.x3,I[f++]=o.y3,R[f++]=L,I[f++]=m,this.sprites[this.currentBatchSize++]=t}},k.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(k._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;k.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),k.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new k.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),u=t.tilePosition.y/(a*t.tileScaleOffset.y),l=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),c=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-u,r.x1=1*l-h,r.y1=0-u,r.x2=1*l-h,r.y2=1*c-u,r.x3=0-h,r.y3=1*c-u;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,g=this.colors,m=t.width,y=t.height,v=t.anchor.x,x=t.anchor.y,_=m*(1-v),b=m*-v,T=y*(1-x),w=y*-x,C=this.currentBatchSize*this.vertexSize,S=e.baseTexture.resolution,P=t.worldTransform,E=P.a/S,A=P.b/S,M=P.c/S,R=P.d/S,I=P.tx,O=P.ty;f[C++]=E*b+M*w+I,f[C++]=R*w+A*b+O,f[C++]=r.x0,f[C++]=r.y0,g[C++]=p,f[C++]=i,f[C++]=E*_+M*w+I,f[C++]=R*w+A*_+O,f[C++]=r.x1,f[C++]=r.y1,g[C++]=p,f[C++]=i,f[C++]=E*_+M*T+I,f[C++]=R*T+A*_+O,f[C++]=r.x2,f[C++]=r.y2,g[C++]=p,f[C++]=i,f[C++]=E*b+M*T+I,f[C++]=R*T+A*b+O,f[C++]=r.x3,f[C++]=r.y3,g[C++]=p,f[C++]=i,this.sprites[this.currentBatchSize++]=t},k.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,u=0,l=null,c=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,g=0,m=this.currentBatchSize;g=this.size&&this.flush()}},k.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},k.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},k.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},k.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},k.WebGLFilterManager.prototype.constructor=k.WebGLFilterManager,k.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},k.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},k.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new k.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new k.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},k.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!k.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},k.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},k.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new k.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},k.Texture.fromCanvas=function(t,e){var i=k.BaseTexture.fromCanvas(t,e);return new k.Texture(i)},k.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=k),exports.PIXI=k):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=k):t.PIXI=k,k}).call(this),function(){var r,t=this,X=X||{VERSION:"2.19.2",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,u=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,u=r;uthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,u){return void 0===u&&(u=this.world),u.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,u){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,u),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",u="Out",l="Down",c="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(u,e,!this.input.pointerOver()),this.setStateFrame(l,i,this.input.pointerDown()),this.setStateFrame(c,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(u,n,r),this.setStateSound(l,i,s),this.setStateSound(c,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(u),this.playStateSound(u),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(c),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(u):this.changeStateFrame(c)||(i?this.changeStateFrame(h):this.changeStateFrame(u)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,u,l,c,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof u&&(this._rotate=u),"number"==typeof l&&(this._anchor.x=l),"number"==typeof c&&(this._anchor.y=c),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,l=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,c=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(u,l,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=c;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,u=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,l=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,u=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=l.width),n+=t.lineHeight*i,e=e.substr(l.text.length+1)}while(!1===l.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,u=0;u?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,u={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),u.font=X.LoaderParser.jsonBitmapFont(h,u.base,r,o,a,this.game.resolution)):(h=this.getXML(s),u.font=X.LoaderParser.xmlBitmapFont(h,u.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=u}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var u={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=u,this._resolveURL(e,u)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,u=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var l=0;le.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Particles=function(t){this.game=t,this.emitters={},this.ID=0},X.Particles.prototype={add:function(t){return this.emitters[t.id]=t},remove:function(t){delete this.emitters[t.id]}},X.Particles.prototype.constructor=X.Particles,X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var o=Math.ceil((n=e-t.length)/2);t=new Array(n-o+1).join(i)+t+new Array(o+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,o,r=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof r&&(l=r,r=arguments[1]||{},a=2),h===a&&(r=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-o)-(e.x-n)*-(t.y-o);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,o){return void 0===o&&(o=0),!(e>t.right+o||it.bottom+o||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,o){void 0===n&&(n=!0);var r=new this.classType(this.game,t,e,i,s);return r.exists=n,r.visible=n,r.alive=n,this.add(r,!1,o)},X.Group.prototype.createMultiple=function(n,t,e,o,r,a){void 0===e&&(e=0),void 0===o&&(o=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var r=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=o;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,o){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var r=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var o=this.removeChild(this.children[n]);this.removeFromHash(o),i&&o&&o.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,o){t.forEach(this.wrap,this,e,i,s,n,o)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=o&&this.game.camera.x+e.x=r&&this.game.camera.y+e.y=o&&this._localPoint.x=r&&this._localPoint.y=o&&this._localPoint.x=r&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],o=0;ot||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var o=this.game.plugins.add(X.Weapon);return n&&(o.bulletClass=n),o.createBullets(t,e,i,s),o},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,o,r){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,o,r);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,o,r){return void 0===r&&(r=this.world),r.add(new X.TileSprite(this.game,t,e,i,s,n,o))},rope:function(t,e,i,s,n,o){return void 0===o&&(o=this.world),o.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,o,r,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,o,r,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,o,r,a,h){return new X.RetroFont(this.game,t,e,i,s,n,o,r,a,h)},bitmapText:function(t,e,i,s,n,o){return void 0===o&&(o=this.world),o.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,o){return new X.TileSprite(this.game,t,e,i,s,n,o)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,o,r,a,h){return new X.Button(this.game,t,e,i,s,n,o,r,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,o,r,a,h){return new X.RetroFont(this.game,t,e,i,s,n,o,r,a,h)},bitmapText:function(t,e,i,s,n,o){return new X.BitmapText(this.game,t,e,i,s,n,o)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,o,r,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,o=o||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(r,a,h,l),null!==n&&this.onInputUp.add(n,o),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",c="Down",u="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(c,i,this.input.pointerDown()),this.setStateFrame(u,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,o,r,a){this.setStateSound(h,t,e),this.setStateSound(l,n,o),this.setStateSound(c,i,s),this.setStateSound(u,r,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(c),this.playStateSound(c),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(u),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(u)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(o=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(o=!0)),0===e.a&&!o;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,o){n=n||1,o=o||1;var r=this.game.add.image(t,e,this);return r.anchor.set(i,s),r.scale.set(n,o),r},copy:function(t,e,i,s,n,o,r,a,h,l,c,u,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==o&&(o=t.x),null==r&&(r=t.y),t.texture.trim&&(o+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==o&&(o=e),null==r&&(r=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof c&&(this._anchor.x=c),"number"==typeof u&&(this._anchor.y=u),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(o|=0,r|=0),y.translate(o,r),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,o=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,o|=0);var r=this.context;return this._alpha.prev=r.globalAlpha,r.save(),r.globalAlpha=this._alpha.current,e&&(this.op=e),r[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,r.setTransform(s.a,s.b,s.c,s.d,n,o),r.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),r.restore(),r.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,o,r){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,o,r)},draw:function(t,e,i,s,n,o,r){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,o,r)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=o=t[0],n=r=t[1];for(var f=i;fo.x?n.x>r.x?n.x:r.x:o.x>r.x?o.x:r.x,c=n.y>o.y?n.y>r.y?n.y:r.y:o.y>r.y?o.y:r.y,u=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,c,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,o.x,o.y,r.x,r.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,o.x,o.y,r.x,r.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,o=s.next.next;X.EarCut.intersects(n,s,s.next,o)&&X.EarCut.locallyInside(n,o)&&X.EarCut.locallyInside(o,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(o.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=o),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,o){var r=t;do{for(var a=r.next.next;a!==r.prev;){if(r.i!==a.i&&X.EarCut.isValidDiagonal(r,a)){var h=X.EarCut.splitPolygon(r,a);return r=X.EarCut.filterPoints(r,r.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(r,e,i,s,n,o),void X.EarCut.earcutLinked(h,e,i,s,n,o)}a=a.next}r=r.next}while(r!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,o,r,a,h,l=[];for(n=0,o=e.length;n=s.next.y){var a=s.x+(o-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&r=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(oi.x)&&X.EarCut.locallyInside(s,t)&&(i=s,c=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,o,r,a,h,l=1;do{for(i=t,o=t=null,r=0;i;){for(r++,s=i,e=a=0;eo!=i.next.y>o&&n<(i.next.x-i.x)*(o-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,o=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(o.next=s).prev=o,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,o=e.offset,r=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(r.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(r,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(r,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(r,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((r>>8&255)/255*i*255<<8)+(255&r)/255*s*255,o._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,o,r){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=o,this.shape=r,this.type=r.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var o=this.textBounds.x,r=this.textBounds.y;"right"===this.style.boundsAlignH?o+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(o+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?r+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(r+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-o,this.pivot.y=-r}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:o=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+o}}else{var n,o,r=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*r),descent:o=Math.ceil(.25*r),fontSize:n+o}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,o,r){e=e||0,i=i||0,s=s||"",n=n||"",o=o||32,r=r||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=o,this._align=r,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,o=-1,r=0,a=null,h=0this.textWidth&&(this.textWidth=c.width),n+=t.lineHeight*i,e=e.substr(c.text.length+1)}while(!1===c.end);this.textHeight=n;for(var o=0,r=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,o){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!o,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,o,r){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,o,r)},X.QuadTree.prototype={reset:function(t,e,i,s,n,o,r){this.maxObjects=n||10,this.maxLevels=o||4,this.level=r||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var o in this.vEnd){var r=this.vStart[o],a=this.vEnd[o];Array.isArray(a)?n[o]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[o]=r+(a-r)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,o){var r=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,r,i,e,s,n,o);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,o,r,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=o,this.callbackContext=r,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,o,r){void 0===r&&(r=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/o,this.loop=r,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,o={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return o.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=o,this._resolveURL(e,o),o},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var o=!1;n&&(o=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:o,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,o,r){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===o&&(o=0),void 0===r&&(r=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,o,r,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,o,r,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,o,r){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===o&&(o=0),void 0===r&&(r=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,o,r,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,o,r,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,o,r,a,h){void 0===o&&(o=-1),void 0===r&&(r=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:r,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,o,r,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var o={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?o.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?o.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?o.frameData=X.AnimationParser.JSONData(this.game,s,t):o.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=o,this._resolveURL(e,o)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var o in n)if((o=n[o]).fixtureKey===i)return o;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xo.spriteSourceSizeX+o.spriteSourceSizeW&&(i.width-=i.x+i.width-o.spriteSourceSizeX-o.spriteSourceSizeW),i.y+i.height>o.spriteSourceSizeY+o.spriteSourceSizeH&&(i.height-=i.y+i.height-o.spriteSourceSizeY-o.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,o){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===o&&(o=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+r):r===s._pendingState?this.line("+ "+r):this.line(" "+r)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,o=t.view;s&&(this._rect.setTo(o.x+s.x,o.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(o.centerX,o.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,o=t.deadzone,r=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(o?"x: "+o.x+" y: "+o.y+" w: "+o.width+" h: "+o.height:o)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(r?r.name||r:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,o){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",o=o||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=o,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var r=t.movementX,a=t.movementY;(r||a)&&(this.context.beginPath(),this.context.moveTo(r+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+r+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var o=n.pointers,r=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(r.isDown?"x":"o")+" "+a[r.pointerMode]+" "+r.identifier);for(var c=0;ce.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),o=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(o+n)/2,o!==n){var r=o-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0r.right)break;if(r.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomr.bottom)break;if(r.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,o)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>r.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(r.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,c,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,o){if(0!==t.length&&0!==e.length)for(var r=0;rc)&&(u.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,o=Math.atan2(n,s),r=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-r*Math.cos(o),t.y+=.001*t.velocity.y*this.game.time.delta-r*Math.sin(o)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+r*Math.cos(o),e.y+=.001*e.velocity.y*this.game.time.delta+r*Math.sin(o)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,o){this.game=t,this.key=e;var r=X.TilemapParser.parse(this.game,e,i,s,n,o);null!==r&&(this.width=r.width,this.height=r.height,this.tileWidth=r.tileWidth,this.tileHeight=r.tileHeight,this.orientation=r.orientation,this.format=r.format,this.version=r.version,this.properties=r.properties,this.widthInPixels=r.widthInPixels,this.heightInPixels=r.heightInPixels,this.layers=r.layers,this.tilesets=r.tilesets,this.imagecollections=r.imagecollections,this.tiles=r.tiles,this.objects=r.objects,this.objectsMap=r.objectsMap,this.collideIndexes=[],this.collision=r.collision,this.images=r.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,o){return void 0===o&&(o=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,o)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,o,r){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===o&&(o=0),void 0===r&&(r=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,r,i,s,n,o,{});l.setImage(a),this.tilesets.push(l);for(var c=this.tilesets.length-1,u=n,d=n,p=0,f=0,g=0,m=r;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var o=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),o},createBlankLayer:function(t,e,i,s,n,o){if(void 0===o&&(o=this.game.world),null===this.getLayerIndex(t)){for(var r,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(u=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,u,d)).name=t,o.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var o=e;o>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var c,u,d,p=0,f=[],g=[],m=0;for(r=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,o){var r;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===o&&(o=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var o=0;o=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(u.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);u.data.bodyDirty&&(this._data.customBody&&u.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),u.body.collideWorldBounds=this.bulletCollideWorldBounds,u.data.bodyDirty=!1),u.body.velocity.set(l,c),u.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(u,this,o),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var o=Math.ceil((n=e-t.length)/2);t=new Array(n-o+1).join(i)+t+new Array(o+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,o,r=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof r&&(l=r,r=arguments[1]||{},a=2),h===a&&(r=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-o)-(e.x-n)*-(t.y-o);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,o){return void 0===o&&(o=0),!(e>t.right+o||it.bottom+o||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,o){void 0===n&&(n=!0);var r=new this.classType(this.game,t,e,i,s);return r.exists=n,r.visible=n,r.alive=n,this.add(r,!1,o)},X.Group.prototype.createMultiple=function(n,t,e,o,r,a){void 0===e&&(e=0),void 0===o&&(o=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var r=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=o;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,o){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var r=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var o=this.removeChild(this.children[n]);this.removeFromHash(o),i&&o&&o.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,o){t.forEach(this.wrap,this,e,i,s,n,o)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=o&&this.game.camera.x+e.x=r&&this.game.camera.y+e.y=o&&this._localPoint.x=r&&this._localPoint.y=o&&this._localPoint.x=r&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],o=0;ot||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var o=this.game.plugins.add(X.Weapon);return n&&(o.bulletClass=n),o.createBullets(t,e,i,s),o},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,o,r){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,o,r);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,o,r){return void 0===r&&(r=this.world),r.add(new X.TileSprite(this.game,t,e,i,s,n,o))},rope:function(t,e,i,s,n,o){return void 0===o&&(o=this.world),o.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,o,r,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,o,r,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,o,r,a,h){return new X.RetroFont(this.game,t,e,i,s,n,o,r,a,h)},bitmapText:function(t,e,i,s,n,o){return void 0===o&&(o=this.world),o.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,o){return new X.TileSprite(this.game,t,e,i,s,n,o)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,o,r,a,h){return new X.Button(this.game,t,e,i,s,n,o,r,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,o,r,a,h){return new X.RetroFont(this.game,t,e,i,s,n,o,r,a,h)},bitmapText:function(t,e,i,s,n,o){return new X.BitmapText(this.game,t,e,i,s,n,o)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,o,r,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,o=o||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(r,a,h,l),null!==n&&this.onInputUp.add(n,o),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",c="Down",u="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(c,i,this.input.pointerDown()),this.setStateFrame(u,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,o,r,a){this.setStateSound(h,t,e),this.setStateSound(l,n,o),this.setStateSound(c,i,s),this.setStateSound(u,r,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(c),this.playStateSound(c),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(u),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(u)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(o=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(o=!0)),0===e.a&&!o;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,o){n=n||1,o=o||1;var r=this.game.add.image(t,e,this);return r.anchor.set(i,s),r.scale.set(n,o),r},copy:function(t,e,i,s,n,o,r,a,h,l,c,u,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==o&&(o=t.x),null==r&&(r=t.y),t.texture.trim&&(o+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==o&&(o=e),null==r&&(r=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof c&&(this._anchor.x=c),"number"==typeof u&&(this._anchor.y=u),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(o|=0,r|=0),y.translate(o,r),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,o=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,o|=0);var r=this.context;return this._alpha.prev=r.globalAlpha,r.save(),r.globalAlpha=this._alpha.current,e&&(this.op=e),r[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,r.setTransform(s.a,s.b,s.c,s.d,n,o),r.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),r.restore(),r.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,o,r){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,o,r)},draw:function(t,e,i,s,n,o,r){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,o,r)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=o=t[0],n=r=t[1];for(var f=i;fo.x?n.x>r.x?n.x:r.x:o.x>r.x?o.x:r.x,c=n.y>o.y?n.y>r.y?n.y:r.y:o.y>r.y?o.y:r.y,u=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,c,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,o.x,o.y,r.x,r.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,o.x,o.y,r.x,r.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,o=s.next.next;X.EarCut.intersects(n,s,s.next,o)&&X.EarCut.locallyInside(n,o)&&X.EarCut.locallyInside(o,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(o.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=o),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,o){var r=t;do{for(var a=r.next.next;a!==r.prev;){if(r.i!==a.i&&X.EarCut.isValidDiagonal(r,a)){var h=X.EarCut.splitPolygon(r,a);return r=X.EarCut.filterPoints(r,r.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(r,e,i,s,n,o),void X.EarCut.earcutLinked(h,e,i,s,n,o)}a=a.next}r=r.next}while(r!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,o,r,a,h,l=[];for(n=0,o=e.length;n=s.next.y){var a=s.x+(o-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&r=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(oi.x)&&X.EarCut.locallyInside(s,t)&&(i=s,c=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,o,r,a,h,l=1;do{for(i=t,o=t=null,r=0;i;){for(r++,s=i,e=a=0;eo!=i.next.y>o&&n<(i.next.x-i.x)*(o-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,o=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(o.next=s).prev=o,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,o=e.offset,r=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(r.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(r,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(r,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(r,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((r>>8&255)/255*i*255<<8)+(255&r)/255*s*255,o._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,o,r){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=o,this.shape=r,this.type=r.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var o=this.textBounds.x,r=this.textBounds.y;"right"===this.style.boundsAlignH?o+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(o+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?r+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(r+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-o,this.pivot.y=-r}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:o=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+o}}else{var n,o,r=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*r),descent:o=Math.ceil(.25*r),fontSize:n+o}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,o,r){e=e||0,i=i||0,s=s||"",n=n||"",o=o||32,r=r||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=o,this._align=r,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,o=-1,r=0,a=null,h=0this.textWidth&&(this.textWidth=c.width),n+=t.lineHeight*i,e=e.substr(c.text.length+1)}while(!1===c.end);this.textHeight=n;for(var o=0,r=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,o){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!o,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,o,r){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,o,r)},X.QuadTree.prototype={reset:function(t,e,i,s,n,o,r){this.maxObjects=n||10,this.maxLevels=o||4,this.level=r||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var o in this.vEnd){var r=this.vStart[o],a=this.vEnd[o];Array.isArray(a)?n[o]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[o]=r+(a-r)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,o){var r=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,r,i,e,s,n,o);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,o,r,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=o,this.callbackContext=r,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,o,r){void 0===r&&(r=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/o,this.loop=r,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,o={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return o.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=o,this._resolveURL(e,o),o},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var o=!1;n&&(o=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:o,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,o,r){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===o&&(o=0),void 0===r&&(r=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,o,r,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,o,r,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,o,r){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===o&&(o=0),void 0===r&&(r=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,o,r,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,o,r,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,o,r,a,h){void 0===o&&(o=-1),void 0===r&&(r=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:r,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,o,r,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var o={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?o.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?o.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?o.frameData=X.AnimationParser.JSONData(this.game,s,t):o.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=o,this._resolveURL(e,o)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var o in n)if((o=n[o]).fixtureKey===i)return o;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xo.spriteSourceSizeX+o.spriteSourceSizeW&&(i.width-=i.x+i.width-o.spriteSourceSizeX-o.spriteSourceSizeW),i.y+i.height>o.spriteSourceSizeY+o.spriteSourceSizeH&&(i.height-=i.y+i.height-o.spriteSourceSizeY-o.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,o){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===o&&(o=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+r):r===s._pendingState?this.line("+ "+r):this.line(" "+r)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,o=t.view;s&&(this._rect.setTo(o.x+s.x,o.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(o.centerX,o.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,o=t.deadzone,r=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(o?"x: "+o.x+" y: "+o.y+" w: "+o.width+" h: "+o.height:o)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(r?r.name||r:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,o){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",o=o||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=o,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var r=t.movementX,a=t.movementY;(r||a)&&(this.context.beginPath(),this.context.moveTo(r+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+r+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var o=n.pointers,r=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(r.isDown?"x":"o")+" "+a[r.pointerMode]+" "+r.identifier);for(var c=0;ce.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),o=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(o+n)/2,o!==n){var r=o-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0r.right)break;if(r.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomr.bottom)break;if(r.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,o)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>r.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(r.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,c,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,o){if(0!==t.length&&0!==e.length)for(var r=0;rc)&&(u.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,o=Math.atan2(n,s),r=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-r*Math.cos(o),t.y+=.001*t.velocity.y*this.game.time.delta-r*Math.sin(o)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+r*Math.cos(o),e.y+=.001*e.velocity.y*this.game.time.delta+r*Math.sin(o)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,o){this.game=t,this.key=e;var r=X.TilemapParser.parse(this.game,e,i,s,n,o);null!==r&&(this.width=r.width,this.height=r.height,this.tileWidth=r.tileWidth,this.tileHeight=r.tileHeight,this.orientation=r.orientation,this.format=r.format,this.version=r.version,this.properties=r.properties,this.widthInPixels=r.widthInPixels,this.heightInPixels=r.heightInPixels,this.layers=r.layers,this.tilesets=r.tilesets,this.imagecollections=r.imagecollections,this.tiles=r.tiles,this.objects=r.objects,this.objectsMap=r.objectsMap,this.collideIndexes=[],this.collision=r.collision,this.images=r.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,o){return void 0===o&&(o=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,o)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,o,r){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===o&&(o=0),void 0===r&&(r=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,r,i,s,n,o,{});l.setImage(a),this.tilesets.push(l);for(var c=this.tilesets.length-1,u=n,d=n,p=0,f=0,g=0,m=r;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var o=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),o},createBlankLayer:function(t,e,i,s,n,o){if(void 0===o&&(o=this.game.world),null===this.getLayerIndex(t)){for(var r,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(u=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,u,d)).name=t,o.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var o=e;o>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var c,u,d,p=0,f=[],g=[],m=0;for(r=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,o){var r;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===o&&(o=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var o=0;o=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(u.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);u.data.bodyDirty&&(this._data.customBody&&u.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),u.body.collideWorldBounds=this.bulletCollideWorldBounds,u.data.bodyDirty=!1),u.body.velocity.set(l,c),u.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(u,this,o),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0=this.children.length)throw new Error("The supplied index is out of bounds");var r=this.getChildIndex(e);this.children.splice(r,1),this.children.splice(t,0,e)},F.DisplayObjectContainer.prototype.getChildAt=function(e){if(e<0||e>=this.children.length)throw new Error("getChildAt: Supplied index "+e+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[e]},F.DisplayObjectContainer.prototype.removeChild=function(e){var t=this.children.indexOf(e);if(-1!==t)return this.removeChildAt(t)},F.DisplayObjectContainer.prototype.removeChildAt=function(e){var t=this.getChildAt(e);return t&&(t.parent=void 0,this.children.splice(e,1)),t},F.DisplayObjectContainer.prototype.bringChildToTop=function(e){if(e.parent===this)return this.setChildIndex(e,this.children.length-1)},F.DisplayObjectContainer.prototype.sendChildToBack=function(e){if(e.parent===this)return this.setChildIndex(e,0)},F.DisplayObjectContainer.prototype.removeChildren=function(e,t){void 0===e&&(e=0),void 0===t&&(t=this.children.length);var r=t-e;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var i=F.compileProgram(e,this.vertexSrc||F.PixiShader.defaultVertexSrc,this.fragmentSrc);e.useProgram(i),this.uSamplerArray=e.getUniformLocation(i,"uSamplerArray[0]"),this.projectionVector=e.getUniformLocation(i,"projectionVector"),this.offsetVector=e.getUniformLocation(i,"offsetVector"),this.dimensions=e.getUniformLocation(i,"dimensions"),this.aVertexPosition=e.getAttribLocation(i,"aVertexPosition"),this.aTextureCoord=e.getAttribLocation(i,"aTextureCoord"),this.colorAttribute=e.getAttribLocation(i,"aColor"),this.aTextureIndex=e.getAttribLocation(i,"aTextureIndex");var s=[],o=e.createTexture();e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,o),e.texImage2D(e.TEXTURE_2D,0,e.RGB,1,1,0,e.RGB,e.UNSIGNED_BYTE,null);for(var a=0;a 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],F.PixiFastShader=function(e){if(this._UID=Phaser._UID++,this.gl=e,this.program=null,F._enableMultiTextureToggle){e=this.gl;this.MAX_TEXTURES=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS);for(var t="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",r=1;r= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},F.PixiFastShader.prototype.constructor=F.PixiFastShader,F.PixiFastShader.prototype.init=function(){var e=this.gl,t=F.compileProgram(e,this.vertexSrc,this.fragmentSrc);if(e.useProgram(t),this.uSampler=F._enableMultiTextureToggle?e.getUniformLocation(t,"uSamplerArray[0]"):e.getUniformLocation(t,"uSampler"),F._enableMultiTextureToggle){var r=[],i=e.createTexture();e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.texImage2D(e.TEXTURE_2D,0,e.RGB,1,1,0,e.RGB,e.UNSIGNED_BYTE,null);for(var s=0;s= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},F.StripShader.prototype.constructor=F.StripShader,F.StripShader.prototype.init=function(){var e=this.gl,t=F.compileProgram(e,this.vertexSrc,this.fragmentSrc);if(e.useProgram(t),this.uSampler=F._enableMultiTextureToggle?e.getUniformLocation(t,"uSamplerArray[0]"):e.getUniformLocation(t,"uSampler"),F._enableMultiTextureToggle){var r=[],i=e.createTexture();e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.texImage2D(e.TEXTURE_2D,0,e.RGB,1,1,0,e.RGB,e.UNSIGNED_BYTE,null);for(var s=0;s>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,++e},r=this.gl,i=r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS),s=r.getParameter(r.MAX_TEXTURE_SIZE),o=this.game.cache._cache.image,a=null,n=0;n=this.size&&(this.flush(),this.currentBaseTexture=r.baseTexture);var a=r._uvs;if(a){var n,h,l,u,d=e.anchor.x,c=e.anchor.y;if(r.trim){var f=r.trim;n=(h=f.x-d*f.width)+r.crop.width,l=(u=f.y-c*f.height)+r.crop.height}else n=r.frame.width*(1-d),h=r.frame.width*-d,l=r.frame.height*(1-c),u=r.frame.height*-c;var x=this.currentBatchSize*this.vertexSize,p=r.baseTexture.resolution,g=r.baseTexture.textureIndex,T=o.a/p,v=o.b/p,m=o.c/p,E=o.d/p,_=o.tx,S=o.ty,y=r.crop.height;if(r.rotated){var b=o.a,R=o.b,A=o.c,M=o.d,C=h,L=n;_=o.c*y+_,S=o.d*y+S,T=6123233995736766e-32*b-A,v=6123233995736766e-32*R-M,m=b+6123233995736766e-32*A,E=R+6123233995736766e-32*M,r._updateUvsInverted(),n=l,h=u,l=L,u=C}var B=this.colors,P=this.positions,w=e.tint,U=(w>>16)+(65280&w)+((255&w)<<16)+(255*e.worldAlpha<<24);this.renderSession.roundPixels?(P[x++]=T*h+m*u+_|0,P[x++]=E*u+v*h+S|0,P[x++]=a.x0,P[x++]=a.y0,B[x++]=U,P[x++]=g,P[x++]=T*n+m*u+_|0,P[x++]=E*u+v*n+S|0,P[x++]=a.x1,P[x++]=a.y1,B[x++]=U,P[x++]=g,P[x++]=T*n+m*l+_|0,P[x++]=E*l+v*n+S|0,P[x++]=a.x2,P[x++]=a.y2,B[x++]=U,P[x++]=g,P[x++]=T*h+m*l+_|0,P[x++]=E*l+v*h+S|0):(P[x++]=T*h+m*u+_,P[x++]=E*u+v*h+S,P[x++]=a.x0,P[x++]=a.y0,B[x++]=U,P[x++]=g,P[x++]=T*n+m*u+_,P[x++]=E*u+v*n+S,P[x++]=a.x1,P[x++]=a.y1,B[x++]=U,P[x++]=g,P[x++]=T*n+m*l+_,P[x++]=E*l+v*n+S,P[x++]=a.x2,P[x++]=a.y2,B[x++]=U,P[x++]=g,P[x++]=T*h+m*l+_,P[x++]=E*l+v*h+S),P[x++]=a.x3,P[x++]=a.y3,B[x++]=U,P[x++]=g,this.sprites[this.currentBatchSize++]=e}},F.WebGLSpriteBatch.prototype.renderTilingSprite=function(e){var t=e.tilingTexture,r=e.texture.baseTexture.textureIndex;if(F._enableMultiTextureToggle){var i=t.baseTexture,s=this.gl;F.WebGLRenderer.textureArray[r]!=i&&(this.flush(),s.activeTexture(s.TEXTURE0+r),s.bindTexture(s.TEXTURE_2D,i._glTextures[s.id]),F.WebGLRenderer.textureArray[r]=i)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=t.baseTexture),e._uvs||(e._uvs=new F.TextureUvs);var o=e._uvs,a=t.baseTexture.width,n=t.baseTexture.height;e.tilePosition.x%=a*e.tileScaleOffset.x,e.tilePosition.y%=n*e.tileScaleOffset.y;var h=e.tilePosition.x/(a*e.tileScaleOffset.x),l=e.tilePosition.y/(n*e.tileScaleOffset.y),u=e.width/a/(e.tileScale.x*e.tileScaleOffset.x),d=e.height/n/(e.tileScale.y*e.tileScaleOffset.y);o.x0=0-h,o.y0=0-l,o.x1=1*u-h,o.y1=0-l,o.x2=1*u-h,o.y2=1*d-l,o.x3=0-h,o.y3=1*d-l;var c=e.tint,f=(c>>16)+(65280&c)+((255&c)<<16)+(255*e.worldAlpha<<24),x=this.positions,p=this.colors,g=e.width,T=e.height,v=e.anchor.x,m=e.anchor.y,E=g*(1-v),_=g*-v,S=T*(1-m),y=T*-m,b=this.currentBatchSize*this.vertexSize,R=t.baseTexture.resolution,A=e.worldTransform,M=A.a/R,C=A.b/R,L=A.c/R,B=A.d/R,P=A.tx,w=A.ty;x[b++]=M*_+L*y+P,x[b++]=B*y+C*_+w,x[b++]=o.x0,x[b++]=o.y0,p[b++]=f,x[b++]=r,x[b++]=M*E+L*y+P,x[b++]=B*y+C*E+w,x[b++]=o.x1,x[b++]=o.y1,p[b++]=f,x[b++]=r,x[b++]=M*E+L*S+P,x[b++]=B*S+C*E+w,x[b++]=o.x2,x[b++]=o.y2,p[b++]=f,x[b++]=r,x[b++]=M*_+L*S+P,x[b++]=B*S+C*_+w,x[b++]=o.x3,x[b++]=o.y3,p[b++]=f,x[b++]=r,this.sprites[this.currentBatchSize++]=e},F.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var e,t,r,i,s=this.gl;if(this.dirty){this.dirty=!1,e=this.defaultShader.shaders[s.id],s.activeTexture(s.TEXTURE0),s.bindBuffer(s.ARRAY_BUFFER,this.vertexBuffer),s.bindBuffer(s.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var o=this.vertexSize;s.vertexAttribPointer(e.aVertexPosition,2,s.FLOAT,!1,o,0),s.vertexAttribPointer(e.aTextureCoord,2,s.FLOAT,!1,o,8),s.vertexAttribPointer(e.colorAttribute,4,s.UNSIGNED_BYTE,!0,o,16),F._enableMultiTextureToggle&&s.vertexAttribPointer(e.aTextureIndex,1,s.FLOAT,!1,o,20)}if(this.currentBatchSize>.5*this.size)s.bufferSubData(s.ARRAY_BUFFER,0,this.vertices);else{s.bindBuffer(s.ARRAY_BUFFER,this.vertexBuffer);var a=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);s.bufferSubData(s.ARRAY_BUFFER,0,a)}for(var n,h=0,l=0,u=null,d=this.renderSession.blendModeManager.currentBlendMode,c=null,f=!1,x=!1,p=0,g=this.currentBatchSize;p=this.size&&this.flush()}},F.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var e=this.gl;if(this.currentBaseTexture._glTextures[e.id]){if(this.currentBatchSize>.5*this.size)e.bufferSubData(e.ARRAY_BUFFER,0,this.vertices);else{var t=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);e.bufferSubData(e.ARRAY_BUFFER,0,t)}e.drawElements(e.TRIANGLES,6*this.currentBatchSize,e.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,e)}},F.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},F.WebGLFastSpriteBatch.prototype.start=function(){var e=this.gl;e.activeTexture(e.TEXTURE0),e.bindBuffer(e.ARRAY_BUFFER,this.vertexBuffer),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var t=this.renderSession.projection;e.uniform2f(this.shader.projectionVector,t.x,t.y),e.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var r=4*this.vertSize;e.vertexAttribPointer(this.shader.aVertexPosition,2,e.FLOAT,!1,r,0),e.vertexAttribPointer(this.shader.aPositionCoord,2,e.FLOAT,!1,r,8),e.vertexAttribPointer(this.shader.aScale,2,e.FLOAT,!1,r,16),e.vertexAttribPointer(this.shader.aRotation,1,e.FLOAT,!1,r,24),e.vertexAttribPointer(this.shader.aTextureCoord,2,e.FLOAT,!1,r,28),e.vertexAttribPointer(this.shader.colorAttribute,1,e.FLOAT,!1,r,36),e.vertexAttribPointer(this.shader.aTextureIndex,1,e.FLOAT,!1,r,40)},F.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},F.WebGLFilterManager.prototype.constructor=F.WebGLFilterManager,F.WebGLFilterManager.prototype.setContext=function(e){this.gl=e,this.texturePool=[],this.initShaderBuffers()},F.WebGLFilterManager.prototype.begin=function(e,t){this.renderSession=e,this.defaultShader=e.shaderManager.defaultShader;var r=this.renderSession.projection;this.width=2*r.x,this.height=2*-r.y,this.buffer=t},F.WebGLFilterManager.prototype.pushFilter=function(e){var t=this.gl,r=this.renderSession.projection,i=this.renderSession.offset;e._filterArea=e.target.filterArea||e.target.getBounds(),e._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new F.WebGLStencilManager,this.renderSession.stencilManager.setContext(t),t.disable(t.STENCIL_TEST),this.filterStack.push(e);var s=e.filterPasses[0];this.offsetX+=e._filterArea.x,this.offsetY+=e._filterArea.y;var o=this.texturePool.pop();o?o.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):o=new F.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),t.bindTexture(t.TEXTURE_2D,o.texture);var a=e._filterArea,n=s.padding;a.x-=n,a.y-=n,a.width+=2*n,a.height+=2*n,a.x<0&&(a.x=0),a.width>this.width&&(a.width=this.width),a.y<0&&(a.y=0),a.height>this.height&&(a.height=this.height),t.bindFramebuffer(t.FRAMEBUFFER,o.frameBuffer),t.viewport(0,0,a.width*this.renderSession.resolution,a.height*this.renderSession.resolution),r.x=a.width/2,r.y=-a.height/2,i.x=-a.x,i.y=-a.y,t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),e._glFilterTexture=o},F.WebGLFilterManager.prototype.popFilter=function(){var e=this.gl,t=this.filterStack.pop(),r=t._filterArea,i=t._glFilterTexture,s=this.renderSession.projection,o=this.renderSession.offset;if(1this.baseTexture.width||e.y+e.height>this.baseTexture.height))this.valid=e&&e.width&&e.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!F.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},F.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new F.TextureUvs);var e=this.crop,t=this.baseTexture.width,r=this.baseTexture.height;this._uvs.x0=e.x/t,this._uvs.y0=e.y/r,this._uvs.x1=(e.x+e.width)/t,this._uvs.y1=e.y/r,this._uvs.x2=(e.x+e.width)/t,this._uvs.y2=(e.y+e.height)/r,this._uvs.x3=e.x/t,this._uvs.y3=(e.y+e.height)/r},F.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new F.TextureUvs);var e=this.crop,t=this.baseTexture.width,r=this.baseTexture.height;this._uvs.x0=e.x/t,this._uvs.y0=e.y/r,this._uvs.x1=(e.x+e.height)/t,this._uvs.y1=e.y/r,this._uvs.x2=(e.x+e.height)/t,this._uvs.y2=(e.y+e.width)/r,this._uvs.x3=e.x/t,this._uvs.y3=(e.y+e.width)/r},F.Texture.fromCanvas=function(e,t){var r=F.BaseTexture.fromCanvas(e,t);return new F.Texture(r)},F.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=F),exports.PIXI=F):"undefined"!=typeof define&&define.amd?define("PIXI",e.PIXI=F):e.PIXI=F,F}).call(this); +(function(){var e=this,F=F||{};F.DisplayObject=function(){this.position=new F.Point(0,0),this.scale=new F.Point(1,1),this.pivot=new F.Point(0,0),this.rotation=0,this.alpha=1,this.visible=!0,this.hitArea=null,this.renderable=!1,this.parent=null,this.worldAlpha=1,this.worldTransform=new Phaser.Matrix,this.worldPosition=new F.Point(0,0),this.worldScale=new F.Point(1,1),this.worldRotation=0,this.filterArea=null,this._sr=0,this._cr=1,this._bounds=new F.Rectangle(0,0,0,0),this._currentBounds=null,this._mask=null,this._cacheAsBitmap=!1,this._cacheIsDirty=!1},F.DisplayObject.prototype={constructor:F.DisplayObject,destroy:function(){if(this.children){for(var e=this.children.length;e--;)this.children[e].destroy();this.children=[]}this.hitArea=null,this.parent=null,this.worldTransform=null,this.filterArea=null,this.renderable=!1,this._bounds=null,this._currentBounds=null,this._mask=null,this._destroyCachedSprite(),this._destroyTintedTexture()},updateTransform:function(e){if(!e&&!this.parent&&!this.game)return this;var t=this.parent;e?t=e:this.parent||(t=this.game.world);var r,i,s,o,a,n,h=t.worldTransform,l=this.worldTransform;this.rotation%Phaser.Math.PI2?(this.rotation!==this.rotationCache&&(this.rotationCache=this.rotation,this._sr=Math.sin(this.rotation),this._cr=Math.cos(this.rotation)),r=this._cr*this.scale.x,i=this._sr*this.scale.x,s=-this._sr*this.scale.y,o=this._cr*this.scale.y,a=this.position.x,n=this.position.y,(this.pivot.x||this.pivot.y)&&(a-=this.pivot.x*r+this.pivot.y*s,n-=this.pivot.x*i+this.pivot.y*o),l.a=r*h.a+i*h.c,l.b=r*h.b+i*h.d,l.c=s*h.a+o*h.c,l.d=s*h.b+o*h.d):(r=this.scale.x,s=i=0,o=this.scale.y,a=this.position.x-this.pivot.x*r,n=this.position.y-this.pivot.y*o,l.a=r*h.a,l.b=r*h.b,l.c=o*h.c,l.d=o*h.d),l.tx=a*h.a+n*h.c+h.tx,l.ty=a*h.b+n*h.d+h.ty,r=l.a,i=l.b,s=l.c;var u=r*(o=l.d)-i*s;if(r||i){var d=Math.sqrt(r*r+i*i);this.worldRotation=0=this.children.length)throw new Error("The supplied index is out of bounds");var r=this.getChildIndex(e);this.children.splice(r,1),this.children.splice(t,0,e)},F.DisplayObjectContainer.prototype.getChildAt=function(e){if(e<0||e>=this.children.length)throw new Error("getChildAt: Supplied index "+e+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[e]},F.DisplayObjectContainer.prototype.removeChild=function(e){var t=this.children.indexOf(e);if(-1!==t)return this.removeChildAt(t)},F.DisplayObjectContainer.prototype.removeChildAt=function(e){var t=this.getChildAt(e);return t&&(t.parent=void 0,this.children.splice(e,1)),t},F.DisplayObjectContainer.prototype.bringChildToTop=function(e){if(e.parent===this)return this.setChildIndex(e,this.children.length-1)},F.DisplayObjectContainer.prototype.sendChildToBack=function(e){if(e.parent===this)return this.setChildIndex(e,0)},F.DisplayObjectContainer.prototype.removeChildren=function(e,t){void 0===e&&(e=0),void 0===t&&(t=this.children.length);var r=t-e;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var i=F.compileProgram(e,this.vertexSrc||F.PixiShader.defaultVertexSrc,this.fragmentSrc);e.useProgram(i),this.uSamplerArray=e.getUniformLocation(i,"uSamplerArray[0]"),this.projectionVector=e.getUniformLocation(i,"projectionVector"),this.offsetVector=e.getUniformLocation(i,"offsetVector"),this.dimensions=e.getUniformLocation(i,"dimensions"),this.aVertexPosition=e.getAttribLocation(i,"aVertexPosition"),this.aTextureCoord=e.getAttribLocation(i,"aTextureCoord"),this.colorAttribute=e.getAttribLocation(i,"aColor"),this.aTextureIndex=e.getAttribLocation(i,"aTextureIndex");var s=[],o=e.createTexture();e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,o),e.texImage2D(e.TEXTURE_2D,0,e.RGB,1,1,0,e.RGB,e.UNSIGNED_BYTE,null);for(var a=0;a 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],F.PixiFastShader=function(e){if(this._UID=Phaser._UID++,this.gl=e,this.program=null,F._enableMultiTextureToggle){e=this.gl;this.MAX_TEXTURES=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS);for(var t="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",r=1;r= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},F.PixiFastShader.prototype.constructor=F.PixiFastShader,F.PixiFastShader.prototype.init=function(){var e=this.gl,t=F.compileProgram(e,this.vertexSrc,this.fragmentSrc);if(e.useProgram(t),this.uSampler=F._enableMultiTextureToggle?e.getUniformLocation(t,"uSamplerArray[0]"):e.getUniformLocation(t,"uSampler"),F._enableMultiTextureToggle){var r=[],i=e.createTexture();e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.texImage2D(e.TEXTURE_2D,0,e.RGB,1,1,0,e.RGB,e.UNSIGNED_BYTE,null);for(var s=0;s= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},F.StripShader.prototype.constructor=F.StripShader,F.StripShader.prototype.init=function(){var e=this.gl,t=F.compileProgram(e,this.vertexSrc,this.fragmentSrc);if(e.useProgram(t),this.uSampler=F._enableMultiTextureToggle?e.getUniformLocation(t,"uSamplerArray[0]"):e.getUniformLocation(t,"uSampler"),F._enableMultiTextureToggle){var r=[],i=e.createTexture();e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.texImage2D(e.TEXTURE_2D,0,e.RGB,1,1,0,e.RGB,e.UNSIGNED_BYTE,null);for(var s=0;s>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,++e},r=this.gl,i=r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS),s=r.getParameter(r.MAX_TEXTURE_SIZE),o=this.game.cache._cache.image,a=null,n=0;n=this.size&&(this.flush(),this.currentBaseTexture=r.baseTexture);var a=r._uvs;if(a){var n,h,l,u,d=e.anchor.x,c=e.anchor.y;if(r.trim){var f=r.trim;n=(h=f.x-d*f.width)+r.crop.width,l=(u=f.y-c*f.height)+r.crop.height}else n=r.frame.width*(1-d),h=r.frame.width*-d,l=r.frame.height*(1-c),u=r.frame.height*-c;var x=this.currentBatchSize*this.vertexSize,p=r.baseTexture.resolution,g=r.baseTexture.textureIndex,T=o.a/p,v=o.b/p,m=o.c/p,E=o.d/p,_=o.tx,S=o.ty,y=r.crop.height;if(r.rotated){var b=o.a,R=o.b,A=o.c,M=o.d,C=h,L=n;_=o.c*y+_,S=o.d*y+S,T=6123233995736766e-32*b-A,v=6123233995736766e-32*R-M,m=b+6123233995736766e-32*A,E=R+6123233995736766e-32*M,r._updateUvsInverted(),n=l,h=u,l=L,u=C}var B=this.colors,P=this.positions,w=e.tint,U=(w>>16)+(65280&w)+((255&w)<<16)+(255*e.worldAlpha<<24);this.renderSession.roundPixels?(P[x++]=T*h+m*u+_|0,P[x++]=E*u+v*h+S|0,P[x++]=a.x0,P[x++]=a.y0,B[x++]=U,P[x++]=g,P[x++]=T*n+m*u+_|0,P[x++]=E*u+v*n+S|0,P[x++]=a.x1,P[x++]=a.y1,B[x++]=U,P[x++]=g,P[x++]=T*n+m*l+_|0,P[x++]=E*l+v*n+S|0,P[x++]=a.x2,P[x++]=a.y2,B[x++]=U,P[x++]=g,P[x++]=T*h+m*l+_|0,P[x++]=E*l+v*h+S|0):(P[x++]=T*h+m*u+_,P[x++]=E*u+v*h+S,P[x++]=a.x0,P[x++]=a.y0,B[x++]=U,P[x++]=g,P[x++]=T*n+m*u+_,P[x++]=E*u+v*n+S,P[x++]=a.x1,P[x++]=a.y1,B[x++]=U,P[x++]=g,P[x++]=T*n+m*l+_,P[x++]=E*l+v*n+S,P[x++]=a.x2,P[x++]=a.y2,B[x++]=U,P[x++]=g,P[x++]=T*h+m*l+_,P[x++]=E*l+v*h+S),P[x++]=a.x3,P[x++]=a.y3,B[x++]=U,P[x++]=g,this.sprites[this.currentBatchSize++]=e}},F.WebGLSpriteBatch.prototype.renderTilingSprite=function(e){var t=e.tilingTexture,r=e.texture.baseTexture.textureIndex;if(F._enableMultiTextureToggle){var i=t.baseTexture,s=this.gl;F.WebGLRenderer.textureArray[r]!=i&&(this.flush(),s.activeTexture(s.TEXTURE0+r),s.bindTexture(s.TEXTURE_2D,i._glTextures[s.id]),F.WebGLRenderer.textureArray[r]=i)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=t.baseTexture),e._uvs||(e._uvs=new F.TextureUvs);var o=e._uvs,a=t.baseTexture.width,n=t.baseTexture.height;e.tilePosition.x%=a*e.tileScaleOffset.x,e.tilePosition.y%=n*e.tileScaleOffset.y;var h=e.tilePosition.x/(a*e.tileScaleOffset.x),l=e.tilePosition.y/(n*e.tileScaleOffset.y),u=e.width/a/(e.tileScale.x*e.tileScaleOffset.x),d=e.height/n/(e.tileScale.y*e.tileScaleOffset.y);o.x0=0-h,o.y0=0-l,o.x1=1*u-h,o.y1=0-l,o.x2=1*u-h,o.y2=1*d-l,o.x3=0-h,o.y3=1*d-l;var c=e.tint,f=(c>>16)+(65280&c)+((255&c)<<16)+(255*e.worldAlpha<<24),x=this.positions,p=this.colors,g=e.width,T=e.height,v=e.anchor.x,m=e.anchor.y,E=g*(1-v),_=g*-v,S=T*(1-m),y=T*-m,b=this.currentBatchSize*this.vertexSize,R=t.baseTexture.resolution,A=e.worldTransform,M=A.a/R,C=A.b/R,L=A.c/R,B=A.d/R,P=A.tx,w=A.ty;x[b++]=M*_+L*y+P,x[b++]=B*y+C*_+w,x[b++]=o.x0,x[b++]=o.y0,p[b++]=f,x[b++]=r,x[b++]=M*E+L*y+P,x[b++]=B*y+C*E+w,x[b++]=o.x1,x[b++]=o.y1,p[b++]=f,x[b++]=r,x[b++]=M*E+L*S+P,x[b++]=B*S+C*E+w,x[b++]=o.x2,x[b++]=o.y2,p[b++]=f,x[b++]=r,x[b++]=M*_+L*S+P,x[b++]=B*S+C*_+w,x[b++]=o.x3,x[b++]=o.y3,p[b++]=f,x[b++]=r,this.sprites[this.currentBatchSize++]=e},F.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var e,t,r,i,s=this.gl;if(this.dirty){this.dirty=!1,e=this.defaultShader.shaders[s.id],s.activeTexture(s.TEXTURE0),s.bindBuffer(s.ARRAY_BUFFER,this.vertexBuffer),s.bindBuffer(s.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var o=this.vertexSize;s.vertexAttribPointer(e.aVertexPosition,2,s.FLOAT,!1,o,0),s.vertexAttribPointer(e.aTextureCoord,2,s.FLOAT,!1,o,8),s.vertexAttribPointer(e.colorAttribute,4,s.UNSIGNED_BYTE,!0,o,16),s.vertexAttribPointer(e.aTextureIndex,1,s.FLOAT,!1,o,20)}if(this.currentBatchSize>.5*this.size)s.bufferSubData(s.ARRAY_BUFFER,0,this.vertices);else{s.bindBuffer(s.ARRAY_BUFFER,this.vertexBuffer);var a=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);s.bufferSubData(s.ARRAY_BUFFER,0,a)}for(var n,h=0,l=0,u=null,d=this.renderSession.blendModeManager.currentBlendMode,c=null,f=!1,x=!1,p=0,g=this.currentBatchSize;p=this.size&&this.flush()}},F.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var e=this.gl;if(this.currentBaseTexture._glTextures[e.id]){if(this.currentBatchSize>.5*this.size)e.bufferSubData(e.ARRAY_BUFFER,0,this.vertices);else{var t=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);e.bufferSubData(e.ARRAY_BUFFER,0,t)}e.drawElements(e.TRIANGLES,6*this.currentBatchSize,e.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,e)}},F.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},F.WebGLFastSpriteBatch.prototype.start=function(){var e=this.gl;e.activeTexture(e.TEXTURE0),e.bindBuffer(e.ARRAY_BUFFER,this.vertexBuffer),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var t=this.renderSession.projection;e.uniform2f(this.shader.projectionVector,t.x,t.y),e.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var r=4*this.vertSize;e.vertexAttribPointer(this.shader.aVertexPosition,2,e.FLOAT,!1,r,0),e.vertexAttribPointer(this.shader.aPositionCoord,2,e.FLOAT,!1,r,8),e.vertexAttribPointer(this.shader.aScale,2,e.FLOAT,!1,r,16),e.vertexAttribPointer(this.shader.aRotation,1,e.FLOAT,!1,r,24),e.vertexAttribPointer(this.shader.aTextureCoord,2,e.FLOAT,!1,r,28),e.vertexAttribPointer(this.shader.colorAttribute,1,e.FLOAT,!1,r,36),e.vertexAttribPointer(this.shader.aTextureIndex,1,e.FLOAT,!1,r,40)},F.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},F.WebGLFilterManager.prototype.constructor=F.WebGLFilterManager,F.WebGLFilterManager.prototype.setContext=function(e){this.gl=e,this.texturePool=[],this.initShaderBuffers()},F.WebGLFilterManager.prototype.begin=function(e,t){this.renderSession=e,this.defaultShader=e.shaderManager.defaultShader;var r=this.renderSession.projection;this.width=2*r.x,this.height=2*-r.y,this.buffer=t},F.WebGLFilterManager.prototype.pushFilter=function(e){var t=this.gl,r=this.renderSession.projection,i=this.renderSession.offset;e._filterArea=e.target.filterArea||e.target.getBounds(),e._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new F.WebGLStencilManager,this.renderSession.stencilManager.setContext(t),t.disable(t.STENCIL_TEST),this.filterStack.push(e);var s=e.filterPasses[0];this.offsetX+=e._filterArea.x,this.offsetY+=e._filterArea.y;var o=this.texturePool.pop();o?o.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):o=new F.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),t.bindTexture(t.TEXTURE_2D,o.texture);var a=e._filterArea,n=s.padding;a.x-=n,a.y-=n,a.width+=2*n,a.height+=2*n,a.x<0&&(a.x=0),a.width>this.width&&(a.width=this.width),a.y<0&&(a.y=0),a.height>this.height&&(a.height=this.height),t.bindFramebuffer(t.FRAMEBUFFER,o.frameBuffer),t.viewport(0,0,a.width*this.renderSession.resolution,a.height*this.renderSession.resolution),r.x=a.width/2,r.y=-a.height/2,i.x=-a.x,i.y=-a.y,t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),e._glFilterTexture=o},F.WebGLFilterManager.prototype.popFilter=function(){var e=this.gl,t=this.filterStack.pop(),r=t._filterArea,i=t._glFilterTexture,s=this.renderSession.projection,o=this.renderSession.offset;if(1this.baseTexture.width||e.y+e.height>this.baseTexture.height))this.valid=e&&e.width&&e.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!F.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},F.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new F.TextureUvs);var e=this.crop,t=this.baseTexture.width,r=this.baseTexture.height;this._uvs.x0=e.x/t,this._uvs.y0=e.y/r,this._uvs.x1=(e.x+e.width)/t,this._uvs.y1=e.y/r,this._uvs.x2=(e.x+e.width)/t,this._uvs.y2=(e.y+e.height)/r,this._uvs.x3=e.x/t,this._uvs.y3=(e.y+e.height)/r},F.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new F.TextureUvs);var e=this.crop,t=this.baseTexture.width,r=this.baseTexture.height;this._uvs.x0=e.x/t,this._uvs.y0=e.y/r,this._uvs.x1=(e.x+e.height)/t,this._uvs.y1=e.y/r,this._uvs.x2=(e.x+e.height)/t,this._uvs.y2=(e.y+e.width)/r,this._uvs.x3=e.x/t,this._uvs.y3=(e.y+e.width)/r},F.Texture.fromCanvas=function(e,t){var r=F.BaseTexture.fromCanvas(e,t);return new F.Texture(r)},F.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=F),exports.PIXI=F):"undefined"!=typeof define&&define.amd?define("PIXI",e.PIXI=F):e.PIXI=F,F}).call(this); //# sourceMappingURL=pixi.map \ No newline at end of file diff --git a/build/phaser.js b/build/phaser.js index dcd882872..e7710a79f 100644 --- a/build/phaser.js +++ b/build/phaser.js @@ -7,7 +7,7 @@ * * Phaser CE - https://github.com/photonstorm/phaser-ce * -* v2.19.1 "2021-10-13" - Built: Tue Oct 19 2021 11:50:00 +* v2.19.2 "2021-10-25" - Built: Sun Oct 24 2021 17:53:03 * * By Richard Davey http://www.photonstorm.com @photonstorm and Phaser CE contributors * @@ -20139,10 +20139,7 @@ PIXI.WebGLSpriteBatch.prototype.flush = function () gl.vertexAttribPointer(shader.colorAttribute, 4, gl.UNSIGNED_BYTE, true, stride, 16); // Texture index - if (PIXI._enableMultiTextureToggle) - { - gl.vertexAttribPointer(shader.aTextureIndex, 1, gl.FLOAT, false, stride, 20); - } + gl.vertexAttribPointer(shader.aTextureIndex, 1, gl.FLOAT, false, stride, 20); } // upload the verts to the buffer @@ -22615,7 +22612,7 @@ var Phaser = Phaser || { // jshint ignore:line * @constant Phaser.VERSION * @type {string} */ - VERSION: '2.19.1', + VERSION: '2.19.2', /** * An array of Phaser game instances. diff --git a/build/phaser.map b/build/phaser.map index 15b6ca73f..5cdc5d3c5 100644 --- a/build/phaser.map +++ b/build/phaser.map @@ -1 +1 @@ -{"version":3,"sources":["phaser.js"],"names":["e","f","exports","module","window","global","self","p2","t","n","r","s","o","u","a","require","i","Error","call","length","1","_dereq_","Scalar","Line","lineInt","l1","l2","precision","a1","b1","c1","a2","b2","c2","det","eq","segmentsIntersect","p1","q1","q2","dx","dy","da","db","./Scalar","2","Point","area","b","c","left","leftOn","right","rightOn","tmpPoint1","tmpPoint2","collinear","thresholdAngle","ab","bc","dot","magA","Math","sqrt","magB","acos","sqdist","3","Polygon","this","vertices","prototype","at","v","first","last","clear","append","poly","from","to","push","makeCCW","br","reverse","tmp","N","pop","isReflex","tmpLine1","tmpLine2","getIntersectionPoint","delta","canSee","p","dist","copy","j","targetPoly","k","getCutEdges","min","tmp1","tmp2","tmpPoly","nDiags","Number","MAX_VALUE","decomp","edges","slice","cutEdges","Array","polys","cutEdge","result","splice","indexOf","isSimple","path","quickDecomp","reflexVertices","steinerPoints","maxlevel","level","upperInt","lowerInt","upperDist","lowerDist","d","closestDist","upperIndex","lowerIndex","closestIndex","lowerPoly","upperPoly","console","warn","removeCollinearPoints","num","./Line","./Point","4","abs","5","./Polygon","6","name","version","description","author","keywords","main","engines","node","repository","type","url","bugs","licenses","devDependencies","grunt","grunt-contrib-jshint","grunt-contrib-nodeunit","grunt-contrib-uglify","grunt-contrib-watch","grunt-browserify","grunt-contrib-concat","dependencies","poly-decomp","7","vec2","AABB","options","lowerBound","create","upperBound","setFromPoints","points","position","angle","skinSize","l","rotate","cosAngle","cos","sinAngle","sin","x","y","add","aabb","extend","overlaps","u1","u2","containsPoint","point","overlapsRay","ray","dirFracX","direction","dirFracY","t1","t2","t3","t4","tmin","max","tmax","../math/vec2","../utils/Utils","8","Body","Broadphase","world","boundingVolumeType","BOUNDING_CIRCLE","setWorld","getCollisionPairs","boundingRadiusCheck","bodyA","bodyB","sub","d2","squaredLength","boundingRadius","aabbCheck","getAABB","boundingVolumeCheck","canCollide","KINEMATIC","STATIC","sleepState","SLEEPING","NAIVE","SAP","../objects/Body","9","NaiveBroadphase","constructor","bodies","Ncolliding","bi","bj","aabbQuery","aabbNeedsUpdate","updateAABB","../collision/Broadphase","../shapes/Circle","../shapes/Particle","../shapes/Plane","../shapes/Shape","10","ContactEquationPool","FrictionEquationPool","TupleDictionary","Equation","Circle","Convex","Shape","Box","Narrowphase","yAxis","fromValues","tmp3","tmp4","tmp5","tmp6","tmp7","tmp8","tmp9","tmp10","tmp11","tmp12","tmp13","tmp14","tmp15","tmp16","tmp17","tmp18","tmpArray","contactEquations","frictionEquations","enableFriction","enabledEquations","slipForce","frictionCoefficient","surfaceVelocity","contactEquationPool","size","frictionEquationPool","restitution","stiffness","DEFAULT_STIFFNESS","relaxation","DEFAULT_RELAXATION","frictionStiffness","frictionRelaxation","enableFrictionReduction","collidingBodiesLastStep","contactSkinSize","bodiesOverlap_shapePositionA","bodiesOverlap_shapePositionB","setConvexToCapsuleShapeMiddle","convexShape","capsuleShape","set","radius","bodiesOverlap","shapePositionA","shapePositionB","Nshapesi","shapes","shapeA","toWorldFrame","Nshapesj","shapeB","collidedLastStep","id1","id","id2","get","reset","eqs","ce","fe","release","createContactEquation","firstImpact","needsUpdate","enabled","offset","createFrictionEquation","setSlipForce","relativeVelocity","createFrictionFromContact","contactPointA","contactPointB","rotate90cw","normalA","createFrictionFromAverage","numContacts","invNumContacts","scale","normalize","LINE","CONVEX","convexLine","convexBody","convexOffset","convexAngle","lineBody","lineShape","lineOffset","lineAngle","justTest","BOX","lineBox","boxBody","boxShape","boxOffset","boxAngle","convexCapsule_tempRect","width","height","convexCapsule_tempVec","CAPSULE","convexCapsule","convexPosition","capsuleBody","capsulePosition","capsuleAngle","circlePos","result1","circleConvex","result2","convexConvex","lineCapsule","linePosition","capsuleCapsule_tempVec1","capsuleCapsule_tempVec2","capsuleCapsule_tempRect1","capsuleCapsule","si","xi","ai","sj","xj","aj","circlePosi","circlePosj","enableFrictionBefore","circleCircle","rect","lineLine","positionA","angleA","positionB","angleB","PLANE","planeLine","planeBody","planeShape","planeOffset","planeAngle","worldVertex0","worldVertex1","worldVertex01","worldVertex11","worldEdge","worldEdgeUnit","worldNormal","worldTangent","verts","PARTICLE","particleCapsule","particleBody","particleShape","particlePosition","particleAngle","circleLine","CIRCLE","circleBody","circleShape","circleOffset","circleAngle","lineRadius","circleRadius","orthoDist","lineToCircleOrthoUnit","projectedPoint","centerDist","lineToCircle","lineEndToLineRadius","radiusSum","pos","pos0","pos1","pow","circleCapsule","worldVertex","closestEdgeProjectedPoint","candidate","candidateDist","minCandidate","found","minCandidateDistance","v0","v1","pointInConvex","candidateDistance","localVertex","pic_worldVertex0","pic_worldVertex1","pic_r0","pic_r1","worldPoint","r0","r1","lastCross","cross","crossLength","particleConvex","particleOffset","convexToparticle","minEdgeNormal","offsetA","offsetB","radiusA","radiusB","planeConvex","numReported","particlePlane","circleParticle","planeCapsule_tmpCircle","planeCapsule_tmp1","planeCapsule_tmp2","planeCapsule","capsuleOffset","end1","end2","circle","numContacts1","circlePlane","numContacts2","numTotal","planeToCircle","temp","contact","sepAxis","worldPoint0","worldPoint1","penetrationVec","findSeparatingAxis","closestEdge1","getClosestEdge","closestEdge2","closestEdgeA","closestEdgeB","insideNumEdges","pcoa_tmp1","projectConvexOntoAxis","worldAxis","value","localAxis","fsa_tmp1","fsa_tmp2","fsa_tmp3","fsa_tmp4","fsa_tmp5","fsa_tmp6","offset1","angle1","offset2","angle2","maxDist","overlap","edge","normal","span1","span2","gce_tmp1","gce_tmp2","gce_tmp3","axis","flip","closestEdge","maxDot","circleHeightfield_candidate","circleHeightfield_dist","circleHeightfield_v0","circleHeightfield_v1","circleHeightfield_minCandidate","circleHeightfield_worldNormal","circleHeightfield_minCandidateNormal","HEIGHTFIELD","circleHeightfield","hfBody","hfShape","hfPos","hfAngle","data","heights","w","elementWidth","minCandidateNormal","idxA","floor","idxB","ceil","PI","convexHeightfield_v0","convexHeightfield_v1","convexHeightfield_tilePos","convexHeightfield_tempConvexShape","convexHeightfield","convexPos","tilePos","tileConvex","../equations/ContactEquation","../equations/Equation","../equations/FrictionEquation","../shapes/Box","../shapes/Convex","../utils/ContactEquationPool","../utils/FrictionEquationPool","../utils/TupleDictionary","11","Ray","checkCollisionResponse","undefined","skipBackfaces","collisionMask","collisionGroup","mode","ANY","callback","update","CLOSEST","ALL","intersectBodies","shouldStop","body","intersectBody","intersectBody_worldPosition","collisionResponse","worldPosition","shape","worldAngle","intersectShape","intersect","squaredDistance","distanceFromIntersectionSquared","_currentBody","_currentShape","raycast","reportIntersection","fraction","faceIndex","hasHit","../collision/AABB","../collision/RaycastResult","12","RaycastResult","isStopped","getHitDistance","distance","getHitPoint","out","lerp","stop","../collision/Ray","13","Utils","SAPBroadphase","axisList","axisIndex","that","_addBodyHandler","_removeBodyHandler","idx","appendArray","off","on","sortAxisList","sortList","14","Constraint","defaults","collideConnected","wakeUpBodies","equations","wakeUp","DISTANCE","GEAR","LOCK","PRISMATIC","REVOLUTE","setStiffness","setRelaxation","15","DistanceConstraint","localAnchorA","localAnchorB","maxForce","worldAnchorA","worldAnchorB","ri","rj","computeGq","setMaxForce","upperLimitEnabled","upperLimit","lowerLimitEnabled","lowerLimit","normalEquation","G","violating","minForce","rixn","rjxn","getMaxForce","./Constraint","16","AngleLockEquation","GearConstraint","ratio","maxTorque","setMaxTorque","setRatio","torque","getMaxTorque","../equations/AngleLockEquation","17","LockConstraint","localAngleB","rot","g","localOffsetB","force","xAxis","18","ContactEquation","RotationalLockEquation","PrismaticConstraint","localAxisA","trans","gg","updateJacobian","disableRotationalLock","velocity","upperLimitEquation","lowerLimitEquation","motorEquation","motorEnabled","motorSpeed","computeGW","vi","vj","wi","angularVelocity","wj","gmult","worldAxisA","orientedAnchorA","orientedAnchorB","relPosition","enableMotor","disableMotor","setLimits","lower","upper","../equations/RotationalLockEquation","19","RotationalVelocityEquation","RevoluteConstraint","worldPivotA","worldPivotB","pivotA","pivotB","worldPivot","localPivotA","localPivotB","relAngle","setMotorSpeed","speed","getMotorSpeed","../equations/RotationalVelocityEquation","20","./Equation","21","computeB","h","GW","Gq","computeGiMf","relVel","getVelocityAlongNormal","getVelocityAtPoint","subtract","22","ARRAY_TYPE","epsilon","timeStep","multiplier","qi","qj","computeGWlambda","vlambda","wlambda","iMfi","iMfj","fi","ti","angularForce","fj","tj","invMassi","invMassSolve","invMassj","invIi","invInertiaSolve","invIj","multiply","massMultiplier","computeGiMGt","addToWlambda_temp","addToWlambda_Gi","addToWlambda_Gj","addToWlambda","deltalambda","Gi","Gj","computeInvC","eps","23","FrictionEquation","getSlipForce","24","worldVectorA","worldVectorB","25","GiMf","26","EventEmitter","listener","context","_listeners","listeners","has","index","emit","event","listenerArray","target","27","Material","ContactMaterial","materialA","materialB","idCounter","friction","./Material","28","29","PolyK","GetArea","sum","Triangulate","tgs","avl","al","i0","i1","i2","ax","ay","bx","by","cx","cy","earFound","_convex","_PointInTriangle","px","py","v0x","v0y","v1x","v1y","v2x","v2y","dot00","dot01","dot02","dot11","dot12","invDenom","30","crossVZ","vec","zcomp","crossZV","toLocalFrame","framePosition","frameAngle","toGlobalFrame","localPoint","vectorToLocalFrame","worldVector","vectorToGlobalFrame","localVector","centroid","clone","mul","divide","div","sqrDist","len","sqrLen","negate","str","reflect","vector","getLineSegmentsIntersection","p0","p3","getLineSegmentsIntersectionFraction","s1_x","s1_y","s2_x","s2_y","31","_idCounter","mass","invMass","inertia","invInertia","fixedRotation","fixedX","fixedY","interpolatedPosition","interpolatedAngle","previousPosition","previousAngle","damping","angularDamping","DYNAMIC","allowSleep","wantsToSleep","AWAKE","sleepSpeedLimit","sleepTimeLimit","gravityScale","idleTime","timeLastSleepy","ccdSpeedThreshold","ccdIterations","concavePath","_wakeUpAfterNarrowphase","updateMassProperties","updateSolveMassProperties","setDensity","density","totalArea","getArea","shapeAABB","bodyAngle","computeAABB","updateBoundingRadius","addShape","removeShape","m","I","r2","computeMomentOfInertia","applyForce","relativePoint","rotForce","Body_applyForce_forceWorld","Body_applyForce_pointWorld","Body_applyForce_pointLocal","applyForceLocal","localForce","worldForce","vectorToWorldFrame","Body_applyImpulse_velo","applyImpulse","impulseVector","velo","rotVelo","Body_applyImpulse_impulseWorld","Body_applyImpulse_pointWorld","Body_applyImpulse_pointLocal","applyImpulseLocal","localImpulse","worldImpulse","fromPolygon","convexes","optimalDecomp","cm","centerOfMass","updateTriangles","updateCenterOfMass","adjustCenterOfMass","adjustCenterOfMass_tmp2","adjustCenterOfMass_tmp3","adjustCenterOfMass_tmp4","offset_times_area","setZeroForce","resetConstraintVelocity","addConstraintVelocity","applyDamping","dt","wakeUpEvent","sleep","sleepEvent","sleepTick","time","dontSleep","speedSquared","SLEEPY","overlapKeeper","bodiesAreOverlapping","integrate_fhMinv","integrate_velodt","integrate","minv","integrateToTimeOfImpact","end","startToEnd","rememberPosition","hit","startToEndAngle","timeOfImpact","rememberAngle","iter","tmid","narrowphase","sleepyEvent","../events/EventEmitter","32","Spring","LinearSpring","setWorldAnchorA","setWorldAnchorB","getWorldAnchorA","getWorldAnchorB","worldDistance","restLength","applyForce_r","applyForce_r_unit","applyForce_u","applyForce_f","applyForce_worldAnchorA","applyForce_worldAnchorB","applyForce_ri","applyForce_rj","applyForce_tmp","r_unit","rlen","ri_x_f","rj_x_f","./Spring","33","RotationalSpring","restAngle","34","35","TopDownVehicle","chassisBody","wheels","groundBody","preStepCallback","WheelConstraint","vehicle","forwardEquation","sideEquation","steerValue","engineForce","setSideFriction","sideFriction","localForwardVector","localPosition","apply","setBrakeForce","addToWorld","addBody","wheel","addConstraint","removeFromWorld","removeBody","removeConstraint","addWheel","wheelOptions","worldVelocity","getSpeed","tmpVec","../constraints/Constraint","36","Capsule","GSSolver","Heightfield","Particle","Plane","Pool","Solver","World","Object","defineProperty","../package.json","./collision/AABB","./collision/Broadphase","./collision/NaiveBroadphase","./collision/Narrowphase","./collision/Ray","./collision/RaycastResult","./collision/SAPBroadphase","./constraints/Constraint","./constraints/DistanceConstraint","./constraints/GearConstraint","./constraints/LockConstraint","./constraints/PrismaticConstraint","./constraints/RevoluteConstraint","./equations/AngleLockEquation","./equations/ContactEquation","./equations/Equation","./equations/FrictionEquation","./equations/RotationalVelocityEquation","./events/EventEmitter","./material/ContactMaterial","./material/Material","./math/vec2","./objects/Body","./objects/LinearSpring","./objects/RotationalSpring","./objects/Spring","./objects/TopDownVehicle","./shapes/Box","./shapes/Capsule","./shapes/Circle","./shapes/Convex","./shapes/Heightfield","./shapes/Line","./shapes/Particle","./shapes/Plane","./shapes/Shape","./solver/GSSolver","./solver/Solver","./utils/ContactEquationPool","./utils/FrictionEquationPool","./utils/Pool","./utils/Utils","./world/World","37","arguments","axes","updateArea","./Convex","./Shape","38","intersectCapsule_hitPointWorld","intersectCapsule_normal","intersectCapsule_l0","intersectCapsule_l1","intersectCapsule_unit_y","hitPointWorld","l0","halfLen","diagonalLengthSquared","sqrtDelta","inv2a","d1","39","Ray_intersectSphere_intersectionPoint","Ray_intersectSphere_normal","intersectionPoint","40","polyk","isArray","triangles","tmpVec1","tmpVec2","projectOntoLocalAxis","projectOntoWorldAxis","shapeOffset","shapeAngle","polykVerts","id3","updateCenterOfMass_centroid","updateCenterOfMass_centroid_times_mass","updateCenterOfMass_a","updateCenterOfMass_b","updateCenterOfMass_c","centroid_times_mass","triangleArea","denom","numer","intersectConvex_rayStart","intersectConvex_rayEnd","intersectConvex_normal","rayStart","rayEnd","../math/polyk","41","key","maxValue","minValue","updateMaxMinValues","getLineSegment","start","getSegmentIndex","getClampedSegmentIndex","intersectHeightfield_worldNormal","intersectHeightfield_l0","intersectHeightfield_l1","intersectHeightfield_localFrom","intersectHeightfield_localTo","localFrom","localTo","42","raycast_normal","raycast_l0","raycast_l1","raycast_unit_y","43","44","intersectPlane_planePointToFrom","intersectPlane_normal","intersectPlane_len","planePointToFrom","planeToFrom","n_dot_dir","45","material","sensor","46","GS","iterations","tolerance","arrayStep","lambda","Bs","invCs","useZeroRHS","frictionIterations","usedIterations","solve","sortEquations","maxIter","maxFrictionIter","Neq","tolSquared","Nbodies","array","setArrayZero","deltalambdaTot","iterateEquation","updateMultipliers","invDt","B","invC","lambdaj","GWlambda","lambdaj_plus_deltalambda","./Solver","47","equationSortFunction","mockWorld","solveIsland","island","removeAllEquations","addEquations","getBodies","sort","addEquation","removeEquation","ISLAND","48","destroy","equation","./Pool","49","50","IslandNode","IslandNodePool","../world/IslandNode","51","Island","IslandPool","../world/Island","52","OverlapKeeperRecordPool","OverlapKeeper","overlappingShapesLastState","overlappingShapesCurrentState","recordPool","tmpDict","tmpArray1","tick","current","keys","lastObject","getByKey","setOverlapping","getNewOverlaps","getDiff","getEndOverlaps","dictA","dictB","isNewOverlap","idA","idB","getNewBodyOverlaps","getBodyDiff","getEndBodyOverlaps","accumulator","./OverlapKeeperRecord","./OverlapKeeperRecordPool","./TupleDictionary","./Utils","53","OverlapKeeperRecord","54","record","55","objects","resize","object","56","getKey","dict","57","howmany","P2_ARRAY_TYPE","Float32Array","58","bodyIds","59","IslandManager","nodePool","islandPool","islands","nodes","queue","getUnvisitedNode","Nnodes","visited","visit","bds","Neqs","bfs","root","child","neighbors","split","ni","nj","./../utils/IslandNodePool","./../utils/IslandPool","./Island","./IslandNode","60","61","springs","disabledBodyCollisionPairs","solver","islandManager","gravity","frictionGravity","useWorldGravityAsFrictionGravity","useFrictionGravityOnZeroGravity","broadphase","constraints","defaultMaterial","defaultContactMaterial","lastTimeStep","applySpringForces","applyGravity","solveConstraints","contactMaterials","stepping","bodiesToBeRemoved","islandSplit","emitImpactEvent","_constraintIdCounter","_bodyIdCounter","postStepEvent","addBodyEvent","removeBodyEvent","addSpringEvent","spring","impactEvent","contactEquation","postBroadphaseEvent","pairs","sleepMode","NO_SLEEPING","beginContactEvent","endContactEvent","preSolveEvent","BODY_SLEEPING","ISLAND_SLEEPING","constraint","addContactMaterial","contactMaterial","removeContactMaterial","getContactMaterial","cmats","step_mg","xiw","xjw","step","timeSinceLastCalled","maxSubSteps","internalStep","substeps","endOverlaps","Nsprings","np","mg","gravityLen","ignoredPairs","Nconstraints","Nresults","runNarrowphase","ev","glen","reducedMass","aiw","ajw","resolver","numFrictionBefore","numFrictionEquations","speedSquaredB","speedSquaredA","addSpring","evt","removeSpring","getBodyById","disableBodyCollision","enableBodyCollision","cs","cms","hitTest_tmp1","hitTest_tmp2","hitTest","pb","ps","NS","setGlobalStiffness","setGlobalRelaxation","tmpAABB","../../package.json","../collision/Narrowphase","../collision/SAPBroadphase","../constraints/DistanceConstraint","../constraints/GearConstraint","../constraints/LockConstraint","../constraints/PrismaticConstraint","../constraints/RevoluteConstraint","../material/ContactMaterial","../material/Material","../objects/LinearSpring","../objects/RotationalSpring","../shapes/Capsule","../shapes/Line","../solver/GSSolver","../solver/Solver","../utils/OverlapKeeper","./IslandManager","PIXI","DisplayObject","pivot","rotation","alpha","visible","hitArea","renderable","parent","worldAlpha","worldTransform","Phaser","Matrix","worldScale","worldRotation","filterArea","_sr","_cr","_bounds","Rectangle","_currentBounds","_mask","_cacheAsBitmap","_cacheIsDirty","children","_destroyCachedSprite","_destroyTintedTexture","updateTransform","game","tx","ty","pt","wt","PI2","rotationCache","determ","HALF_PI","transformCallback","transformCallbackContext","preUpdate","generateTexture","resolution","scaleMode","renderer","bounds","getLocalBounds","renderTexture","RenderTexture","_tempMatrix","render","updateCache","_generateCachedSprite","toGlobal","toLocal","applyInverse","_renderCachedSprite","renderSession","_cachedSprite","gl","Sprite","_renderWebGL","_renderCanvas","texture","textureUnit","baseTexture","_enableMultiTextureToggle","textureIndex","tempFilters","_filters","filters","anchor","tintedTexture","CanvasPool","removeByCanvas","displayObjectUpdateTransform","defineProperties","worldVisible","item","mask","isMask","passes","filterPasses","_filterBlock","blendMode","blendModes","MULTIPLY","NORMAL","cacheAsBitmap","DisplayObjectContainer","ignoreChildInput","addChild","addChildAt","removeChild","swapChildren","child2","index1","getChildIndex","index2","setChildIndex","currentIndex","getChildAt","removeChildAt","bringChildToTop","sendChildToBack","removeChildren","beginIndex","endIndex","range","removed","displayObjectContainerUpdateTransform","getBounds","targetCoordinateSpace","isTargetCoordinateSpaceDisplayObject","isTargetCoordinateSpaceThisOrParent","contains","matrixCache","identityMatrix","childBounds","childMaxX","childMaxY","minX","Infinity","minY","maxX","maxY","childVisible","w0","w1","h0","h1","x1","y1","x2","y2","x3","y3","x4","y4","targetCoordinateSpaceBounds","spriteBatch","flush","filterManager","pushFilter","maskManager","pushMask","popMask","popFilter","_width","_height","defaultAnchor","Texture","emptyTexture","tint","cachedTint","shader","exists","hasLoaded","onTextureUpdate","frame","setTexture","destroyBase","skipRender","valid","matrix","crop","currentBlendMode","globalCompositeOperation","blendModesCanvas","globalAlpha","smoothProperty","scaleModes","LINEAR","trim","shakeX","shakeY","cw","ch","rotated","roundPixels","setTransform","requiresReTint","CanvasTinter","getTintedTexture","drawImage","source","initDefaultShaders","CompileVertexShader","shaderSrc","_CompileShader","VERTEX_SHADER","CompileFragmentShader","FRAGMENT_SHADER","shaderType","src","join","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","log","getShaderInfoLog","compileProgram","vertexSrc","fragmentSrc","fragmentShader","vertexShader","shaderProgram","createProgram","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","PixiShader","_UID","program","textureCount","firstRun","dirty","attributes","init","initMultitexShader","MAX_TEXTURES","getParameter","MAX_TEXTURE_IMAGE_UNITS","dynamicIfs","defaultVertexSrc","useProgram","uSamplerArray","getUniformLocation","projectionVector","offsetVector","dimensions","aVertexPosition","getAttribLocation","aTextureCoord","colorAttribute","aTextureIndex","indices","tempTexture","createTexture","activeTexture","TEXTURE0","bindTexture","TEXTURE_2D","texImage2D","RGB","UNSIGNED_BYTE","uniform1iv","uniforms","uniformLocation","initUniforms","initDefaultShader","uSampler","usingFilter","uniform","_init","initSampler2D","glMatrix","glValueLength","glFunc","uniformMatrix2fv","uniformMatrix3fv","uniformMatrix4fv","_glTextures","textureData","magFilter","minFilter","wrapS","CLAMP_TO_EDGE","wrapT","format","LUMINANCE","RGBA","repeat","REPEAT","pixelStorei","UNPACK_FLIP_Y_WEBGL","flipY","border","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","TEXTURE_WRAP_S","TEXTURE_WRAP_T","uniform1i","syncUniforms","transpose","z","_dirty","instances","updateTexture","deleteProgram","PixiFastShader","uMatrix","aPositionCoord","aScale","aRotation","StripShader","translationMatrix","attribute","PrimitiveShader","tintColor","ComplexPrimitiveShader","color","glContexts","WebGLRenderer","config","defaultRenderer","extensions","WEBGL","transparent","autoResize","preserveDrawingBuffer","clearBeforeRender","powerPreference","view","canvas","_contextOptions","antialias","failIfMajorPerformanceCaveat","premultipliedAlpha","stencil","projection","shaderManager","WebGLShaderManager","WebGLSpriteBatch","WebGLMaskManager","WebGLFilterManager","stencilManager","WebGLStencilManager","blendModeManager","WebGLBlendModeManager","currentBatchedTextures","drawCount","maxTextureAvailableSpace","initContext","mapBlendModes","getContext","maxTextures","maxTextureSize","MAX_TEXTURE_SIZE","glContextId","disable","DEPTH_TEST","CULL_FACE","enable","BLEND","setContext","compression","etc1","getExtension","pvrtc","s3tc","ETC1","PVRTC","S3TC","setTexturePriority","textureNameCollection","clampPot","potSize","imageCache","cache","_cache","image","imageName","base","stage","contextLost","viewport","bindFramebuffer","FRAMEBUFFER","clearColor","_bgColor","COLOR_BUFFER_BIT","camera","_shake","renderDisplayObject","postRender","displayObject","buffer","setBlendMode","begin","style","updateCompressedTexture","textureMetaData","compressedTexImage2D","glExtensionFormat","NEAREST","mipmap","isPowerOfTwo","LINEAR_MIPMAP_LINEAR","NEAREST_MIPMAP_NEAREST","generateMipmap","_powerOf2","compressionAlgorithm","UNPACK_PREMULTIPLY_ALPHA_WEBGL","remove","blendModesWebGL","modes","ONE","ONE_MINUS_SRC_ALPHA","ADD","SRC_ALPHA","DST_ALPHA","DST_COLOR","SCREEN","OVERLAY","DARKEN","LIGHTEN","COLOR_DODGE","COLOR_BURN","HARD_LIGHT","SOFT_LIGHT","DIFFERENCE","EXCLUSION","HUE","SATURATION","COLOR","LUMINOSITY","getMaxTextureUnit","enableMultiTexture","textureArray","blendModeWebGL","blendFunc","maskData","WebGLGraphics","updateGraphics","_webGL","pushStencil","popStencil","stencilStack","count","graphics","webGLData","bindGraphics","STENCIL_TEST","STENCIL_BUFFER_BIT","colorMask","stencilFunc","ALWAYS","stencilOp","KEEP","INVERT","drawElements","TRIANGLE_FAN","UNSIGNED_SHORT","EQUAL","DECR","INCR","TRIANGLE_STRIP","_currentGraphics","complexPrimitiveShader","setShader","uniform1f","toArray","uniform2f","uniform3fv","Color","hexToRGBArray","bindBuffer","ARRAY_BUFFER","vertexAttribPointer","FLOAT","primitiveShader","ELEMENT_ARRAY_BUFFER","indexBuffer","maxAttibs","attribState","tempAttribState","stack","defaultShader","fastShader","stripShader","creatureShader","CreatureShader","setAttribs","attribs","attribId","enableVertexAttribArray","disableVertexAttribArray","_currentId","currentShader","vertSize","vertexSize","numVerts","numIndices","ArrayBuffer","positions","colors","Uint32Array","Uint16Array","lastIndexCount","drawing","currentBatchSize","currentBaseTexture","textures","shaders","sprites","Filter","vertexBuffer","createBuffer","bufferData","STATIC_DRAW","DYNAMIC_DRAW","sprite","uvs","_uvs","aX","aY","a0","b0","c0","d0","_w1","_w0","_updateUvsInverted","x0","y0","renderTilingSprite","tilingTexture","TextureUvs","tilePosition","tileScaleOffset","offsetX","offsetY","scaleX","tileScale","scaleY","nextTexture","nextBlendMode","nextShader","stride","bufferSubData","subarray","batchSize","blendSwap","shaderSwap","skip","renderBatch","startIndex","TRIANGLES","deleteBuffer","WebGLFastSpriteBatch","maxSize","renderSprite","filterStack","texturePool","initShaderBuffers","filterBlock","_filterArea","_previous_stencil_mgr","filter","FilterTexture","padding","frameBuffer","_glFilterTexture","vertexArray","uvBuffer","uvArray","inputTexture","outputTexture","filterPass","applyFilterPass","sizeX","sizeY","currentFilter","colorBuffer","colorArray","_fbErrors","36054","36055","36057","36061","_CreateFramebuffer","fbStatus","framebuffer","createFramebuffer","depthStencilBuffer","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","framebufferRenderbuffer","DEPTH_STENCIL_ATTACHMENT","renderBuffer","framebufferTexture2D","COLOR_ATTACHMENT0","checkFramebufferStatus","FRAMEBUFFER_COMPLETE","error","targetTexture","DEFAULT","renderbufferStorage","DEPTH_STENCIL","deleteFramebuffer","deleteTexture","CanvasBuffer","clearRect","CanvasMaskManager","save","cacheAlpha","transform","CanvasGraphics","renderGraphicsMask","clip","restore","tintMethod","tintWithMultiply","fillStyle","toString","substr","fillRect","tintWithPerPixel","rgbValues","pixelData","getImageData","pixels","canHandleAlpha","putImageData","CanvasRenderer","CANVAS","refresh","Canvas","getSmoothingPrefix","navigator","isCocoonJS","screencanvas","rgba","removeView","useNew","device","canUseMultiply","BaseTexture","complete","naturalWidth","naturalHeight","forceLoaded","unloadFromGPU","glTexture","fromCanvas","TextureSilentFail","noFrame","isTiling","requiresUpdate","setFrame","onBaseTextureLoaded","_updateUvs","tw","th","define","amd","VERSION","GAMES","AUTO","HEADLESS","WEBGL_MULTI","NONE","LEFT","RIGHT","UP","DOWN","SPRITE","BUTTON","IMAGE","GRAPHICS","TEXT","TILESPRITE","BITMAPTEXT","GROUP","RENDERTEXTURE","TILEMAP","TILEMAPLAYER","EMITTER","POLYGON","BITMAPDATA","CANVAS_FILTER","WEBGL_FILTER","ELLIPSE","SPRITEBATCH","RETROFONT","POINTER","ROPE","RECTANGLE","MATRIX","POINT","ROUNDEDRECTANGLE","CREATURE","VIDEO","PENDING_ATLAS","HORIZONTAL","VERTICAL","LANDSCAPE","PORTRAIT","ANGLE_UP","ANGLE_DOWN","ANGLE_LEFT","ANGLE_RIGHT","ANGLE_NORTH_EAST","ANGLE_NORTH_WEST","ANGLE_SOUTH_EAST","ANGLE_SOUTH_WEST","TOP_LEFT","TOP_CENTER","TOP_RIGHT","LEFT_TOP","LEFT_CENTER","LEFT_BOTTOM","CENTER","RIGHT_TOP","RIGHT_CENTER","RIGHT_BOTTOM","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT","AudioBufferSourceNode","noteGrainOn","noteOff","trunc","Function","bind","thisArg","boundArgs","TypeError","bound","args","concat","F","proto","arg","forEach","fun","CheapArray","assert","assign","varArgs","hasOwn","hasOwnProperty","nextSource","nextKey","reverseString","string","getProperty","obj","parts","_getProperty","setProperties","props","setProperty","_setProperty","val","currentObj","chanceRoll","chance","random","randomChoice","choice1","choice2","parseDimension","dimension","parseInt","innerWidth","innerHeight","pad","dir","padlen","isPlainObject","nodeType","copyIsArray","deep","mixinPrototype","mixin","replace","mixinKeys","childNodes","cloneNode","diameter","_diameter","_radius","circumference","setTo","copyFrom","copyTo","dest","round","output","circumferencePoint","asDegrees","sample","steps","startAngle","endAngle","linear","offsetPoint","top","bottom","equals","intersects","degToRad","intersectsRectangle","halfWidth","halfHeight","xCornerDist","yCornerDist","intersectsLine","returnPoints","del","p0Exists","pointOnSegment","p1Exists","Ellipse","centerX","centerY","normx","normy","fromPoints","fromSprite","startSprite","endSprite","useCenter","fromAngle","rotateAround","line","asSegment","intersectsPoints","midPoint","centerOn","pointOnLine","fuzzyEqual","xMin","xMax","yMin","yMax","coordinatesOnLine","stepRate","results","sx","sy","err","e2","wrap","uc","ua","ub","empty","bx1","by1","bx2","by2","intersectionWithRectangle","edgeIntersection","closestDistance","normalAngle","fromArray","newPos","translate","tx1","identity","invert","setToPolar","azimuth","clampX","clamp","clampY","equalsXY","fuzzyEquals","fuzzyEqualsXY","angleXY","atan2","radToDeg","atan","getMagnitude","getMagnitudeSq","setMagnitude","magnitude","isZero","limit","expand","perp","rperp","normalRightHand","negative","multiplyAdd","interpolate","project","amt","projectUnit","pointslength","parse","xProp","yProp","parseFloat","isPoint","sortClockwise","center","_points","closed","flattened","toNumberArray","flatten","inside","ix","iy","jx","jy","calculateArea","avgHeight","floorAll","ceilAll","copyFromBounds","inflate","containsRect","intersection","intersectsRaw","union","randomX","randomY","getPoint","sides","inflatePoint","createFromBounds","containsRaw","rx","ry","rw","rh","volume","sameDimensions","NEGATIVE_INFINITY","POSITIVE_INFINITY","EmptyRectangle","RoundedRectangle","Camera","deadzone","roundPx","atLimit","totalInView","onShakeComplete","Signal","onFlashComplete","onFadeComplete","fx","_targetPosition","_edge","_position","intensity","duration","horizontal","vertical","shakeBounds","_fxDuration","_fxType","_fixedView","FOLLOW_LOCKON","FOLLOW_PLATFORMER","FOLLOW_TOPDOWN","FOLLOW_TOPDOWN_TIGHT","SHAKE_BOTH","SHAKE_HORIZONTAL","SHAKE_VERTICAL","ENABLE_FX","FLASH","FADE_OUT","FADE_IN","boot","Graphics","follow","lerpX","lerpY","helper","unfollow","focusOn","setPosition","focusOnXY","shake","flash","beginFill","drawRect","endFill","fade","fadeEffect","fadeIn","updateFX","updateShake","checkBounds","dispatch","rnd","frac","updateTarget","math","setBoundsToWorld","vx","vw","vy","vh","setSize","resetFX","State","make","input","load","sound","state","tweens","particles","physics","preload","loadUpdate","loadRender","postUpdate","preRender","paused","resumed","pauseUpdate","shutdown","StateManager","pendingState","states","_pendingState","_clearWorld","_clearCache","_created","_args","onStateChange","onInitCallback","onPreloadCallback","onCreateCallback","onUpdateCallback","onRenderCallback","onResizeCallback","onPreRenderCallback","onLoadUpdateCallback","onLoadRenderCallback","onPausedCallback","onResumedCallback","onPauseUpdateCallback","onShutDownCallback","onPause","pause","onResume","resume","autoStart","newState","isBooted","callbackContext","clearWorld","clearCache","checkState","restart","dummy","clearCurrentState","setCurrentState","totalQueuedFiles","totalQueuedPacks","loadComplete","removeAll","debug","link","unlink","previousStateKey","onPostUpdateCallback","_kickstart","getCurrentState","renderType","_bindings","_prevParams","memorize","_shouldPropagate","active","_boundDispatch","validateListener","fnName","_registerListener","isOnce","listenerContext","priority","binding","prevIndex","_indexOfListener","SignalBinding","_addBinding","execute","_priority","cur","_listener","addOnce","_destroy","getNumListeners","halt","paramsArr","bindings","forget","dispose","_this","signal","_isOnce","_signal","callCount","params","handlerReturn","detach","isBound","getListener","getSignal","prevPoint","Date","mouse","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","sampleRate","iChannel0","iChannel1","iChannel2","iChannel3","setResolution","pointer","toFixed","totalElapsedSeconds","anchorX","anchorY","Cache","Plugin","hasPreUpdate","hasUpdate","hasPostUpdate","hasRender","hasPostRender","PluginManager","plugins","_len","_i","plugin","Stage","disableVisibilityChange","currentRenderOrderID","_hiddenVar","_onChange","parseConfig","backgroundColor","setBackgroundColor","DOM","getOffset","setUserSelect","setTouchAction","checkVisibility","document","hidden","webkitHidden","mozHidden","msHidden","visibilityChange","_onChangePause","_onChangeResume","_onClick","hasFocus","addEventListener","onblur","onfocus","onpagehide","onpageshow","cocoonJSApp","CocoonJS","App","onSuspended","onActivated","focusLoss","focusGain","gamePaused","gameResumed","valueToColor","updateColor","removeEventListener","silent","hash","removeFromHash","Group","addToStage","enableBody","physicsBodyType","Physics","ARCADE","physicsType","alive","ignoreDestroy","pendingDestroy","classType","cursor","inputEnableChildren","updateOnlyExistingChildren","onChildInputDown","onChildInputUp","onChildInputOver","onChildInputOut","enableBodyDebug","physicsSortDirection","onDestroy","cursorIndex","fixedToCamera","cameraOffset","_sortProperty","RETURN_NONE","RETURN_TOTAL","RETURN_CHILD","RETURN_ALL","SORT_ASCENDING","SORT_DESCENDING","updateZ","addToHash","inputEnabled","events","onAddedToGroup$dispatch","addAt","addMultiple","moveAll","getAt","createMultiple","quantity","singleKey","singleFrame","align","cellWidth","cellHeight","alignIn","resetCursor","next","previous","swap","child1","bringToTop","getIndex","sendToBack","moveUp","moveDown","xy","getByName","getFirst","oldChild","newChild","hasProperty","operation","checkProperty","checkAlive","checkVisible","setAll","setAllChildren","checkAll","checkAny","addAll","property","amount","subAll","multiplyAll","divideAll","kill","killAll","callAllExists","revive","reviveAll","resetAll","checkExists","resetChild","existsValue","callbackFromArray","callAll","method","methodLength","contextLength","renderOrderID","predicate","ArraySet","forEachExists","iterate","forEachAlive","forEachDead","order","ascendingSortHandler","descendingSortHandler","customSort","sortHandler","returnType","total","getFirstExists","createIfNull","getFirstAlive","getFirstDead","loadTexture","getTop","getBottom","getClosestTo","tempDistance","getFurthestFrom","countLiving","countDead","getRandom","ArrayUtils","getRandomItem","getRandomExists","list","getAll","pick","destroyPhase","onRemovedFromGroup$dispatch","group","destroyTexture","removeBetween","scatter","shuffle","destroyChildren","soft","_definedSize","stateChange","setBounds","useBounds","wrapAll","between","Game","physicsConfig","multiTexture","isRunning","raf","Device","lockRender","pendingStep","stepCount","onBlur","onFocus","onBoot","_paused","_codePaused","_focusGained","currentUpdateID","updatesThisFrame","rendersThisFrame","_deltaTime","_lastCount","_spiraling","fpsProblemNotifier","forceSingleUpdate","forceSingleRender","dropFrames","_nextFpsNotification","enableDebug","RandomDataGenerator","now","whenReady","seed","ScaleManager","setUpRenderer","GameObjectFactory","GameObjectCreator","Loader","Time","TweenManager","Input","SoundManager","Particles","Create","Debug","noop","isDisabled","showDebugHeader","forceSetTimeOut","RequestAnimationFrame","focusWindow","disableStart","isReady","onReady","PhaserGlobal","hideBanner","webAudio","ie","canvasID","canvasStyle","crisp","setImageRenderingCrisp","webGL","contextRestored","webGLRendererError","cocoonJS","smoothed","addToDOM","preventDefault","clearGLTextures","updateLogic","desiredFpsMult","updateRender","elapsed","deltaMax","slowMotion","fixedStepSize","enableStep","disableStep","removeFromDOM","cordova","iOS","focus","stopFocus","muteOnPause","setMute","unsetMute","hitCanvas","hitContext","moveCallbacks","customCandidateHandler","customCandidateHandlerContext","pollRate","multiInputOverride","MOUSE_TOUCH_COMBINE","maxPointers","tapRate","doubleTapRate","holdRate","justPressedRate","justReleasedRate","recordPointerHistory","recordRate","recordLimit","touchLockCallbacks","pointer1","pointer2","pointer3","pointer4","pointer5","pointer6","pointer7","pointer8","pointer9","pointer10","pointers","activePointer","mousePointer","keyboard","touch","mspointer","gamepad","resetLocked","onDown","onUp","onTap","onHold","minPriorityID","interactiveItems","_localPoint","_pollCounter","_oldPosition","_x","_y","MOUSE_OVERRIDES_TOUCH","TOUCH_OVERRIDES_MOUSE","MAX_POINTERS","Pointer","PointerMode","CURSOR","addPointer","Mouse","Touch","MSPointer","mouseWheel","MouseWheel","pointerLock","PointerLock","Keyboard","Gamepad","_onClickTrampoline","onClickTrampoline","setInteractiveCandidateHandler","addMoveCallback","addTouchLockCallback","onEnd","removeTouchLockCallback","executeTouchLockCallbacks","cb","deleteMoveCallback","CONTACT","hard","resetSpeed","startPointer","countActivePointers","updatePointer","identifier","move","stopPointer","getPointer","isActive","getPointerFromIdentifier","getPointerFromId","pointerId","getLocalPosition","Creature","TileSprite","graphicsData","fill","processClickTrampolines","handler","mouseDownCallback","mouseUpCallback","mouseOutCallback","mouseOverCallback","capture","stopOnGameOut","_onMouseDown","_onMouseMove","_onMouseUp","_onMouseOut","_onMouseOver","NO_BUTTON","LEFT_BUTTON","MIDDLE_BUTTON","RIGHT_BUTTON","BACK_BUTTON","FORWARD_BUTTON","isAndroidStockBrowser","onMouseDown","onMouseMove","onMouseUp","_onMouseUpGlobal","onMouseUpGlobal","_onMouseOutGlobal","onMouseOutGlobal","onMouseOut","onMouseOver","mouseMoveCallback","withinGame","resetButtons","updateButtons","element","wheelEventName","wheelEvent","boundOnWheelHandler","onWheelHandler","eventProxy","WheelEventProxy","bindEvent","deltaY","pointerDownCallback","pointerMoveCallback","pointerUpCallback","pointerOutCallback","pointerOverCallback","pointerCancelCallback","_onMSPointerDown","_onMSPointerMove","_onMSPointerUp","_onMSPointerUpGlobal","_onMSPointerOut","_onMSPointerOver","onPointerDown","onPointerMove","onPointerUp","onPointerUpGlobal","onPointerOut","onPointerOver","_onMSPointerCancel","onPointerCancel","isMousePointerEvent","getPointerFromEvent","pointerType","DeviceButton","buttonCode","isDown","isUp","timeDown","timeUp","repeats","altKey","shiftKey","ctrlKey","onFloat","startStop","condition","padFloat","justPressed","justReleased","pointerMode","button","leftButton","middleButton","rightButton","backButton","forwardButton","eraserButton","ERASER_BUTTON","_holdSent","_history","_nextDrop","_stateReset","clientX","clientY","pageX","pageY","screenX","screenY","rawMovementX","rawMovementY","movementX","movementY","isMouse","previousTapTime","totalTouches","msSinceLastClick","targetObject","interactiveCandidates","positionDown","positionUp","_clickTrampolines","_trampolineTargetObject","processButtonsDown","processButtonsUp","processButtonsUpDown","buttons","toLowerCase","down","totalActivePointers","_touchedHandler","processInteractiveObjects","shift","fromClick","pollLocked","locked","mozMovementX","webkitMovementX","mozMovementY","webkitMovementY","noPause","isDragged","highestRenderOrderID","highestInputPriorityID","candidateTarget","currentNode","checked","validForInput","checkPointerDown","checkPointerOver","priorityID","swapTarget","newTarget","_pointerOutHandler","_pointerOverHandler","leave","doubleTap","currentPointers","addClickTrampoline","callbackArgs","trampolines","trampoline","_releasedHandler","resetMovement","PointerModes","touchStartCallback","touchMoveCallback","touchEndCallback","touchEnterCallback","touchLeaveCallback","touchCancelCallback","_onTouchStart","_onTouchMove","_onTouchEnd","_onTouchEnter","_onTouchLeave","_onTouchCancel","onTouchStart","onTouchMove","onTouchEnd","onTouchEnter","onTouchLeave","onTouchCancel","consumeDocumentTouches","_documentTouchMove","changedTouches","InputHandler","useHandCursor","_setHandCursor","allowHorizontalDrag","allowVerticalDrag","snapOffset","snapOnDrag","snapOnRelease","snapX","snapY","snapOffsetX","snapOffsetY","pixelPerfectOver","pixelPerfectClick","pixelPerfectAlpha","draggable","boundsRect","boundsSprite","scaleLayer","dragOffset","dragFromCenter","dragStopBlocksInputUp","dragStartPoint","dragDistanceThreshold","dragTimeThreshold","downPoint","snapPoint","_dragPoint","_dragPhase","_pendingDrag","_dragTimePass","_dragDistancePass","_wasEnabled","_tempPoint","_pointerData","camX","camY","isOver","isOut","timeOver","timeOut","downDuration","onAddedToGroup","addedToGroup","onRemovedFromGroup","removedFromGroup","highestID","highestRenderID","includePixelPerfect","isPixelPerfect","pointerX","pointerY","pointerDown","pointerUp","pointerTimeDown","pointerTimeUp","pointerOver","pointerOut","pointerTimeOver","pointerTimeOut","pointerDragged","fastTest","checkPixel","_dx","_dy","startDrag","_draggedPointerID","updateDrag","sendEvent","onInputOver$dispatch","onInputOut$dispatch","onInputDown$dispatch","dragTimeElapsed","onInputUp$dispatch","stopDrag","fromStart","dragPoint","pointerData","pointerLocalCoord","globalToLocal","prevX","prevY","checkBoundsRect","checkBoundsSprite","onDragUpdate","justOver","delay","overDuration","justOut","enableDrag","lockCenter","pixelPerfect","alphaThreshold","disableDrag","boundsCenterLocalCoord","onDragStart$dispatch","globalToLocalX","grid","boundsFluid","scaleFluidInversed","globalToLocalY","globalCoord","onDragStop$dispatch","setDragLock","allowHorizontal","allowVertical","enableSnap","onDrag","onRelease","disableSnap","onChange","onError","boundOnChangeHandler","onChangeHandler","boundOnErrorHandler","onErrorHandler","pointerLockElement","pointerlockchange","pointerlockerror","requestPointerLock","mozRequestPointerLock","webkitRequestPointerLock","exitPointerLock","mozExitPointerLock","webkitExitPointerLock","request","exit","_gamepadIndexMap","_rawPads","_active","_gamepadSupportAvailable","webkitGetGamepads","webkitGamepads","userAgent","getGamepads","_prevRawGamepadTypes","_prevTimestamps","onConnectCallback","onDisconnectCallback","onDownCallback","onUpCallback","onAxisCallback","onFloatCallback","_ongamepadconnected","_gamepaddisconnected","_gamepads","SinglePad","addCallbacks","callbacks","onConnect","onDisconnect","onAxis","_onGamepadConnected","onGamepadConnected","_onGamepadDisconnected","onGamepadDisconnected","newPad","connect","removedPad","disconnect","_pollGamepads","pad1","pollStatus","pad2","pad3","pad4","rawGamepads","gamepadsChanged","_rawPad","singlePad","validConnections","rawIndices","padIndices","connected","rawPad","setDeadZones","deadZone","BUTTON_0","BUTTON_1","BUTTON_2","BUTTON_3","BUTTON_4","BUTTON_5","BUTTON_6","BUTTON_7","BUTTON_8","BUTTON_9","BUTTON_10","BUTTON_11","BUTTON_12","BUTTON_13","BUTTON_14","BUTTON_15","AXIS_0","AXIS_1","AXIS_2","AXIS_3","AXIS_4","AXIS_5","AXIS_6","AXIS_7","AXIS_8","AXIS_9","XBOX360_A","XBOX360_B","XBOX360_X","XBOX360_Y","XBOX360_LEFT_BUMPER","XBOX360_RIGHT_BUMPER","XBOX360_LEFT_TRIGGER","XBOX360_RIGHT_TRIGGER","XBOX360_BACK","XBOX360_START","XBOX360_STICK_LEFT_BUTTON","XBOX360_STICK_RIGHT_BUTTON","XBOX360_DPAD_LEFT","XBOX360_DPAD_RIGHT","XBOX360_DPAD_UP","XBOX360_DPAD_DOWN","XBOX360_STICK_LEFT_X","XBOX360_STICK_LEFT_Y","XBOX360_STICK_RIGHT_X","XBOX360_STICK_RIGHT_Y","PS3XC_X","PS3XC_CIRCLE","PS3XC_SQUARE","PS3XC_TRIANGLE","PS3XC_L1","PS3XC_R1","PS3XC_L2","PS3XC_R2","PS3XC_SELECT","PS3XC_START","PS3XC_STICK_LEFT_BUTTON","PS3XC_STICK_RIGHT_BUTTON","PS3XC_DPAD_UP","PS3XC_DPAD_DOWN","PS3XC_DPAD_LEFT","PS3XC_DPAD_RIGHT","PS3XC_STICK_LEFT_X","PS3XC_STICK_LEFT_Y","PS3XC_STICK_RIGHT_X","PS3XC_STICK_RIGHT_Y","padParent","_padParent","_prevTimestamp","_buttons","_buttonsLen","_axes","_axesLen","getButton","timestamp","rawButtonVal","isNaN","processButtonDown","processButtonUp","processButtonFloat","processAxisChange","triggerCallback","disconnectingIndex","axisCode","buttonValue","Key","keycode","_enabled","durationUp","keyCode","onHoldCallback","onHoldContext","_justDown","_justUp","processKeyDown","processKeyUp","upDuration","pressEvent","onPressCallback","_keys","_capture","_onKeyDown","_onKeyPress","_onKeyUp","_k","onPress","removeCallbacks","addKey","addKeyCapture","addKeys","removeKey","removeKeyCapture","createCursorKeys","up","KeyCode","processKeyPress","clearCaptures","String","fromCharCode","charCode","A","charCodeAt","C","D","E","H","J","K","L","M","O","P","Q","R","S","T","U","V","W","X","Y","Z","ZERO","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","NUMPAD_0","NUMPAD_1","NUMPAD_2","NUMPAD_3","NUMPAD_4","NUMPAD_5","NUMPAD_6","NUMPAD_7","NUMPAD_8","NUMPAD_9","NUMPAD_MULTIPLY","NUMPAD_ADD","NUMPAD_ENTER","NUMPAD_SUBTRACT","NUMPAD_DECIMAL","NUMPAD_DIVIDE","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","F13","F14","F15","COLON","EQUALS","COMMA","UNDERSCORE","PERIOD","QUESTION_MARK","TILDE","OPEN_BRACKET","BACKWARD_SLASH","CLOSED_BRACKET","QUOTES","BACKSPACE","TAB","CLEAR","ENTER","SHIFT","CONTROL","ALT","CAPS_LOCK","ESC","SPACEBAR","PAGE_UP","PAGE_DOWN","END","HOME","PLUS","MINUS","INSERT","DELETE","HELP","NUM_LOCK","match","prop","Component","Angle","wrapAngle","Animation","play","frameRate","loop","killOnComplete","animations","AutoCull","autoCull","inCamera","checkWorldBounds","Bounds","container","alignTo","BringToTop","Core","install","components","Events","PhysicsBody","AnimationManager","LoadTexture","FixedToCamera","previousRotation","preUpdateChildren","fresh","_exists","P2JS","customRender","Crop","cropRect","_crop","updateCrop","resetFrame","oldX","oldY","oldW","oldH","_frame","Delta","deltaX","deltaZ","Destroy","onDestroy$dispatch","removeFrom","Video","onChangeSource","resizeFrame","BitmapText","_glyphs","_parent","_onDestroy","_onAddedToGroup","_onRemovedFromGroup","_onKilled","_onRevived","_onEnterBounds","_onOutOfBounds","_onInputOver","_onInputOut","_onInputDown","_onInputUp","_onDragStart","_onDragUpdate","_onDragStop","_onAnimationStart","_onAnimationComplete","_onAnimationLoop","onKilled","onRevived","onOutOfBounds","onEnterBounds","onInputOver","onInputOut","onInputDown","onInputUp","onDragStart","onDragStop","onAnimationStart","onAnimationComplete","onAnimationLoop","backing","_fixedToCamera","Health","health","maxHealth","damage","setHealth","heal","InCamera","InputEnabled","InWorld","outOfCameraBoundsKill","_outOfBoundsFired","onEnterBounds$dispatch","onOutOfBounds$dispatch","outOfBoundsKill","inWorld","LifeSpan","lifespan","onRevived$dispatch","onKilled$dispatch","stopAnimation","BitmapData","hasFrameData","loadFrameData","getFrameData","frameData","Tilemap","TilemapLayer","img","getImage","trimmed","spriteSourceSizeX","spriteSourceSizeY","sourceSizeW","sourceSizeH","refreshTexture","frameName","Overlap","_reset","Reset","ScaleMinMax","scaleMin","scaleMax","checkTransform","setScaleMinMax","Smoothed","existing","weapon","bulletClass","Weapon","createBullets","Image","creature","mesh","animation","useFlatData","tween","physicsGroup","SpriteBatch","audio","audioSprite","addSprite","tileSprite","rope","Rope","text","Text","overFrame","outFrame","downFrame","upFrame","Button","emitter","maxParticles","Arcade","Emitter","retroFont","font","characterWidth","characterHeight","chars","charsPerRow","xSpacing","ySpacing","xOffset","yOffset","RetroFont","bitmapText","tilemap","tileWidth","tileHeight","addToCache","uuid","addRenderTexture","video","bitmapData","addBitmapData","Tween","preUpdatePhysics","preUpdateLifeSpan","preUpdateInWorld","preUpdateCore","_onOverFrame","_onOutFrame","_onDownFrame","_onUpFrame","onOverSound","onOutSound","onDownSound","onUpSound","onOverSoundMarker","onOutSoundMarker","onDownSoundMarker","onUpSoundMarker","onOverMouseOnly","justReleasedPreventsOver","freezeFrames","forceOut","setFrames","onInputOverHandler","onInputOutHandler","onInputDownHandler","onInputUpHandler","STATE_OVER","STATE_OUT","STATE_DOWN","STATE_UP","clearFrames","setStateFrame","switchImmediately","frameKey","changeStateFrame","setStateSound","marker","soundKey","markerKey","Sound","AudioSprite","playStateSound","setSounds","overSound","overMarker","downSound","downMarker","outSound","outMarker","upSound","upMarker","setOverSound","setOutSound","setDownSound","setUpSound","fastSpriteBatch","ready","isRotated","childTransform","skipPool","ctx","imageData","FrameData","textureFrame","addFrame","Frame","disableTextureUpload","cls","_image","_pos","_size","_scale","_rotate","_alpha","prev","_anchor","_tempR","_tempG","_tempB","_circle","_swapCanvas","moveH","moveV","draw","getBase64","encoderOptions","toDataURL","onLoadCallback","onErrorCallback","onload","onerror","addImage","processPixelRGB","pixel","createColor","unpackPixel","getPixel32","setPixel32","processPixel","replaceRGB","g1","g2","region","packPixel","setHSL","bHaveH","bHaveS","bHaveL","HSLtoRGB","shiftHSL","red","green","blue","immediate","LITTLE_ENDIAN","setPixel","getPixel","getPixelRGB","hsl","hsv","getPixels","getFirstPixel","scan","newWidth","newHeight","getCanvas","op","copyTransform","copyRect","drawGroup","drawGroupProxy","drawFull","renderGraphics","shadow","blur","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","alphaMask","sourceRect","maskRect","blendSourceAtop","blendReset","extract","destination","prevFont","fillText","beginPath","arc","closePath","moveTo","lineTo","lineWidth","strokeStyle","stroke","polygon","textureLine","createPattern","blendSourceOver","blendSourceIn","blendSourceOut","blendDestinationOver","blendDestinationIn","blendDestinationOut","blendDestinationAtop","blendXor","blendAdd","blendMultiply","blendScreen","blendOverlay","blendDarken","blendLighten","blendColorDodge","blendColorBurn","blendHardLight","blendSoftLight","blendDifference","blendExclusion","blendHue","blendSaturation","blendColor","blendLuminosity","copyBitmapData","destRowStart","getSmoothingEnabled","setSmoothingEnabled","getTransform","translateX","translateY","skewX","skewY","EarCut","holeIndices","dim","hasHoles","outerLen","outerNode","linkedList","eliminateHoles","earcutLinked","clockwise","insertNode","filterPoints","again","steiner","removeNode","ear","pass","indexCurve","isEarHashed","isEar","cureLocalIntersections","splitEarcut","pointInTriangle","minTX","minTY","maxTX","maxTY","minZ","zOrder","maxZ","nextZ","prevZ","locallyInside","isValidDiagonal","splitPolygon","getLeftmost","compareX","eliminateHole","hole","findHoleBridge","hx","hy","qx","tan","tanMin","sortLinked","q","tail","numMerges","pSize","qSize","inSize","leftmost","intersectsPolygon","middleInside","Node","an","bp","stencilBufferLimit","lastIndex","clearDirty","graphicsDataPool","switchMode","buildPoly","buildComplexPoly","buildLine","buildRectangle","buildCircle","buildRoundedRectangle","upload","WebGLGraphicsData","rectData","fillColor","fillAlpha","vertPos","tempPoints","rrectData","recPoints","quadraticBezierCurve","vecPos","fromX","fromY","cpX","cpY","toX","toY","xa","ya","xb","yb","getPt","n1","n2","perc","circleData","seg","totalSegs","firstPoint","lastPoint","midPointX","midPointY","unshift","p1x","p1y","p2x","p2y","p3x","p3y","perpx","perpy","perp2x","perp2y","perp3x","perp3y","indexCount","indexStart","lineColor","lineAlpha","glPoints","glIndicies","updateGraphicsTint","_fillTint","_lineTint","strokeRect","ox","oy","xe","ye","xm","ym","bezierCurveTo","maxRadius","quadraticCurveTo","tintR","tintG","tintB","GraphicsData","currentPath","boundsPadding","_localBounds","_boundsDirty","webGLDirty","cachedSpriteDirty","updateLocalBounds","drawTriangle","cull","triangle","cameraToFace","faceNormal","drawPolygon","drawTriangles","point1","point2","point3","lineStyle","drawShape","cpX2","cpY2","dt2","dt3","arcTo","mm","dd","cc","tt","k1","k2","j1","j2","qy","anticlockwise","segments","sweep","segs","startX","startY","filling","theta","theta2","cTheta","sTheta","segMinus","remainder","drawRoundedRect","drawCircle","drawEllipse","canvasBuffer","updateCachedSpriteTexture","_prevTint","tempPoint","getVisualBounds","cachedSprite","destroyCachedSprite","textureBuffer","tempMatrix","renderXY","renderRawXY","updateBase","realResolution","webGLPixels","Uint8Array","readPixels","tempCanvas","canvasData","textBounds","strokeColors","fontStyles","fontWeights","autoRound","useAdvancedWrap","splitRegExp","characterLimitSize","characterLimitSuffix","_testString","_res","_text","_fontComponents","_lineSpacing","_charCount","setStyle","updateText","setShadow","shadowStroke","shadowFill","newStyle","boundsAlignH","boundsAlignV","strokeThickness","wordWrap","wordWrapWidth","maxLines","tabs","fontProperties","fontToComponents","fontStyle","fontVariant","fontWeight","fontSize","componentsToFont","testString","outputText","substring","runWordWrap","lines","lineWidths","maxLineWidth","determineFontProperties","drawnLines","measureLine","measureText","tab","section","snapToCeil","linePositionX","linePositionY","lineHeight","lineSpacing","textBaseline","lineCap","lineJoin","ascent","updateLine","updateShadow","strokeText","renderTabLine","snap","lineLength","letter","clearColors","clearFontValues","addColor","addStrokeColor","addFontStyle","addFontWeight","weight","precalculateWordWrap","advancedWordWrap","basicWordWrap","linesCount","currentLineWidth","words","word","wordWithSpace","wordWidth","newWord","secondPart","spaceLeft","wordWidthWithSpace","updateFont","family","exec","fontFamily","setText","parseList","setTextBounds","properties","fontPropertiesCache","fontPropertiesContext","testStringMetrics","actualBoundingBoxAscent","asc","descent","desc","actualBoundingBoxDescent","mxWidth","setCharacterLimit","characterLimit","suffix","fontPropertiesCanvas","createElement","textWidth","textHeight","_prevAnchor","_maxWidth","_data","getBitmapFont","_font","_fontSize","_align","_letterSpacing","_tint","sourceWidth","sourceHeight","scanLine","lastSpace","wrappedWidth","prevCharCode","maxWidth","test","charAt","charData","kerning","xAdvance","letterSpacing","cleanText","purgeGlyphs","kept","checkImageKey","characterSpacingX","characterSpacingY","characterPerRow","multiLine","autoUpperCase","customSpacingX","customSpacingY","fixedWidth","fontSet","grabData","currentX","currentY","updateFrameData","stamp","ALIGN_LEFT","ALIGN_RIGHT","ALIGN_CENTER","TEXT_SET1","TEXT_SET2","TEXT_SET3","TEXT_SET4","TEXT_SET5","TEXT_SET6","TEXT_SET7","TEXT_SET8","TEXT_SET9","TEXT_SET10","TEXT_SET11","setFixedWidth","lineAlignment","content","characterSpacing","allowLowerCase","buildRetroFontText","getLongestLine","pasteLine","longestLine","removeUnsupportedCharacters","stripCR","newString","aChar","code","updateOffset","diffX","diffY","frames","getFrames","newText","toUpperCase","_hasUpdateAnimation","_updateAnimationCallback","canvasPadding","drawMode","updateAnimation","nextPoint","perpLength","_vertexBuffer","_initWebGL","_renderStrip","_indexBuffer","_uvBuffer","_colorBuffer","_renderCanvasTriangleStrip","_renderCanvasTriangles","_renderCanvasDrawTriangle","index0","textureSource","textureWidth","textureHeight","u0","v2","paddingX","paddingY","normX","normY","deltaA","deltaB","deltaC","deltaD","deltaE","deltaF","renderStripFlat","strip","rawX","rawY","_updateAnimation","difference","_scroll","textureDebug","tilePattern","frameWidth","frameHeight","autoScroll","stopScroll","generateTilingTexture","restartBatch","sessionBlendMode","forcePowerOfTwo","targetWidth","targetHeight","getNextPowerOfTwo","pool","getTotal","getFree","deviceReadyAt","initialized","desktop","iOSVersion","nodeWebkit","electron","ejecta","crosswalk","android","chromeOS","linux","macOS","windows","windowsPhone","canvasBitBltShift","file","fileSystem","localStorage","worker","css3D","typedArray","vibration","getUserMedia","quirksMode","arora","chrome","chromeVersion","epiphany","firefox","firefoxVersion","ieVersion","trident","tridentVersion","mobileSafari","midori","opera","safari","safariVersion","webApp","silk","audioData","ogg","opus","mp3","wav","m4a","webm","dolby","oggVideo","h264Video","mp4Video","webmVideo","vp9Video","hlsVideo","iPhone","iPhone4","iPad","pixelRatio","littleEndian","support32bit","fullscreen","requestFullscreen","cancelFullscreen","fullscreenKeyboard","onInitialized","nonPrimer","readyCheck","_readyCheck","_monitor","_queue","readyState","setTimeout","_initialize","vita","kindle","RegExp","$1","_checkOS","$3","standalone","process","versions","_checkBrowser","AudioContext","webkitAudioContext","audioElement","canPlayType","major","minor","$2","_checkAudio","videoElement","_checkVideo","has3d","el","transforms","webkitTransform","OTransform","msTransform","MozTransform","insertBefore","getComputedStyle","getPropertyValue","_checkCSS3D","devicePixelRatio","Int8Array","Uint8ClampedArray","Int32Array","createImageData","_checkIsUint8ClampedImageData","vibrate","webkitVibrate","mozVibrate","msVibrate","CanvasRenderingContext2D","getItem","File","FileReader","FileList","Blob","requestFileSystem","WebGLRenderingContext","Worker","compatMode","webkitGetUserMedia","mozGetUserMedia","msGetUserMedia","oGetUserMedia","URL","webkitURL","mozURL","msURL","_checkFeatures","s1","s2","_checkCanvasFeatures","fs","cfs","Element","ALLOW_KEYBOARD_INPUT","_checkFullScreenSupport","documentElement","maxTouchPoints","PointerEvent","MSPointerEvent","msPointerEnabled","pointerEnabled","canPlayAudio","canPlayVideo","needsTouchUnlock","fakeiOSTouchLock","matches","display","msTouchAction","overflowHidden","getElementById","overflow","appendChild","parentNode","vendor","prefix","types","msInterpolationMode","setImageRenderingBicubic","vendors","requestAnimationFrame","cancelAnimationFrame","_isSetTimeOut","_onLoop","_timeOutID","updateSetTimeout","updateRAF","rafTime","timeToCall","clearTimeout","isSetTimeOut","isRAF","DEG_TO_RAD","RAD_TO_DEG","degrees","radians","fuzzyLessThan","fuzzyGreaterThan","fuzzyCeil","fuzzyFloor","average","shear","snapTo","gap","snapToFloor","roundTo","place","floorTo","ceilTo","isFinite","rotateToAngle","currentAngle","targetAngle","getShortestAngle","angleBetween","angleBetweenY","angleBetweenPoints","angleBetweenPointsY","reverseAngle","angleRad","normalizeAngle","maxAdd","minSub","wrapValue","isOdd","isEven","minProperty","maxProperty","linearInterpolation","bezierInterpolation","bernstein","catmullRomInterpolation","catmullRom","factorial","res","roundAwayFromZero","sinCosGenerator","sinAmplitude","cosAmplitude","frequency","frq","cosTable","sinTable","hypot","distanceSq","distancePow","clampBottom","within","mapLinear","smoothstep","smootherstep","sign","percent","seeds","s0","sow","integer","real","integerInRange","realInRange","ary","weightedPick","QuadTree","maxObjects","maxLevels","_empty","subWidth","subHeight","populate","populateHandler","insert","retrieve","returnObjects","_tweens","_add","easeMap","Power0","Easing","Power1","Power2","Power3","Power4","Linear","None","Quad","Quadratic","Out","Cubic","Quart","Quartic","Quint","Quintic","Sine","Sinusoidal","Expo","Exponential","Circ","Circular","Elastic","Back","Bounce","Quad.easeIn","In","Cubic.easeIn","Quart.easeIn","Quint.easeIn","Sine.easeIn","Expo.easeIn","Circ.easeIn","Elastic.easeIn","Back.easeIn","Bounce.easeIn","Quad.easeOut","Cubic.easeOut","Quart.easeOut","Quint.easeOut","Sine.easeOut","Expo.easeOut","Circ.easeOut","Elastic.easeOut","Back.easeOut","Bounce.easeOut","Quad.easeInOut","InOut","Cubic.easeInOut","Quart.easeInOut","Quint.easeInOut","Sine.easeInOut","Expo.easeInOut","Circ.easeInOut","Elastic.easeInOut","Back.easeInOut","Bounce.easeInOut","_pauseAll","_resumeAll","pendingDelete","_manager","addTweens","numTweens","deltaTotal","isTweening","checkIsRunning","some","_pause","_resume","pauseAll","resumeAll","manager","timeline","timeScale","repeatCounter","onStart","onLoop","onRepeat","onChildComplete","onComplete","chainedTween","isPaused","_onUpdateCallback","_onUpdateCallbackContext","_pausedTime","_hasStarted","ease","yoyo","Default","TweenData","vEnd","loadValues","updateTweenData","repeatDelay","yoyoDelay","easing","interpolation","repeatAll","chain","startTime","status","PENDING","RUNNING","LOOPED","COMPLETE","generateData","vStart","vStartCache","vEndCache","repeatTotal","inReverse","easingFunction","interpolationFunction","interpolationContext","isFrom","ms","fps","blob","reversed","elapsedMS","_desiredFps","suggestedFps","desiredFps","advancedTiming","updates","renders","ups","rps","fpsMin","fpsMax","msMin","msMax","pauseDuration","timeExpected","Timer","_frameCount","_elapsedAccumulator","_started","_timeLastSecond","_pauseStarted","_timers","timer","autoDestroy","previousDateNow","previousNow","updateAdvancedTiming","updateTimers","interval","elapsedSince","since","elapsedSecondsSince","running","expired","nextTick","_pauseTotal","_now","_marked","_diff","_newTick","MINUTE","SECOND","HALF","QUARTER","repeatCount","TimerEvent","clearEvents","clearPendingEvents","adjustEvents","baseTime","currentFrame","currentAnim","updateIfVisible","isLoaded","_frameData","_anims","_outputFrames","anim","copyFrameData","useNumericIndex","getFrameIndexes","validateFrames","checkFrameName","isPlaying","getAnimation","refreshFrame","gotFrame","getFrame","getFrameByName","_frameIndex","_frames","loopCount","isFinished","_pauseStartTime","_frameDiff","_frameSkip","onUpdate","isReversed","_timeLastFrame","_timeNextFrame","updateCurrentFrame","onAnimationStart$dispatch","reverseOnce","frameId","useLocalFrameIndex","frameIndex","directionalOffset","dispatchComplete","onAnimationComplete$dispatch","diff","onAnimationLoop$dispatch","signalUpdate","fromPlay","generateFrameNames","zeroPad","spriteSourceSizeW","spriteSourceSizeH","setTrim","actualWidth","actualHeight","destX","destY","destWidth","destHeight","getRect","_frameNames","getFrameRange","AnimationParser","spriteSheet","frameMax","margin","spacing","skipFrames","row","column","totalAvailable","lastAvailable","firstFrame","lastFrame","JSONData","json","newFrame","filename","sourceSize","spriteSourceSize","JSONDataPyxel","layers","tileheight","tilewidth","tiles","JSONDataHash","XMLData","xml","getElementsByTagName","frameX","frameY","autoResolveURL","binary","bitmapFont","compressedTexture","_urlMap","_urlResolver","_urlTemp","onSoundUnlock","_cacheMap","TEXTURE","SOUND","PHYSICS","BINARY","BITMAPFONT","JSON","XML","SHADER","RENDER_TEXTURE","DATA","_pendingCount","_addImages","DEFAULT_KEY","DEFAULT_SRC","MISSING","MISSING_KEY","MISSING_SRC","READY_TIMEOUT","addCompressedTextureMetaData","extension","arrayBuffer","removeImage","LoaderParser","fileFormat","_resolveURL","addCanvas","addImageAsync","_removePending","_addPending","addDefaultImage","addMissingImage","addSound","audioTag","decoded","isDecoding","touchLocked","addText","addPhysicsData","addTilemap","mapData","addBinary","binaryData","addBitmapFont","atlasData","atlasType","jsonBitmapFont","xmlBitmapFont","addBitmapFontFromAtlas","atlasKey","atlasFrame","dataKey","dataType","fontData","getBaseTexture","getJSON","getXML","addJSON","addXML","addVideo","isBlob","addShader","addSpriteSheet","addTextureAtlas","TEXTURE_ATLAS_XML_STARLING","TEXTURE_ATLAS_JSON_PYXEL","addData","reloadSound","getSound","reloadSoundComplete","updateSound","decodedSound","isSoundDecoded","isSoundReady","checkKey","checkURL","checkCanvasKey","checkDataKey","checkTextureKey","checkSoundKey","checkTextKey","checkPhysicsKey","checkTilemapKey","checkBinaryKey","checkBitmapDataKey","checkBitmapFontKey","checkJSONKey","checkXMLKey","checkVideoKey","checkShaderKey","checkRenderTextureKey","full","getTextureFrame","getSoundData","getText","getPhysicsData","fixtureKey","fixtures","fixture","getTilemapData","getBinary","getBitmapData","getVideo","getShader","getRenderTexture","getData","getFrameCount","getFrameByIndex","getURL","getKeys","removeCanvas","destroyBaseTexture","removeSound","removeText","removePhysics","removeTilemap","removeBinary","removeBitmapData","removeBitmapFont","removeJSON","removeXML","removeVideo","removeShader","removeRenderTexture","removeSpriteSheet","removeTextureAtlas","removeData","baseURL","destroyItem","readyTimeout","_ready","_checkReady","isLoading","preloadSprite","crossOrigin","headers","requestedWith","onLoadStart","onBeforeLoadComplete","onLoadComplete","onPackComplete","onFileStart","onFileComplete","onFileError","enableParallel","maxParallelDownloads","_withSyncPointDepth","_fileList","_flightQueue","_processingHead","_fileLoadStarted","_totalPackCount","_totalFileCount","_loadedPackCount","_loadedFileCount","TEXTURE_ATLAS_JSON_ARRAY","TEXTURE_ATLAS_JSON_HASH","PHYSICS_LIME_CORONA_JSON","PHYSICS_PHASER_JSON","mediaTypes","avif","bmp","gif","ico","jpg","jpeg","png","svg","tif","tiff","webp","getMediaType","_getSource","setPreloadSprite","checkKeyExists","getAssetIndex","bestFound","loaded","loading","getAsset","fileIndex","addToFileList","overwrite","syncPoint","currentFile","replaceInFileList","pack","imageset","sources","defaultSource","imageFromBitmapData","imageFromGrid","imageFromTexture","pixelWidth","pixelHeight","palette","exkey","truecolor","images","urls","script","spritesheet","autoDecode","noAudio","jsonURL","jsonData","audiosprite","loadEvent","asBlob","CSV","TILED_JSON","tilemapCSV","tilemapTiledJSON","LIME_CORONA_JSON","textureURL","atlasURL","parseXml","atlasJSONArray","atlas","atlasJSONHash","atlasXML","withSyncPoint","addSyncPoint","asset","removeFile","updateProgress","processLoadQueue","finishedLoading","requestUrl","requestObject","progress","syncblock","inflightLimit","processPack","loadFile","abnormal","asyncComplete","errorMessage","packData","transformUrl","xhrLoad","fileComplete","loadImageTag","loadPictureTag","getAudioURL","usingWebAudio","usingAudioTag","loadAudioTag","fileError","getVideoURL","loadVideoTag","jsonLoadComplete","xmlLoadComplete","csvLoadComplete","picElm","sourceElm","setAttribute","currentSrc","controls","autoplay","playsInline","videoLoadEvent","canplay","Audio","playThroughEvent","xhr","XMLHttpRequest","open","responseType","setRequestHeader","message","send","videoType","uri","lastIndexOf","audioType","reason","loadNext","responseText","response","decode","language","defer","head","contentType","DOMParser","parseFromString","ActiveXObject","async","loadXML","totalLoadedFiles","totalLoadedPacks","progressFloat","info","common","getAttribute","letters","char","kernings","second","finalizeBitmapFont","_face","_lineHeight","_id","_xoffset","_yoffset","_xadvance","_second","_first","_amount","bitmapFontData","pvr","uintArray","byteArray","pvrHeader","pixelFormat","flags","colorSpace","channelType","depth","numberOfSurfaces","numberOfFaces","numberOfMipmaps","metaDataSize","byteLength","dds","ddsHeader","pitch","mipmapCount","formatSize","formatFlag","formatFourCC","formatBitCount","formatRBitMask","formatGBitMask","formatBBitMask","formatABitMask","caps1","caps2","caps3","caps4","reserved2","DXGIFormat","resourceDimension","miscFlag","arraySize","ktx","ktxHeader","imageSizeOffset","imageSize","glInternalFormat","endianness","glType","glTypeSize","glFormat","glBaseInternalFormat","pixelDepth","numberOfArrayElements","numberOfMipmapLevels","bytesOfKeyValueData","keyAndValueByteSize","pkm","pkmHeader","originalWidth","originalHeight","autoplayKey","sounds","spritemap","addMarker","connectToMaster","markers","totalDuration","currentTime","durationMS","stopTime","pausedPosition","pausedTime","currentMarker","fadeTween","pendingPlayback","override","allowMultiple","playOnce","externalNode","masterGainNode","gainNode","_sound","_globalVolume","_markedToDelete","_pendingStart","_removeFromSoundManager","_sourceId","masterGain","createGain","createGainNode","gain","soundHasUnlocked","onDecoded","onPlay","onStop","onMute","onMarkerComplete","_volume","_buffer","_muted","_tempMarker","_tempPosition","_tempVolume","_tempPause","_muteVolume","_tempLoop","_onDecodedEventDispatched","removeMarker","onEndedHandler","_removeOnEndedHandler","_disconnectSource","isDecoded","loopFull","forceRestart","_stopSourceAndDisconnect","_createSourceAndConnect","_addOnEndedHandler","_startSource","muted","mute","prevMarker","fadeTo","fadeOut","fadeComplete","updateGlobalVolume","globalVolume","createBufferSource","when","onended","onSoundDecode","onVolumeChange","onUnMute","onTouchUnlock","baseLatency","channels","_codeMuted","_unlockSource","_sounds","_watchList","_watching","_watchCallback","_watchContext","_onStateChange","disableAudio","disableWebAudio","audioContext","onstatechange","setTouchLock","unlock","setTouchUnlock","webAudioIsSuspended","resumeWebAudio","resumeWebAudioIfSuspended","noteOn","stopAll","soundData","decodeAudioData","setDecodedCallback","files","removeByKey","close","dom","minWidth","minHeight","maxHeight","forceLandscape","forcePortrait","incorrectOrientation","_pageAlignHorizontally","_pageAlignVertically","onOrientationChange","enterIncorrectOrientation","leaveIncorrectOrientation","hasPhaserSetFullScreen","fullScreenTarget","_createdFullScreenTarget","onFullScreenInit","onFullScreenChange","onFullScreenError","screenOrientation","getScreenOrientation","scaleFactor","scaleFactorInversed","aspectRatio","sourceAspectRatio","windowConstraints","compatibility","supportsFullScreen","orientationFallback","noMargins","scrollTo","forceMinimumDocumentHeight","canExpandParent","clickTrampoline","_scaleMode","NO_SCALE","_fullScreenScaleMode","parentIsWindow","parentScaleFactor","trackParentInterval","onSizeChange","onResize","onResizeContext","_pendingScaleMode","_fullScreenRestore","_gameSize","_userScaleFactor","_userScaleTrim","_lastUpdate","_updateThrottle","_updateThrottleReset","_parentBounds","_tempBounds","_lastReportedCanvasSize","_lastReportedGameSize","_booted","setupScale","EXACT_FIT","SHOW_ALL","RESIZE","USER_SCALE","MODES","compat","_orientationChange","orientationChange","_windowResize","windowResize","_fullScreenChange","fullScreenChange","_fullScreenError","fullScreenError","_gameResumed","setGameSize","FlexGrid","fullScreenScaleMode","pageAlignHorizontally","alignH","pageAlignVertically","alignV","scaleH","scaleV","setUserScale","trimH","trimV","getParentBounds","visualBounds","updateDimensions","queueUpdate","currentScaleMode","hScale","vScale","hTrim","vTrim","setResizeCallback","signalSizeChange","setMinMax","prevThrottle","prevWidth","prevHeight","boundsChanged","orientationChanged","updateOrientationState","updateLayout","throttle","updateScalingAndBounds","forceOrientation","classifyOrientation","orientation","previousOrientation","previouslyIncorrect","isLandscape","isPortrait","changed","correctnessChanged","scrollTop","setMaximum","setExactFit","isFullScreen","boundingParent","setShowAll","resetCanvas","reflowCanvas","reflowGame","layoutBounds","clientRect","getBoundingClientRect","parentRect","offsetParent","wc","windowBounds","alignCanvas","parentBounds","canvasBounds","currentEdge","targetEdge","marginLeft","marginRight","marginTop","marginBottom","cssWidth","cssHeight","expanding","createFullScreenTarget","fsTarget","background","startFullScreen","allowTrampoline","cleanupCreatedTarget","initData","targetElement","navigationUI","stopFullScreen","prepScreenMode","enteringFullscreen","createdTarget","scaleSprite","letterBox","scaleX1","scaleY1","scaleX2","scaleY2","scaleOnWidth","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","bmd","columnWidth","renderShadow","currentColor","currentAlpha","_line","_rect","GEOM_AUTO","GEOM_RECTANGLE","GEOM_CIRCLE","GEOM_POINT","GEOM_LINE","GEOM_ELLIPSE","gameInfo","soundInfo","sourceId","ended","filled","rectangle","geom","cameraInfo","hideIfUp","downColor","upColor","inactiveColor","mx","my","worldX","worldY","_pointerButtonIcon","btn","spriteInputInfo","justDown","justUp","inputInfo","showDetails","_inputHandler","free","inputHandler","_inputHandlerStatusIcon","_inputHandlerCaptureIcon","spriteBounds","ropeSegments","segment","spriteInfo","spriteCoords","lineInfo","forceType","ellipse","quadTree","quadtree","NINJA","Ninja","BOX2D","Box2D","renderBody","bodyInfo","renderBodyInfo","box2d","box2dWorld","renderDebugDraw","box2dBody","displayList","canvasPool","phaser","factor","loader","box","scrollY","scrollLeft","scrollX","clientTop","clientLeft","cushion","calibrate","coords","getAspectRatio","inLayoutViewport","primaryFallback","screen","mozOrientation","msOrientation","matchMedia","documentBounds","pageXOffset","pageYOffset","clientWidth","clientHeight","offsetWidth","scrollWidth","offsetHeight","scrollHeight","randomIndex","removeRandomItem","newLength","transposeMatrix","sourceRowCount","sourceColCount","rotateMatrix","findClosest","arr","NaN","low","high","rotateRight","rotateLeft","numberArray","numberArrayStep","LinkedList","entity","palettes","0","PALETTE_ARNE","PALETTE_JMP","PALETTE_CGA","PALETTE_C64","PALETTE_JAPANESE_MACHINE","boundsCustom","boundsFull","boundsNone","positionCustom","positionFluid","positionFull","positionNone","scaleCustom","scaleFluid","scaleFull","scaleNone","customWidth","customHeight","customOffsetX","customOffsetY","ratioH","ratioV","createCustomLayer","layer","FlexLayer","createFluidLayer","createFullLayer","createFixedLayer","persist","fitSprite","topLeft","topMiddle","topRight","bottomLeft","bottomMiddle","bottomRight","RED","ORANGE","YELLOW","GREEN","AQUA","BLUE","VIOLET","WHITE","BLACK","GRAY","RGBtoHSL","RGBtoHSV","fromRGBA","toRGBA","toABGR","RGBArrayToHex","rgb","hueToColor","HSVtoRGB","color32","getColor","getColor32","RGBtoString","componentToHex","hexToRGB","hex","hexToColor","webToColor","web","tempColor","getRGB","HSVColorWheel","HSLColorWheel","interpolateColor","color1","color2","currentStep","src1","src2","hsv1","hsv2","dh","h3","interpolateColorWithRGB","or","og","ob","interpolateRGB","getRandomColor","getWebRGB","getAlpha","getAlphaFloat","getRed","getGreen","getBlue","blendNormal","blendAverage","blendSubtract","blendNegation","blendLinearDodge","blendLinearBurn","blendLinearLight","blendVividLight","blendPinLight","blendHardMix","blendReflect","blendGlow","blendPhoenix","arcade","ninja","chipmunk","matter","CHIPMUNK","MATTERJS","P2","Matter","startSystem","system","enableAABB","checkCollision","OVERLAP_BIAS","forceX","sortDirection","LEFT_RIGHT","skipQuadTree","_total","SORT_NONE","RIGHT_LEFT","TOP_BOTTOM","BOTTOM_TOP","updateMotion","allowRotation","velocityDelta","computeVelocity","angularAcceleration","angularDrag","maxAngular","acceleration","drag","maxVelocity","allowGravity","allowDrag","object1","object2","overlapCallback","processCallback","collideObjects","collide","collideCallback","sortLeftRight","sortRightLeft","sortTopBottom","sortBottomTop","overlapOnly","collideHandler","collideGroupVsSelf","collideSpriteVsSprite","collideSpriteVsGroup","collideSpriteVsTilemapLayer","collideGroupVsGroup","collideGroupVsTilemapLayer","sprite1","sprite2","separate","items","bounds1","bounds2","group1","group2","body1","body2","none","isCircle","separateCircle","bodyRect","bodyCircle","resultX","resultY","separateX","separateY","onOverlap","onCollide","circleBodyIntersects","getOverlapX","getOverlapY","angleCollision","immovable","customSeparateX","tempVel1","tempVel2","bounce","maxOverlap","deltaAbsX","embedded","touching","overlapX","deltaAbsY","overlapY","moves","nv1","nv2","avg","customSeparateY","getObjectsUnderPointer","getObjectsAtLocation","callbackArg","moveToObject","maxTime","distanceBetween","moveToPointer","angleToPointer","distanceToPointer","moveToXY","distanceToXY","velocityFromAngle","velocityFromRotation","accelerationFromRotation","accelerateToObject","xSpeedMax","ySpeedMax","accelerateToPointer","accelerateToXY","angleToXY","closest","targets","farthest","angleBetweenCenters","worldAngleToPointer","preRotation","newVelocity","worldBounce","onWorldBounds","facing","overlapR","collideWorldBounds","wasTouching","blocked","tilePadding","syncBounds","isMoving","stopVelocityOnCollide","moveTimer","moveDistance","moveDuration","moveTarget","moveEnd","onMoveComplete","movementCallback","movementCallbackContext","_sx","_sy","updateBounds","asx","asy","updateCenter","updateMovement","collided","stopMovement","stopVelocity","check","moveFrom","setCircle","onFloor","onCeiling","onWall","TilemapCollision","TILE_BIAS","tilemapLayer","getTiles","getTileOffsetX","getTileOffsetY","separateTile","tile","tilemapLayerOffsetX","tilemapLayerOffsetY","collisionCallback","collisionCallbackContext","faceLeft","faceRight","faceTop","faceBottom","tileCheckX","tileCheckY","collideRight","collideLeft","processTileSeparationX","collideDown","collideUp","processTileSeparationY","useElapsedTime","materials","InversePointProxy","walls","onBodyAdded","onBodyRemoved","onSpringAdded","onSpringRemoved","onConstraintAdded","onConstraintRemoved","onContactMaterialAdded","onContactMaterialRemoved","postBroadphaseCallback","onBeginContact","onEndContact","mpx","mpxi","pxm","pxmi","beginContactHandler","endContactHandler","collisionGroups","nothingCollisionGroup","CollisionGroup","boundsCollisionGroup","everythingCollisionGroup","boundsCollidesWith","_toRemove","_collisionGroupID","_boundsLeft","_boundsRight","_boundsTop","_boundsBottom","_boundsOwnGroup","removeBodyNextStep","setImpactEvents","impactHandler","setPostBroadphaseCallback","postBroadphaseHandler","_bodyCallbacks","_bodyCallbackContext","_groupCallbacks","_groupCallbackContext","setCollisionGroup","setWorldMaterial","updateBoundsCollisionGroup","setupWall","wall","fixedStepTime","impactCallback","createDistanceConstraint","getBody","createGearConstraint","createRevoluteConstraint","createLockConstraint","createPrismaticConstraint","lockRotation","anchorA","anchorB","setMaterial","createMaterial","createContactMaterial","getSprings","getConstraints","filterStatic","physicsPosition","query","toJSON","createCollisionGroup","bitmask","createSpring","worldA","worldB","localA","localB","createRotationalSpring","createBody","addPolygon","createParticle","convertCollisionObjects","map","collision","shapeData","polyline","addRectangle","clearTilemapLayerBodies","getLayer","convertTilemap","optimize","collides","getTileRight","FixtureList","rawList","namedFixtures","groupedFixtures","allFixtures","setCategory","bit","getFixtures","setMask","setSensor","getFixtureByKey","getGroup","groupID","_ref","_results","callee","PointProxy","collidesWith","removeNextStep","debugBody","_collideWorldBounds","setRectangleFromSprite","createBodyCallback","createGroupCallback","getCollisionMask","updateCollisionMask","clearCollision","clearGroup","clearMask","removeCollisionGroup","clearCallback","shapeChanged","impulse","localX","localY","setZeroRotation","setZeroVelocity","setZeroDamping","moveForward","moveBackward","thrust","thrustLeft","thrustRight","moveLeft","moveRight","updateSpriteTransform","resetDamping","resetMass","clearShapes","addCircle","addPlane","addParticle","addLine","addCapsule","setRectangle","addPhaserPolygon","createdFixtures","fixtureData","shapesOfFixture","addFixture","generatedShapes","categoryBits","maskBits","isSensor","polygons","loadPolygon","BodyDebug","settings","defaultSettings","pixelsPerLengthUnit","debugPolygons","ppu","lw","vrot","_j","_ref1","randomPastelHex","drawCapsule","drawPlane","drawLine","drawRectangle","drawConvex","drawPath","lastx","lasty","diagMargin","diagSize","maxLength","xd","yd","mix","rgbToHex","ImageCollection","firstgid","imageWidth","imageHeight","imageMargin","imageSpacing","containsImageIndex","imageIndex","gid","Tile","flipped","scanned","setCollisionCallback","setCollision","resetCollision","isInteresting","faces","TilemapParser","widthInPixels","heightInPixels","tilesets","imagecollections","objectsMap","collideIndexes","currentLayer","debugMap","_tempA","NORTH","EAST","SOUTH","WEST","setTileSize","createBlankLayer","addTilesetImage","tileset","tileMargin","tileSpacing","getTilesetIndex","setImage","newSet","Tileset","countX","countY","columns","rows","createFromObjects","search","CustomClass","adjustY","adjustSize","foundObjects","created","searchType","getObjects","propertyName","createFromTiles","replacements","customClass","lh","createLayer","getLayerIndex","rootLayer","groupEnd","indexes","location","getObject","propName","propValue","getImageIndex","setTileIndexCallback","setTileLocationCallback","recalculate","setCollisionByIndex","calculateFaces","setCollisionBetween","setCollisionByExclusion","layerArg","setPreventRecalculate","preventingRecalculate","needToRecalculate","above","below","getTileAbove","getTileBelow","getTileLeft","setLayer","hasTile","removeTile","removeTileWorldXY","putTile","putTileWorldXY","searchTileIndex","all","getTile","nonNull","getTileWorldXY","paste","tileblock","tileA","tileB","swapHandler","removeAllLayers","dump","txt","renderSettings","enableScrollDelta","overdrawRatio","copyCanvas","debugSettings","missingImageFill","debuggedTileOverfill","forceFullRedraw","debugAlpha","facingEdgeStroke","collidingTileOverfill","scrollFactorX","scrollFactorY","rayStepRate","_wrap","_mc","renderWidth","renderHeight","_scrollX","_scrollY","tileOffset","ensureSharedCopyCanvas","sharedCopyCanvas","resizeWorld","_fixX","_unfixX","_fixY","_unfixY","getTileX","getTileY","getTileXY","getRayCastTiles","interestingFace","skipInteresting","layerData","coord","fetchAll","wy","wx","resolveTileset","tileIndex","setIndex","containsTileIndex","resetTilesetCache","setScale","xScale","yScale","shiftCanvas","copyW","copyH","copyContext","renderRegion","lastAlpha","xmax","ymax","baseX","normStartX","renderDeltaScroll","shiftX","shiftY","renderW","renderH","trueTop","trueBottom","trueLeft","trueRight","renderFull","redrawAll","mc","renderDebug","baseY","normStartY","INSERT_NULL","getEmptyData","parseCSV","parseTiledJSON","getEmptyObject","template","createObject","propsMap","parseObjectGroup","objectGroup","objectsCollection","collisionCollection","nameKey","relativePosition","curl","encoding","binaryString","atob","bytes","opacity","offsetx","offsety","flippedVal","curi","tilesetGroupObjects","lastSet","tileproperties","tileProperties","updateTileData","imagewidth","imageheight","newCollection","objectgroup","lastgid","sid","drawCoords","coordIndex","setSpacing","rowCount","colCount","autoScale","autoScaleFps","scaleData","_s","autoAlpha","autoAlphaFps","alphaData","_a","onEmit","setAlphaData","setScaleData","emitters","ID","minAngle","maxAngle","minSpeed","maxSpeed","minParticleSpeed","maxParticleSpeed","minParticleScale","maxParticleScale","minRotation","maxRotation","minParticleAlpha","maxParticleAlpha","particleClass","particleDrag","particleAnchor","emitX","emitY","particleBringToTop","particleSendToBack","counts","emitted","failed","totalEmitted","totalFailed","_gravity","_minParticleScale","_maxParticleScale","_timer","_counter","_flowQuantity","_flowTotal","_explode","emitParticle","makeParticles","particleArguments","particle","rndKey","rndFrame","explode","flow","forceQuantity","getNextParticle","resetParticle","setSpeed","setXSpeed","setYSpeed","setRotation","setAlpha","rate","tweenData","setAngle","setGravity","lifespanOutput","bullets","autoExpandBulletsGroup","autofire","shots","fireLimit","fireRate","fireRateVariance","fireFrom","fireAngle","bulletInheritSpriteSpeed","bulletAnimation","bulletFrameRandom","bulletFrameCycle","bulletWorldWrap","bulletWorldWrapPadding","bulletAngleOffset","bulletAngleVariance","bulletSpeed","bulletSpeedVariance","bulletLifespan","bulletKillDistance","bulletGravity","bulletRotateToVelocity","bulletKey","bulletFrame","_bulletClass","Bullet","_bulletCollideWorldBounds","_bulletKillType","KILL_WORLD_BOUNDS","customBody","bulletBounds","bulletFrames","bulletFrameIndex","anims","onFire","onKill","onFireLimit","trackedSprite","trackedPointer","multiFire","_hasFired","trackRotation","trackOffset","_nextFire","_tempNextFire","_rotatedPoint","KILL_NEVER","KILL_LIFESPAN","KILL_DISTANCE","KILL_WEAPON_BOUNDS","KILL_CAMERA_BOUNDS","KILL_STATIC_BOUNDS","resetShots","newLimit","fire","trackSprite","trackPointer","fireMany","fireOffset","moveX","moveY","bullet","bulletManager","killType","bulletKillType","killDistance","rotateToVelocity","bodyDirty","bulletCollideWorldBounds","fireAtPointer","fireAtSprite","fireAtXY","setBulletBodyOffset","setBulletFrames","cycle","addBulletAnimation","debugBodies","onAccess","onTimeout","playWhenUnlocked","timeout","videoStream","isStreaming","retryLimit","retry","retryInterval","_retryID","_pending","_pendingChangeSource","_autoplay","_endCallback","_playCallback","_video","createVideoFromBlob","videoWidth","videoHeight","createVideoFromURL","snapshot","connectToMediaStream","stream","startMediaStream","captureAudio","captureVideo","removeVideoElement","getUserMediaTimeout","mediaDevices","then","getUserMediaSuccess","catch","getUserMediaError","mozSrcObject","srcObject","createObjectURL","onloadeddata","checkStream","checkVideoProgress","change","playbackRate","setPause","setResume","playHandler","getTracks","track","playing","changeSource","grab","hasChildNodes","firstChild","removeAttribute","canUseNewCanvasBlendModes"],"mappings":"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","file":"phaser.min.js"} \ No newline at end of file +{"version":3,"sources":["phaser.js"],"names":["e","f","exports","module","window","global","self","p2","t","n","r","s","o","u","a","require","i","Error","call","length","1","_dereq_","Scalar","Line","lineInt","l1","l2","precision","a1","b1","c1","a2","b2","c2","det","eq","segmentsIntersect","p1","q1","q2","dx","dy","da","db","./Scalar","2","Point","area","b","c","left","leftOn","right","rightOn","tmpPoint1","tmpPoint2","collinear","thresholdAngle","ab","bc","dot","magA","Math","sqrt","magB","acos","sqdist","3","Polygon","this","vertices","prototype","at","v","first","last","clear","append","poly","from","to","push","makeCCW","br","reverse","tmp","N","pop","isReflex","tmpLine1","tmpLine2","getIntersectionPoint","delta","canSee","p","dist","copy","j","targetPoly","k","getCutEdges","min","tmp1","tmp2","tmpPoly","nDiags","Number","MAX_VALUE","decomp","edges","slice","cutEdges","Array","polys","cutEdge","result","splice","indexOf","isSimple","path","quickDecomp","reflexVertices","steinerPoints","maxlevel","level","upperInt","lowerInt","upperDist","lowerDist","d","closestDist","upperIndex","lowerIndex","closestIndex","lowerPoly","upperPoly","console","warn","removeCollinearPoints","num","./Line","./Point","4","abs","5","./Polygon","6","name","version","description","author","keywords","main","engines","node","repository","type","url","bugs","licenses","devDependencies","grunt","grunt-contrib-jshint","grunt-contrib-nodeunit","grunt-contrib-uglify","grunt-contrib-watch","grunt-browserify","grunt-contrib-concat","dependencies","poly-decomp","7","vec2","AABB","options","lowerBound","create","upperBound","setFromPoints","points","position","angle","skinSize","l","rotate","cosAngle","cos","sinAngle","sin","x","y","add","aabb","extend","overlaps","u1","u2","containsPoint","point","overlapsRay","ray","dirFracX","direction","dirFracY","t1","t2","t3","t4","tmin","max","tmax","../math/vec2","../utils/Utils","8","Body","Broadphase","world","boundingVolumeType","BOUNDING_CIRCLE","setWorld","getCollisionPairs","boundingRadiusCheck","bodyA","bodyB","sub","d2","squaredLength","boundingRadius","aabbCheck","getAABB","boundingVolumeCheck","canCollide","KINEMATIC","STATIC","sleepState","SLEEPING","NAIVE","SAP","../objects/Body","9","NaiveBroadphase","constructor","bodies","Ncolliding","bi","bj","aabbQuery","aabbNeedsUpdate","updateAABB","../collision/Broadphase","../shapes/Circle","../shapes/Particle","../shapes/Plane","../shapes/Shape","10","ContactEquationPool","FrictionEquationPool","TupleDictionary","Equation","Circle","Convex","Shape","Box","Narrowphase","yAxis","fromValues","tmp3","tmp4","tmp5","tmp6","tmp7","tmp8","tmp9","tmp10","tmp11","tmp12","tmp13","tmp14","tmp15","tmp16","tmp17","tmp18","tmpArray","contactEquations","frictionEquations","enableFriction","enabledEquations","slipForce","frictionCoefficient","surfaceVelocity","contactEquationPool","size","frictionEquationPool","restitution","stiffness","DEFAULT_STIFFNESS","relaxation","DEFAULT_RELAXATION","frictionStiffness","frictionRelaxation","enableFrictionReduction","collidingBodiesLastStep","contactSkinSize","bodiesOverlap_shapePositionA","bodiesOverlap_shapePositionB","setConvexToCapsuleShapeMiddle","convexShape","capsuleShape","set","radius","bodiesOverlap","shapePositionA","shapePositionB","Nshapesi","shapes","shapeA","toWorldFrame","Nshapesj","shapeB","collidedLastStep","id1","id","id2","get","reset","eqs","ce","fe","release","createContactEquation","firstImpact","needsUpdate","enabled","offset","createFrictionEquation","setSlipForce","relativeVelocity","createFrictionFromContact","contactPointA","contactPointB","rotate90cw","normalA","createFrictionFromAverage","numContacts","invNumContacts","scale","normalize","LINE","CONVEX","convexLine","convexBody","convexOffset","convexAngle","lineBody","lineShape","lineOffset","lineAngle","justTest","BOX","lineBox","boxBody","boxShape","boxOffset","boxAngle","convexCapsule_tempRect","width","height","convexCapsule_tempVec","CAPSULE","convexCapsule","convexPosition","capsuleBody","capsulePosition","capsuleAngle","circlePos","result1","circleConvex","result2","convexConvex","lineCapsule","linePosition","capsuleCapsule_tempVec1","capsuleCapsule_tempVec2","capsuleCapsule_tempRect1","capsuleCapsule","si","xi","ai","sj","xj","aj","circlePosi","circlePosj","enableFrictionBefore","circleCircle","rect","lineLine","positionA","angleA","positionB","angleB","PLANE","planeLine","planeBody","planeShape","planeOffset","planeAngle","worldVertex0","worldVertex1","worldVertex01","worldVertex11","worldEdge","worldEdgeUnit","worldNormal","worldTangent","verts","PARTICLE","particleCapsule","particleBody","particleShape","particlePosition","particleAngle","circleLine","CIRCLE","circleBody","circleShape","circleOffset","circleAngle","lineRadius","circleRadius","orthoDist","lineToCircleOrthoUnit","projectedPoint","centerDist","lineToCircle","lineEndToLineRadius","radiusSum","pos","pos0","pos1","pow","circleCapsule","worldVertex","closestEdgeProjectedPoint","candidate","candidateDist","minCandidate","found","minCandidateDistance","v0","v1","pointInConvex","candidateDistance","localVertex","pic_worldVertex0","pic_worldVertex1","pic_r0","pic_r1","worldPoint","r0","r1","lastCross","cross","crossLength","particleConvex","particleOffset","convexToparticle","minEdgeNormal","offsetA","offsetB","radiusA","radiusB","planeConvex","numReported","particlePlane","circleParticle","planeCapsule_tmpCircle","planeCapsule_tmp1","planeCapsule_tmp2","planeCapsule","capsuleOffset","end1","end2","circle","numContacts1","circlePlane","numContacts2","numTotal","planeToCircle","temp","contact","sepAxis","worldPoint0","worldPoint1","penetrationVec","findSeparatingAxis","closestEdge1","getClosestEdge","closestEdge2","closestEdgeA","closestEdgeB","insideNumEdges","pcoa_tmp1","projectConvexOntoAxis","worldAxis","value","localAxis","fsa_tmp1","fsa_tmp2","fsa_tmp3","fsa_tmp4","fsa_tmp5","fsa_tmp6","offset1","angle1","offset2","angle2","maxDist","overlap","edge","normal","span1","span2","gce_tmp1","gce_tmp2","gce_tmp3","axis","flip","closestEdge","maxDot","circleHeightfield_candidate","circleHeightfield_dist","circleHeightfield_v0","circleHeightfield_v1","circleHeightfield_minCandidate","circleHeightfield_worldNormal","circleHeightfield_minCandidateNormal","HEIGHTFIELD","circleHeightfield","hfBody","hfShape","hfPos","hfAngle","data","heights","w","elementWidth","minCandidateNormal","idxA","floor","idxB","ceil","PI","convexHeightfield_v0","convexHeightfield_v1","convexHeightfield_tilePos","convexHeightfield_tempConvexShape","convexHeightfield","convexPos","tilePos","tileConvex","../equations/ContactEquation","../equations/Equation","../equations/FrictionEquation","../shapes/Box","../shapes/Convex","../utils/ContactEquationPool","../utils/FrictionEquationPool","../utils/TupleDictionary","11","Ray","checkCollisionResponse","undefined","skipBackfaces","collisionMask","collisionGroup","mode","ANY","callback","update","CLOSEST","ALL","intersectBodies","shouldStop","body","intersectBody","intersectBody_worldPosition","collisionResponse","worldPosition","shape","worldAngle","intersectShape","intersect","squaredDistance","distanceFromIntersectionSquared","_currentBody","_currentShape","raycast","reportIntersection","fraction","faceIndex","hasHit","../collision/AABB","../collision/RaycastResult","12","RaycastResult","isStopped","getHitDistance","distance","getHitPoint","out","lerp","stop","../collision/Ray","13","Utils","SAPBroadphase","axisList","axisIndex","that","_addBodyHandler","_removeBodyHandler","idx","appendArray","off","on","sortAxisList","sortList","14","Constraint","defaults","collideConnected","wakeUpBodies","equations","wakeUp","DISTANCE","GEAR","LOCK","PRISMATIC","REVOLUTE","setStiffness","setRelaxation","15","DistanceConstraint","localAnchorA","localAnchorB","maxForce","worldAnchorA","worldAnchorB","ri","rj","computeGq","setMaxForce","upperLimitEnabled","upperLimit","lowerLimitEnabled","lowerLimit","normalEquation","G","violating","minForce","rixn","rjxn","getMaxForce","./Constraint","16","AngleLockEquation","GearConstraint","ratio","maxTorque","setMaxTorque","setRatio","torque","getMaxTorque","../equations/AngleLockEquation","17","LockConstraint","localAngleB","rot","g","localOffsetB","force","xAxis","18","ContactEquation","RotationalLockEquation","PrismaticConstraint","localAxisA","trans","gg","updateJacobian","disableRotationalLock","velocity","upperLimitEquation","lowerLimitEquation","motorEquation","motorEnabled","motorSpeed","computeGW","vi","vj","wi","angularVelocity","wj","gmult","worldAxisA","orientedAnchorA","orientedAnchorB","relPosition","enableMotor","disableMotor","setLimits","lower","upper","../equations/RotationalLockEquation","19","RotationalVelocityEquation","RevoluteConstraint","worldPivotA","worldPivotB","pivotA","pivotB","worldPivot","localPivotA","localPivotB","relAngle","setMotorSpeed","speed","getMotorSpeed","../equations/RotationalVelocityEquation","20","./Equation","21","computeB","h","GW","Gq","computeGiMf","relVel","getVelocityAlongNormal","getVelocityAtPoint","subtract","22","ARRAY_TYPE","epsilon","timeStep","multiplier","qi","qj","computeGWlambda","vlambda","wlambda","iMfi","iMfj","fi","ti","angularForce","fj","tj","invMassi","invMassSolve","invMassj","invIi","invInertiaSolve","invIj","multiply","massMultiplier","computeGiMGt","addToWlambda_temp","addToWlambda_Gi","addToWlambda_Gj","addToWlambda","deltalambda","Gi","Gj","computeInvC","eps","23","FrictionEquation","getSlipForce","24","worldVectorA","worldVectorB","25","GiMf","26","EventEmitter","listener","context","_listeners","listeners","has","index","emit","event","listenerArray","target","27","Material","ContactMaterial","materialA","materialB","idCounter","friction","./Material","28","29","PolyK","GetArea","sum","Triangulate","tgs","avl","al","i0","i1","i2","ax","ay","bx","by","cx","cy","earFound","_convex","_PointInTriangle","px","py","v0x","v0y","v1x","v1y","v2x","v2y","dot00","dot01","dot02","dot11","dot12","invDenom","30","crossVZ","vec","zcomp","crossZV","toLocalFrame","framePosition","frameAngle","toGlobalFrame","localPoint","vectorToLocalFrame","worldVector","vectorToGlobalFrame","localVector","centroid","clone","mul","divide","div","sqrDist","len","sqrLen","negate","str","reflect","vector","getLineSegmentsIntersection","p0","p3","getLineSegmentsIntersectionFraction","s1_x","s1_y","s2_x","s2_y","31","_idCounter","mass","invMass","inertia","invInertia","fixedRotation","fixedX","fixedY","interpolatedPosition","interpolatedAngle","previousPosition","previousAngle","damping","angularDamping","DYNAMIC","allowSleep","wantsToSleep","AWAKE","sleepSpeedLimit","sleepTimeLimit","gravityScale","idleTime","timeLastSleepy","ccdSpeedThreshold","ccdIterations","concavePath","_wakeUpAfterNarrowphase","updateMassProperties","updateSolveMassProperties","setDensity","density","totalArea","getArea","shapeAABB","bodyAngle","computeAABB","updateBoundingRadius","addShape","removeShape","m","I","r2","computeMomentOfInertia","applyForce","relativePoint","rotForce","Body_applyForce_forceWorld","Body_applyForce_pointWorld","Body_applyForce_pointLocal","applyForceLocal","localForce","worldForce","vectorToWorldFrame","Body_applyImpulse_velo","applyImpulse","impulseVector","velo","rotVelo","Body_applyImpulse_impulseWorld","Body_applyImpulse_pointWorld","Body_applyImpulse_pointLocal","applyImpulseLocal","localImpulse","worldImpulse","fromPolygon","convexes","optimalDecomp","cm","centerOfMass","updateTriangles","updateCenterOfMass","adjustCenterOfMass","adjustCenterOfMass_tmp2","adjustCenterOfMass_tmp3","adjustCenterOfMass_tmp4","offset_times_area","setZeroForce","resetConstraintVelocity","addConstraintVelocity","applyDamping","dt","wakeUpEvent","sleep","sleepEvent","sleepTick","time","dontSleep","speedSquared","SLEEPY","overlapKeeper","bodiesAreOverlapping","integrate_fhMinv","integrate_velodt","integrate","minv","integrateToTimeOfImpact","end","startToEnd","rememberPosition","hit","startToEndAngle","timeOfImpact","rememberAngle","iter","tmid","narrowphase","sleepyEvent","../events/EventEmitter","32","Spring","LinearSpring","setWorldAnchorA","setWorldAnchorB","getWorldAnchorA","getWorldAnchorB","worldDistance","restLength","applyForce_r","applyForce_r_unit","applyForce_u","applyForce_f","applyForce_worldAnchorA","applyForce_worldAnchorB","applyForce_ri","applyForce_rj","applyForce_tmp","r_unit","rlen","ri_x_f","rj_x_f","./Spring","33","RotationalSpring","restAngle","34","35","TopDownVehicle","chassisBody","wheels","groundBody","preStepCallback","WheelConstraint","vehicle","forwardEquation","sideEquation","steerValue","engineForce","setSideFriction","sideFriction","localForwardVector","localPosition","apply","setBrakeForce","addToWorld","addBody","wheel","addConstraint","removeFromWorld","removeBody","removeConstraint","addWheel","wheelOptions","worldVelocity","getSpeed","tmpVec","../constraints/Constraint","36","Capsule","GSSolver","Heightfield","Particle","Plane","Pool","Solver","World","Object","defineProperty","../package.json","./collision/AABB","./collision/Broadphase","./collision/NaiveBroadphase","./collision/Narrowphase","./collision/Ray","./collision/RaycastResult","./collision/SAPBroadphase","./constraints/Constraint","./constraints/DistanceConstraint","./constraints/GearConstraint","./constraints/LockConstraint","./constraints/PrismaticConstraint","./constraints/RevoluteConstraint","./equations/AngleLockEquation","./equations/ContactEquation","./equations/Equation","./equations/FrictionEquation","./equations/RotationalVelocityEquation","./events/EventEmitter","./material/ContactMaterial","./material/Material","./math/vec2","./objects/Body","./objects/LinearSpring","./objects/RotationalSpring","./objects/Spring","./objects/TopDownVehicle","./shapes/Box","./shapes/Capsule","./shapes/Circle","./shapes/Convex","./shapes/Heightfield","./shapes/Line","./shapes/Particle","./shapes/Plane","./shapes/Shape","./solver/GSSolver","./solver/Solver","./utils/ContactEquationPool","./utils/FrictionEquationPool","./utils/Pool","./utils/Utils","./world/World","37","arguments","axes","updateArea","./Convex","./Shape","38","intersectCapsule_hitPointWorld","intersectCapsule_normal","intersectCapsule_l0","intersectCapsule_l1","intersectCapsule_unit_y","hitPointWorld","l0","halfLen","diagonalLengthSquared","sqrtDelta","inv2a","d1","39","Ray_intersectSphere_intersectionPoint","Ray_intersectSphere_normal","intersectionPoint","40","polyk","isArray","triangles","tmpVec1","tmpVec2","projectOntoLocalAxis","projectOntoWorldAxis","shapeOffset","shapeAngle","polykVerts","id3","updateCenterOfMass_centroid","updateCenterOfMass_centroid_times_mass","updateCenterOfMass_a","updateCenterOfMass_b","updateCenterOfMass_c","centroid_times_mass","triangleArea","denom","numer","intersectConvex_rayStart","intersectConvex_rayEnd","intersectConvex_normal","rayStart","rayEnd","../math/polyk","41","key","maxValue","minValue","updateMaxMinValues","getLineSegment","start","getSegmentIndex","getClampedSegmentIndex","intersectHeightfield_worldNormal","intersectHeightfield_l0","intersectHeightfield_l1","intersectHeightfield_localFrom","intersectHeightfield_localTo","localFrom","localTo","42","raycast_normal","raycast_l0","raycast_l1","raycast_unit_y","43","44","intersectPlane_planePointToFrom","intersectPlane_normal","intersectPlane_len","planePointToFrom","planeToFrom","n_dot_dir","45","material","sensor","46","GS","iterations","tolerance","arrayStep","lambda","Bs","invCs","useZeroRHS","frictionIterations","usedIterations","solve","sortEquations","maxIter","maxFrictionIter","Neq","tolSquared","Nbodies","array","setArrayZero","deltalambdaTot","iterateEquation","updateMultipliers","invDt","B","invC","lambdaj","GWlambda","lambdaj_plus_deltalambda","./Solver","47","equationSortFunction","mockWorld","solveIsland","island","removeAllEquations","addEquations","getBodies","sort","addEquation","removeEquation","ISLAND","48","destroy","equation","./Pool","49","50","IslandNode","IslandNodePool","../world/IslandNode","51","Island","IslandPool","../world/Island","52","OverlapKeeperRecordPool","OverlapKeeper","overlappingShapesLastState","overlappingShapesCurrentState","recordPool","tmpDict","tmpArray1","tick","current","keys","lastObject","getByKey","setOverlapping","getNewOverlaps","getDiff","getEndOverlaps","dictA","dictB","isNewOverlap","idA","idB","getNewBodyOverlaps","getBodyDiff","getEndBodyOverlaps","accumulator","./OverlapKeeperRecord","./OverlapKeeperRecordPool","./TupleDictionary","./Utils","53","OverlapKeeperRecord","54","record","55","objects","resize","object","56","getKey","dict","57","howmany","P2_ARRAY_TYPE","Float32Array","58","bodyIds","59","IslandManager","nodePool","islandPool","islands","nodes","queue","getUnvisitedNode","Nnodes","visited","visit","bds","Neqs","bfs","root","child","neighbors","split","ni","nj","./../utils/IslandNodePool","./../utils/IslandPool","./Island","./IslandNode","60","61","springs","disabledBodyCollisionPairs","solver","islandManager","gravity","frictionGravity","useWorldGravityAsFrictionGravity","useFrictionGravityOnZeroGravity","broadphase","constraints","defaultMaterial","defaultContactMaterial","lastTimeStep","applySpringForces","applyGravity","solveConstraints","contactMaterials","stepping","bodiesToBeRemoved","islandSplit","emitImpactEvent","_constraintIdCounter","_bodyIdCounter","postStepEvent","addBodyEvent","removeBodyEvent","addSpringEvent","spring","impactEvent","contactEquation","postBroadphaseEvent","pairs","sleepMode","NO_SLEEPING","beginContactEvent","endContactEvent","preSolveEvent","BODY_SLEEPING","ISLAND_SLEEPING","constraint","addContactMaterial","contactMaterial","removeContactMaterial","getContactMaterial","cmats","step_mg","xiw","xjw","step","timeSinceLastCalled","maxSubSteps","internalStep","substeps","endOverlaps","Nsprings","np","mg","gravityLen","ignoredPairs","Nconstraints","Nresults","runNarrowphase","ev","glen","reducedMass","aiw","ajw","resolver","numFrictionBefore","numFrictionEquations","speedSquaredB","speedSquaredA","addSpring","evt","removeSpring","getBodyById","disableBodyCollision","enableBodyCollision","cs","cms","hitTest_tmp1","hitTest_tmp2","hitTest","pb","ps","NS","setGlobalStiffness","setGlobalRelaxation","tmpAABB","../../package.json","../collision/Narrowphase","../collision/SAPBroadphase","../constraints/DistanceConstraint","../constraints/GearConstraint","../constraints/LockConstraint","../constraints/PrismaticConstraint","../constraints/RevoluteConstraint","../material/ContactMaterial","../material/Material","../objects/LinearSpring","../objects/RotationalSpring","../shapes/Capsule","../shapes/Line","../solver/GSSolver","../solver/Solver","../utils/OverlapKeeper","./IslandManager","PIXI","DisplayObject","pivot","rotation","alpha","visible","hitArea","renderable","parent","worldAlpha","worldTransform","Phaser","Matrix","worldScale","worldRotation","filterArea","_sr","_cr","_bounds","Rectangle","_currentBounds","_mask","_cacheAsBitmap","_cacheIsDirty","children","_destroyCachedSprite","_destroyTintedTexture","updateTransform","game","tx","ty","pt","wt","PI2","rotationCache","determ","HALF_PI","transformCallback","transformCallbackContext","preUpdate","generateTexture","resolution","scaleMode","renderer","bounds","getLocalBounds","renderTexture","RenderTexture","_tempMatrix","render","updateCache","_generateCachedSprite","toGlobal","toLocal","applyInverse","_renderCachedSprite","renderSession","_cachedSprite","gl","Sprite","_renderWebGL","_renderCanvas","texture","textureUnit","baseTexture","_enableMultiTextureToggle","textureIndex","tempFilters","_filters","filters","anchor","tintedTexture","CanvasPool","removeByCanvas","displayObjectUpdateTransform","defineProperties","worldVisible","item","mask","isMask","passes","filterPasses","_filterBlock","blendMode","blendModes","MULTIPLY","NORMAL","cacheAsBitmap","DisplayObjectContainer","ignoreChildInput","addChild","addChildAt","removeChild","swapChildren","child2","index1","getChildIndex","index2","setChildIndex","currentIndex","getChildAt","removeChildAt","bringChildToTop","sendChildToBack","removeChildren","beginIndex","endIndex","range","removed","displayObjectContainerUpdateTransform","getBounds","targetCoordinateSpace","isTargetCoordinateSpaceDisplayObject","isTargetCoordinateSpaceThisOrParent","contains","matrixCache","identityMatrix","childBounds","childMaxX","childMaxY","minX","Infinity","minY","maxX","maxY","childVisible","w0","w1","h0","h1","x1","y1","x2","y2","x3","y3","x4","y4","targetCoordinateSpaceBounds","spriteBatch","flush","filterManager","pushFilter","maskManager","pushMask","popMask","popFilter","_width","_height","defaultAnchor","Texture","emptyTexture","tint","cachedTint","shader","exists","hasLoaded","onTextureUpdate","frame","setTexture","destroyBase","skipRender","valid","matrix","crop","currentBlendMode","globalCompositeOperation","blendModesCanvas","globalAlpha","smoothProperty","scaleModes","LINEAR","trim","shakeX","shakeY","cw","ch","rotated","roundPixels","setTransform","requiresReTint","CanvasTinter","getTintedTexture","drawImage","source","initDefaultShaders","CompileVertexShader","shaderSrc","_CompileShader","VERTEX_SHADER","CompileFragmentShader","FRAGMENT_SHADER","shaderType","src","join","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","log","getShaderInfoLog","compileProgram","vertexSrc","fragmentSrc","fragmentShader","vertexShader","shaderProgram","createProgram","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","PixiShader","_UID","program","textureCount","firstRun","dirty","attributes","init","initMultitexShader","MAX_TEXTURES","getParameter","MAX_TEXTURE_IMAGE_UNITS","dynamicIfs","defaultVertexSrc","useProgram","uSamplerArray","getUniformLocation","projectionVector","offsetVector","dimensions","aVertexPosition","getAttribLocation","aTextureCoord","colorAttribute","aTextureIndex","indices","tempTexture","createTexture","activeTexture","TEXTURE0","bindTexture","TEXTURE_2D","texImage2D","RGB","UNSIGNED_BYTE","uniform1iv","uniforms","uniformLocation","initUniforms","initDefaultShader","uSampler","usingFilter","uniform","_init","initSampler2D","glMatrix","glValueLength","glFunc","uniformMatrix2fv","uniformMatrix3fv","uniformMatrix4fv","_glTextures","textureData","magFilter","minFilter","wrapS","CLAMP_TO_EDGE","wrapT","format","LUMINANCE","RGBA","repeat","REPEAT","pixelStorei","UNPACK_FLIP_Y_WEBGL","flipY","border","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","TEXTURE_WRAP_S","TEXTURE_WRAP_T","uniform1i","syncUniforms","transpose","z","_dirty","instances","updateTexture","deleteProgram","PixiFastShader","uMatrix","aPositionCoord","aScale","aRotation","StripShader","translationMatrix","attribute","PrimitiveShader","tintColor","ComplexPrimitiveShader","color","glContexts","WebGLRenderer","config","defaultRenderer","extensions","WEBGL","transparent","autoResize","preserveDrawingBuffer","clearBeforeRender","powerPreference","view","canvas","_contextOptions","antialias","failIfMajorPerformanceCaveat","premultipliedAlpha","stencil","projection","shaderManager","WebGLShaderManager","WebGLSpriteBatch","WebGLMaskManager","WebGLFilterManager","stencilManager","WebGLStencilManager","blendModeManager","WebGLBlendModeManager","currentBatchedTextures","drawCount","maxTextureAvailableSpace","initContext","mapBlendModes","getContext","maxTextures","maxTextureSize","MAX_TEXTURE_SIZE","glContextId","disable","DEPTH_TEST","CULL_FACE","enable","BLEND","setContext","compression","etc1","getExtension","pvrtc","s3tc","ETC1","PVRTC","S3TC","setTexturePriority","textureNameCollection","clampPot","potSize","imageCache","cache","_cache","image","imageName","base","stage","contextLost","viewport","bindFramebuffer","FRAMEBUFFER","clearColor","_bgColor","COLOR_BUFFER_BIT","camera","_shake","renderDisplayObject","postRender","displayObject","buffer","setBlendMode","begin","style","updateCompressedTexture","textureMetaData","compressedTexImage2D","glExtensionFormat","NEAREST","mipmap","isPowerOfTwo","LINEAR_MIPMAP_LINEAR","NEAREST_MIPMAP_NEAREST","generateMipmap","_powerOf2","compressionAlgorithm","UNPACK_PREMULTIPLY_ALPHA_WEBGL","remove","blendModesWebGL","modes","ONE","ONE_MINUS_SRC_ALPHA","ADD","SRC_ALPHA","DST_ALPHA","DST_COLOR","SCREEN","OVERLAY","DARKEN","LIGHTEN","COLOR_DODGE","COLOR_BURN","HARD_LIGHT","SOFT_LIGHT","DIFFERENCE","EXCLUSION","HUE","SATURATION","COLOR","LUMINOSITY","getMaxTextureUnit","enableMultiTexture","textureArray","blendModeWebGL","blendFunc","maskData","WebGLGraphics","updateGraphics","_webGL","pushStencil","popStencil","stencilStack","count","graphics","webGLData","bindGraphics","STENCIL_TEST","STENCIL_BUFFER_BIT","colorMask","stencilFunc","ALWAYS","stencilOp","KEEP","INVERT","drawElements","TRIANGLE_FAN","UNSIGNED_SHORT","EQUAL","DECR","INCR","TRIANGLE_STRIP","_currentGraphics","complexPrimitiveShader","setShader","uniform1f","toArray","uniform2f","uniform3fv","Color","hexToRGBArray","bindBuffer","ARRAY_BUFFER","vertexAttribPointer","FLOAT","primitiveShader","ELEMENT_ARRAY_BUFFER","indexBuffer","maxAttibs","attribState","tempAttribState","stack","defaultShader","fastShader","stripShader","creatureShader","CreatureShader","setAttribs","attribs","attribId","enableVertexAttribArray","disableVertexAttribArray","_currentId","currentShader","vertSize","vertexSize","numVerts","numIndices","ArrayBuffer","positions","colors","Uint32Array","Uint16Array","lastIndexCount","drawing","currentBatchSize","currentBaseTexture","textures","shaders","sprites","Filter","vertexBuffer","createBuffer","bufferData","STATIC_DRAW","DYNAMIC_DRAW","sprite","uvs","_uvs","aX","aY","a0","b0","c0","d0","_w1","_w0","_updateUvsInverted","x0","y0","renderTilingSprite","tilingTexture","TextureUvs","tilePosition","tileScaleOffset","offsetX","offsetY","scaleX","tileScale","scaleY","nextTexture","nextBlendMode","nextShader","stride","bufferSubData","subarray","batchSize","blendSwap","shaderSwap","skip","renderBatch","startIndex","TRIANGLES","deleteBuffer","WebGLFastSpriteBatch","maxSize","renderSprite","filterStack","texturePool","initShaderBuffers","filterBlock","_filterArea","_previous_stencil_mgr","filter","FilterTexture","padding","frameBuffer","_glFilterTexture","vertexArray","uvBuffer","uvArray","inputTexture","outputTexture","filterPass","applyFilterPass","sizeX","sizeY","currentFilter","colorBuffer","colorArray","_fbErrors","36054","36055","36057","36061","_CreateFramebuffer","fbStatus","framebuffer","createFramebuffer","depthStencilBuffer","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","framebufferRenderbuffer","DEPTH_STENCIL_ATTACHMENT","renderBuffer","framebufferTexture2D","COLOR_ATTACHMENT0","checkFramebufferStatus","FRAMEBUFFER_COMPLETE","error","targetTexture","DEFAULT","renderbufferStorage","DEPTH_STENCIL","deleteFramebuffer","deleteTexture","CanvasBuffer","clearRect","CanvasMaskManager","save","cacheAlpha","transform","CanvasGraphics","renderGraphicsMask","clip","restore","tintMethod","tintWithMultiply","fillStyle","toString","substr","fillRect","tintWithPerPixel","rgbValues","pixelData","getImageData","pixels","canHandleAlpha","putImageData","CanvasRenderer","CANVAS","refresh","Canvas","getSmoothingPrefix","navigator","isCocoonJS","screencanvas","rgba","removeView","useNew","device","canUseMultiply","BaseTexture","complete","naturalWidth","naturalHeight","forceLoaded","unloadFromGPU","glTexture","fromCanvas","TextureSilentFail","noFrame","isTiling","requiresUpdate","setFrame","onBaseTextureLoaded","_updateUvs","tw","th","define","amd","VERSION","GAMES","AUTO","HEADLESS","WEBGL_MULTI","NONE","LEFT","RIGHT","UP","DOWN","SPRITE","BUTTON","IMAGE","GRAPHICS","TEXT","TILESPRITE","BITMAPTEXT","GROUP","RENDERTEXTURE","TILEMAP","TILEMAPLAYER","EMITTER","POLYGON","BITMAPDATA","CANVAS_FILTER","WEBGL_FILTER","ELLIPSE","SPRITEBATCH","RETROFONT","POINTER","ROPE","RECTANGLE","MATRIX","POINT","ROUNDEDRECTANGLE","CREATURE","VIDEO","PENDING_ATLAS","HORIZONTAL","VERTICAL","LANDSCAPE","PORTRAIT","ANGLE_UP","ANGLE_DOWN","ANGLE_LEFT","ANGLE_RIGHT","ANGLE_NORTH_EAST","ANGLE_NORTH_WEST","ANGLE_SOUTH_EAST","ANGLE_SOUTH_WEST","TOP_LEFT","TOP_CENTER","TOP_RIGHT","LEFT_TOP","LEFT_CENTER","LEFT_BOTTOM","CENTER","RIGHT_TOP","RIGHT_CENTER","RIGHT_BOTTOM","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT","AudioBufferSourceNode","noteGrainOn","noteOff","trunc","Function","bind","thisArg","boundArgs","TypeError","bound","args","concat","F","proto","arg","forEach","fun","CheapArray","assert","assign","varArgs","hasOwn","hasOwnProperty","nextSource","nextKey","reverseString","string","getProperty","obj","parts","_getProperty","setProperties","props","setProperty","_setProperty","val","currentObj","chanceRoll","chance","random","randomChoice","choice1","choice2","parseDimension","dimension","parseInt","innerWidth","innerHeight","pad","dir","padlen","isPlainObject","nodeType","copyIsArray","deep","mixinPrototype","mixin","replace","mixinKeys","childNodes","cloneNode","diameter","_diameter","_radius","circumference","setTo","copyFrom","copyTo","dest","round","output","circumferencePoint","asDegrees","sample","steps","startAngle","endAngle","linear","offsetPoint","top","bottom","equals","intersects","degToRad","intersectsRectangle","halfWidth","halfHeight","xCornerDist","yCornerDist","intersectsLine","returnPoints","del","p0Exists","pointOnSegment","p1Exists","Ellipse","centerX","centerY","normx","normy","fromPoints","fromSprite","startSprite","endSprite","useCenter","fromAngle","rotateAround","line","asSegment","intersectsPoints","midPoint","centerOn","pointOnLine","fuzzyEqual","xMin","xMax","yMin","yMax","coordinatesOnLine","stepRate","results","sx","sy","err","e2","wrap","uc","ua","ub","empty","bx1","by1","bx2","by2","intersectionWithRectangle","edgeIntersection","closestDistance","normalAngle","fromArray","newPos","translate","tx1","identity","invert","setToPolar","azimuth","clampX","clamp","clampY","equalsXY","fuzzyEquals","fuzzyEqualsXY","angleXY","atan2","radToDeg","atan","getMagnitude","getMagnitudeSq","setMagnitude","magnitude","isZero","limit","expand","perp","rperp","normalRightHand","negative","multiplyAdd","interpolate","project","amt","projectUnit","pointslength","parse","xProp","yProp","parseFloat","isPoint","sortClockwise","center","_points","closed","flattened","toNumberArray","flatten","inside","ix","iy","jx","jy","calculateArea","avgHeight","floorAll","ceilAll","copyFromBounds","inflate","containsRect","intersection","intersectsRaw","union","randomX","randomY","getPoint","sides","inflatePoint","createFromBounds","containsRaw","rx","ry","rw","rh","volume","sameDimensions","NEGATIVE_INFINITY","POSITIVE_INFINITY","EmptyRectangle","RoundedRectangle","Camera","deadzone","roundPx","atLimit","totalInView","onShakeComplete","Signal","onFlashComplete","onFadeComplete","fx","_targetPosition","_edge","_position","intensity","duration","horizontal","vertical","shakeBounds","_fxDuration","_fxType","_fixedView","FOLLOW_LOCKON","FOLLOW_PLATFORMER","FOLLOW_TOPDOWN","FOLLOW_TOPDOWN_TIGHT","SHAKE_BOTH","SHAKE_HORIZONTAL","SHAKE_VERTICAL","ENABLE_FX","FLASH","FADE_OUT","FADE_IN","boot","Graphics","follow","lerpX","lerpY","helper","unfollow","focusOn","setPosition","focusOnXY","shake","flash","beginFill","drawRect","endFill","fade","fadeEffect","fadeIn","updateFX","updateShake","checkBounds","dispatch","rnd","frac","updateTarget","math","setBoundsToWorld","vx","vw","vy","vh","setSize","resetFX","State","make","input","load","sound","state","tweens","particles","physics","preload","loadUpdate","loadRender","postUpdate","preRender","paused","resumed","pauseUpdate","shutdown","StateManager","pendingState","states","_pendingState","_clearWorld","_clearCache","_created","_args","onStateChange","onInitCallback","onPreloadCallback","onCreateCallback","onUpdateCallback","onRenderCallback","onResizeCallback","onPreRenderCallback","onLoadUpdateCallback","onLoadRenderCallback","onPausedCallback","onResumedCallback","onPauseUpdateCallback","onShutDownCallback","onPause","pause","onResume","resume","autoStart","newState","isBooted","callbackContext","clearWorld","clearCache","checkState","restart","dummy","clearCurrentState","setCurrentState","totalQueuedFiles","totalQueuedPacks","loadComplete","removeAll","debug","link","unlink","previousStateKey","onPostUpdateCallback","_kickstart","getCurrentState","renderType","_bindings","_prevParams","memorize","_shouldPropagate","active","_boundDispatch","validateListener","fnName","_registerListener","isOnce","listenerContext","priority","binding","prevIndex","_indexOfListener","SignalBinding","_addBinding","execute","_priority","cur","_listener","addOnce","_destroy","getNumListeners","halt","paramsArr","bindings","forget","dispose","_this","signal","_isOnce","_signal","callCount","params","handlerReturn","detach","isBound","getListener","getSignal","prevPoint","Date","mouse","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","sampleRate","iChannel0","iChannel1","iChannel2","iChannel3","setResolution","pointer","toFixed","totalElapsedSeconds","anchorX","anchorY","Cache","Plugin","hasPreUpdate","hasUpdate","hasPostUpdate","hasRender","hasPostRender","PluginManager","plugins","_len","_i","plugin","Stage","disableVisibilityChange","currentRenderOrderID","_hiddenVar","_onChange","parseConfig","backgroundColor","setBackgroundColor","DOM","getOffset","setUserSelect","setTouchAction","checkVisibility","document","hidden","webkitHidden","mozHidden","msHidden","visibilityChange","_onChangePause","_onChangeResume","_onClick","hasFocus","addEventListener","onblur","onfocus","onpagehide","onpageshow","cocoonJSApp","CocoonJS","App","onSuspended","onActivated","focusLoss","focusGain","gamePaused","gameResumed","valueToColor","updateColor","removeEventListener","silent","hash","removeFromHash","Group","addToStage","enableBody","physicsBodyType","Physics","ARCADE","physicsType","alive","ignoreDestroy","pendingDestroy","classType","cursor","inputEnableChildren","updateOnlyExistingChildren","onChildInputDown","onChildInputUp","onChildInputOver","onChildInputOut","enableBodyDebug","physicsSortDirection","onDestroy","cursorIndex","fixedToCamera","cameraOffset","_sortProperty","RETURN_NONE","RETURN_TOTAL","RETURN_CHILD","RETURN_ALL","SORT_ASCENDING","SORT_DESCENDING","updateZ","addToHash","inputEnabled","events","onAddedToGroup$dispatch","addAt","addMultiple","moveAll","getAt","createMultiple","quantity","singleKey","singleFrame","align","cellWidth","cellHeight","alignIn","resetCursor","next","previous","swap","child1","bringToTop","getIndex","sendToBack","moveUp","moveDown","xy","getByName","getFirst","oldChild","newChild","hasProperty","operation","checkProperty","checkAlive","checkVisible","setAll","setAllChildren","checkAll","checkAny","addAll","property","amount","subAll","multiplyAll","divideAll","kill","killAll","callAllExists","revive","reviveAll","resetAll","checkExists","resetChild","existsValue","callbackFromArray","callAll","method","methodLength","contextLength","renderOrderID","predicate","ArraySet","forEachExists","iterate","forEachAlive","forEachDead","order","ascendingSortHandler","descendingSortHandler","customSort","sortHandler","returnType","total","getFirstExists","createIfNull","getFirstAlive","getFirstDead","loadTexture","getTop","getBottom","getClosestTo","tempDistance","getFurthestFrom","countLiving","countDead","getRandom","ArrayUtils","getRandomItem","getRandomExists","list","getAll","pick","destroyPhase","onRemovedFromGroup$dispatch","group","destroyTexture","removeBetween","scatter","shuffle","destroyChildren","soft","_definedSize","stateChange","setBounds","useBounds","wrapAll","between","Game","physicsConfig","multiTexture","isRunning","raf","Device","lockRender","pendingStep","stepCount","onBlur","onFocus","onBoot","_paused","_codePaused","_focusGained","currentUpdateID","updatesThisFrame","rendersThisFrame","_deltaTime","_lastCount","_spiraling","fpsProblemNotifier","forceSingleUpdate","forceSingleRender","dropFrames","_nextFpsNotification","enableDebug","RandomDataGenerator","now","whenReady","seed","ScaleManager","setUpRenderer","GameObjectFactory","GameObjectCreator","Loader","Time","TweenManager","Input","SoundManager","Particles","Create","Debug","noop","isDisabled","showDebugHeader","forceSetTimeOut","RequestAnimationFrame","focusWindow","disableStart","isReady","onReady","PhaserGlobal","hideBanner","webAudio","ie","canvasID","canvasStyle","crisp","setImageRenderingCrisp","webGL","contextRestored","webGLRendererError","cocoonJS","smoothed","addToDOM","preventDefault","clearGLTextures","updateLogic","desiredFpsMult","updateRender","elapsed","deltaMax","slowMotion","fixedStepSize","enableStep","disableStep","removeFromDOM","cordova","iOS","focus","stopFocus","muteOnPause","setMute","unsetMute","hitCanvas","hitContext","moveCallbacks","customCandidateHandler","customCandidateHandlerContext","pollRate","multiInputOverride","MOUSE_TOUCH_COMBINE","maxPointers","tapRate","doubleTapRate","holdRate","justPressedRate","justReleasedRate","recordPointerHistory","recordRate","recordLimit","touchLockCallbacks","pointer1","pointer2","pointer3","pointer4","pointer5","pointer6","pointer7","pointer8","pointer9","pointer10","pointers","activePointer","mousePointer","keyboard","touch","mspointer","gamepad","resetLocked","onDown","onUp","onTap","onHold","minPriorityID","interactiveItems","_localPoint","_pollCounter","_oldPosition","_x","_y","MOUSE_OVERRIDES_TOUCH","TOUCH_OVERRIDES_MOUSE","MAX_POINTERS","Pointer","PointerMode","CURSOR","addPointer","Mouse","Touch","MSPointer","mouseWheel","MouseWheel","pointerLock","PointerLock","Keyboard","Gamepad","_onClickTrampoline","onClickTrampoline","setInteractiveCandidateHandler","addMoveCallback","addTouchLockCallback","onEnd","removeTouchLockCallback","executeTouchLockCallbacks","cb","deleteMoveCallback","CONTACT","hard","resetSpeed","startPointer","countActivePointers","updatePointer","identifier","move","stopPointer","getPointer","isActive","getPointerFromIdentifier","getPointerFromId","pointerId","getLocalPosition","Creature","TileSprite","graphicsData","fill","processClickTrampolines","handler","mouseDownCallback","mouseUpCallback","mouseOutCallback","mouseOverCallback","capture","stopOnGameOut","_onMouseDown","_onMouseMove","_onMouseUp","_onMouseOut","_onMouseOver","NO_BUTTON","LEFT_BUTTON","MIDDLE_BUTTON","RIGHT_BUTTON","BACK_BUTTON","FORWARD_BUTTON","isAndroidStockBrowser","onMouseDown","onMouseMove","onMouseUp","_onMouseUpGlobal","onMouseUpGlobal","_onMouseOutGlobal","onMouseOutGlobal","onMouseOut","onMouseOver","mouseMoveCallback","withinGame","resetButtons","updateButtons","element","wheelEventName","wheelEvent","boundOnWheelHandler","onWheelHandler","eventProxy","WheelEventProxy","bindEvent","deltaY","pointerDownCallback","pointerMoveCallback","pointerUpCallback","pointerOutCallback","pointerOverCallback","pointerCancelCallback","_onMSPointerDown","_onMSPointerMove","_onMSPointerUp","_onMSPointerUpGlobal","_onMSPointerOut","_onMSPointerOver","onPointerDown","onPointerMove","onPointerUp","onPointerUpGlobal","onPointerOut","onPointerOver","_onMSPointerCancel","onPointerCancel","isMousePointerEvent","getPointerFromEvent","pointerType","DeviceButton","buttonCode","isDown","isUp","timeDown","timeUp","repeats","altKey","shiftKey","ctrlKey","onFloat","startStop","condition","padFloat","justPressed","justReleased","pointerMode","button","leftButton","middleButton","rightButton","backButton","forwardButton","eraserButton","ERASER_BUTTON","_holdSent","_history","_nextDrop","_stateReset","clientX","clientY","pageX","pageY","screenX","screenY","rawMovementX","rawMovementY","movementX","movementY","isMouse","previousTapTime","totalTouches","msSinceLastClick","targetObject","interactiveCandidates","positionDown","positionUp","_clickTrampolines","_trampolineTargetObject","processButtonsDown","processButtonsUp","processButtonsUpDown","buttons","toLowerCase","down","totalActivePointers","_touchedHandler","processInteractiveObjects","shift","fromClick","pollLocked","locked","mozMovementX","webkitMovementX","mozMovementY","webkitMovementY","noPause","isDragged","highestRenderOrderID","highestInputPriorityID","candidateTarget","currentNode","checked","validForInput","checkPointerDown","checkPointerOver","priorityID","swapTarget","newTarget","_pointerOutHandler","_pointerOverHandler","leave","doubleTap","currentPointers","addClickTrampoline","callbackArgs","trampolines","trampoline","_releasedHandler","resetMovement","PointerModes","touchStartCallback","touchMoveCallback","touchEndCallback","touchEnterCallback","touchLeaveCallback","touchCancelCallback","_onTouchStart","_onTouchMove","_onTouchEnd","_onTouchEnter","_onTouchLeave","_onTouchCancel","onTouchStart","onTouchMove","onTouchEnd","onTouchEnter","onTouchLeave","onTouchCancel","consumeDocumentTouches","_documentTouchMove","changedTouches","InputHandler","useHandCursor","_setHandCursor","allowHorizontalDrag","allowVerticalDrag","snapOffset","snapOnDrag","snapOnRelease","snapX","snapY","snapOffsetX","snapOffsetY","pixelPerfectOver","pixelPerfectClick","pixelPerfectAlpha","draggable","boundsRect","boundsSprite","scaleLayer","dragOffset","dragFromCenter","dragStopBlocksInputUp","dragStartPoint","dragDistanceThreshold","dragTimeThreshold","downPoint","snapPoint","_dragPoint","_dragPhase","_pendingDrag","_dragTimePass","_dragDistancePass","_wasEnabled","_tempPoint","_pointerData","camX","camY","isOver","isOut","timeOver","timeOut","downDuration","onAddedToGroup","addedToGroup","onRemovedFromGroup","removedFromGroup","highestID","highestRenderID","includePixelPerfect","isPixelPerfect","pointerX","pointerY","pointerDown","pointerUp","pointerTimeDown","pointerTimeUp","pointerOver","pointerOut","pointerTimeOver","pointerTimeOut","pointerDragged","fastTest","checkPixel","_dx","_dy","startDrag","_draggedPointerID","updateDrag","sendEvent","onInputOver$dispatch","onInputOut$dispatch","onInputDown$dispatch","dragTimeElapsed","onInputUp$dispatch","stopDrag","fromStart","dragPoint","pointerData","pointerLocalCoord","globalToLocal","prevX","prevY","checkBoundsRect","checkBoundsSprite","onDragUpdate","justOver","delay","overDuration","justOut","enableDrag","lockCenter","pixelPerfect","alphaThreshold","disableDrag","boundsCenterLocalCoord","onDragStart$dispatch","globalToLocalX","grid","boundsFluid","scaleFluidInversed","globalToLocalY","globalCoord","onDragStop$dispatch","setDragLock","allowHorizontal","allowVertical","enableSnap","onDrag","onRelease","disableSnap","onChange","onError","boundOnChangeHandler","onChangeHandler","boundOnErrorHandler","onErrorHandler","pointerLockElement","pointerlockchange","pointerlockerror","requestPointerLock","mozRequestPointerLock","webkitRequestPointerLock","exitPointerLock","mozExitPointerLock","webkitExitPointerLock","request","exit","_gamepadIndexMap","_rawPads","_active","_gamepadSupportAvailable","webkitGetGamepads","webkitGamepads","userAgent","getGamepads","_prevRawGamepadTypes","_prevTimestamps","onConnectCallback","onDisconnectCallback","onDownCallback","onUpCallback","onAxisCallback","onFloatCallback","_ongamepadconnected","_gamepaddisconnected","_gamepads","SinglePad","addCallbacks","callbacks","onConnect","onDisconnect","onAxis","_onGamepadConnected","onGamepadConnected","_onGamepadDisconnected","onGamepadDisconnected","newPad","connect","removedPad","disconnect","_pollGamepads","pad1","pollStatus","pad2","pad3","pad4","rawGamepads","gamepadsChanged","_rawPad","singlePad","validConnections","rawIndices","padIndices","connected","rawPad","setDeadZones","deadZone","BUTTON_0","BUTTON_1","BUTTON_2","BUTTON_3","BUTTON_4","BUTTON_5","BUTTON_6","BUTTON_7","BUTTON_8","BUTTON_9","BUTTON_10","BUTTON_11","BUTTON_12","BUTTON_13","BUTTON_14","BUTTON_15","AXIS_0","AXIS_1","AXIS_2","AXIS_3","AXIS_4","AXIS_5","AXIS_6","AXIS_7","AXIS_8","AXIS_9","XBOX360_A","XBOX360_B","XBOX360_X","XBOX360_Y","XBOX360_LEFT_BUMPER","XBOX360_RIGHT_BUMPER","XBOX360_LEFT_TRIGGER","XBOX360_RIGHT_TRIGGER","XBOX360_BACK","XBOX360_START","XBOX360_STICK_LEFT_BUTTON","XBOX360_STICK_RIGHT_BUTTON","XBOX360_DPAD_LEFT","XBOX360_DPAD_RIGHT","XBOX360_DPAD_UP","XBOX360_DPAD_DOWN","XBOX360_STICK_LEFT_X","XBOX360_STICK_LEFT_Y","XBOX360_STICK_RIGHT_X","XBOX360_STICK_RIGHT_Y","PS3XC_X","PS3XC_CIRCLE","PS3XC_SQUARE","PS3XC_TRIANGLE","PS3XC_L1","PS3XC_R1","PS3XC_L2","PS3XC_R2","PS3XC_SELECT","PS3XC_START","PS3XC_STICK_LEFT_BUTTON","PS3XC_STICK_RIGHT_BUTTON","PS3XC_DPAD_UP","PS3XC_DPAD_DOWN","PS3XC_DPAD_LEFT","PS3XC_DPAD_RIGHT","PS3XC_STICK_LEFT_X","PS3XC_STICK_LEFT_Y","PS3XC_STICK_RIGHT_X","PS3XC_STICK_RIGHT_Y","padParent","_padParent","_prevTimestamp","_buttons","_buttonsLen","_axes","_axesLen","getButton","timestamp","rawButtonVal","isNaN","processButtonDown","processButtonUp","processButtonFloat","processAxisChange","triggerCallback","disconnectingIndex","axisCode","buttonValue","Key","keycode","_enabled","durationUp","keyCode","onHoldCallback","onHoldContext","_justDown","_justUp","processKeyDown","processKeyUp","upDuration","pressEvent","onPressCallback","_keys","_capture","_onKeyDown","_onKeyPress","_onKeyUp","_k","onPress","removeCallbacks","addKey","addKeyCapture","addKeys","removeKey","removeKeyCapture","createCursorKeys","up","KeyCode","processKeyPress","clearCaptures","String","fromCharCode","charCode","A","charCodeAt","C","D","E","H","J","K","L","M","O","P","Q","R","S","T","U","V","W","X","Y","Z","ZERO","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","NUMPAD_0","NUMPAD_1","NUMPAD_2","NUMPAD_3","NUMPAD_4","NUMPAD_5","NUMPAD_6","NUMPAD_7","NUMPAD_8","NUMPAD_9","NUMPAD_MULTIPLY","NUMPAD_ADD","NUMPAD_ENTER","NUMPAD_SUBTRACT","NUMPAD_DECIMAL","NUMPAD_DIVIDE","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","F13","F14","F15","COLON","EQUALS","COMMA","UNDERSCORE","PERIOD","QUESTION_MARK","TILDE","OPEN_BRACKET","BACKWARD_SLASH","CLOSED_BRACKET","QUOTES","BACKSPACE","TAB","CLEAR","ENTER","SHIFT","CONTROL","ALT","CAPS_LOCK","ESC","SPACEBAR","PAGE_UP","PAGE_DOWN","END","HOME","PLUS","MINUS","INSERT","DELETE","HELP","NUM_LOCK","match","prop","Component","Angle","wrapAngle","Animation","play","frameRate","loop","killOnComplete","animations","AutoCull","autoCull","inCamera","checkWorldBounds","Bounds","container","alignTo","BringToTop","Core","install","components","Events","PhysicsBody","AnimationManager","LoadTexture","FixedToCamera","previousRotation","preUpdateChildren","fresh","_exists","P2JS","customRender","Crop","cropRect","_crop","updateCrop","resetFrame","oldX","oldY","oldW","oldH","_frame","Delta","deltaX","deltaZ","Destroy","onDestroy$dispatch","removeFrom","Video","onChangeSource","resizeFrame","BitmapText","_glyphs","_parent","_onDestroy","_onAddedToGroup","_onRemovedFromGroup","_onKilled","_onRevived","_onEnterBounds","_onOutOfBounds","_onInputOver","_onInputOut","_onInputDown","_onInputUp","_onDragStart","_onDragUpdate","_onDragStop","_onAnimationStart","_onAnimationComplete","_onAnimationLoop","onKilled","onRevived","onOutOfBounds","onEnterBounds","onInputOver","onInputOut","onInputDown","onInputUp","onDragStart","onDragStop","onAnimationStart","onAnimationComplete","onAnimationLoop","backing","_fixedToCamera","Health","health","maxHealth","damage","setHealth","heal","InCamera","InputEnabled","InWorld","outOfCameraBoundsKill","_outOfBoundsFired","onEnterBounds$dispatch","onOutOfBounds$dispatch","outOfBoundsKill","inWorld","LifeSpan","lifespan","onRevived$dispatch","onKilled$dispatch","stopAnimation","BitmapData","hasFrameData","loadFrameData","getFrameData","frameData","Tilemap","TilemapLayer","img","getImage","trimmed","spriteSourceSizeX","spriteSourceSizeY","sourceSizeW","sourceSizeH","refreshTexture","frameName","Overlap","_reset","Reset","ScaleMinMax","scaleMin","scaleMax","checkTransform","setScaleMinMax","Smoothed","existing","weapon","bulletClass","Weapon","createBullets","Image","creature","mesh","animation","useFlatData","tween","physicsGroup","SpriteBatch","audio","audioSprite","addSprite","tileSprite","rope","Rope","text","Text","overFrame","outFrame","downFrame","upFrame","Button","emitter","maxParticles","Arcade","Emitter","retroFont","font","characterWidth","characterHeight","chars","charsPerRow","xSpacing","ySpacing","xOffset","yOffset","RetroFont","bitmapText","tilemap","tileWidth","tileHeight","addToCache","uuid","addRenderTexture","video","bitmapData","addBitmapData","Tween","preUpdatePhysics","preUpdateLifeSpan","preUpdateInWorld","preUpdateCore","_onOverFrame","_onOutFrame","_onDownFrame","_onUpFrame","onOverSound","onOutSound","onDownSound","onUpSound","onOverSoundMarker","onOutSoundMarker","onDownSoundMarker","onUpSoundMarker","onOverMouseOnly","justReleasedPreventsOver","freezeFrames","forceOut","setFrames","onInputOverHandler","onInputOutHandler","onInputDownHandler","onInputUpHandler","STATE_OVER","STATE_OUT","STATE_DOWN","STATE_UP","clearFrames","setStateFrame","switchImmediately","frameKey","changeStateFrame","setStateSound","marker","soundKey","markerKey","Sound","AudioSprite","playStateSound","setSounds","overSound","overMarker","downSound","downMarker","outSound","outMarker","upSound","upMarker","setOverSound","setOutSound","setDownSound","setUpSound","fastSpriteBatch","ready","isRotated","childTransform","skipPool","ctx","imageData","FrameData","textureFrame","addFrame","Frame","disableTextureUpload","cls","_image","_pos","_size","_scale","_rotate","_alpha","prev","_anchor","_tempR","_tempG","_tempB","_circle","_swapCanvas","moveH","moveV","draw","getBase64","encoderOptions","toDataURL","onLoadCallback","onErrorCallback","onload","onerror","addImage","processPixelRGB","pixel","createColor","unpackPixel","getPixel32","setPixel32","processPixel","replaceRGB","g1","g2","region","packPixel","setHSL","bHaveH","bHaveS","bHaveL","HSLtoRGB","shiftHSL","red","green","blue","immediate","LITTLE_ENDIAN","setPixel","getPixel","getPixelRGB","hsl","hsv","getPixels","getFirstPixel","scan","newWidth","newHeight","getCanvas","op","copyTransform","copyRect","drawGroup","drawGroupProxy","drawFull","renderGraphics","shadow","blur","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","alphaMask","sourceRect","maskRect","blendSourceAtop","blendReset","extract","destination","prevFont","fillText","beginPath","arc","closePath","moveTo","lineTo","lineWidth","strokeStyle","stroke","polygon","textureLine","createPattern","blendSourceOver","blendSourceIn","blendSourceOut","blendDestinationOver","blendDestinationIn","blendDestinationOut","blendDestinationAtop","blendXor","blendAdd","blendMultiply","blendScreen","blendOverlay","blendDarken","blendLighten","blendColorDodge","blendColorBurn","blendHardLight","blendSoftLight","blendDifference","blendExclusion","blendHue","blendSaturation","blendColor","blendLuminosity","copyBitmapData","destRowStart","getSmoothingEnabled","setSmoothingEnabled","getTransform","translateX","translateY","skewX","skewY","EarCut","holeIndices","dim","hasHoles","outerLen","outerNode","linkedList","eliminateHoles","earcutLinked","clockwise","insertNode","filterPoints","again","steiner","removeNode","ear","pass","indexCurve","isEarHashed","isEar","cureLocalIntersections","splitEarcut","pointInTriangle","minTX","minTY","maxTX","maxTY","minZ","zOrder","maxZ","nextZ","prevZ","locallyInside","isValidDiagonal","splitPolygon","getLeftmost","compareX","eliminateHole","hole","findHoleBridge","hx","hy","qx","tan","tanMin","sortLinked","q","tail","numMerges","pSize","qSize","inSize","leftmost","intersectsPolygon","middleInside","Node","an","bp","stencilBufferLimit","lastIndex","clearDirty","graphicsDataPool","switchMode","buildPoly","buildComplexPoly","buildLine","buildRectangle","buildCircle","buildRoundedRectangle","upload","WebGLGraphicsData","rectData","fillColor","fillAlpha","vertPos","tempPoints","rrectData","recPoints","quadraticBezierCurve","vecPos","fromX","fromY","cpX","cpY","toX","toY","xa","ya","xb","yb","getPt","n1","n2","perc","circleData","seg","totalSegs","firstPoint","lastPoint","midPointX","midPointY","unshift","p1x","p1y","p2x","p2y","p3x","p3y","perpx","perpy","perp2x","perp2y","perp3x","perp3y","indexCount","indexStart","lineColor","lineAlpha","glPoints","glIndicies","updateGraphicsTint","_fillTint","_lineTint","strokeRect","ox","oy","xe","ye","xm","ym","bezierCurveTo","maxRadius","quadraticCurveTo","tintR","tintG","tintB","GraphicsData","currentPath","boundsPadding","_localBounds","_boundsDirty","webGLDirty","cachedSpriteDirty","updateLocalBounds","drawTriangle","cull","triangle","cameraToFace","faceNormal","drawPolygon","drawTriangles","point1","point2","point3","lineStyle","drawShape","cpX2","cpY2","dt2","dt3","arcTo","mm","dd","cc","tt","k1","k2","j1","j2","qy","anticlockwise","segments","sweep","segs","startX","startY","filling","theta","theta2","cTheta","sTheta","segMinus","remainder","drawRoundedRect","drawCircle","drawEllipse","canvasBuffer","updateCachedSpriteTexture","_prevTint","tempPoint","getVisualBounds","cachedSprite","destroyCachedSprite","textureBuffer","tempMatrix","renderXY","renderRawXY","updateBase","realResolution","webGLPixels","Uint8Array","readPixels","tempCanvas","canvasData","textBounds","strokeColors","fontStyles","fontWeights","autoRound","useAdvancedWrap","splitRegExp","characterLimitSize","characterLimitSuffix","_testString","_res","_text","_fontComponents","_lineSpacing","_charCount","setStyle","updateText","setShadow","shadowStroke","shadowFill","newStyle","boundsAlignH","boundsAlignV","strokeThickness","wordWrap","wordWrapWidth","maxLines","tabs","fontProperties","fontToComponents","fontStyle","fontVariant","fontWeight","fontSize","componentsToFont","testString","outputText","substring","runWordWrap","lines","lineWidths","maxLineWidth","determineFontProperties","drawnLines","measureLine","measureText","tab","section","snapToCeil","linePositionX","linePositionY","lineHeight","lineSpacing","textBaseline","lineCap","lineJoin","ascent","updateLine","updateShadow","strokeText","renderTabLine","snap","lineLength","letter","clearColors","clearFontValues","addColor","addStrokeColor","addFontStyle","addFontWeight","weight","precalculateWordWrap","advancedWordWrap","basicWordWrap","linesCount","currentLineWidth","words","word","wordWithSpace","wordWidth","newWord","secondPart","spaceLeft","wordWidthWithSpace","updateFont","family","exec","fontFamily","setText","parseList","setTextBounds","properties","fontPropertiesCache","fontPropertiesContext","testStringMetrics","actualBoundingBoxAscent","asc","descent","desc","actualBoundingBoxDescent","mxWidth","setCharacterLimit","characterLimit","suffix","fontPropertiesCanvas","createElement","textWidth","textHeight","_prevAnchor","_maxWidth","_data","getBitmapFont","_font","_fontSize","_align","_letterSpacing","_tint","sourceWidth","sourceHeight","scanLine","lastSpace","wrappedWidth","prevCharCode","maxWidth","test","charAt","charData","kerning","xAdvance","letterSpacing","cleanText","purgeGlyphs","kept","checkImageKey","characterSpacingX","characterSpacingY","characterPerRow","multiLine","autoUpperCase","customSpacingX","customSpacingY","fixedWidth","fontSet","grabData","currentX","currentY","updateFrameData","stamp","ALIGN_LEFT","ALIGN_RIGHT","ALIGN_CENTER","TEXT_SET1","TEXT_SET2","TEXT_SET3","TEXT_SET4","TEXT_SET5","TEXT_SET6","TEXT_SET7","TEXT_SET8","TEXT_SET9","TEXT_SET10","TEXT_SET11","setFixedWidth","lineAlignment","content","characterSpacing","allowLowerCase","buildRetroFontText","getLongestLine","pasteLine","longestLine","removeUnsupportedCharacters","stripCR","newString","aChar","code","updateOffset","diffX","diffY","frames","getFrames","newText","toUpperCase","_hasUpdateAnimation","_updateAnimationCallback","canvasPadding","drawMode","updateAnimation","nextPoint","perpLength","_vertexBuffer","_initWebGL","_renderStrip","_indexBuffer","_uvBuffer","_colorBuffer","_renderCanvasTriangleStrip","_renderCanvasTriangles","_renderCanvasDrawTriangle","index0","textureSource","textureWidth","textureHeight","u0","v2","paddingX","paddingY","normX","normY","deltaA","deltaB","deltaC","deltaD","deltaE","deltaF","renderStripFlat","strip","rawX","rawY","_updateAnimation","difference","_scroll","textureDebug","tilePattern","frameWidth","frameHeight","autoScroll","stopScroll","generateTilingTexture","restartBatch","sessionBlendMode","forcePowerOfTwo","targetWidth","targetHeight","getNextPowerOfTwo","pool","getTotal","getFree","deviceReadyAt","initialized","desktop","iOSVersion","nodeWebkit","electron","ejecta","crosswalk","android","chromeOS","linux","macOS","windows","windowsPhone","canvasBitBltShift","file","fileSystem","localStorage","worker","css3D","typedArray","vibration","getUserMedia","quirksMode","arora","chrome","chromeVersion","epiphany","firefox","firefoxVersion","ieVersion","trident","tridentVersion","mobileSafari","midori","opera","safari","safariVersion","webApp","silk","audioData","ogg","opus","mp3","wav","m4a","webm","dolby","oggVideo","h264Video","mp4Video","webmVideo","vp9Video","hlsVideo","iPhone","iPhone4","iPad","pixelRatio","littleEndian","support32bit","fullscreen","requestFullscreen","cancelFullscreen","fullscreenKeyboard","onInitialized","nonPrimer","readyCheck","_readyCheck","_monitor","_queue","readyState","setTimeout","_initialize","vita","kindle","RegExp","$1","_checkOS","$3","standalone","process","versions","_checkBrowser","AudioContext","webkitAudioContext","audioElement","canPlayType","major","minor","$2","_checkAudio","videoElement","_checkVideo","has3d","el","transforms","webkitTransform","OTransform","msTransform","MozTransform","insertBefore","getComputedStyle","getPropertyValue","_checkCSS3D","devicePixelRatio","Int8Array","Uint8ClampedArray","Int32Array","createImageData","_checkIsUint8ClampedImageData","vibrate","webkitVibrate","mozVibrate","msVibrate","CanvasRenderingContext2D","getItem","File","FileReader","FileList","Blob","requestFileSystem","WebGLRenderingContext","Worker","compatMode","webkitGetUserMedia","mozGetUserMedia","msGetUserMedia","oGetUserMedia","URL","webkitURL","mozURL","msURL","_checkFeatures","s1","s2","_checkCanvasFeatures","fs","cfs","Element","ALLOW_KEYBOARD_INPUT","_checkFullScreenSupport","documentElement","maxTouchPoints","PointerEvent","MSPointerEvent","msPointerEnabled","pointerEnabled","canPlayAudio","canPlayVideo","needsTouchUnlock","fakeiOSTouchLock","matches","display","msTouchAction","overflowHidden","getElementById","overflow","appendChild","parentNode","vendor","prefix","types","msInterpolationMode","setImageRenderingBicubic","vendors","requestAnimationFrame","cancelAnimationFrame","_isSetTimeOut","_onLoop","_timeOutID","updateSetTimeout","updateRAF","rafTime","timeToCall","clearTimeout","isSetTimeOut","isRAF","DEG_TO_RAD","RAD_TO_DEG","degrees","radians","fuzzyLessThan","fuzzyGreaterThan","fuzzyCeil","fuzzyFloor","average","shear","snapTo","gap","snapToFloor","roundTo","place","floorTo","ceilTo","isFinite","rotateToAngle","currentAngle","targetAngle","getShortestAngle","angleBetween","angleBetweenY","angleBetweenPoints","angleBetweenPointsY","reverseAngle","angleRad","normalizeAngle","maxAdd","minSub","wrapValue","isOdd","isEven","minProperty","maxProperty","linearInterpolation","bezierInterpolation","bernstein","catmullRomInterpolation","catmullRom","factorial","res","roundAwayFromZero","sinCosGenerator","sinAmplitude","cosAmplitude","frequency","frq","cosTable","sinTable","hypot","distanceSq","distancePow","clampBottom","within","mapLinear","smoothstep","smootherstep","sign","percent","seeds","s0","sow","integer","real","integerInRange","realInRange","ary","weightedPick","QuadTree","maxObjects","maxLevels","_empty","subWidth","subHeight","populate","populateHandler","insert","retrieve","returnObjects","_tweens","_add","easeMap","Power0","Easing","Power1","Power2","Power3","Power4","Linear","None","Quad","Quadratic","Out","Cubic","Quart","Quartic","Quint","Quintic","Sine","Sinusoidal","Expo","Exponential","Circ","Circular","Elastic","Back","Bounce","Quad.easeIn","In","Cubic.easeIn","Quart.easeIn","Quint.easeIn","Sine.easeIn","Expo.easeIn","Circ.easeIn","Elastic.easeIn","Back.easeIn","Bounce.easeIn","Quad.easeOut","Cubic.easeOut","Quart.easeOut","Quint.easeOut","Sine.easeOut","Expo.easeOut","Circ.easeOut","Elastic.easeOut","Back.easeOut","Bounce.easeOut","Quad.easeInOut","InOut","Cubic.easeInOut","Quart.easeInOut","Quint.easeInOut","Sine.easeInOut","Expo.easeInOut","Circ.easeInOut","Elastic.easeInOut","Back.easeInOut","Bounce.easeInOut","_pauseAll","_resumeAll","pendingDelete","_manager","addTweens","numTweens","deltaTotal","isTweening","checkIsRunning","some","_pause","_resume","pauseAll","resumeAll","manager","timeline","timeScale","repeatCounter","onStart","onLoop","onRepeat","onChildComplete","onComplete","chainedTween","isPaused","_onUpdateCallback","_onUpdateCallbackContext","_pausedTime","_hasStarted","ease","yoyo","Default","TweenData","vEnd","loadValues","updateTweenData","repeatDelay","yoyoDelay","easing","interpolation","repeatAll","chain","startTime","status","PENDING","RUNNING","LOOPED","COMPLETE","generateData","vStart","vStartCache","vEndCache","repeatTotal","inReverse","easingFunction","interpolationFunction","interpolationContext","isFrom","ms","fps","blob","reversed","elapsedMS","_desiredFps","suggestedFps","desiredFps","advancedTiming","updates","renders","ups","rps","fpsMin","fpsMax","msMin","msMax","pauseDuration","timeExpected","Timer","_frameCount","_elapsedAccumulator","_started","_timeLastSecond","_pauseStarted","_timers","timer","autoDestroy","previousDateNow","previousNow","updateAdvancedTiming","updateTimers","interval","elapsedSince","since","elapsedSecondsSince","running","expired","nextTick","_pauseTotal","_now","_marked","_diff","_newTick","MINUTE","SECOND","HALF","QUARTER","repeatCount","TimerEvent","clearEvents","clearPendingEvents","adjustEvents","baseTime","currentFrame","currentAnim","updateIfVisible","isLoaded","_frameData","_anims","_outputFrames","anim","copyFrameData","useNumericIndex","getFrameIndexes","validateFrames","checkFrameName","isPlaying","getAnimation","refreshFrame","gotFrame","getFrame","getFrameByName","_frameIndex","_frames","loopCount","isFinished","_pauseStartTime","_frameDiff","_frameSkip","onUpdate","isReversed","_timeLastFrame","_timeNextFrame","updateCurrentFrame","onAnimationStart$dispatch","reverseOnce","frameId","useLocalFrameIndex","frameIndex","directionalOffset","dispatchComplete","onAnimationComplete$dispatch","diff","onAnimationLoop$dispatch","signalUpdate","fromPlay","generateFrameNames","zeroPad","spriteSourceSizeW","spriteSourceSizeH","setTrim","actualWidth","actualHeight","destX","destY","destWidth","destHeight","getRect","_frameNames","getFrameRange","AnimationParser","spriteSheet","frameMax","margin","spacing","skipFrames","row","column","totalAvailable","lastAvailable","firstFrame","lastFrame","JSONData","json","newFrame","filename","sourceSize","spriteSourceSize","JSONDataPyxel","layers","tileheight","tilewidth","tiles","JSONDataHash","XMLData","xml","getElementsByTagName","frameX","frameY","autoResolveURL","binary","bitmapFont","compressedTexture","_urlMap","_urlResolver","_urlTemp","onSoundUnlock","_cacheMap","TEXTURE","SOUND","PHYSICS","BINARY","BITMAPFONT","JSON","XML","SHADER","RENDER_TEXTURE","DATA","_pendingCount","_addImages","DEFAULT_KEY","DEFAULT_SRC","MISSING","MISSING_KEY","MISSING_SRC","READY_TIMEOUT","addCompressedTextureMetaData","extension","arrayBuffer","removeImage","LoaderParser","fileFormat","_resolveURL","addCanvas","addImageAsync","_removePending","_addPending","addDefaultImage","addMissingImage","addSound","audioTag","decoded","isDecoding","touchLocked","addText","addPhysicsData","addTilemap","mapData","addBinary","binaryData","addBitmapFont","atlasData","atlasType","jsonBitmapFont","xmlBitmapFont","addBitmapFontFromAtlas","atlasKey","atlasFrame","dataKey","dataType","fontData","getBaseTexture","getJSON","getXML","addJSON","addXML","addVideo","isBlob","addShader","addSpriteSheet","addTextureAtlas","TEXTURE_ATLAS_XML_STARLING","TEXTURE_ATLAS_JSON_PYXEL","addData","reloadSound","getSound","reloadSoundComplete","updateSound","decodedSound","isSoundDecoded","isSoundReady","checkKey","checkURL","checkCanvasKey","checkDataKey","checkTextureKey","checkSoundKey","checkTextKey","checkPhysicsKey","checkTilemapKey","checkBinaryKey","checkBitmapDataKey","checkBitmapFontKey","checkJSONKey","checkXMLKey","checkVideoKey","checkShaderKey","checkRenderTextureKey","full","getTextureFrame","getSoundData","getText","getPhysicsData","fixtureKey","fixtures","fixture","getTilemapData","getBinary","getBitmapData","getVideo","getShader","getRenderTexture","getData","getFrameCount","getFrameByIndex","getURL","getKeys","removeCanvas","destroyBaseTexture","removeSound","removeText","removePhysics","removeTilemap","removeBinary","removeBitmapData","removeBitmapFont","removeJSON","removeXML","removeVideo","removeShader","removeRenderTexture","removeSpriteSheet","removeTextureAtlas","removeData","baseURL","destroyItem","readyTimeout","_ready","_checkReady","isLoading","preloadSprite","crossOrigin","headers","requestedWith","onLoadStart","onBeforeLoadComplete","onLoadComplete","onPackComplete","onFileStart","onFileComplete","onFileError","enableParallel","maxParallelDownloads","_withSyncPointDepth","_fileList","_flightQueue","_processingHead","_fileLoadStarted","_totalPackCount","_totalFileCount","_loadedPackCount","_loadedFileCount","TEXTURE_ATLAS_JSON_ARRAY","TEXTURE_ATLAS_JSON_HASH","PHYSICS_LIME_CORONA_JSON","PHYSICS_PHASER_JSON","mediaTypes","avif","bmp","gif","ico","jpg","jpeg","png","svg","tif","tiff","webp","getMediaType","_getSource","setPreloadSprite","checkKeyExists","getAssetIndex","bestFound","loaded","loading","getAsset","fileIndex","addToFileList","overwrite","syncPoint","currentFile","replaceInFileList","pack","imageset","sources","defaultSource","imageFromBitmapData","imageFromGrid","imageFromTexture","pixelWidth","pixelHeight","palette","exkey","truecolor","images","urls","script","spritesheet","autoDecode","noAudio","jsonURL","jsonData","audiosprite","loadEvent","asBlob","CSV","TILED_JSON","tilemapCSV","tilemapTiledJSON","LIME_CORONA_JSON","textureURL","atlasURL","parseXml","atlasJSONArray","atlas","atlasJSONHash","atlasXML","withSyncPoint","addSyncPoint","asset","removeFile","updateProgress","processLoadQueue","finishedLoading","requestUrl","requestObject","progress","syncblock","inflightLimit","processPack","loadFile","abnormal","asyncComplete","errorMessage","packData","transformUrl","xhrLoad","fileComplete","loadImageTag","loadPictureTag","getAudioURL","usingWebAudio","usingAudioTag","loadAudioTag","fileError","getVideoURL","loadVideoTag","jsonLoadComplete","xmlLoadComplete","csvLoadComplete","picElm","sourceElm","setAttribute","currentSrc","controls","autoplay","playsInline","videoLoadEvent","canplay","Audio","playThroughEvent","xhr","XMLHttpRequest","open","responseType","setRequestHeader","message","send","videoType","uri","lastIndexOf","audioType","reason","loadNext","responseText","response","decode","language","defer","head","contentType","DOMParser","parseFromString","ActiveXObject","async","loadXML","totalLoadedFiles","totalLoadedPacks","progressFloat","info","common","getAttribute","letters","char","kernings","second","finalizeBitmapFont","_face","_lineHeight","_id","_xoffset","_yoffset","_xadvance","_second","_first","_amount","bitmapFontData","pvr","uintArray","byteArray","pvrHeader","pixelFormat","flags","colorSpace","channelType","depth","numberOfSurfaces","numberOfFaces","numberOfMipmaps","metaDataSize","byteLength","dds","ddsHeader","pitch","mipmapCount","formatSize","formatFlag","formatFourCC","formatBitCount","formatRBitMask","formatGBitMask","formatBBitMask","formatABitMask","caps1","caps2","caps3","caps4","reserved2","DXGIFormat","resourceDimension","miscFlag","arraySize","ktx","ktxHeader","imageSizeOffset","imageSize","glInternalFormat","endianness","glType","glTypeSize","glFormat","glBaseInternalFormat","pixelDepth","numberOfArrayElements","numberOfMipmapLevels","bytesOfKeyValueData","keyAndValueByteSize","pkm","pkmHeader","originalWidth","originalHeight","autoplayKey","sounds","spritemap","addMarker","connectToMaster","markers","totalDuration","currentTime","durationMS","stopTime","pausedPosition","pausedTime","currentMarker","fadeTween","pendingPlayback","override","allowMultiple","playOnce","externalNode","masterGainNode","gainNode","_sound","_globalVolume","_markedToDelete","_pendingStart","_removeFromSoundManager","_sourceId","masterGain","createGain","createGainNode","gain","soundHasUnlocked","onDecoded","onPlay","onStop","onMute","onMarkerComplete","_volume","_buffer","_muted","_tempMarker","_tempPosition","_tempVolume","_tempPause","_muteVolume","_tempLoop","_onDecodedEventDispatched","removeMarker","onEndedHandler","_removeOnEndedHandler","_disconnectSource","isDecoded","loopFull","forceRestart","_stopSourceAndDisconnect","_createSourceAndConnect","_addOnEndedHandler","_startSource","muted","mute","prevMarker","fadeTo","fadeOut","fadeComplete","updateGlobalVolume","globalVolume","createBufferSource","when","onended","onSoundDecode","onVolumeChange","onUnMute","onTouchUnlock","baseLatency","channels","_codeMuted","_unlockSource","_sounds","_watchList","_watching","_watchCallback","_watchContext","_onStateChange","disableAudio","disableWebAudio","audioContext","onstatechange","setTouchLock","unlock","setTouchUnlock","webAudioIsSuspended","resumeWebAudio","resumeWebAudioIfSuspended","noteOn","stopAll","soundData","decodeAudioData","setDecodedCallback","files","removeByKey","close","dom","minWidth","minHeight","maxHeight","forceLandscape","forcePortrait","incorrectOrientation","_pageAlignHorizontally","_pageAlignVertically","onOrientationChange","enterIncorrectOrientation","leaveIncorrectOrientation","hasPhaserSetFullScreen","fullScreenTarget","_createdFullScreenTarget","onFullScreenInit","onFullScreenChange","onFullScreenError","screenOrientation","getScreenOrientation","scaleFactor","scaleFactorInversed","aspectRatio","sourceAspectRatio","windowConstraints","compatibility","supportsFullScreen","orientationFallback","noMargins","scrollTo","forceMinimumDocumentHeight","canExpandParent","clickTrampoline","_scaleMode","NO_SCALE","_fullScreenScaleMode","parentIsWindow","parentScaleFactor","trackParentInterval","onSizeChange","onResize","onResizeContext","_pendingScaleMode","_fullScreenRestore","_gameSize","_userScaleFactor","_userScaleTrim","_lastUpdate","_updateThrottle","_updateThrottleReset","_parentBounds","_tempBounds","_lastReportedCanvasSize","_lastReportedGameSize","_booted","setupScale","EXACT_FIT","SHOW_ALL","RESIZE","USER_SCALE","MODES","compat","_orientationChange","orientationChange","_windowResize","windowResize","_fullScreenChange","fullScreenChange","_fullScreenError","fullScreenError","_gameResumed","setGameSize","FlexGrid","fullScreenScaleMode","pageAlignHorizontally","alignH","pageAlignVertically","alignV","scaleH","scaleV","setUserScale","trimH","trimV","getParentBounds","visualBounds","updateDimensions","queueUpdate","currentScaleMode","hScale","vScale","hTrim","vTrim","setResizeCallback","signalSizeChange","setMinMax","prevThrottle","prevWidth","prevHeight","boundsChanged","orientationChanged","updateOrientationState","updateLayout","throttle","updateScalingAndBounds","forceOrientation","classifyOrientation","orientation","previousOrientation","previouslyIncorrect","isLandscape","isPortrait","changed","correctnessChanged","scrollTop","setMaximum","setExactFit","isFullScreen","boundingParent","setShowAll","resetCanvas","reflowCanvas","reflowGame","layoutBounds","clientRect","getBoundingClientRect","parentRect","offsetParent","wc","windowBounds","alignCanvas","parentBounds","canvasBounds","currentEdge","targetEdge","marginLeft","marginRight","marginTop","marginBottom","cssWidth","cssHeight","expanding","createFullScreenTarget","fsTarget","background","startFullScreen","allowTrampoline","cleanupCreatedTarget","initData","targetElement","navigationUI","stopFullScreen","prepScreenMode","enteringFullscreen","createdTarget","scaleSprite","letterBox","scaleX1","scaleY1","scaleX2","scaleY2","scaleOnWidth","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","bmd","columnWidth","renderShadow","currentColor","currentAlpha","_line","_rect","GEOM_AUTO","GEOM_RECTANGLE","GEOM_CIRCLE","GEOM_POINT","GEOM_LINE","GEOM_ELLIPSE","gameInfo","soundInfo","sourceId","ended","filled","rectangle","geom","cameraInfo","hideIfUp","downColor","upColor","inactiveColor","mx","my","worldX","worldY","_pointerButtonIcon","btn","spriteInputInfo","justDown","justUp","inputInfo","showDetails","_inputHandler","free","inputHandler","_inputHandlerStatusIcon","_inputHandlerCaptureIcon","spriteBounds","ropeSegments","segment","spriteInfo","spriteCoords","lineInfo","forceType","ellipse","quadTree","quadtree","NINJA","Ninja","BOX2D","Box2D","renderBody","bodyInfo","renderBodyInfo","box2d","box2dWorld","renderDebugDraw","box2dBody","displayList","canvasPool","phaser","factor","loader","box","scrollY","scrollLeft","scrollX","clientTop","clientLeft","cushion","calibrate","coords","getAspectRatio","inLayoutViewport","primaryFallback","screen","mozOrientation","msOrientation","matchMedia","documentBounds","pageXOffset","pageYOffset","clientWidth","clientHeight","offsetWidth","scrollWidth","offsetHeight","scrollHeight","randomIndex","removeRandomItem","newLength","transposeMatrix","sourceRowCount","sourceColCount","rotateMatrix","findClosest","arr","NaN","low","high","rotateRight","rotateLeft","numberArray","numberArrayStep","LinkedList","entity","palettes","0","PALETTE_ARNE","PALETTE_JMP","PALETTE_CGA","PALETTE_C64","PALETTE_JAPANESE_MACHINE","boundsCustom","boundsFull","boundsNone","positionCustom","positionFluid","positionFull","positionNone","scaleCustom","scaleFluid","scaleFull","scaleNone","customWidth","customHeight","customOffsetX","customOffsetY","ratioH","ratioV","createCustomLayer","layer","FlexLayer","createFluidLayer","createFullLayer","createFixedLayer","persist","fitSprite","topLeft","topMiddle","topRight","bottomLeft","bottomMiddle","bottomRight","RED","ORANGE","YELLOW","GREEN","AQUA","BLUE","VIOLET","WHITE","BLACK","GRAY","RGBtoHSL","RGBtoHSV","fromRGBA","toRGBA","toABGR","RGBArrayToHex","rgb","hueToColor","HSVtoRGB","color32","getColor","getColor32","RGBtoString","componentToHex","hexToRGB","hex","hexToColor","webToColor","web","tempColor","getRGB","HSVColorWheel","HSLColorWheel","interpolateColor","color1","color2","currentStep","src1","src2","hsv1","hsv2","dh","h3","interpolateColorWithRGB","or","og","ob","interpolateRGB","getRandomColor","getWebRGB","getAlpha","getAlphaFloat","getRed","getGreen","getBlue","blendNormal","blendAverage","blendSubtract","blendNegation","blendLinearDodge","blendLinearBurn","blendLinearLight","blendVividLight","blendPinLight","blendHardMix","blendReflect","blendGlow","blendPhoenix","arcade","ninja","chipmunk","matter","CHIPMUNK","MATTERJS","P2","Matter","startSystem","system","enableAABB","checkCollision","OVERLAP_BIAS","forceX","sortDirection","LEFT_RIGHT","skipQuadTree","_total","SORT_NONE","RIGHT_LEFT","TOP_BOTTOM","BOTTOM_TOP","updateMotion","allowRotation","velocityDelta","computeVelocity","angularAcceleration","angularDrag","maxAngular","acceleration","drag","maxVelocity","allowGravity","allowDrag","object1","object2","overlapCallback","processCallback","collideObjects","collide","collideCallback","sortLeftRight","sortRightLeft","sortTopBottom","sortBottomTop","overlapOnly","collideHandler","collideGroupVsSelf","collideSpriteVsSprite","collideSpriteVsGroup","collideSpriteVsTilemapLayer","collideGroupVsGroup","collideGroupVsTilemapLayer","sprite1","sprite2","separate","items","bounds1","bounds2","group1","group2","body1","body2","none","isCircle","separateCircle","bodyRect","bodyCircle","resultX","resultY","separateX","separateY","onOverlap","onCollide","circleBodyIntersects","getOverlapX","getOverlapY","angleCollision","immovable","customSeparateX","tempVel1","tempVel2","bounce","maxOverlap","deltaAbsX","embedded","touching","overlapX","deltaAbsY","overlapY","moves","nv1","nv2","avg","customSeparateY","getObjectsUnderPointer","getObjectsAtLocation","callbackArg","moveToObject","maxTime","distanceBetween","moveToPointer","angleToPointer","distanceToPointer","moveToXY","distanceToXY","velocityFromAngle","velocityFromRotation","accelerationFromRotation","accelerateToObject","xSpeedMax","ySpeedMax","accelerateToPointer","accelerateToXY","angleToXY","closest","targets","farthest","angleBetweenCenters","worldAngleToPointer","preRotation","newVelocity","worldBounce","onWorldBounds","facing","overlapR","collideWorldBounds","wasTouching","blocked","tilePadding","syncBounds","isMoving","stopVelocityOnCollide","moveTimer","moveDistance","moveDuration","moveTarget","moveEnd","onMoveComplete","movementCallback","movementCallbackContext","_sx","_sy","updateBounds","asx","asy","updateCenter","updateMovement","collided","stopMovement","stopVelocity","check","moveFrom","setCircle","onFloor","onCeiling","onWall","TilemapCollision","TILE_BIAS","tilemapLayer","getTiles","getTileOffsetX","getTileOffsetY","separateTile","tile","tilemapLayerOffsetX","tilemapLayerOffsetY","collisionCallback","collisionCallbackContext","faceLeft","faceRight","faceTop","faceBottom","tileCheckX","tileCheckY","collideRight","collideLeft","processTileSeparationX","collideDown","collideUp","processTileSeparationY","useElapsedTime","materials","InversePointProxy","walls","onBodyAdded","onBodyRemoved","onSpringAdded","onSpringRemoved","onConstraintAdded","onConstraintRemoved","onContactMaterialAdded","onContactMaterialRemoved","postBroadphaseCallback","onBeginContact","onEndContact","mpx","mpxi","pxm","pxmi","beginContactHandler","endContactHandler","collisionGroups","nothingCollisionGroup","CollisionGroup","boundsCollisionGroup","everythingCollisionGroup","boundsCollidesWith","_toRemove","_collisionGroupID","_boundsLeft","_boundsRight","_boundsTop","_boundsBottom","_boundsOwnGroup","removeBodyNextStep","setImpactEvents","impactHandler","setPostBroadphaseCallback","postBroadphaseHandler","_bodyCallbacks","_bodyCallbackContext","_groupCallbacks","_groupCallbackContext","setCollisionGroup","setWorldMaterial","updateBoundsCollisionGroup","setupWall","wall","fixedStepTime","impactCallback","createDistanceConstraint","getBody","createGearConstraint","createRevoluteConstraint","createLockConstraint","createPrismaticConstraint","lockRotation","anchorA","anchorB","setMaterial","createMaterial","createContactMaterial","getSprings","getConstraints","filterStatic","physicsPosition","query","toJSON","createCollisionGroup","bitmask","createSpring","worldA","worldB","localA","localB","createRotationalSpring","createBody","addPolygon","createParticle","convertCollisionObjects","map","collision","shapeData","polyline","addRectangle","clearTilemapLayerBodies","getLayer","convertTilemap","optimize","collides","getTileRight","FixtureList","rawList","namedFixtures","groupedFixtures","allFixtures","setCategory","bit","getFixtures","setMask","setSensor","getFixtureByKey","getGroup","groupID","_ref","_results","callee","PointProxy","collidesWith","removeNextStep","debugBody","_collideWorldBounds","setRectangleFromSprite","createBodyCallback","createGroupCallback","getCollisionMask","updateCollisionMask","clearCollision","clearGroup","clearMask","removeCollisionGroup","clearCallback","shapeChanged","impulse","localX","localY","setZeroRotation","setZeroVelocity","setZeroDamping","moveForward","moveBackward","thrust","thrustLeft","thrustRight","moveLeft","moveRight","updateSpriteTransform","resetDamping","resetMass","clearShapes","addCircle","addPlane","addParticle","addLine","addCapsule","setRectangle","addPhaserPolygon","createdFixtures","fixtureData","shapesOfFixture","addFixture","generatedShapes","categoryBits","maskBits","isSensor","polygons","loadPolygon","BodyDebug","settings","defaultSettings","pixelsPerLengthUnit","debugPolygons","ppu","lw","vrot","_j","_ref1","randomPastelHex","drawCapsule","drawPlane","drawLine","drawRectangle","drawConvex","drawPath","lastx","lasty","diagMargin","diagSize","maxLength","xd","yd","mix","rgbToHex","ImageCollection","firstgid","imageWidth","imageHeight","imageMargin","imageSpacing","containsImageIndex","imageIndex","gid","Tile","flipped","scanned","setCollisionCallback","setCollision","resetCollision","isInteresting","faces","TilemapParser","widthInPixels","heightInPixels","tilesets","imagecollections","objectsMap","collideIndexes","currentLayer","debugMap","_tempA","NORTH","EAST","SOUTH","WEST","setTileSize","createBlankLayer","addTilesetImage","tileset","tileMargin","tileSpacing","getTilesetIndex","setImage","newSet","Tileset","countX","countY","columns","rows","createFromObjects","search","CustomClass","adjustY","adjustSize","foundObjects","created","searchType","getObjects","propertyName","createFromTiles","replacements","customClass","lh","createLayer","getLayerIndex","rootLayer","groupEnd","indexes","location","getObject","propName","propValue","getImageIndex","setTileIndexCallback","setTileLocationCallback","recalculate","setCollisionByIndex","calculateFaces","setCollisionBetween","setCollisionByExclusion","layerArg","setPreventRecalculate","preventingRecalculate","needToRecalculate","above","below","getTileAbove","getTileBelow","getTileLeft","setLayer","hasTile","removeTile","removeTileWorldXY","putTile","putTileWorldXY","searchTileIndex","all","getTile","nonNull","getTileWorldXY","paste","tileblock","tileA","tileB","swapHandler","removeAllLayers","dump","txt","renderSettings","enableScrollDelta","overdrawRatio","copyCanvas","debugSettings","missingImageFill","debuggedTileOverfill","forceFullRedraw","debugAlpha","facingEdgeStroke","collidingTileOverfill","scrollFactorX","scrollFactorY","rayStepRate","_wrap","_mc","renderWidth","renderHeight","_scrollX","_scrollY","tileOffset","ensureSharedCopyCanvas","sharedCopyCanvas","resizeWorld","_fixX","_unfixX","_fixY","_unfixY","getTileX","getTileY","getTileXY","getRayCastTiles","interestingFace","skipInteresting","layerData","coord","fetchAll","wy","wx","resolveTileset","tileIndex","setIndex","containsTileIndex","resetTilesetCache","setScale","xScale","yScale","shiftCanvas","copyW","copyH","copyContext","renderRegion","lastAlpha","xmax","ymax","baseX","normStartX","renderDeltaScroll","shiftX","shiftY","renderW","renderH","trueTop","trueBottom","trueLeft","trueRight","renderFull","redrawAll","mc","renderDebug","baseY","normStartY","INSERT_NULL","getEmptyData","parseCSV","parseTiledJSON","getEmptyObject","template","createObject","propsMap","parseObjectGroup","objectGroup","objectsCollection","collisionCollection","nameKey","relativePosition","curl","encoding","binaryString","atob","bytes","opacity","offsetx","offsety","flippedVal","curi","tilesetGroupObjects","lastSet","tileproperties","tileProperties","updateTileData","imagewidth","imageheight","newCollection","objectgroup","lastgid","sid","drawCoords","coordIndex","setSpacing","rowCount","colCount","autoScale","autoScaleFps","scaleData","_s","autoAlpha","autoAlphaFps","alphaData","_a","onEmit","setAlphaData","setScaleData","emitters","ID","minAngle","maxAngle","minSpeed","maxSpeed","minParticleSpeed","maxParticleSpeed","minParticleScale","maxParticleScale","minRotation","maxRotation","minParticleAlpha","maxParticleAlpha","particleClass","particleDrag","particleAnchor","emitX","emitY","particleBringToTop","particleSendToBack","counts","emitted","failed","totalEmitted","totalFailed","_gravity","_minParticleScale","_maxParticleScale","_timer","_counter","_flowQuantity","_flowTotal","_explode","emitParticle","makeParticles","particleArguments","particle","rndKey","rndFrame","explode","flow","forceQuantity","getNextParticle","resetParticle","setSpeed","setXSpeed","setYSpeed","setRotation","setAlpha","rate","tweenData","setAngle","setGravity","lifespanOutput","bullets","autoExpandBulletsGroup","autofire","shots","fireLimit","fireRate","fireRateVariance","fireFrom","fireAngle","bulletInheritSpriteSpeed","bulletAnimation","bulletFrameRandom","bulletFrameCycle","bulletWorldWrap","bulletWorldWrapPadding","bulletAngleOffset","bulletAngleVariance","bulletSpeed","bulletSpeedVariance","bulletLifespan","bulletKillDistance","bulletGravity","bulletRotateToVelocity","bulletKey","bulletFrame","_bulletClass","Bullet","_bulletCollideWorldBounds","_bulletKillType","KILL_WORLD_BOUNDS","customBody","bulletBounds","bulletFrames","bulletFrameIndex","anims","onFire","onKill","onFireLimit","trackedSprite","trackedPointer","multiFire","_hasFired","trackRotation","trackOffset","_nextFire","_tempNextFire","_rotatedPoint","KILL_NEVER","KILL_LIFESPAN","KILL_DISTANCE","KILL_WEAPON_BOUNDS","KILL_CAMERA_BOUNDS","KILL_STATIC_BOUNDS","resetShots","newLimit","fire","trackSprite","trackPointer","fireMany","fireOffset","moveX","moveY","bullet","bulletManager","killType","bulletKillType","killDistance","rotateToVelocity","bodyDirty","bulletCollideWorldBounds","fireAtPointer","fireAtSprite","fireAtXY","setBulletBodyOffset","setBulletFrames","cycle","addBulletAnimation","debugBodies","onAccess","onTimeout","playWhenUnlocked","timeout","videoStream","isStreaming","retryLimit","retry","retryInterval","_retryID","_pending","_pendingChangeSource","_autoplay","_endCallback","_playCallback","_video","createVideoFromBlob","videoWidth","videoHeight","createVideoFromURL","snapshot","connectToMediaStream","stream","startMediaStream","captureAudio","captureVideo","removeVideoElement","getUserMediaTimeout","mediaDevices","then","getUserMediaSuccess","catch","getUserMediaError","mozSrcObject","srcObject","createObjectURL","onloadeddata","checkStream","checkVideoProgress","change","playbackRate","setPause","setResume","playHandler","getTracks","track","playing","changeSource","grab","hasChildNodes","firstChild","removeAttribute","canUseNewCanvasBlendModes"],"mappings":"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","file":"phaser.min.js"} \ No newline at end of file diff --git a/build/phaser.min.js b/build/phaser.min.js index 349956383..133ad0004 100644 --- a/build/phaser.min.js +++ b/build/phaser.min.js @@ -1,4 +1,4 @@ -/* Phaser v2.19.1 - http://phaser.io - @photonstorm - (c) 2016 Photon Storm Ltd. */ +/* Phaser v2.19.2 - http://phaser.io - @photonstorm - (c) 2016 Photon Storm Ltd. */ -!function(t){var e;"object"==typeof exports?module.exports=t():("undefined"!=typeof window?e=window:"undefined"!=typeof global?e=global:"undefined"!=typeof self&&(e=self),e.p2=t())}(function(){return function n(r,o,a){function h(i,t){if(!o[i]){if(!r[i]){var e="function"==typeof require&&require;if(!t&&e)return e(i,!0);if(l)return l(i,!0);throw new Error("Cannot find module '"+i+"'")}var s=o[i]={exports:{}};r[i][0].call(s.exports,function(t){var e=r[i][1][t];return h(e||t)},s,s.exports,n,r,o,a)}return o[i].exports}for(var l="function"==typeof require&&require,t=0;tt.vertices.length)throw new Error("lol2");if(e<0)throw new Error("lol3");for(var s=e;se[t][0])&&(t=i);w.left(this.at(t-1),this.at(t),this.at(t+1))||this.reverse()},T.prototype.reverse=function(){for(var t=[],e=0,i=this.vertices.length;e!==i;e++)t.push(this.vertices.pop());this.vertices=t},T.prototype.isReflex=function(t){return w.right(this.at(t-1),this.at(t),this.at(t+1))};var h=[],l=[];function P(t,e,i,s,n){n=n||0;var r=e[1]-t[1],o=t[0]-e[0],a=r*t[0]+o*t[1],h=s[1]-i[1],l=i[0]-s[0],c=h*i[0]+l*i[1],u=r*l-h*o;return d.eq(u,0,n)?[0,0]:[(l*a-o*c)/u,(r*c-h*a)/u]}T.prototype.canSee=function(t,e){var i,s,n=h,r=l;if(w.leftOn(this.at(t+1),this.at(t),this.at(e))&&w.rightOn(this.at(t-1),this.at(t),this.at(e)))return!1;s=w.sqdist(this.at(t),this.at(e));for(var o=0;o!==this.vertices.length;++o)if((o+1)%this.vertices.length!==t&&o!==t&&w.leftOn(this.at(t),this.at(e),this.at(o+1))&&w.rightOn(this.at(t),this.at(e),this.at(o))&&(n[0]=this.at(t),n[1]=this.at(e),r[0]=this.at(o),r[1]=this.at(o+1),i=a.lineInt(n,r),w.sqdist(this.at(t),i) (http://steffe.se)",keywords:["p2.js","p2","physics","engine","2d"],main:"./src/p2.js",engines:{node:"*"},repository:{type:"git",url:"https://github.com/schteppe/p2.js.git"},bugs:{url:"https://github.com/schteppe/p2.js/issues"},licenses:[{type:"MIT"}],devDependencies:{grunt:"^0.4.5","grunt-contrib-jshint":"^0.11.2","grunt-contrib-nodeunit":"^0.4.1","grunt-contrib-uglify":"~0.4.0","grunt-contrib-watch":"~0.5.0","grunt-browserify":"~2.0.1","grunt-contrib-concat":"^0.4.0"},dependencies:{"poly-decomp":"0.1.1"}}},{}],7:[function(t,e,i){var p=t("../math/vec2");t("../utils/Utils");function s(t){this.lowerBound=p.create(),t&&t.lowerBound&&p.copy(this.lowerBound,t.lowerBound),this.upperBound=p.create(),t&&t.upperBound&&p.copy(this.upperBound,t.upperBound)}e.exports=s;var f=p.create();s.prototype.setFromPoints=function(t,e,i,s){var n=this.lowerBound,r=this.upperBound;"number"!=typeof i&&(i=0),0!==i?p.rotate(n,t[0],i):p.copy(n,t[0]),p.copy(r,n);for(var o=Math.cos(i),a=Math.sin(i),h=1;hr[d]&&(r[d]=l[d]),l[d]i&&(this.lowerBound[e]=i);var s=t.upperBound[e];this.upperBound[e]Math.pow(d,2))return 0;if(h)return!0;var p=this.createContactEquation(t,n,e,r);return W(p.normalA,o,i),X.normalize(p.normalA,p.normalA),X.scale(p.contactPointA,p.normalA,l),X.scale(p.contactPointB,p.normalA,-c),j(p.contactPointA,p.contactPointA,i),W(p.contactPointA,p.contactPointA,t.position),j(p.contactPointB,p.contactPointB,o),W(p.contactPointB,p.contactPointB,n.position),this.contactEquations.push(p),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(p)),1},$.prototype[l.PLANE|l.CONVEX]=$.prototype[l.PLANE|l.BOX]=$.prototype.planeConvex=function(t,e,i,s,n,r,o,a,h){var l=H,c=q,u=Y,d=0;X.rotate(c,P,s);for(var p=0;p!==r.vertices.length;p++){var f=r.vertices[p];if(X.rotate(l,f,a),j(l,l,o),W(u,l,i),V(u,c)<=0){if(h)return!0;d++;var g=this.createContactEquation(t,n,e,r);W(u,l,i),X.copy(g.normalA,c);var m=V(u,g.normalA);X.scale(u,g.normalA,m),W(g.contactPointB,l,n.position),W(g.contactPointA,l,u),W(g.contactPointA,g.contactPointA,t.position),this.contactEquations.push(g),this.enableFrictionReduction||this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(g))}}return this.enableFrictionReduction&&this.enableFriction&&d&&this.frictionEquations.push(this.createFrictionFromAverage(d)),d},$.prototype[l.PARTICLE|l.PLANE]=$.prototype.particlePlane=function(t,e,i,s,n,r,o,a,h){var l=H,c=q;a=a||0,W(l,i,o),X.rotate(c,P,a);var u=V(l,c);if(0Math.pow(e.radius,2))return 0;if(h)return!0;var c=this.createContactEquation(t,n,e,r);return X.copy(c.normalA,l),X.normalize(c.normalA,c.normalA),X.scale(c.contactPointA,c.normalA,e.radius),j(c.contactPointA,c.contactPointA,i),W(c.contactPointA,c.contactPointA,t.position),W(c.contactPointB,o,n.position),this.contactEquations.push(c),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(c)),1};var C=new a({radius:1}),S=X.create(),A=X.create();X.create();$.prototype[l.PLANE|l.CAPSULE]=$.prototype.planeCapsule=function(t,e,i,s,n,r,o,a,h){var l,c=S,u=A,d=C;X.set(c,-r.length/2,0),X.rotate(c,c,a),j(c,c,o),X.set(u,r.length/2,0),X.rotate(u,u,a),j(u,u,o),d.radius=r.radius,this.enableFrictionReduction&&(l=this.enableFriction,this.enableFriction=!1);var p=this.circlePlane(n,d,c,0,t,e,i,s,h),f=this.circlePlane(n,d,u,0,t,e,i,s,h);if(this.enableFrictionReduction&&(this.enableFriction=l),h)return p||f;var g=p+f;return this.enableFrictionReduction&&g&&this.frictionEquations.push(this.createFrictionFromAverage(g)),g},$.prototype[l.CIRCLE|l.PLANE]=$.prototype.circlePlane=function(t,e,i,s,n,r,o,a,h){var l=t,c=e,u=i,d=n,p=o,f=a;f=f||0;var g=H,m=q,y=Y;W(g,u,p),X.rotate(m,P,f);var v=V(m,g);if(v>c.radius)return 0;if(h)return!0;var x=this.createContactEquation(d,l,r,e);return X.copy(x.normalA,m),X.scale(x.contactPointB,x.normalA,-c.radius),j(x.contactPointB,x.contactPointB,u),W(x.contactPointB,x.contactPointB,l.position),X.scale(y,x.normalA,v),W(x.contactPointA,g,y),j(x.contactPointA,x.contactPointA,p),W(x.contactPointA,x.contactPointA,d.position),this.contactEquations.push(x),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(x)),1},$.prototype[l.CONVEX]=$.prototype[l.CONVEX|l.BOX]=$.prototype[l.BOX]=$.prototype.convexConvex=function(t,e,i,s,n,r,o,a,h,l){var c=H,u=q,d=Y,p=z,f=K,g=J,m=Q,y=Z,v=0;l="number"==typeof l?l:0;if(!$.findSeparatingAxis(e,i,s,r,o,a,c))return 0;W(m,o,i),0g[0]&&(_=f,b=g,!0),h=(w=_[0]-b[1])<=0,(null===a||ag[0]&&(_=f,b=g,!0),h=(w=_[0]-b[1])<=0,(null===a||a=c.length&&(b=c.length-1);for(var _=c[x],w=c[b],T=x;T_&&(_=c[T]);if(i[1]-l>_)return!h&&0;var P=!1;for(T=x;T=y[0]&&p[0]=l.length&&(m=l.length-1);for(var y=l[g],v=l[m],x=g;xy&&(y=l[x]);if(t.aabb.lowerBound[1]>y)return!h&&0;var b=0;for(x=g;xe.boundingRadius*e.boundingRadius||(this._currentBody=n,(this._currentShape=e).raycast(t,this,s,i),this._currentBody=this._currentShape=null)},o.prototype.getAABB=function(t){var e=this.to,i=this.from;h.set(t.lowerBound,Math.min(e[0],i[0]),Math.min(e[1],i[1])),h.set(t.upperBound,Math.max(e[0],i[0]),Math.max(e[1],i[1]))};h.create();o.prototype.reportIntersection=function(t,e,i,s){this.from,this.to;var n=this._currentShape,r=this._currentBody;if(!(this.skipBackfaces&&0this.upperLimit&&(r.maxForce=0,r.minForce=-this.maxForce,this.distance=this.upperLimit,a=!0),this.lowerLimitEnabled&&this.position>1;if(e<3)return[];for(var i=[],s=[],n=0;n3*r)break}return i.push(s[0],s[1],s[2]),i},_PointInTriangle:function(t,e,i,s,n,r,o,a){var h=o-i,l=a-s,c=n-i,u=r-s,d=t-i,p=e-s,f=h*h+l*l,g=h*c+l*u,m=h*d+l*p,y=c*c+u*u,v=c*d+u*p,x=1/(f*y-g*g),b=(y*m-g*v)*x,_=(f*v-g*m)*x;return 0<=b&&0<=_&&b+_<1},_convex:function(t,e,i,s,n,r){return 0<=(e-s)*(n-i)+(i-t)*(r-s)}};e.exports=v},{}],30:[function(t,e,i){var o=e.exports={},s=t("../utils/Utils");o.crossLength=function(t,e){return t[0]*e[1]-t[1]*e[0]},o.crossVZ=function(t,e,i){return o.rotate(t,e,-Math.PI/2),o.scale(t,t,i),t},o.crossZV=function(t,e,i){return o.rotate(t,i,Math.PI/2),o.scale(t,t,e),t},o.rotate=function(t,e,i){if(0!==i){var s=Math.cos(i),n=Math.sin(i),r=e[0],o=e[1];t[0]=s*r-n*o,t[1]=n*r+s*o}else t[0]=e[0],t[1]=e[1]},o.rotate90cw=function(t,e){var i=e[0],s=e[1];t[0]=s,t[1]=-i},o.toLocalFrame=function(t,e,i,s){o.copy(t,e),o.sub(t,t,i),o.rotate(t,t,-s)},o.toGlobalFrame=function(t,e,i,s){o.copy(t,e),o.rotate(t,t,s),o.add(t,t,i)},o.vectorToLocalFrame=function(t,e,i){o.rotate(t,e,-i)},o.vectorToGlobalFrame=function(t,e,i){o.rotate(t,e,i)},o.centroid=function(t,e,i,s){return o.add(t,e,i),o.add(t,t,s),o.scale(t,t,1/3),t},o.create=function(){var t=new s.ARRAY_TYPE(2);return t[0]=0,t[1]=0,t},o.clone=function(t){var e=new s.ARRAY_TYPE(2);return e[0]=t[0],e[1]=t[1],e},o.fromValues=function(t,e){var i=new s.ARRAY_TYPE(2);return i[0]=t,i[1]=e,i},o.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t},o.set=function(t,e,i){return t[0]=e,t[1]=i,t},o.add=function(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t},o.subtract=function(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t},o.sub=o.subtract,o.multiply=function(t,e,i){return t[0]=e[0]*i[0],t[1]=e[1]*i[1],t},o.mul=o.multiply,o.divide=function(t,e,i){return t[0]=e[0]/i[0],t[1]=e[1]/i[1],t},o.div=o.divide,o.scale=function(t,e,i){return t[0]=e[0]*i,t[1]=e[1]*i,t},o.distance=function(t,e){var i=e[0]-t[0],s=e[1]-t[1];return Math.sqrt(i*i+s*s)},o.dist=o.distance,o.squaredDistance=function(t,e){var i=e[0]-t[0],s=e[1]-t[1];return i*i+s*s},o.sqrDist=o.squaredDistance,o.length=function(t){var e=t[0],i=t[1];return Math.sqrt(e*e+i*i)},o.len=o.length,o.squaredLength=function(t){var e=t[0],i=t[1];return e*e+i*i},o.sqrLen=o.squaredLength,o.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t},o.normalize=function(t,e){var i=e[0],s=e[1],n=i*i+s*s;return 0this.sleepTimeLimit&&(e?this.wantsToSleep=!0:this.sleep())}},a.prototype.overlaps=function(t){return this.world.overlapKeeper.bodiesAreOverlapping(this,t)};var T=u.create(),P=u.create();a.prototype.integrate=function(t){var e=this.invMass,i=this.force,s=this.position,n=this.velocity;u.copy(this.previousPosition,this.position),this.previousAngle=this.angle,this.fixedRotation||(this.angularVelocity+=this.angularForce*this.invInertia*t),u.scale(T,i,t*e),u.multiply(T,this.massMultiplier,T),u.add(n,T,n),this.integrateToTimeOfImpact(t)||(u.scale(P,n,t),u.add(s,s,P),this.fixedRotation||(this.angle+=this.angularVelocity*t)),this.aabbNeedsUpdate=!0};var C=new s,S=new n({mode:n.ALL}),A=u.create(),E=u.create(),M=u.create(),R=u.create();a.prototype.integrateToTimeOfImpact=function(t){if(this.ccdSpeedThreshold<0||u.squaredLength(this.velocity)p&&(w.sub(a,o,h),w.normalize(a,a),e.reportIntersection(t,f,a,-1),t.shouldStop(e)))return}else{var v=Math.sqrt(f),x=1/(2*g),b=(-m-v)*x,_=(-m+v)*x;if(0<=b&&b<=1&&(w.lerp(o,n,r,b),w.squaredDistance(o,i)>p&&(w.sub(a,o,h),w.normalize(a,a),e.reportIntersection(t,b,a,-1),t.shouldStop(e))))return;if(0<=_&&_<=1&&(w.lerp(o,n,r,_),w.squaredDistance(o,i)>p&&(w.sub(a,o,h),w.normalize(a,a),e.reportIntersection(t,_,a,-1),t.shouldStop(e))))return}}}},{"../math/vec2":30,"./Shape":45}],39:[function(t,e,i){var s=t("./Shape"),y=t("../math/vec2");function n(t){"number"==typeof t&&(t={radius:t},console.warn("The Circle constructor signature has changed. Please use the following format: new Circle({ radius: 1 })")),t=t||{},this.radius=t.radius||1,t.type=s.CIRCLE,s.call(this,t)}(((e.exports=n).prototype=new s).constructor=n).prototype.computeMomentOfInertia=function(t){var e=this.radius;return t*e*e/2},n.prototype.updateBoundingRadius=function(){this.boundingRadius=this.radius},n.prototype.updateArea=function(){this.area=Math.PI*this.radius*this.radius},n.prototype.computeAABB=function(t,e,i){var s=this.radius;y.set(t.upperBound,s,s),y.set(t.lowerBound,-s,-s),e&&(y.add(t.lowerBound,t.lowerBound,e),y.add(t.upperBound,t.upperBound,e))};var v=y.create(),x=y.create();n.prototype.raycast=function(t,e,i,s){var n=e.from,r=e.to,o=this.radius,a=Math.pow(r[0]-n[0],2)+Math.pow(r[1]-n[1],2),h=2*((r[0]-n[0])*(n[0]-i[0])+(r[1]-n[1])*(n[1]-i[1])),l=Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2)-Math.pow(o,2),c=Math.pow(h,2)-4*a*l,u=v,d=x;if(!(c<0))if(0===c)y.lerp(u,n,r,c),y.sub(d,u,i),y.normalize(d,d),e.reportIntersection(t,c,d,-1);else{var p=Math.sqrt(c),f=1/(2*a),g=(-h-p)*f,m=(-h+p)*f;if(0<=g&&g<=1&&(y.lerp(u,n,r,g),y.sub(d,u,i),y.normalize(d,d),e.reportIntersection(t,g,d,-1),t.shouldStop(e)))return;0<=m&&m<=1&&(y.lerp(u,n,r,m),y.sub(d,u,i),y.normalize(d,d),e.reportIntersection(t,m,d,-1))}}},{"../math/vec2":30,"./Shape":45}],40:[function(t,e,i){var h=t("./Shape"),p=t("../math/vec2"),a=t("../math/polyk");t("poly-decomp");function d(t){Array.isArray(t)&&(t={vertices:t,axes:arguments[1]},console.warn("The Convex constructor signature has changed. Please use the following format: new Convex({ vertices: [...], ... })")),t=t||{},this.vertices=[];for(var e=void 0!==t.vertices?t.vertices:[],i=0;it;)e.pop();for(;e.length=t&&s=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},O.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},O.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},O.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},O.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},O.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},O.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=O.compileProgram(t,this.vertexSrc||O.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],O.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,O._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},O.PixiFastShader.prototype.constructor=O.PixiFastShader,O.PixiFastShader.prototype.init=function(){var t=this.gl,e=O.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=O._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),O._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},O.StripShader.prototype.constructor=O.StripShader,O.StripShader.prototype.init=function(){var t=this.gl,e=O.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=O._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),O._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,l,c,u=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-u*p.width)+i.crop.width,l=(c=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-u),h=i.frame.width*-u,l=i.frame.height*(1-d),c=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,g=i.baseTexture.resolution,m=i.baseTexture.textureIndex,y=r.a/g,v=r.b/g,x=r.c/g,b=r.d/g,_=r.tx,w=r.ty,T=i.crop.height;if(i.rotated){var P=r.a,C=r.b,S=r.c,A=r.d,E=h,M=a;_=r.c*T+_,w=r.d*T+w,y=6123233995736766e-32*P-S,v=6123233995736766e-32*C-A,x=P+6123233995736766e-32*S,b=C+6123233995736766e-32*A,i._updateUvsInverted(),a=l,h=c,l=M,c=E}var R=this.colors,L=this.positions,B=t.tint,I=(B>>16)+(65280&B)+((255&B)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(L[f++]=y*h+x*c+_|0,L[f++]=b*c+v*h+w|0,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*c+_|0,L[f++]=b*c+v*a+w|0,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_|0,L[f++]=b*l+v*a+w|0,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_|0,L[f++]=b*l+v*h+w|0):(L[f++]=y*h+x*c+_,L[f++]=b*c+v*h+w,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*c+_,L[f++]=b*c+v*a+w,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_,L[f++]=b*l+v*a+w,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_,L[f++]=b*l+v*h+w),L[f++]=o.x3,L[f++]=o.y3,R[f++]=I,L[f++]=m,this.sprites[this.currentBatchSize++]=t}},O.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(O._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;O.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),O.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new O.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),l=t.tilePosition.y/(a*t.tileScaleOffset.y),c=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),u=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-l,r.x1=1*c-h,r.y1=0-l,r.x2=1*c-h,r.y2=1*u-l,r.x3=0-h,r.y3=1*u-l;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,g=this.colors,m=t.width,y=t.height,v=t.anchor.x,x=t.anchor.y,b=m*(1-v),_=m*-v,w=y*(1-x),T=y*-x,P=this.currentBatchSize*this.vertexSize,C=e.baseTexture.resolution,S=t.worldTransform,A=S.a/C,E=S.b/C,M=S.c/C,R=S.d/C,L=S.tx,B=S.ty;f[P++]=A*_+M*T+L,f[P++]=R*T+E*_+B,f[P++]=r.x0,f[P++]=r.y0,g[P++]=p,f[P++]=i,f[P++]=A*b+M*T+L,f[P++]=R*T+E*b+B,f[P++]=r.x1,f[P++]=r.y1,g[P++]=p,f[P++]=i,f[P++]=A*b+M*w+L,f[P++]=R*w+E*b+B,f[P++]=r.x2,f[P++]=r.y2,g[P++]=p,f[P++]=i,f[P++]=A*_+M*w+L,f[P++]=R*w+E*_+B,f[P++]=r.x3,f[P++]=r.y3,g[P++]=p,f[P++]=i,this.sprites[this.currentBatchSize++]=t},O.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),O._enableMultiTextureToggle&&n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,l=0,c=null,u=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,g=0,m=this.currentBatchSize;g=this.size&&this.flush()}},O.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},O.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},O.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},O.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},O.WebGLFilterManager.prototype.constructor=O.WebGLFilterManager,O.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},O.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},O.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new O.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new O.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},O.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!O.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},O.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new O.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},O.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new O.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},O.Texture.fromCanvas=function(t,e){var i=O.BaseTexture.fromCanvas(t,e);return new O.Texture(i)},O.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=O),exports.PIXI=O):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=O):t.PIXI=O,O}.call(this),function(){var r,t=this,X=X||{VERSION:"2.19.1",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=r;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,l),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",c="Down",u="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(c,i,this.input.pointerDown()),this.setStateFrame(u,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(l,n,r),this.setStateSound(c,i,s),this.setStateSound(u,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(c),this.playStateSound(c),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(u),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(u)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,l,c,u,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof c&&(this._anchor.x=c),"number"==typeof u&&(this._anchor.y=u),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,c=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,u=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,c,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,l=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,c=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,l=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=c.width),n+=t.lineHeight*i,e=e.substr(c.text.length+1)}while(!1===c.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,r,o,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var c=0;ce.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0o.right)break;if(o.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomo.bottom)break;if(o.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,r)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>o.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(o.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,c,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,r){if(0!==t.length&&0!==e.length)for(var o=0;oc)&&(u.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,r=Math.atan2(n,s),o=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-o*Math.cos(r),t.y+=.001*t.velocity.y*this.game.time.delta-o*Math.sin(r)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+o*Math.cos(r),e.y+=.001*e.velocity.y*this.game.time.delta+o*Math.sin(r)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,r){this.game=t,this.key=e;var o=X.TilemapParser.parse(this.game,e,i,s,n,r);null!==o&&(this.width=o.width,this.height=o.height,this.tileWidth=o.tileWidth,this.tileHeight=o.tileHeight,this.orientation=o.orientation,this.format=o.format,this.version=o.version,this.properties=o.properties,this.widthInPixels=o.widthInPixels,this.heightInPixels=o.heightInPixels,this.layers=o.layers,this.tilesets=o.tilesets,this.imagecollections=o.imagecollections,this.tiles=o.tiles,this.objects=o.objects,this.objectsMap=o.objectsMap,this.collideIndexes=[],this.collision=o.collision,this.images=o.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,r){return void 0===r&&(r=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,r)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,r,o){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,o,i,s,n,r,{});l.setImage(a),this.tilesets.push(l);for(var c=this.tilesets.length-1,u=n,d=n,p=0,f=0,g=0,m=o;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var r=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),r},createBlankLayer:function(t,e,i,s,n,r){if(void 0===r&&(r=this.game.world),null===this.getLayerIndex(t)){for(var o,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(u=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,u,d)).name=t,r.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var r=e;r>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var c,u,d,p=0,f=[],g=[],m=0;for(o=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,r){var o;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===r&&(r=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var r=0;r=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(u.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);u.data.bodyDirty&&(this._data.customBody&&u.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),u.body.collideWorldBounds=this.bulletCollideWorldBounds,u.data.bodyDirty=!1),u.body.velocity.set(l,c),u.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(u,this,r),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0t.vertices.length)throw new Error("lol2");if(e<0)throw new Error("lol3");for(var s=e;se[t][0])&&(t=i);w.left(this.at(t-1),this.at(t),this.at(t+1))||this.reverse()},T.prototype.reverse=function(){for(var t=[],e=0,i=this.vertices.length;e!==i;e++)t.push(this.vertices.pop());this.vertices=t},T.prototype.isReflex=function(t){return w.right(this.at(t-1),this.at(t),this.at(t+1))};var h=[],l=[];function P(t,e,i,s,n){n=n||0;var r=e[1]-t[1],o=t[0]-e[0],a=r*t[0]+o*t[1],h=s[1]-i[1],l=i[0]-s[0],c=h*i[0]+l*i[1],u=r*l-h*o;return d.eq(u,0,n)?[0,0]:[(l*a-o*c)/u,(r*c-h*a)/u]}T.prototype.canSee=function(t,e){var i,s,n=h,r=l;if(w.leftOn(this.at(t+1),this.at(t),this.at(e))&&w.rightOn(this.at(t-1),this.at(t),this.at(e)))return!1;s=w.sqdist(this.at(t),this.at(e));for(var o=0;o!==this.vertices.length;++o)if((o+1)%this.vertices.length!==t&&o!==t&&w.leftOn(this.at(t),this.at(e),this.at(o+1))&&w.rightOn(this.at(t),this.at(e),this.at(o))&&(n[0]=this.at(t),n[1]=this.at(e),r[0]=this.at(o),r[1]=this.at(o+1),i=a.lineInt(n,r),w.sqdist(this.at(t),i) (http://steffe.se)",keywords:["p2.js","p2","physics","engine","2d"],main:"./src/p2.js",engines:{node:"*"},repository:{type:"git",url:"https://github.com/schteppe/p2.js.git"},bugs:{url:"https://github.com/schteppe/p2.js/issues"},licenses:[{type:"MIT"}],devDependencies:{grunt:"^0.4.5","grunt-contrib-jshint":"^0.11.2","grunt-contrib-nodeunit":"^0.4.1","grunt-contrib-uglify":"~0.4.0","grunt-contrib-watch":"~0.5.0","grunt-browserify":"~2.0.1","grunt-contrib-concat":"^0.4.0"},dependencies:{"poly-decomp":"0.1.1"}}},{}],7:[function(t,e,i){var p=t("../math/vec2");t("../utils/Utils");function s(t){this.lowerBound=p.create(),t&&t.lowerBound&&p.copy(this.lowerBound,t.lowerBound),this.upperBound=p.create(),t&&t.upperBound&&p.copy(this.upperBound,t.upperBound)}e.exports=s;var f=p.create();s.prototype.setFromPoints=function(t,e,i,s){var n=this.lowerBound,r=this.upperBound;"number"!=typeof i&&(i=0),0!==i?p.rotate(n,t[0],i):p.copy(n,t[0]),p.copy(r,n);for(var o=Math.cos(i),a=Math.sin(i),h=1;hr[d]&&(r[d]=l[d]),l[d]i&&(this.lowerBound[e]=i);var s=t.upperBound[e];this.upperBound[e]Math.pow(d,2))return 0;if(h)return!0;var p=this.createContactEquation(t,n,e,r);return W(p.normalA,o,i),X.normalize(p.normalA,p.normalA),X.scale(p.contactPointA,p.normalA,l),X.scale(p.contactPointB,p.normalA,-c),j(p.contactPointA,p.contactPointA,i),W(p.contactPointA,p.contactPointA,t.position),j(p.contactPointB,p.contactPointB,o),W(p.contactPointB,p.contactPointB,n.position),this.contactEquations.push(p),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(p)),1},$.prototype[l.PLANE|l.CONVEX]=$.prototype[l.PLANE|l.BOX]=$.prototype.planeConvex=function(t,e,i,s,n,r,o,a,h){var l=H,c=q,u=Y,d=0;X.rotate(c,P,s);for(var p=0;p!==r.vertices.length;p++){var f=r.vertices[p];if(X.rotate(l,f,a),j(l,l,o),W(u,l,i),V(u,c)<=0){if(h)return!0;d++;var g=this.createContactEquation(t,n,e,r);W(u,l,i),X.copy(g.normalA,c);var m=V(u,g.normalA);X.scale(u,g.normalA,m),W(g.contactPointB,l,n.position),W(g.contactPointA,l,u),W(g.contactPointA,g.contactPointA,t.position),this.contactEquations.push(g),this.enableFrictionReduction||this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(g))}}return this.enableFrictionReduction&&this.enableFriction&&d&&this.frictionEquations.push(this.createFrictionFromAverage(d)),d},$.prototype[l.PARTICLE|l.PLANE]=$.prototype.particlePlane=function(t,e,i,s,n,r,o,a,h){var l=H,c=q;a=a||0,W(l,i,o),X.rotate(c,P,a);var u=V(l,c);if(0Math.pow(e.radius,2))return 0;if(h)return!0;var c=this.createContactEquation(t,n,e,r);return X.copy(c.normalA,l),X.normalize(c.normalA,c.normalA),X.scale(c.contactPointA,c.normalA,e.radius),j(c.contactPointA,c.contactPointA,i),W(c.contactPointA,c.contactPointA,t.position),W(c.contactPointB,o,n.position),this.contactEquations.push(c),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(c)),1};var C=new a({radius:1}),S=X.create(),A=X.create();X.create();$.prototype[l.PLANE|l.CAPSULE]=$.prototype.planeCapsule=function(t,e,i,s,n,r,o,a,h){var l,c=S,u=A,d=C;X.set(c,-r.length/2,0),X.rotate(c,c,a),j(c,c,o),X.set(u,r.length/2,0),X.rotate(u,u,a),j(u,u,o),d.radius=r.radius,this.enableFrictionReduction&&(l=this.enableFriction,this.enableFriction=!1);var p=this.circlePlane(n,d,c,0,t,e,i,s,h),f=this.circlePlane(n,d,u,0,t,e,i,s,h);if(this.enableFrictionReduction&&(this.enableFriction=l),h)return p||f;var g=p+f;return this.enableFrictionReduction&&g&&this.frictionEquations.push(this.createFrictionFromAverage(g)),g},$.prototype[l.CIRCLE|l.PLANE]=$.prototype.circlePlane=function(t,e,i,s,n,r,o,a,h){var l=t,c=e,u=i,d=n,p=o,f=a;f=f||0;var g=H,m=q,y=Y;W(g,u,p),X.rotate(m,P,f);var v=V(m,g);if(v>c.radius)return 0;if(h)return!0;var x=this.createContactEquation(d,l,r,e);return X.copy(x.normalA,m),X.scale(x.contactPointB,x.normalA,-c.radius),j(x.contactPointB,x.contactPointB,u),W(x.contactPointB,x.contactPointB,l.position),X.scale(y,x.normalA,v),W(x.contactPointA,g,y),j(x.contactPointA,x.contactPointA,p),W(x.contactPointA,x.contactPointA,d.position),this.contactEquations.push(x),this.enableFriction&&this.frictionEquations.push(this.createFrictionFromContact(x)),1},$.prototype[l.CONVEX]=$.prototype[l.CONVEX|l.BOX]=$.prototype[l.BOX]=$.prototype.convexConvex=function(t,e,i,s,n,r,o,a,h,l){var c=H,u=q,d=Y,p=z,f=K,g=J,m=Q,y=Z,v=0;l="number"==typeof l?l:0;if(!$.findSeparatingAxis(e,i,s,r,o,a,c))return 0;W(m,o,i),0g[0]&&(_=f,b=g,!0),h=(w=_[0]-b[1])<=0,(null===a||ag[0]&&(_=f,b=g,!0),h=(w=_[0]-b[1])<=0,(null===a||a=c.length&&(b=c.length-1);for(var _=c[x],w=c[b],T=x;T_&&(_=c[T]);if(i[1]-l>_)return!h&&0;var P=!1;for(T=x;T=y[0]&&p[0]=l.length&&(m=l.length-1);for(var y=l[g],v=l[m],x=g;xy&&(y=l[x]);if(t.aabb.lowerBound[1]>y)return!h&&0;var b=0;for(x=g;xe.boundingRadius*e.boundingRadius||(this._currentBody=n,(this._currentShape=e).raycast(t,this,s,i),this._currentBody=this._currentShape=null)},o.prototype.getAABB=function(t){var e=this.to,i=this.from;h.set(t.lowerBound,Math.min(e[0],i[0]),Math.min(e[1],i[1])),h.set(t.upperBound,Math.max(e[0],i[0]),Math.max(e[1],i[1]))};h.create();o.prototype.reportIntersection=function(t,e,i,s){this.from,this.to;var n=this._currentShape,r=this._currentBody;if(!(this.skipBackfaces&&0this.upperLimit&&(r.maxForce=0,r.minForce=-this.maxForce,this.distance=this.upperLimit,a=!0),this.lowerLimitEnabled&&this.position>1;if(e<3)return[];for(var i=[],s=[],n=0;n3*r)break}return i.push(s[0],s[1],s[2]),i},_PointInTriangle:function(t,e,i,s,n,r,o,a){var h=o-i,l=a-s,c=n-i,u=r-s,d=t-i,p=e-s,f=h*h+l*l,g=h*c+l*u,m=h*d+l*p,y=c*c+u*u,v=c*d+u*p,x=1/(f*y-g*g),b=(y*m-g*v)*x,_=(f*v-g*m)*x;return 0<=b&&0<=_&&b+_<1},_convex:function(t,e,i,s,n,r){return 0<=(e-s)*(n-i)+(i-t)*(r-s)}};e.exports=v},{}],30:[function(t,e,i){var o=e.exports={},s=t("../utils/Utils");o.crossLength=function(t,e){return t[0]*e[1]-t[1]*e[0]},o.crossVZ=function(t,e,i){return o.rotate(t,e,-Math.PI/2),o.scale(t,t,i),t},o.crossZV=function(t,e,i){return o.rotate(t,i,Math.PI/2),o.scale(t,t,e),t},o.rotate=function(t,e,i){if(0!==i){var s=Math.cos(i),n=Math.sin(i),r=e[0],o=e[1];t[0]=s*r-n*o,t[1]=n*r+s*o}else t[0]=e[0],t[1]=e[1]},o.rotate90cw=function(t,e){var i=e[0],s=e[1];t[0]=s,t[1]=-i},o.toLocalFrame=function(t,e,i,s){o.copy(t,e),o.sub(t,t,i),o.rotate(t,t,-s)},o.toGlobalFrame=function(t,e,i,s){o.copy(t,e),o.rotate(t,t,s),o.add(t,t,i)},o.vectorToLocalFrame=function(t,e,i){o.rotate(t,e,-i)},o.vectorToGlobalFrame=function(t,e,i){o.rotate(t,e,i)},o.centroid=function(t,e,i,s){return o.add(t,e,i),o.add(t,t,s),o.scale(t,t,1/3),t},o.create=function(){var t=new s.ARRAY_TYPE(2);return t[0]=0,t[1]=0,t},o.clone=function(t){var e=new s.ARRAY_TYPE(2);return e[0]=t[0],e[1]=t[1],e},o.fromValues=function(t,e){var i=new s.ARRAY_TYPE(2);return i[0]=t,i[1]=e,i},o.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t},o.set=function(t,e,i){return t[0]=e,t[1]=i,t},o.add=function(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t},o.subtract=function(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t},o.sub=o.subtract,o.multiply=function(t,e,i){return t[0]=e[0]*i[0],t[1]=e[1]*i[1],t},o.mul=o.multiply,o.divide=function(t,e,i){return t[0]=e[0]/i[0],t[1]=e[1]/i[1],t},o.div=o.divide,o.scale=function(t,e,i){return t[0]=e[0]*i,t[1]=e[1]*i,t},o.distance=function(t,e){var i=e[0]-t[0],s=e[1]-t[1];return Math.sqrt(i*i+s*s)},o.dist=o.distance,o.squaredDistance=function(t,e){var i=e[0]-t[0],s=e[1]-t[1];return i*i+s*s},o.sqrDist=o.squaredDistance,o.length=function(t){var e=t[0],i=t[1];return Math.sqrt(e*e+i*i)},o.len=o.length,o.squaredLength=function(t){var e=t[0],i=t[1];return e*e+i*i},o.sqrLen=o.squaredLength,o.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t},o.normalize=function(t,e){var i=e[0],s=e[1],n=i*i+s*s;return 0this.sleepTimeLimit&&(e?this.wantsToSleep=!0:this.sleep())}},a.prototype.overlaps=function(t){return this.world.overlapKeeper.bodiesAreOverlapping(this,t)};var T=u.create(),P=u.create();a.prototype.integrate=function(t){var e=this.invMass,i=this.force,s=this.position,n=this.velocity;u.copy(this.previousPosition,this.position),this.previousAngle=this.angle,this.fixedRotation||(this.angularVelocity+=this.angularForce*this.invInertia*t),u.scale(T,i,t*e),u.multiply(T,this.massMultiplier,T),u.add(n,T,n),this.integrateToTimeOfImpact(t)||(u.scale(P,n,t),u.add(s,s,P),this.fixedRotation||(this.angle+=this.angularVelocity*t)),this.aabbNeedsUpdate=!0};var C=new s,S=new n({mode:n.ALL}),A=u.create(),E=u.create(),M=u.create(),R=u.create();a.prototype.integrateToTimeOfImpact=function(t){if(this.ccdSpeedThreshold<0||u.squaredLength(this.velocity)p&&(w.sub(a,o,h),w.normalize(a,a),e.reportIntersection(t,f,a,-1),t.shouldStop(e)))return}else{var v=Math.sqrt(f),x=1/(2*g),b=(-m-v)*x,_=(-m+v)*x;if(0<=b&&b<=1&&(w.lerp(o,n,r,b),w.squaredDistance(o,i)>p&&(w.sub(a,o,h),w.normalize(a,a),e.reportIntersection(t,b,a,-1),t.shouldStop(e))))return;if(0<=_&&_<=1&&(w.lerp(o,n,r,_),w.squaredDistance(o,i)>p&&(w.sub(a,o,h),w.normalize(a,a),e.reportIntersection(t,_,a,-1),t.shouldStop(e))))return}}}},{"../math/vec2":30,"./Shape":45}],39:[function(t,e,i){var s=t("./Shape"),y=t("../math/vec2");function n(t){"number"==typeof t&&(t={radius:t},console.warn("The Circle constructor signature has changed. Please use the following format: new Circle({ radius: 1 })")),t=t||{},this.radius=t.radius||1,t.type=s.CIRCLE,s.call(this,t)}(((e.exports=n).prototype=new s).constructor=n).prototype.computeMomentOfInertia=function(t){var e=this.radius;return t*e*e/2},n.prototype.updateBoundingRadius=function(){this.boundingRadius=this.radius},n.prototype.updateArea=function(){this.area=Math.PI*this.radius*this.radius},n.prototype.computeAABB=function(t,e,i){var s=this.radius;y.set(t.upperBound,s,s),y.set(t.lowerBound,-s,-s),e&&(y.add(t.lowerBound,t.lowerBound,e),y.add(t.upperBound,t.upperBound,e))};var v=y.create(),x=y.create();n.prototype.raycast=function(t,e,i,s){var n=e.from,r=e.to,o=this.radius,a=Math.pow(r[0]-n[0],2)+Math.pow(r[1]-n[1],2),h=2*((r[0]-n[0])*(n[0]-i[0])+(r[1]-n[1])*(n[1]-i[1])),l=Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2)-Math.pow(o,2),c=Math.pow(h,2)-4*a*l,u=v,d=x;if(!(c<0))if(0===c)y.lerp(u,n,r,c),y.sub(d,u,i),y.normalize(d,d),e.reportIntersection(t,c,d,-1);else{var p=Math.sqrt(c),f=1/(2*a),g=(-h-p)*f,m=(-h+p)*f;if(0<=g&&g<=1&&(y.lerp(u,n,r,g),y.sub(d,u,i),y.normalize(d,d),e.reportIntersection(t,g,d,-1),t.shouldStop(e)))return;0<=m&&m<=1&&(y.lerp(u,n,r,m),y.sub(d,u,i),y.normalize(d,d),e.reportIntersection(t,m,d,-1))}}},{"../math/vec2":30,"./Shape":45}],40:[function(t,e,i){var h=t("./Shape"),p=t("../math/vec2"),a=t("../math/polyk");t("poly-decomp");function d(t){Array.isArray(t)&&(t={vertices:t,axes:arguments[1]},console.warn("The Convex constructor signature has changed. Please use the following format: new Convex({ vertices: [...], ... })")),t=t||{},this.vertices=[];for(var e=void 0!==t.vertices?t.vertices:[],i=0;it;)e.pop();for(;e.length=t&&s=this.children.length)throw new Error("The supplied index is out of bounds");var i=this.getChildIndex(t);this.children.splice(i,1),this.children.splice(e,0,t)},O.DisplayObjectContainer.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error("getChildAt: Supplied index "+t+" does not exist in the child list, or the supplied DisplayObject must be a child of the caller");return this.children[t]},O.DisplayObjectContainer.prototype.removeChild=function(t){var e=this.children.indexOf(t);if(-1!==e)return this.removeChildAt(e)},O.DisplayObjectContainer.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e&&(e.parent=void 0,this.children.splice(t,1)),e},O.DisplayObjectContainer.prototype.bringChildToTop=function(t){if(t.parent===this)return this.setChildIndex(t,this.children.length-1)},O.DisplayObjectContainer.prototype.sendChildToBack=function(t){if(t.parent===this)return this.setChildIndex(t,0)},O.DisplayObjectContainer.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var i=e-t;if(0= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) { gl_FragColor = RED;return;}","}"];var s=O.compileProgram(t,this.vertexSrc||O.PixiShader.defaultVertexSrc,this.fragmentSrc);t.useProgram(s),this.uSamplerArray=t.getUniformLocation(s,"uSamplerArray[0]"),this.projectionVector=t.getUniformLocation(s,"projectionVector"),this.offsetVector=t.getUniformLocation(s,"offsetVector"),this.dimensions=t.getUniformLocation(s,"dimensions"),this.aVertexPosition=t.getAttribLocation(s,"aVertexPosition"),this.aTextureCoord=t.getAttribLocation(s,"aTextureCoord"),this.colorAttribute=t.getAttribLocation(s,"aColor"),this.aTextureIndex=t.getAttribLocation(s,"aTextureIndex");var n=[],r=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var o=0;o 0.0) gl_Position = vec4(0.0);"," gl_Position = vec4( ((aVertexPosition + offsetVector) / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vColor = vec4(aColor.rgb * aColor.a, aColor.a);"," vTextureIndex = aTextureIndex;","}"],O.PixiFastShader=function(t){if(this._UID=Phaser._UID++,this.gl=t,this.program=null,O._enableMultiTextureToggle){t=this.gl;this.MAX_TEXTURES=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);for(var e="\tif (vTextureIndex == 0.0) { gl_FragColor = texture2D(uSamplerArray[0], vTextureCoord) * vColor;return;}\n",i=1;i= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["// PixiFastShader Fragment Shader.","precision lowp float;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor;","}"];this.vertexSrc=["// PixiFastShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aPositionCoord;","attribute vec2 aScale;","attribute float aRotation;","attribute vec2 aTextureCoord;","attribute float aColor;","attribute float aTextureIndex;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","uniform mat3 uMatrix;","varying vec2 vTextureCoord;","varying float vColor;","varying float vTextureIndex;","const vec2 center = vec2(-1.0, 1.0);","void main(void) {"," vec2 v;"," vec2 sv = aVertexPosition * aScale;"," v.x = (sv.x) * cos(aRotation) - (sv.y) * sin(aRotation);"," v.y = (sv.x) * sin(aRotation) + (sv.y) * cos(aRotation);"," v = ( uMatrix * vec3(v + aPositionCoord , 1.0) ).xy ;"," gl_Position = vec4( ( v / projectionVector) + center , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;"," vColor = aColor;","}"],this.textureCount=0,this.init()},O.PixiFastShader.prototype.constructor=O.PixiFastShader,O.PixiFastShader.prototype.init=function(){var t=this.gl,e=O.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=O._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),O._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n= "+this.MAX_TEXTURES+".0) { gl_FragColor = BLUE;return;}"," if(isnan(vTextureIndex)) {gl_FragColor = RED;return;}","}"]}else this.fragmentSrc=["//StripShader Fragment Shader.","precision mediump float;","varying vec2 vTextureCoord;","varying float vTextureIndex;","uniform float alpha;","uniform sampler2D uSampler;","void main(void) {"," gl_FragColor = texture2D(uSampler, vTextureCoord);","}"];this.vertexSrc=["//StripShader Vertex Shader.","attribute vec2 aVertexPosition;","attribute vec2 aTextureCoord;","attribute float aTextureIndex;","uniform mat3 translationMatrix;","uniform vec2 projectionVector;","uniform vec2 offsetVector;","varying vec2 vTextureCoord;","varying float vTextureIndex;","void main(void) {"," vec3 v = translationMatrix * vec3(aVertexPosition , 1.0);"," v -= offsetVector.xyx;"," gl_Position = vec4( v.x / projectionVector.x -1.0, v.y / -projectionVector.y + 1.0 , 0.0, 1.0);"," vTextureCoord = aTextureCoord;"," vTextureIndex = aTextureIndex;","}"],this.init()},O.StripShader.prototype.constructor=O.StripShader,O.StripShader.prototype.init=function(){var t=this.gl,e=O.compileProgram(t,this.vertexSrc,this.fragmentSrc);if(t.useProgram(e),this.uSampler=O._enableMultiTextureToggle?t.getUniformLocation(e,"uSamplerArray[0]"):t.getUniformLocation(e,"uSampler"),O._enableMultiTextureToggle){var i=[],s=t.createTexture();t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,s),t.texImage2D(t.TEXTURE_2D,0,t.RGB,1,1,0,t.RGB,t.UNSIGNED_BYTE,null);for(var n=0;n>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i=this.gl,s=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),n=i.getParameter(i.MAX_TEXTURE_SIZE),r=this.game.cache._cache.image,o=null,a=0;a=this.size&&(this.flush(),this.currentBaseTexture=i.baseTexture);var o=i._uvs;if(o){var a,h,l,c,u=t.anchor.x,d=t.anchor.y;if(i.trim){var p=i.trim;a=(h=p.x-u*p.width)+i.crop.width,l=(c=p.y-d*p.height)+i.crop.height}else a=i.frame.width*(1-u),h=i.frame.width*-u,l=i.frame.height*(1-d),c=i.frame.height*-d;var f=this.currentBatchSize*this.vertexSize,g=i.baseTexture.resolution,m=i.baseTexture.textureIndex,y=r.a/g,v=r.b/g,x=r.c/g,b=r.d/g,_=r.tx,w=r.ty,T=i.crop.height;if(i.rotated){var P=r.a,C=r.b,S=r.c,A=r.d,E=h,M=a;_=r.c*T+_,w=r.d*T+w,y=6123233995736766e-32*P-S,v=6123233995736766e-32*C-A,x=P+6123233995736766e-32*S,b=C+6123233995736766e-32*A,i._updateUvsInverted(),a=l,h=c,l=M,c=E}var R=this.colors,L=this.positions,B=t.tint,I=(B>>16)+(65280&B)+((255&B)<<16)+(255*t.worldAlpha<<24);this.renderSession.roundPixels?(L[f++]=y*h+x*c+_|0,L[f++]=b*c+v*h+w|0,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*c+_|0,L[f++]=b*c+v*a+w|0,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_|0,L[f++]=b*l+v*a+w|0,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_|0,L[f++]=b*l+v*h+w|0):(L[f++]=y*h+x*c+_,L[f++]=b*c+v*h+w,L[f++]=o.x0,L[f++]=o.y0,R[f++]=I,L[f++]=m,L[f++]=y*a+x*c+_,L[f++]=b*c+v*a+w,L[f++]=o.x1,L[f++]=o.y1,R[f++]=I,L[f++]=m,L[f++]=y*a+x*l+_,L[f++]=b*l+v*a+w,L[f++]=o.x2,L[f++]=o.y2,R[f++]=I,L[f++]=m,L[f++]=y*h+x*l+_,L[f++]=b*l+v*h+w),L[f++]=o.x3,L[f++]=o.y3,R[f++]=I,L[f++]=m,this.sprites[this.currentBatchSize++]=t}},O.WebGLSpriteBatch.prototype.renderTilingSprite=function(t){var e=t.tilingTexture,i=t.texture.baseTexture.textureIndex;if(O._enableMultiTextureToggle){var s=e.baseTexture,n=this.gl;O.WebGLRenderer.textureArray[i]!=s&&(this.flush(),n.activeTexture(n.TEXTURE0+i),n.bindTexture(n.TEXTURE_2D,s._glTextures[n.id]),O.WebGLRenderer.textureArray[i]=s)}this.currentBatchSize>=this.size&&(this.flush(),this.currentBaseTexture=e.baseTexture),t._uvs||(t._uvs=new O.TextureUvs);var r=t._uvs,o=e.baseTexture.width,a=e.baseTexture.height;t.tilePosition.x%=o*t.tileScaleOffset.x,t.tilePosition.y%=a*t.tileScaleOffset.y;var h=t.tilePosition.x/(o*t.tileScaleOffset.x),l=t.tilePosition.y/(a*t.tileScaleOffset.y),c=t.width/o/(t.tileScale.x*t.tileScaleOffset.x),u=t.height/a/(t.tileScale.y*t.tileScaleOffset.y);r.x0=0-h,r.y0=0-l,r.x1=1*c-h,r.y1=0-l,r.x2=1*c-h,r.y2=1*u-l,r.x3=0-h,r.y3=1*u-l;var d=t.tint,p=(d>>16)+(65280&d)+((255&d)<<16)+(255*t.worldAlpha<<24),f=this.positions,g=this.colors,m=t.width,y=t.height,v=t.anchor.x,x=t.anchor.y,b=m*(1-v),_=m*-v,w=y*(1-x),T=y*-x,P=this.currentBatchSize*this.vertexSize,C=e.baseTexture.resolution,S=t.worldTransform,A=S.a/C,E=S.b/C,M=S.c/C,R=S.d/C,L=S.tx,B=S.ty;f[P++]=A*_+M*T+L,f[P++]=R*T+E*_+B,f[P++]=r.x0,f[P++]=r.y0,g[P++]=p,f[P++]=i,f[P++]=A*b+M*T+L,f[P++]=R*T+E*b+B,f[P++]=r.x1,f[P++]=r.y1,g[P++]=p,f[P++]=i,f[P++]=A*b+M*w+L,f[P++]=R*w+E*b+B,f[P++]=r.x2,f[P++]=r.y2,g[P++]=p,f[P++]=i,f[P++]=A*_+M*w+L,f[P++]=R*w+E*_+B,f[P++]=r.x3,f[P++]=r.y3,g[P++]=p,f[P++]=i,this.sprites[this.currentBatchSize++]=t},O.WebGLSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t,e,i,s,n=this.gl;if(this.dirty){this.dirty=!1,t=this.defaultShader.shaders[n.id],n.activeTexture(n.TEXTURE0),n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var r=this.vertexSize;n.vertexAttribPointer(t.aVertexPosition,2,n.FLOAT,!1,r,0),n.vertexAttribPointer(t.aTextureCoord,2,n.FLOAT,!1,r,8),n.vertexAttribPointer(t.colorAttribute,4,n.UNSIGNED_BYTE,!0,r,16),n.vertexAttribPointer(t.aTextureIndex,1,n.FLOAT,!1,r,20)}if(this.currentBatchSize>.5*this.size)n.bufferSubData(n.ARRAY_BUFFER,0,this.vertices);else{n.bindBuffer(n.ARRAY_BUFFER,this.vertexBuffer);var o=this.positions.subarray(0,this.currentBatchSize*this.vertexSize);n.bufferSubData(n.ARRAY_BUFFER,0,o)}for(var a,h=0,l=0,c=null,u=this.renderSession.blendModeManager.currentBlendMode,d=null,p=!1,f=!1,g=0,m=this.currentBatchSize;g=this.size&&this.flush()}},O.WebGLFastSpriteBatch.prototype.flush=function(){if(0!==this.currentBatchSize){var t=this.gl;if(this.currentBaseTexture._glTextures[t.id]){if(this.currentBatchSize>.5*this.size)t.bufferSubData(t.ARRAY_BUFFER,0,this.vertices);else{var e=this.vertices.subarray(0,4*this.currentBatchSize*this.vertSize);t.bufferSubData(t.ARRAY_BUFFER,0,e)}t.drawElements(t.TRIANGLES,6*this.currentBatchSize,t.UNSIGNED_SHORT,0),this.currentBatchSize=0,this.renderSession.drawCount++}else this.renderSession.renderer.updateTexture(this.currentBaseTexture,t)}},O.WebGLFastSpriteBatch.prototype.stop=function(){this.flush()},O.WebGLFastSpriteBatch.prototype.start=function(){var t=this.gl;t.activeTexture(t.TEXTURE0),t.bindBuffer(t.ARRAY_BUFFER,this.vertexBuffer),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.indexBuffer);var e=this.renderSession.projection;t.uniform2f(this.shader.projectionVector,e.x,e.y),t.uniformMatrix3fv(this.shader.uMatrix,!1,this.matrix);var i=4*this.vertSize;t.vertexAttribPointer(this.shader.aVertexPosition,2,t.FLOAT,!1,i,0),t.vertexAttribPointer(this.shader.aPositionCoord,2,t.FLOAT,!1,i,8),t.vertexAttribPointer(this.shader.aScale,2,t.FLOAT,!1,i,16),t.vertexAttribPointer(this.shader.aRotation,1,t.FLOAT,!1,i,24),t.vertexAttribPointer(this.shader.aTextureCoord,2,t.FLOAT,!1,i,28),t.vertexAttribPointer(this.shader.colorAttribute,1,t.FLOAT,!1,i,36),t.vertexAttribPointer(this.shader.aTextureIndex,1,t.FLOAT,!1,i,40)},O.WebGLFilterManager=function(){this.filterStack=[],this.offsetX=0,this.offsetY=0},O.WebGLFilterManager.prototype.constructor=O.WebGLFilterManager,O.WebGLFilterManager.prototype.setContext=function(t){this.gl=t,this.texturePool=[],this.initShaderBuffers()},O.WebGLFilterManager.prototype.begin=function(t,e){this.renderSession=t,this.defaultShader=t.shaderManager.defaultShader;var i=this.renderSession.projection;this.width=2*i.x,this.height=2*-i.y,this.buffer=e},O.WebGLFilterManager.prototype.pushFilter=function(t){var e=this.gl,i=this.renderSession.projection,s=this.renderSession.offset;t._filterArea=t.target.filterArea||t.target.getBounds(),t._previous_stencil_mgr=this.renderSession.stencilManager,this.renderSession.stencilManager=new O.WebGLStencilManager,this.renderSession.stencilManager.setContext(e),e.disable(e.STENCIL_TEST),this.filterStack.push(t);var n=t.filterPasses[0];this.offsetX+=t._filterArea.x,this.offsetY+=t._filterArea.y;var r=this.texturePool.pop();r?r.resize(this.width*this.renderSession.resolution,this.height*this.renderSession.resolution):r=new O.FilterTexture(this.gl,this.width*this.renderSession.resolution,this.height*this.renderSession.resolution),e.bindTexture(e.TEXTURE_2D,r.texture);var o=t._filterArea,a=n.padding;o.x-=a,o.y-=a,o.width+=2*a,o.height+=2*a,o.x<0&&(o.x=0),o.width>this.width&&(o.width=this.width),o.y<0&&(o.y=0),o.height>this.height&&(o.height=this.height),e.bindFramebuffer(e.FRAMEBUFFER,r.frameBuffer),e.viewport(0,0,o.width*this.renderSession.resolution,o.height*this.renderSession.resolution),i.x=o.width/2,i.y=-o.height/2,s.x=-o.x,s.y=-o.y,e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),t._glFilterTexture=r},O.WebGLFilterManager.prototype.popFilter=function(){var t=this.gl,e=this.filterStack.pop(),i=e._filterArea,s=e._glFilterTexture,n=this.renderSession.projection,r=this.renderSession.offset;if(1this.baseTexture.width||t.y+t.height>this.baseTexture.height))this.valid=t&&t.width&&t.height&&this.baseTexture.source&&this.baseTexture.hasLoaded,this.trim&&(this.width=this.trim.width,this.height=this.trim.height,this.frame.width=this.trim.width,this.frame.height=this.trim.height),this.valid&&this._updateUvs();else{if(!O.TextureSilentFail)throw new Error("Texture Error: frame does not fit inside the base Texture dimensions "+this);this.valid=!1}},O.Texture.prototype._updateUvs=function(){this._uvs||(this._uvs=new O.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.width)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.width)/e,this._uvs.y2=(t.y+t.height)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.height)/i},O.Texture.prototype._updateUvsInverted=function(){this._uvs||(this._uvs=new O.TextureUvs);var t=this.crop,e=this.baseTexture.width,i=this.baseTexture.height;this._uvs.x0=t.x/e,this._uvs.y0=t.y/i,this._uvs.x1=(t.x+t.height)/e,this._uvs.y1=t.y/i,this._uvs.x2=(t.x+t.height)/e,this._uvs.y2=(t.y+t.width)/i,this._uvs.x3=t.x/e,this._uvs.y3=(t.y+t.width)/i},O.Texture.fromCanvas=function(t,e){var i=O.BaseTexture.fromCanvas(t,e);return new O.Texture(i)},O.TextureUvs=function(){this.x0=0,this.y0=0,this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.x3=0,this.y3=0},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=O),exports.PIXI=O):"undefined"!=typeof define&&define.amd?define("PIXI",t.PIXI=O):t.PIXI=O,O}.call(this),function(){var r,t=this,X=X||{VERSION:"2.19.2",GAMES:[],AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,WEBGL_MULTI:4,NONE:0,LEFT:1,RIGHT:2,UP:3,DOWN:4,SPRITE:0,BUTTON:1,IMAGE:2,GRAPHICS:3,TEXT:4,TILESPRITE:5,BITMAPTEXT:6,GROUP:7,RENDERTEXTURE:8,TILEMAP:9,TILEMAPLAYER:10,EMITTER:11,POLYGON:12,BITMAPDATA:13,CANVAS_FILTER:14,WEBGL_FILTER:15,ELLIPSE:16,SPRITEBATCH:17,RETROFONT:18,POINTER:19,ROPE:20,CIRCLE:21,RECTANGLE:22,LINE:23,MATRIX:24,POINT:25,ROUNDEDRECTANGLE:26,CREATURE:27,VIDEO:28,PENDING_ATLAS:-1,HORIZONTAL:0,VERTICAL:1,LANDSCAPE:0,PORTRAIT:1,ANGLE_UP:270,ANGLE_DOWN:90,ANGLE_LEFT:180,ANGLE_RIGHT:0,ANGLE_NORTH_EAST:315,ANGLE_NORTH_WEST:225,ANGLE_SOUTH_EAST:45,ANGLE_SOUTH_WEST:135,TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12,blendModes:{NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16},scaleModes:{DEFAULT:0,LINEAR:0,NEAREST:1},PIXI:PIXI||{},_UID:0};if("undefined"!=typeof AudioBufferSourceNode&&(AudioBufferSourceNode.prototype.start||(AudioBufferSourceNode.prototype.start=AudioBufferSourceNode.prototype.noteGrainOn),AudioBufferSourceNode.prototype.stop||(AudioBufferSourceNode.prototype.stop=AudioBufferSourceNode.prototype.noteOff)),Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),Function.prototype.bind||(Function.prototype.bind=(r=Array.prototype.slice,function(e){var i=this,s=r.call(arguments,1);if("function"!=typeof i)throw new TypeError;function n(){var t=s.concat(r.call(arguments));i.apply(this instanceof n?this:e,t)}return n.prototype=function t(e){if(e&&(t.prototype=e),!(this instanceof t))return new t}(i.prototype),n})),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t){"use strict";if(null==this)throw new TypeError;var e=Object(this),i=e.length>>>0;if("function"!=typeof t)throw new TypeError;for(var s=2<=arguments.length?arguments[1]:void 0,n=0;n=(t=t.toString()).length)switch(s){case 1:t=new Array(e+1-t.length).join(i)+t;break;case 3:var r=Math.ceil((n=e-t.length)/2);t=new Array(n-r+1).join(i)+t+new Array(r+1).join(i);break;default:t+=new Array(e+1-t.length).join(i)}return t},isPlainObject:function(t){if("object"!=typeof t||t.nodeType||t===t.window)return!1;try{if(t.constructor&&!{}.hasOwnProperty.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},extend:function(){var t,e,i,s,n,r,o=arguments[0]||{},a=1,h=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},a=2),h===a&&(o=this,--a);athis.x?(this._radius=0,this._diameter=0):this.radius=this.x-t}}),Object.defineProperty(X.Circle.prototype,"right",{get:function(){return this.x+this._radius},set:function(t){tthis.y?(this._radius=0,this._diameter=0):this.radius=this.y-t}}),Object.defineProperty(X.Circle.prototype,"bottom",{get:function(){return this.y+this._radius},set:function(t){t=t.left&&e<=t.right&&i>=t.top&&i<=t.bottom&&(t.x-e)*(t.x-e)+(t.y-i)*(t.y-i)<=t.radius*t.radius},X.Circle.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.diameter===e.diameter},X.Circle.intersects=function(t,e){return X.Math.distance(t.x,t.y,e.x,e.y)<=t.radius+e.radius},X.Circle.circumferencePoint=function(t,e,i,s){return void 0===i&&(i=!1),void 0===s&&(s=new X.Point),!0===i&&(e=X.Math.degToRad(e)),s.x=t.x+t.radius*Math.cos(e),s.y=t.y+t.radius*Math.sin(e),s},X.Circle.intersectsRectangle=function(t,e){var i=Math.abs(t.x-e.x-e.halfWidth);if(e.halfWidth+t.radiuss&&(this.x=s),this.yn&&(this.y=n),this},clone:function(t){return null==t?t=new X.Point(this.x,this.y):t.setTo(this.x,this.y),t},copyTo:function(t){return t.x=this.x,t.y=this.y,t},distance:function(t,e){return X.Point.distance(this,t,e)},equals:function(t){return t.x===this.x&&t.y===this.y},equalsXY:function(t,e){return this.x===t&&this.y===e},fuzzyEquals:function(t,e){return X.Point.fuzzyEquals(this,t,e)},fuzzyEqualsXY:function(t,e,i){return X.Point.fuzzyEqualsXY(this,t,e,i)},angle:function(t,e){return this.angleXY(t.x,t.y,e)},angleXY:function(t,e,i){var s=Math.atan2(e-this.y,t-this.x);return i?X.Math.radToDeg(s):s},atan:function(t){var e=Math.atan2(this.y,this.x);return t?X.Math.radToDeg(e):e},rotate:function(t,e,i,s,n){return X.Point.rotate(this,t,e,i,s,n)},getMagnitude:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},getMagnitudeSq:function(){return this.x*this.x+this.y*this.y},setMagnitude:function(t){return this.normalize().multiply(t,t)},normalize:function(){if(!this.isZero()){var t=this.getMagnitude();this.x/=t,this.y/=t}return this},limit:function(t){return this.getMagnitudeSq()>t*t&&this.setMagnitude(t),this},expand:function(t){return this.getMagnitudeSq()e.y?1:-1:e.y>t.y?1:-1;var i=(t.x-n)*-(e.y-r)-(e.x-n)*-(t.y-r);if(i<0)return-1;if(0=this.right?this.width=0:this.width=this.right-t,this.x=t}}),Object.defineProperty(X.Rectangle.prototype,"right",{get:function(){return this.x+this.width},set:function(t){t<=this.x?this.width=0:this.width=t-this.x}}),Object.defineProperty(X.Rectangle.prototype,"volume",{get:function(){return this.width*this.height}}),Object.defineProperty(X.Rectangle.prototype,"perimeter",{get:function(){return 2*this.width+2*this.height}}),Object.defineProperty(X.Rectangle.prototype,"centerX",{get:function(){return this.x+this.halfWidth},set:function(t){this.x=t-this.halfWidth}}),Object.defineProperty(X.Rectangle.prototype,"centerY",{get:function(){return this.y+this.halfHeight},set:function(t){this.y=t-this.halfHeight}}),Object.defineProperty(X.Rectangle.prototype,"randomX",{get:function(){return this.x+Math.random()*this.width}}),Object.defineProperty(X.Rectangle.prototype,"randomY",{get:function(){return this.y+Math.random()*this.height}}),Object.defineProperty(X.Rectangle.prototype,"top",{get:function(){return this.y},set:function(t){t>=this.bottom?(this.height=0,this.y=t):this.height=this.bottom-t}}),Object.defineProperty(X.Rectangle.prototype,"topLeft",{get:function(){return new X.Point(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"topRight",{get:function(){return new X.Point(this.x+this.width,this.y)},set:function(t){this.right=t.x,this.y=t.y}}),Object.defineProperty(X.Rectangle.prototype,"empty",{get:function(){return!this.width||!this.height},set:function(t){!0===t&&this.setTo(0,0,0,0)}}),X.Rectangle.prototype.constructor=X.Rectangle,X.Rectangle.inflate=function(t,e,i){return t.x-=e,t.width+=2*e,t.y-=i,t.height+=2*i,t},X.Rectangle.inflatePoint=function(t,e){return X.Rectangle.inflate(t,e.x,e.y)},X.Rectangle.size=function(t,e){return null==e?e=new X.Point(t.width,t.height):e.setTo(t.width,t.height),e},X.Rectangle.clone=function(t,e){return null==e?e=new X.Rectangle(t.x,t.y,t.width,t.height):e.setTo(t.x,t.y,t.width,t.height),e},X.Rectangle.createFromBounds=function(t,e){return null==e&&(e=new X.Rectangle(t.x,t.y,t.width,t.height)),e.copyFromBounds(t)},X.Rectangle.contains=function(t,e,i){return!(t.width<=0||t.height<=0)&&(e>=t.x&&e=t.y&&ie.volume)&&(t.x>=e.x&&t.y>=e.y&&t.righte.right||t.y>e.bottom)},X.Rectangle.intersectsRaw=function(t,e,i,s,n,r){return void 0===r&&(r=0),!(e>t.right+r||it.bottom+r||ni&&(i=t.x),t.xn&&(n=t.y),t.ythis.deadzone.right&&(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.deadzone.right,this.lerp.x)),this._edge=this._targetPosition.y-this.view.y,this._edgethis.deadzone.bottom&&(this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.deadzone.bottom,this.lerp.y))):(this.view.x=this.game.math.linear(this.view.x,this._targetPosition.x-this.view.halfWidth,this.lerp.x),this.view.y=this.game.math.linear(this.view.y,this._targetPosition.y-this.view.halfHeight,this.lerp.y)),this.bounds&&this.checkBounds(),this.roundPx&&this.view.floor(),this.displayObject.position.x=-this.view.x,this.displayObject.position.y=-this.view.y},setBoundsToWorld:function(){this.bounds&&this.bounds.copyFrom(this.game.world.bounds)},checkBounds:function(){this.atLimit.x=!1,this.atLimit.y=!1;var t=this.view.x+this._shake.x,e=this.view.right+this._shake.x,i=this.view.y+this._shake.y,s=this.view.bottom+this._shake.y;t<=this.bounds.x*this.scale.x?(this.atLimit.x=!0,this.view.x=this.bounds.x*this.scale.x,this._shake.shakeBounds||(this._shake.x=0)):e>=this.bounds.right*this.scale.x&&(this.atLimit.x=!0,this.view.x=this.bounds.right*this.scale.x-this.width,this._shake.shakeBounds||(this._shake.x=0)),i<=this.bounds.top*this.scale.y?(this.atLimit.y=!0,this.view.y=this.bounds.top*this.scale.y,this._shake.shakeBounds||(this._shake.y=0)):s>=this.bounds.bottom*this.scale.y&&(this.atLimit.y=!0,this.view.y=this.bounds.bottom*this.scale.y-this.height,this._shake.shakeBounds||(this._shake.y=0))},setPosition:function(t,e){this.view.x=t,this.view.y=e,this.bounds&&this.checkBounds()},setSize:function(t,e){this.view.width=t,this.view.height=e},reset:function(){this.target=null,this.view.x=0,this.view.y=0,this._shake.duration=0,this._shake.x=0,this._shake.y=0,this.resetFX()},resetFX:function(){this.fx&&(this.fx.clear(),this.fx.alpha=0),this._fxDuration=0}},X.Camera.prototype.constructor=X.Camera,Object.defineProperty(X.Camera.prototype,"x",{get:function(){return this.view.x},set:function(t){this.view.x=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"y",{get:function(){return this.view.y},set:function(t){this.view.y=t,this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"position",{get:function(){return this._position.set(this.view.x,this.view.y),this._position},set:function(t){void 0!==t.x&&(this.view.x=t.x),void 0!==t.y&&(this.view.y=t.y),this.bounds&&this.checkBounds()}}),Object.defineProperty(X.Camera.prototype,"width",{get:function(){return this.view.width},set:function(t){this.view.width=t}}),Object.defineProperty(X.Camera.prototype,"height",{get:function(){return this.view.height},set:function(t){this.view.height=t}}),Object.defineProperty(X.Camera.prototype,"shakeIntensity",{get:function(){return this._shake.intensity},set:function(t){this._shake.intensity=t}}),Object.defineProperty(X.Camera.prototype,"fixedView",{get:function(){return this._fixedView.setTo(0,0,this.view.width,this.view.height),this._fixedView}}),Object.defineProperty(X.Camera.prototype,"centerX",{get:function(){return this.x+.5*this.width}}),Object.defineProperty(X.Camera.prototype,"centerY",{get:function(){return this.y+.5*this.height}}),X.State=function(){this.game=null,this.key="",this.add=null,this.make=null,this.camera=null,this.cache=null,this.input=null,this.load=null,this.math=null,this.sound=null,this.scale=null,this.stage=null,this.state=null,this.time=null,this.tweens=null,this.world=null,this.particles=null,this.physics=null,this.rnd=null},X.State.prototype={init:function(){},preload:function(){},loadUpdate:function(){},loadRender:function(){},create:function(){},update:function(){},postUpdate:function(){},preRender:function(){},render:function(){},resize:function(){},paused:function(){},resumed:function(){},pauseUpdate:function(){},shutdown:function(){}},X.State.prototype.constructor=X.State,X.StateManager=function(t,e){this.game=t,this.states={},(this._pendingState=null)!=e&&(this._pendingState=e),this._clearWorld=!1,this._clearCache=!1,this._created=!1,this._args=[],this.current="",this.onStateChange=new X.Signal,this.onInitCallback=null,this.onPreloadCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPreRenderCallback=null,this.onLoadUpdateCallback=null,this.onLoadRenderCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null,this.onShutDownCallback=null},X.StateManager.prototype={boot:function(){this.game.onPause.add(this.pause,this),this.game.onResume.add(this.resume,this),null!==this._pendingState&&"string"!=typeof this._pendingState&&this.add("default",this._pendingState,!0)},add:function(t,e,i){var s;return void 0===i&&(i=!1),e instanceof X.State?s=e:"object"==typeof e?(s=e).game=this.game:"function"==typeof e&&(s=new e(this.game)),this.states[t]=s,i&&(this.game.isBooted?this.start(t):this._pendingState=t),s},remove:function(t){this.current===t&&(this.callbackContext=null,this.onInitCallback=null,this.onShutDownCallback=null,this.onPreloadCallback=null,this.onLoadRenderCallback=null,this.onLoadUpdateCallback=null,this.onCreateCallback=null,this.onUpdateCallback=null,this.onPreRenderCallback=null,this.onRenderCallback=null,this.onResizeCallback=null,this.onPausedCallback=null,this.onResumedCallback=null,this.onPauseUpdateCallback=null),delete this.states[t]},start:function(t,e,i){void 0===e&&(e=!0),void 0===i&&(i=!1),this.checkState(t)&&(this._pendingState=t,this._clearWorld=e,this._clearCache=i,3=this.children.length?-1:this.getChildAt(t)},X.Group.prototype.create=function(t,e,i,s,n,r){void 0===n&&(n=!0);var o=new this.classType(this.game,t,e,i,s);return o.exists=n,o.visible=n,o.alive=n,this.add(o,!1,r)},X.Group.prototype.createMultiple=function(n,t,e,r,o,a){void 0===e&&(e=0),void 0===r&&(r=!1),Array.isArray(t)||(t=[t]),Array.isArray(e)||(e=[e]);var h=this,l=[];return t.forEach(function(s){e.forEach(function(t){for(var e=0;ethis.children.length||-1===t&&-1===e)return!1;for(var o=new X.Rectangle(0,0,i,s),a=t*i,h=e*s,l=r;lthis.children.length-1&&(t=0),this.cursor)return this.cursorIndex=t,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.next=function(){if(this.cursor)return this.cursorIndex>=this.children.length-1?this.cursorIndex=0:this.cursorIndex++,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.previous=function(){if(this.cursor)return 0===this.cursorIndex?this.cursorIndex=this.children.length-1:this.cursorIndex--,this.cursor=this.children[this.cursorIndex],this.cursor},X.Group.prototype.swap=function(t,e){this.swapChildren(t,e),this.updateZ()},X.Group.prototype.bringToTop=function(t){return t.parent===this&&this.getIndex(t)this.children.length)return-1;this.getChildAt(t).x=e,this.getChildAt(t).y=i},X.Group.prototype.reverse=function(){this.children.reverse(),this.updateZ()},X.Group.prototype.getIndex=function(t){return this.children.indexOf(t)},X.Group.prototype.getByName=function(t){return this.getFirst("name",t)},X.Group.prototype.replace=function(t,e){var i=this.getIndex(t);if(-1!==i)return e.parent&&(e.parent instanceof X.Group?e.parent.remove(e):e.parent.removeChild(e)),this.remove(t),this.addAt(e,i),t},X.Group.prototype.hasProperty=function(t,e){var i=e.length;return 1===i&&e[0]in t||(2===i&&e[0]in t&&e[1]in t[e[0]]||(3===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]||4===i&&e[0]in t&&e[1]in t[e[0]]&&e[2]in t[e[0]][e[1]]&&e[3]in t[e[0]][e[1]][e[2]]))},X.Group.prototype.setProperty=function(t,e,i,s,n){if(void 0===n&&(n=!1),s=s||0,!this.hasProperty(t,e)&&(!n||0e[this._sortProperty]?1:t.ze[this._sortProperty]?-1:0},X.Group.prototype.iterate=function(t,e,i,s,n,r){if(0===this.children.length){if(i===X.Group.RETURN_TOTAL)return 0;if(i===X.Group.RETURN_ALL)return[]}var o=0;if(i===X.Group.RETURN_ALL)var a=[];for(var h=0;hthis.children.length)return!1;for(var n=e;t<=n;){!s&&this.children[n].events&&this.children[n].events.onRemovedFromGroup$dispatch(this.children[n],this);var r=this.removeChild(this.children[n]);this.removeFromHash(r),i&&r&&r.destroy(!0),this.cursor===this.children[n]&&(this.cursor=null),n--}this.updateZ()}},X.Group.prototype.scatter=function(e,t){null==e&&(e=this.game.world.bounds),this.forEach(function(t){t.position.set(e.randomX,e.randomY)},null,t)},X.Group.prototype.shuffle=function(){X.ArrayUtils.shuffle(this.children),this.updateZ()},X.Group.prototype.destroy=function(t,e){null===this.game||this.ignoreDestroy||(void 0===t&&(t=!0),void 0===e&&(e=!1),this.onDestroy.dispatch(this,t,e),this.removeAll(t),this.cursor=null,this.filters=null,this.pendingDestroy=!1,e||(this.parent&&this.parent.removeChild(this),this.game=null,this.exists=!1))},Object.defineProperty(X.Group.prototype,"total",{get:function(){return this.iterate("exists",!0,X.Group.RETURN_TOTAL)}}),Object.defineProperty(X.Group.prototype,"length",{get:function(){return this.children.length}}),Object.defineProperty(X.Group.prototype,"angle",{get:function(){return X.Math.radToDeg(this.rotation)},set:function(t){this.rotation=X.Math.degToRad(t)}}),Object.defineProperty(X.Group.prototype,"centerX",{get:function(){return this.getBounds(this.parent).centerX},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.halfWidth}}),Object.defineProperty(X.Group.prototype,"centerY",{get:function(){return this.getBounds(this.parent).centerY},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.halfHeight}}),Object.defineProperty(X.Group.prototype,"left",{get:function(){return this.getBounds(this.parent).left},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i}}),Object.defineProperty(X.Group.prototype,"right",{get:function(){return this.getBounds(this.parent).right},set:function(t){var e=this.getBounds(this.parent),i=this.x-e.x;this.x=t+i-e.width}}),Object.defineProperty(X.Group.prototype,"top",{get:function(){return this.getBounds(this.parent).top},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i}}),Object.defineProperty(X.Group.prototype,"bottom",{get:function(){return this.getBounds(this.parent).bottom},set:function(t){var e=this.getBounds(this.parent),i=this.y-e.y;this.y=t+i-e.height}}),X.World=function(t){X.Group.call(this,t,null,"__world",!1),this.bounds=new X.Rectangle(0,0,t.width,t.height),this.camera=null,this._definedSize=!1,this._width=t.width,this._height=t.height,this.game.state.onStateChange.add(this.stateChange,this)},X.World.prototype=Object.create(X.Group.prototype),X.World.prototype.constructor=X.World,X.World.prototype.boot=function(){this.camera=new X.Camera(this.game,0,0,0,this.game.width,this.game.height),this.game.stage.addChild(this),this.camera.boot()},X.World.prototype.stateChange=function(){this.x=0,this.y=0,this.camera.reset()},X.World.prototype.setBounds=function(t,e,i,s){this._definedSize=!0,this._width=i,this._height=s,this.bounds.setTo(t,e,i,s),this.x=t,this.y=e,this.camera.bounds&&this.camera.bounds.setTo(t,e,Math.max(i,this.game.width),Math.max(s,this.game.height)),this.game.physics.setBoundsToWorld()},X.World.prototype.resize=function(t,e){this._definedSize&&(tthis.bounds.right&&(t.x=this.bounds.left)),n&&(t.y+t._currentBounds.heightthis.bounds.bottom&&(t.y=this.bounds.top))):(s&&t.x+ethis.bounds.right&&(t.x=this.bounds.left-e),n&&t.y+ethis.bounds.bottom&&(t.y=this.bounds.top-e))},X.World.prototype.wrapAll=function(t,e,i,s,n,r){t.forEach(this.wrap,this,e,i,s,n,r)},Object.defineProperty(X.World.prototype,"width",{get:function(){return this.bounds.width},set:function(t){tthis.time.deltaMax){if(this.dropFrames)return;e=this.time.deltaMax}if(this.forceSingleUpdate)this.updatesThisFrame=1,this.rendersThisFrame=1,this.updateLogic(.001*e/this.time.slowMotion),this.updateRender();else if(2this._nextFpsNotification&&(this._nextFpsNotification=this.time.time+1e4,this.fpsProblemNotifier.dispatch()),this._deltaTime=0,this._spiraling=0;else{var i=0,s=1e3*this.time.desiredFpsMult;for(this._deltaTime+=e,this.updatesThisFrame=Math.floor(this._deltaTime/s),this.rendersThisFrame=this.forceSingleRender?1:Math.min(1,this.updatesThisFrame);this._deltaTime>=s;)this._deltaTime-=s,this.currentUpdateID=i,this.updateLogic(this.time.desiredFpsMult/this.time.slowMotion),this.time.refresh(),i++;i>this._lastCount?this._spiraling++:i=X.Input.MAX_POINTERS)return console.warn("Phaser.Input.addPointer: Maximum limit of "+X.Input.MAX_POINTERS+" pointers reached."),null;var t=this.pointers.length+1,e=new X.Pointer(this.game,t,X.PointerMode.CONTACT);return this.pointers.push(e),this["pointer"+t]=e},update:function(){if(this.keyboard&&this.keyboard.update(),0=this.maxPointers)return null;if(!this.pointer1.active)return this.pointer1.start(t);if(!this.pointer2.active)return this.pointer2.start(t);for(var e=2;e=r&&this.game.camera.x+e.x=o&&this.game.camera.y+e.y=r&&this._localPoint.x=o&&this._localPoint.y=r&&this._localPoint.x=o&&this._localPoint.ythis.game.time.time},justReleased:function(t){return t=t||250,this.isUp&&this.timeUp+t>this.game.time.time},reset:function(){this.isDown=!1,this.isUp=!0,this.timeDown=this.game.time.time,this.repeats=0,this.altKey=!1,this.shiftKey=!1,this.ctrlKey=!1},destroy:function(){this.onDown.dispose(),this.onUp.dispose(),this.onFloat.dispose(),this.parent=null,this.game=null}},X.DeviceButton.prototype.constructor=X.DeviceButton,Object.defineProperty(X.DeviceButton.prototype,"duration",{get:function(){return this.isUp?-1:this.game.time.time-this.timeDown}}),X.Pointer=function(t,e,i){this.game=t,this.id=e,this.type=X.POINTER,this.exists=!0,this.identifier=0,this.pointerId=null,this.pointerMode=i||X.PointerMode.CURSOR|X.PointerMode.CONTACT,this.target=null,this.button=null,this.leftButton=new X.DeviceButton(this,X.Pointer.LEFT_BUTTON),this.middleButton=new X.DeviceButton(this,X.Pointer.MIDDLE_BUTTON),this.rightButton=new X.DeviceButton(this,X.Pointer.RIGHT_BUTTON),this.backButton=new X.DeviceButton(this,X.Pointer.BACK_BUTTON),this.forwardButton=new X.DeviceButton(this,X.Pointer.FORWARD_BUTTON),this.eraserButton=new X.DeviceButton(this,X.Pointer.ERASER_BUTTON),this._holdSent=!1,this._history=[],this._nextDrop=0,this._stateReset=!1,this.withinGame=!1,this.clientX=-1,this.clientY=-1,this.pageX=-1,this.pageY=-1,this.screenX=-1,this.screenY=-1,this.rawMovementX=0,this.rawMovementY=0,this.movementX=0,this.movementY=0,this.x=-1,this.y=-1,this.isMouse=0===e,this.isDown=!1,this.isUp=!0,this.timeDown=0,this.timeUp=0,this.previousTapTime=0,this.totalTouches=0,this.msSinceLastClick=Number.MAX_VALUE,this.targetObject=null,this.interactiveCandidates=[],this.active=!1,this.dirty=!1,this.position=new X.Point,this.positionDown=new X.Point,this.positionUp=new X.Point,this.circle=new X.Circle(0,0,44),this._clickTrampolines=null,this._trampolineTargetObject=null},X.Pointer.NO_BUTTON=0,X.Pointer.LEFT_BUTTON=1,X.Pointer.RIGHT_BUTTON=2,X.Pointer.MIDDLE_BUTTON=4,X.Pointer.BACK_BUTTON=8,X.Pointer.FORWARD_BUTTON=16,X.Pointer.ERASER_BUTTON=32,X.Pointer.prototype={resetButtons:function(){this.isDown=!1,this.isUp=!0,this.isMouse&&(this.leftButton.reset(),this.middleButton.reset(),this.rightButton.reset(),this.backButton.reset(),this.forwardButton.reset(),this.eraserButton.reset())},processButtonsDown:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.start(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.start(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.start(e);break;case X.Mouse.BACK_BUTTON:this.backButton.start(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.start(e)}},processButtonsUp:function(t,e){switch(t){case X.Mouse.LEFT_BUTTON:this.leftButton.stop(e);break;case X.Mouse.RIGHT_BUTTON:this.rightButton.stop(e);break;case X.Mouse.MIDDLE_BUTTON:this.middleButton.stop(e);break;case X.Mouse.BACK_BUTTON:this.backButton.stop(e);break;case X.Mouse.FORWARD_BUTTON:this.forwardButton.stop(e)}},processButtonsUpDown:function(t,e){var i=e.type.toLowerCase().substr(-4),s="down"===i,n="move"===i;void 0!==t?(s&&1===t&&e.ctrlKey&&(t=2),this.leftButton.startStop(X.Pointer.LEFT_BUTTON&t,e),this.rightButton.startStop(X.Pointer.RIGHT_BUTTON&t,e),this.middleButton.startStop(X.Pointer.MIDDLE_BUTTON&t,e),this.backButton.startStop(X.Pointer.BACK_BUTTON&t,e),this.forwardButton.startStop(X.Pointer.FORWARD_BUTTON&t,e),this.eraserButton.startStop(X.Pointer.ERASER_BUTTON&t,e)):void 0!==e.button?s&&e.ctrlKey&&0===e.button?this.rightButton.start(e):s?this.processButtonsDown(e.button,e):n||this.processButtonsUp(e.button,e):s?e.ctrlKey?this.rightButton.start(e):this.leftButton.start(e):(this.leftButton.stop(e),this.rightButton.stop(e))},updateButtons:function(t){this.button=t.button,this.processButtonsUpDown(t.buttons,t),this.isUp=!0,this.isDown=!1,(this.leftButton.isDown||this.rightButton.isDown||this.middleButton.isDown||this.backButton.isDown||this.forwardButton.isDown||this.eraserButton.isDown)&&(this.isUp=!1,this.isDown=!0)},start:function(t){var e=this.game.input;return t.pointerId&&(this.pointerId=t.pointerId),this.identifier=t.identifier,this.target=t.target,this.isMouse?this.updateButtons(t):(this.isDown=!0,this.isUp=!1),this.active=!0,this.withinGame=!0,this.dirty=!1,this._history=[],this._clickTrampolines=null,this._trampolineTargetObject=null,this.msSinceLastClick=this.game.time.time-this.timeDown,this.timeDown=this.game.time.time,this._holdSent=!1,this.move(t,!0),this.positionDown.setTo(this.x,this.y),(e.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||e.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||e.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===e.totalActivePointers)&&(e.x=this.x,e.y=this.y,e.position.setTo(this.x,this.y),e.onDown.dispatch(this,t),e.resetSpeed(this.x,this.y)),this._stateReset=!1,this.totalTouches++,null!==this.targetObject&&this.targetObject._touchedHandler(this),this},update:function(){var t=this.game.input;this.active&&(this.dirty&&(0=t.holdRate&&((t.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||t.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||t.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===t.totalActivePointers)&&t.onHold.dispatch(this),this._holdSent=!0),t.recordPointerHistory&&this.game.time.time>=this._nextDrop&&(this._nextDrop=this.game.time.time+t.recordRate,this._history.push({x:this.position.x,y:this.position.y}),this._history.length>t.recordLimit&&this._history.shift()))},move:function(t,e){var i=this.game.input;if(!i.pollLocked){void 0===e&&(e=!1),void 0!==t.button&&(this.button=t.button),this.isMouse&&this.updateButtons(t),this.clientX=t.clientX,this.clientY=t.clientY,this.pageX=t.pageX,this.pageY=t.pageY,this.screenX=t.screenX,this.screenY=t.screenY,this.isMouse&&i.pointerLock.locked&&!e&&(this.rawMovementX=t.movementX||t.mozMovementX||t.webkitMovementX||0,this.rawMovementY=t.movementY||t.mozMovementY||t.webkitMovementY||0,this.movementX+=this.rawMovementX,this.movementY+=this.rawMovementY),this.x=(this.pageX-this.game.scale.offset.x)*i.scale.x,this.y=(this.pageY-this.game.scale.offset.y)*i.scale.y,this.position.setTo(this.x,this.y),this.circle.x=this.x,this.circle.y=this.y,(i.multiInputOverride===X.Input.MOUSE_OVERRIDES_TOUCH||i.multiInputOverride===X.Input.MOUSE_TOUCH_COMBINE||i.multiInputOverride===X.Input.TOUCH_OVERRIDES_MOUSE&&0===i.totalActivePointers)&&(i.activePointer=this,i.x=this.x,i.y=this.y,i.position.setTo(i.x,i.y),i.circle.x=i.x,i.circle.y=i.y),this.withinGame=this.game.scale.bounds.contains(this.pageX,this.pageY);for(var s=i.moveCallbacks.length;s--;)i.moveCallbacks[s].callback.call(i.moveCallbacks[s].context,this,this.x,this.y,e,t);return null===this.targetObject||this.game.paused&&!this.targetObject.noPause||!0!==this.targetObject.isDragged?0this.game.time.time},justReleased:function(t){return t=t||this.game.input.justReleasedRate,this.isUp&&this.timeUp+t>this.game.time.time},addClickTrampoline:function(t,e,i,s){if(this.isDown){for(var n=this._clickTrampolines=this._clickTrampolines||[],r=0;rt||this.priorityID===t&&this.sprite.renderOrderID>e))},isPixelPerfect:function(){return this.pixelPerfectClick||this.pixelPerfectOver},pointerX:function(t){return t=t||0,this._pointerData[t].x},pointerY:function(t){return t=t||0,this._pointerData[t].y},pointerDown:function(t){return t=t||0,this._pointerData[t].isDown},pointerUp:function(t){return t=t||0,this._pointerData[t].isUp},pointerTimeDown:function(t){return t=t||0,this._pointerData[t].timeDown},pointerTimeUp:function(t){return t=t||0,this._pointerData[t].timeUp},pointerOver:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOver;for(var e=0;e<10;e++)if(this._pointerData[e].isOver)return!0;return!1},pointerOut:function(t){if(!this.enabled)return!1;if(void 0!==t)return this._pointerData[t].isOut;for(var e=0;e<10;e++)if(this._pointerData[e].isOut)return!0},pointerTimeOver:function(t){return t=t||0,this._pointerData[t].timeOver},pointerTimeOut:function(t){return t=t||0,this._pointerData[t].timeOut},pointerDragged:function(t){return t=t||0,this._pointerData[t].isDragged},checkPointerDown:function(t,e){return!!(t.isDown&&this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectClick)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPointerOver:function(t,e){return!!(this.enabled&&this.sprite&&this.sprite.parent&&this.sprite.visible&&this.sprite.parent.visible&&0!==this.sprite.worldScale.x&&0!==this.sprite.worldScale.y)&&(!!this.game.input.hitTest(this.sprite,t,this._tempPoint)&&(void 0===e&&(e=!1),!(!e&&this.pixelPerfectOver)||this.checkPixel(this._tempPoint.x,this._tempPoint.y)))},checkPixel:function(t,e,i){if(this.sprite.texture.baseTexture.source){if(null===t&&null===e){this.game.input.getLocalPosition(this.sprite,i,this._tempPoint);t=this._tempPoint.x,e=this._tempPoint.y}if(0!==this.sprite.anchor.x&&(t-=-this.sprite.texture.frame.width*this.sprite.anchor.x),0!==this.sprite.anchor.y&&(e-=-this.sprite.texture.frame.height*this.sprite.anchor.y),t+=this.sprite.texture.frame.x,e+=this.sprite.texture.frame.y,this.sprite.texture.trim&&(t-=this.sprite.texture.trim.x,e-=this.sprite.texture.trim.y,tthis.sprite.texture.crop.right||ethis.sprite.texture.crop.bottom))return this._dx=t,this._dy=e,!1;if(this._dx=t,this._dy=e,this.game.input.hitContext.clearRect(0,0,1,1),this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source,t,e,1,1,0,0,1,1),this.game.input.hitContext.getImageData(0,0,1,1).data[3]>=this.pixelPerfectAlpha)return!0}return!1},update:function(t){if(null!==this.sprite&&void 0!==this.sprite.parent)return this.enabled&&this.sprite.visible&&this.sprite.parent.visible?this._pendingDrag?(this._dragDistancePass||(this._dragDistancePass=X.Math.distance(t.x,t.y,this.downPoint.x,this.downPoint.y)>=this.dragDistanceThreshold),this._dragDistancePass&&this._dragTimePass&&this.startDrag(t),!0):this.draggable&&this._draggedPointerID===t.id?this.updateDrag(t,!1):this._pointerData[t.id].isOver?this.checkPointerOver(t)?(this._pointerData[t.id].x=t.x-this.sprite.x,this._pointerData[t.id].y=t.y-this.sprite.y,!0):(this._pointerOutHandler(t),!1):void 0:(this._pointerOutHandler(t),!1)},_pointerOverHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];if(!1===i.isOver||t.dirty){var s=!1===i.isOver;i.isOver=!0,i.isOut=!1,i.timeOver=this.game.time.time,i.x=t.x-this.sprite.x,i.y=t.y-this.sprite.y,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="pointer",this._setHandCursor=!0),!e&&s&&this.sprite&&this.sprite.events&&this.sprite.events.onInputOver$dispatch(this.sprite,t),this.sprite.parent&&this.sprite.parent.onChildInputOver&&this.sprite.parent.onChildInputOver.dispatch(this.sprite,t)}}},_pointerOutHandler:function(t,e){if(null!==this.sprite){var i=this._pointerData[t.id];i.isOver=!1,i.isOut=!0,i.timeOut=this.game.time.time,this.useHandCursor&&!1===i.isDragged&&(this.game.canvas.style.cursor="",this._setHandCursor=!1),!e&&this.sprite&&this.sprite.events&&(this.sprite.events.onInputOut$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputOut&&this.sprite.parent.onChildInputOut.dispatch(this.sprite,t))}},_touchedHandler:function(t){if(null!==this.sprite){var e=this._pointerData[t.id];if(!e.isDown&&e.isOver){if(this.pixelPerfectClick&&!this.checkPixel(null,null,t))return;if(e.isDown=!0,e.isUp=!1,e.timeDown=this.game.time.time,this.downPoint.set(t.x,t.y),t.dirty=!0,this.sprite&&this.sprite.events&&(this.sprite.events.onInputDown$dispatch(this.sprite,t),this.sprite&&this.sprite.parent&&this.sprite.parent.onChildInputDown&&this.sprite.parent.onChildInputDown.dispatch(this.sprite,t),null===this.sprite))return;this.draggable&&!1===this.isDragged&&(0===this.dragTimeThreshold&&0===this.dragDistanceThreshold?this.startDrag(t):(this._pendingDrag=!0,this._dragDistancePass=0===this.dragDistanceThreshold,0this.boundsRect.right&&(this.sprite.cameraOffset.x=this.boundsRect.right-this.sprite.width),this.sprite.cameraOffset.ythis.boundsRect.bottom&&(this.sprite.cameraOffset.y=this.boundsRect.bottom-this.sprite.height)):(this.sprite.leftthis.boundsRect.right&&(this.sprite.x=this.boundsRect.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsRect.bottom&&(this.sprite.y=this.boundsRect.bottom-(this.sprite.height-this.sprite.offsetY)))},checkBoundsSprite:function(){this.sprite.fixedToCamera&&this.boundsSprite.fixedToCamera?(this.sprite.cameraOffset.xthis.boundsSprite.cameraOffset.x+this.boundsSprite.width&&(this.sprite.cameraOffset.x=this.boundsSprite.cameraOffset.x+this.boundsSprite.width-this.sprite.width),this.sprite.cameraOffset.ythis.boundsSprite.cameraOffset.y+this.boundsSprite.height&&(this.sprite.cameraOffset.y=this.boundsSprite.cameraOffset.y+this.boundsSprite.height-this.sprite.height)):(this.sprite.leftthis.boundsSprite.right&&(this.sprite.x=this.boundsSprite.right-(this.sprite.width-this.sprite.offsetX)),this.sprite.topthis.boundsSprite.bottom&&(this.sprite.y=this.boundsSprite.bottom-(this.sprite.height-this.sprite.offsetY)))}},X.InputHandler.prototype.constructor=X.InputHandler,X.PointerLock=function(t){this.game=t,this.input=t.input,this.element=t.canvas,this.active=!1,this.locked=!1,this.onChange=new X.Signal,this.onError=new X.Signal,this.boundOnChangeHandler=this.onChangeHandler.bind(this),this.boundOnErrorHandler=this.onErrorHandler.bind(this);var e=t.device;this.pointerLockElement=e.pointerLockElement,this.pointerlockchange=e.pointerlockchange,this.pointerlockerror=e.pointerlockerror},X.PointerLock.prototype.start=function(){return!(!this.game.device.pointerLock||this.active)&&(this.element.requestPointerLock||(this.element.requestPointerLock=this.element.mozRequestPointerLock||this.element.webkitRequestPointerLock),document.exitPointerLock||(document.exitPointerLock=document.mozExitPointerLock||document.webkitExitPointerLock),document.addEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.addEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!0)},X.PointerLock.prototype.stop=function(){this.active&&(document.removeEventListener(this.pointerlockchange,this.boundOnChangeHandler,!0),document.removeEventListener(this.pointerlockerror,this.boundOnErrorHandler,!0),this.active=!1)},X.PointerLock.prototype.request=function(){this.active&&!this.locked&&this.element.requestPointerLock()},X.PointerLock.prototype.exit=function(){document.exitPointerLock()},X.PointerLock.prototype.onChangeHandler=function(t){this.locked=document[this.pointerLockElement]===this.element,this.onChange.dispatch(this.locked,t)},X.PointerLock.prototype.onErrorHandler=function(t){this.onError.dispatch(t)},X.Gamepad=function(t){this.game=t,this._gamepadIndexMap={},this._rawPads=[],this._active=!1,this.enabled=!0,this._gamepadSupportAvailable=!!navigator.webkitGetGamepads||!!navigator.webkitGamepads||-1!==navigator.userAgent.indexOf("Firefox/")||!!navigator.getGamepads,this._prevRawGamepadTypes=[],this._prevTimestamps=[],(this.callbackContext=this).onConnectCallback=null,this.onDisconnectCallback=null,this.onDownCallback=null,this.onUpCallback=null,this.onAxisCallback=null,this.onFloatCallback=null,this._ongamepadconnected=null,this._gamepaddisconnected=null,this._gamepads=[new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this),new X.SinglePad(t,this)]},X.Gamepad.prototype={addCallbacks:function(t,e){void 0!==e&&(this.onConnectCallback="function"==typeof e.onConnect?e.onConnect:this.onConnectCallback,this.onDisconnectCallback="function"==typeof e.onDisconnect?e.onDisconnect:this.onDisconnectCallback,this.onDownCallback="function"==typeof e.onDown?e.onDown:this.onDownCallback,this.onUpCallback="function"==typeof e.onUp?e.onUp:this.onUpCallback,this.onAxisCallback="function"==typeof e.onAxis?e.onAxis:this.onAxisCallback,this.onFloatCallback="function"==typeof e.onFloat?e.onFloat:this.onFloatCallback,this.callbackContext=t)},start:function(){if(!this._active){this._active=!0;var e=this;this._onGamepadConnected=function(t){return e.onGamepadConnected(t)},this._onGamepadDisconnected=function(t){return e.onGamepadDisconnected(t)},window.addEventListener("gamepadconnected",this._onGamepadConnected,!1),window.addEventListener("gamepaddisconnected",this._onGamepadDisconnected,!1)}},onGamepadConnected:function(t){var e=t.gamepad;this._rawPads.push(e),this._gamepads[e.index].connect(e)},onGamepadDisconnected:function(t){var e=t.gamepad;for(var i in this._rawPads)this._rawPads[i].index===e.index&&this._rawPads.splice(i,1);this._gamepads[e.index].disconnect()},update:function(){this._pollGamepads(),this.pad1.pollStatus(),this.pad2.pollStatus(),this.pad3.pollStatus(),this.pad4.pollStatus()},_pollGamepads:function(){if(this._active){if(navigator.getGamepads)var t=navigator.getGamepads();else if(navigator.webkitGetGamepads)t=navigator.webkitGetGamepads();else if(navigator.webkitGamepads)t=navigator.webkitGamepads();if(t){for(var e=!(this._rawPads=[]),i=0;ithis.deadZone||s<0&&s<-this.deadZone?this.processAxisChange(i,s):this.processAxisChange(i,0)}this._prevTimestamp=this._rawPad.timestamp}},connect:function(t){var e=!this.connected;this.connected=!0,this.index=t.index,this._rawPad=t,this._buttons=[],this._buttonsLen=t.buttons.length,this._axes=[],this._axesLen=t.axes.length;for(var i=0;ithis.maxHealth&&(this.health=this.maxHealth),this},heal:function(t){return this.alive&&(this.health+=t,this.health>this.maxHealth&&(this.health=this.maxHealth)),this}},X.Component.InCamera=function(){},X.Component.InCamera.prototype={inCamera:{get:function(){return this.game.world.camera.view.intersects(this._bounds)}}},X.Component.InputEnabled=function(){},X.Component.InputEnabled.prototype={input:null,inputEnabled:{get:function(){return this.input&&this.input.enabled},set:function(t){t?null===this.input?(this.input=new X.InputHandler(this),this.input.start()):this.input&&!this.input.enabled&&this.input.start():this.input&&this.input.enabled&&this.input.stop()}}},X.Component.InWorld=function(){},X.Component.InWorld.preUpdate=function(){if(this.pendingDestroy)return this.destroy(),!1;if(this.autoCull||this.checkWorldBounds){if(this._bounds.copyFrom(this.getBounds()),this._bounds.x+=this.game.camera.view.x,this._bounds.y+=this.game.camera.view.y,this.autoCull)if(this.game.world.camera.view.intersects(this._bounds))this.renderable=!0,this.game.world.camera.totalInView++;else if(this.renderable=!1,this.outOfCameraBoundsKill)return this.kill(),!1;if(this.checkWorldBounds)if(this._outOfBoundsFired&&this.game.world.bounds.intersects(this._bounds))this._outOfBoundsFired=!1,this.events.onEnterBounds$dispatch(this);else if(!this._outOfBoundsFired&&!this.game.world.bounds.intersects(this._bounds)&&(this._outOfBoundsFired=!0,this.events.onOutOfBounds$dispatch(this),this.outOfBoundsKill))return this.kill(),!1}return!0},X.Component.InWorld.prototype={checkWorldBounds:!1,outOfBoundsKill:!1,outOfCameraBoundsKill:!1,_outOfBoundsFired:!1,inWorld:{get:function(){return this.game.world.bounds.intersects(this.getBounds())}}},X.Component.LifeSpan=function(){},X.Component.LifeSpan.preUpdate=function(){return this.pendingDestroy?(this.destroy(),!1):!(0this.scaleMax.x&&(t.a=this.scaleMax.x),t.d>this.scaleMax.y&&(t.d=this.scaleMax.y))},setScaleMinMax:function(t,e,i,s){void 0===e?e=i=s=t:void 0===i&&(i=s=e,e=t),null===t?this.scaleMin=null:this.scaleMin?this.scaleMin.set(t,e):this.scaleMin=new X.Point(t,e),null===i?this.scaleMax=null:this.scaleMax?this.scaleMax.set(i,s):this.scaleMax=new X.Point(i,s),null===this.scaleMin?this.transformCallback=null:(this.transformCallback=this.checkTransform,this.transformCallbackContext=this)}},X.Component.Smoothed=function(){},X.Component.Smoothed.prototype={smoothed:{get:function(){return!this.texture.baseTexture.scaleMode},set:function(t){t?this.texture&&0!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=0,this.texture.baseTexture.dirty()):this.texture&&1!==this.texture.baseTexture.scaleMode&&(this.texture.baseTexture.scaleMode=1,this.texture.baseTexture.dirty())}}},X.GameObjectFactory=function(t){this.game=t,this.world=this.game.world},X.GameObjectFactory.prototype={existing:function(t){return this.world.add(t)},weapon:function(t,e,i,s,n){var r=this.game.plugins.add(X.Weapon);return n&&(r.bulletClass=n),r.createBullets(t,e,i,s),r},image:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Image(this.game,t,e,i,s))},sprite:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Sprite(this.game,t,e,i,s))},creature:function(t,e,i,s,n,r,o){void 0===n&&(n=this.world);var a=new X.Creature(this.game,t,e,i,s,r,o);return n.add(a),a},tween:function(t){return this.game.tweens.create(t)},group:function(t,e,i,s,n){return new X.Group(this.game,t,e,i,s,n)},physicsGroup:function(t,e,i,s){return new X.Group(this.game,e,i,s,!0,t)},spriteBatch:function(t,e,i){return void 0===t&&(t=null),void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},tileSprite:function(t,e,i,s,n,r,o){return void 0===o&&(o=this.world),o.add(new X.TileSprite(this.game,t,e,i,s,n,r))},rope:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.Rope(this.game,t,e,i,s,n))},text:function(t,e,i,s,n){return void 0===n&&(n=this.world),n.add(new X.Text(this.game,t,e,i,s))},button:function(t,e,i,s,n,r,o,a,h,l){return void 0===l&&(l=this.world),l.add(new X.Button(this.game,t,e,i,s,n,r,o,a,h))},graphics:function(t,e,i){return void 0===i&&(i=this.world),i.add(new X.Graphics(this.game,t,e))},emitter:function(t,e,i){return this.game.particles.add(new X.Particles.Arcade.Emitter(this.game,t,e,i))},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return void 0===r&&(r=this.world),r.add(new X.BitmapText(this.game,t,e,i,s,n))},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},video:function(t,e){return new X.Video(this.game,t,e)},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t},plugin:function(){return this.game.plugins.add.apply(this.game.plugins,arguments)}},X.GameObjectFactory.prototype.constructor=X.GameObjectFactory,X.GameObjectCreator=function(t){this.game=t,this.world=this.game.world},X.GameObjectCreator.prototype={image:function(t,e,i,s){return new X.Image(this.game,t,e,i,s)},sprite:function(t,e,i,s){return new X.Sprite(this.game,t,e,i,s)},tween:function(t){return new X.Tween(t,this.game,this.game.tweens)},group:function(t,e,i,s,n){return new X.Group(this.game,t||null,e,i,s,n)},spriteBatch:function(t,e,i){return void 0===e&&(e="group"),void 0===i&&(i=!1),new X.SpriteBatch(this.game,t,e,i)},audio:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},audioSprite:function(t){return this.game.sound.addSprite(t)},sound:function(t,e,i,s){return this.game.sound.add(t,e,i,s)},tileSprite:function(t,e,i,s,n,r){return new X.TileSprite(this.game,t,e,i,s,n,r)},rope:function(t,e,i,s,n){return new X.Rope(this.game,t,e,i,s,n)},text:function(t,e,i,s){return new X.Text(this.game,t,e,i,s)},button:function(t,e,i,s,n,r,o,a,h){return new X.Button(this.game,t,e,i,s,n,r,o,a,h)},graphics:function(t,e){return new X.Graphics(this.game,t,e)},emitter:function(t,e,i){return new X.Particles.Arcade.Emitter(this.game,t,e,i)},retroFont:function(t,e,i,s,n,r,o,a,h){return new X.RetroFont(this.game,t,e,i,s,n,r,o,a,h)},bitmapText:function(t,e,i,s,n,r){return new X.BitmapText(this.game,t,e,i,s,n,r)},tilemap:function(t,e,i,s,n){return new X.Tilemap(this.game,t,e,i,s,n)},renderTexture:function(t,e,i,s){void 0!==i&&""!==i||(i=this.game.rnd.uuid()),void 0===s&&(s=!1);var n=new X.RenderTexture(this.game,t,e,i);return s&&this.game.cache.addRenderTexture(i,n),n},bitmapData:function(t,e,i,s){void 0===s&&(s=!1),void 0!==i&&""!==i||(i=this.game.rnd.uuid());var n=new X.BitmapData(this.game,i,t,e);return s&&this.game.cache.addBitmapData(i,n),n},filter:function(t){var e=Array.prototype.slice.call(arguments,1);return(t=new X.Filter[t](this.game)).init.apply(t,e),t}},X.GameObjectCreator.prototype.constructor=X.GameObjectCreator,X.Sprite=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.SPRITE,this.physicsType=X.SPRITE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Sprite.prototype=Object.create(PIXI.Sprite.prototype),X.Sprite.prototype.constructor=X.Sprite,X.Component.Core.install.call(X.Sprite.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Delta","Destroy","FixedToCamera","Health","InCamera","InputEnabled","InWorld","LifeSpan","LoadTexture","Overlap","PhysicsBody","Reset","ScaleMinMax","Smoothed"]),X.Sprite.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Sprite.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Sprite.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Sprite.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Sprite.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Image=function(t,e,i,s,n){e=e||0,i=i||0,s=s||null,n=n||null,this.type=X.IMAGE,PIXI.Sprite.call(this,X.Cache.DEFAULT),X.Component.Core.init.call(this,t,e,i,s,n)},X.Image.prototype=Object.create(PIXI.Sprite.prototype),X.Image.prototype.constructor=X.Image,X.Component.Core.install.call(X.Image.prototype,["Angle","Animation","AutoCull","Bounds","BringToTop","Crop","Destroy","FixedToCamera","InputEnabled","LifeSpan","LoadTexture","Overlap","Reset","ScaleMinMax","Smoothed"]),X.Image.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Image.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Image.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Image.prototype.preUpdate=function(){return!(!this.preUpdateInWorld()||!this.preUpdateLifeSpan())&&this.preUpdateCore()},X.Button=function(t,e,i,s,n,r,o,a,h,l){e=e||0,i=i||0,s=s||null,n=n||null,r=r||this,X.Image.call(this,t,e,i,s,a),this.type=X.BUTTON,this.physicsType=X.SPRITE,this._onOverFrame=null,this._onOutFrame=null,this._onDownFrame=null,this._onUpFrame=null,this.onOverSound=null,this.onOutSound=null,this.onDownSound=null,this.onUpSound=null,this.onOverSoundMarker="",this.onOutSoundMarker="",this.onDownSoundMarker="",this.onUpSoundMarker="",this.onInputOver=new X.Signal,this.onInputOut=new X.Signal,this.onInputDown=new X.Signal,this.onInputUp=new X.Signal,this.onOverMouseOnly=!0,this.justReleasedPreventsOver=X.PointerMode.CONTACT,this.freezeFrames=!1,this.forceOut=!1,this.inputEnabled=!0,this.input.start(0,!0),this.input.useHandCursor=!0,this.setFrames(o,a,h,l),null!==n&&this.onInputUp.add(n,r),this.events.onInputOver.add(this.onInputOverHandler,this),this.events.onInputOut.add(this.onInputOutHandler,this),this.events.onInputDown.add(this.onInputDownHandler,this),this.events.onInputUp.add(this.onInputUpHandler,this)},X.Button.prototype=Object.create(X.Image.prototype),X.Button.prototype.constructor=X.Button;var h="Over",l="Out",c="Down",u="Up";return X.Button.prototype.clearFrames=function(){this.setFrames(null,null,null,null)},X.Button.prototype.setStateFrame=function(t,e,i){var s="_on"+t+"Frame";null!==e?(this[s]=e,i&&this.changeStateFrame(t)):this[s]=null},X.Button.prototype.changeStateFrame=function(t){if(this.freezeFrames)return!1;var e=this["_on"+t+"Frame"];return"string"==typeof e?(this.frameName=e,!0):"number"==typeof e&&(this.frame=e,!0)},X.Button.prototype.setFrames=function(t,e,i,s){this.setStateFrame(h,t,this.input.pointerOver()),this.setStateFrame(l,e,!this.input.pointerOver()),this.setStateFrame(c,i,this.input.pointerDown()),this.setStateFrame(u,s,this.input.pointerUp())},X.Button.prototype.setStateSound=function(t,e,i){var s="on"+t+"Sound",n="on"+t+"SoundMarker";e instanceof X.Sound||e instanceof X.AudioSprite?(this[s]=e,this[n]="string"==typeof i?i:""):(this[s]=null,this[n]="")},X.Button.prototype.playStateSound=function(t){var e=this["on"+t+"Sound"];if(e){var i=this["on"+t+"SoundMarker"];return e.play(i),!0}return!1},X.Button.prototype.setSounds=function(t,e,i,s,n,r,o,a){this.setStateSound(h,t,e),this.setStateSound(l,n,r),this.setStateSound(c,i,s),this.setStateSound(u,o,a)},X.Button.prototype.setOverSound=function(t,e){this.setStateSound(h,t,e)},X.Button.prototype.setOutSound=function(t,e){this.setStateSound(l,t,e)},X.Button.prototype.setDownSound=function(t,e){this.setStateSound(c,t,e)},X.Button.prototype.setUpSound=function(t,e){this.setStateSound(u,t,e)},X.Button.prototype.onInputOverHandler=function(t,e){e.justReleased()&&(this.justReleasedPreventsOver&e.pointerMode)===e.pointerMode||(this.changeStateFrame(h),this.onOverMouseOnly&&!e.isMouse||(this.playStateSound(h),this.onInputOver&&this.onInputOver.dispatch(this,e)))},X.Button.prototype.onInputOutHandler=function(t,e){this.changeStateFrame(l),this.playStateSound(l),this.onInputOut&&this.onInputOut.dispatch(this,e)},X.Button.prototype.onInputDownHandler=function(t,e){this.changeStateFrame(c),this.playStateSound(c),this.onInputDown&&this.onInputDown.dispatch(this,e)},X.Button.prototype.onInputUpHandler=function(t,e,i){(this.playStateSound(u),this.onInputUp&&this.onInputUp.dispatch(this,e,i),this.freezeFrames)||(!0===this.forceOut||(this.forceOut&e.pointerMode)===e.pointerMode?this.changeStateFrame(l):this.changeStateFrame(u)||(i?this.changeStateFrame(h):this.changeStateFrame(l)))},X.SpriteBatch=function(t,e,i,s){null==e&&(e=t.world),X.Group.call(this,t,e,i,s),this.type=X.SPRITEBATCH,this.fastSpriteBatch=null,this.ready=!1},X.SpriteBatch.prototype=Object.create(X.Group.prototype),X.SpriteBatch.prototype.constructor=X.SpriteBatch,X.SpriteBatch.prototype._renderWebGL=function(t){!this.visible||this.alpha<=0||!this.children.length||(this.ready||(this.fastSpriteBatch=new PIXI.WebGLFastSpriteBatch(t.gl),this.ready=!0),this.fastSpriteBatch.gl!==t.gl&&this.fastSpriteBatch.setContext(t.gl),t.spriteBatch.stop(),t.shaderManager.setShader(t.shaderManager.fastShader),this.fastSpriteBatch.begin(this,t),this.fastSpriteBatch.render(this),t.spriteBatch.start())},X.SpriteBatch.prototype._renderCanvas=function(t){if(this.visible&&!(this.alpha<=0)&&this.children.length){var e=t.context;e.globalAlpha=this.worldAlpha,this.displayObjectUpdateTransform();for(var i=this.worldTransform,s=!0,n=0;n=this.height||s<=0)&&(r=!0)):2!==t&&3!==t||++s===this.height&&(s=0,((i+=n)>=this.width||i<=0)&&(r=!0)),0===e.a&&!r;);return e.x=i,e.y=s,e},getBounds:function(t){return void 0===t&&(t=new X.Rectangle),t.x=this.getFirstPixel(2).x,t.x===this.width?t.setTo(0,0,0,0):(t.y=this.getFirstPixel(0).y,t.width=this.getFirstPixel(3).x-t.x+1,t.height=this.getFirstPixel(1).y-t.y+1,t)},addToWorld:function(t,e,i,s,n,r){n=n||1,r=r||1;var o=this.game.add.image(t,e,this);return o.anchor.set(i,s),o.scale.set(n,r),o},copy:function(t,e,i,s,n,r,o,a,h,l,c,u,d,p,f,g,m){if(null==t&&(t=this),t instanceof X.RenderTexture&&(t=t.getCanvas()),(this._image=t)instanceof X.Sprite||t instanceof X.Image||t instanceof X.Text||t instanceof PIXI.Sprite)this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),this._scale.set(t.scale.x,t.scale.y),this._anchor.set(t.anchor.x,t.anchor.y),this._rotate=t.rotation,this._alpha.current=t.alpha,t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source,null==r&&(r=t.x),null==o&&(o=t.y),t.texture.trim&&(r+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,o+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0));else{if(this._pos.set(0),this._scale.set(1),this._anchor.set(0),this._rotate=0,this._alpha.current=1,t instanceof X.BitmapData)this._image=t.canvas;else if("string"==typeof t){if(null===(t=this.game.cache.getImage(t)))return this;this._image=t}this._size.set(this._image.width,this._image.height)}if(null==e&&(e=0),null==i&&(i=0),s&&(this._size.x=s),n&&(this._size.y=n),null==r&&(r=e),null==o&&(o=i),null==a&&(a=this._size.x),null==h&&(h=this._size.y),"number"==typeof l&&(this._rotate=l),"number"==typeof c&&(this._anchor.x=c),"number"==typeof u&&(this._anchor.y=u),"number"==typeof d&&(this._scale.x=d),"number"==typeof p&&(this._scale.y=p),"number"==typeof f&&(this._alpha.current=f),void 0===g&&(g=null),void 0===m&&(m=!1),this._alpha.current<=0||0===this._scale.x||0===this._scale.y||0===this._size.x||0===this._size.y)return this;var y=this.context;return this._alpha.prev=y.globalAlpha,y.save(),y.globalAlpha=this._alpha.current,g&&(this.op=g),m&&(r|=0,o|=0),y.translate(r,o),y.scale(this._scale.x,this._scale.y),y.rotate(this._rotate),y.drawImage(this._image,this._pos.x+e,this._pos.y+i,this._size.x,this._size.y,-a*this._anchor.x,-h*this._anchor.y,a,h),y.restore(),y.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyTransform:function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=!1),!t.hasOwnProperty("worldTransform")||!t.worldVisible||0===t.worldAlpha)return this;var s=t.worldTransform;if(this._pos.set(t.texture.crop.x,t.texture.crop.y),this._size.set(t.texture.crop.width,t.texture.crop.height),0===s.a||0===s.d||0===this._size.x||0===this._size.y)return this;t.texture instanceof X.RenderTexture?this._image=t.texture.getCanvas():this._image=t.texture.baseTexture.source;var n=s.tx,r=s.ty;t.texture.trim&&(n+=t.texture.trim.x-t.anchor.x*t.texture.trim.width,r+=t.texture.trim.y-t.anchor.y*t.texture.trim.height),16777215!==t.tint&&(t.cachedTint!==t.tint&&(t.cachedTint=t.tint,t.tintedTexture=PIXI.CanvasTinter.getTintedTexture(t,t.tint)),this._image=t.tintedTexture,this._pos.set(0)),i&&(n|=0,r|=0);var o=this.context;return this._alpha.prev=o.globalAlpha,o.save(),o.globalAlpha=this._alpha.current,e&&(this.op=e),o[this.smoothProperty]=t.texture.baseTexture.scaleMode===PIXI.scaleModes.LINEAR,o.setTransform(s.a,s.b,s.c,s.d,n,r),o.drawImage(this._image,this._pos.x,this._pos.y,this._size.x,this._size.y,-this._size.x*t.anchor.x,-this._size.y*t.anchor.y,this._size.x,this._size.y),o.restore(),o.globalAlpha=this._alpha.prev,this.dirty=!0,this},copyRect:function(t,e,i,s,n,r,o){return this.copy(t,e.x,e.y,e.width,e.height,i,s,e.width,e.height,0,0,0,1,1,n,r,o)},draw:function(t,e,i,s,n,r,o){return this.copy(t,null,null,null,null,e,i,s,n,null,null,null,null,null,null,r,o)},drawGroup:function(t,e,i){return 0e.width&&(s=e.width);var n=this.context;return n.fillStyle=n.createPattern(e,i),this._circle=new X.Circle(t.start.x,t.start.y,e.height),this._circle.circumferencePoint(t.angle-1.5707963267948966,!1,this._pos),n.save(),n.translate(this._pos.x,this._pos.y),n.rotate(t.angle),n.fillRect(0,0,s,e.height),n.restore(),this.dirty=!0,this}},render:function(){return!this.disableTextureUpload&&this.dirty&&(this.baseTexture.dirty(),this.dirty=!1),this},destroy:function(){this.frameData.destroy(),this.texture.destroy(!0),X.CanvasPool.remove(this)},blendReset:function(){return this.op="source-over",this},blendSourceOver:function(){return this.op="source-over",this},blendSourceIn:function(){return this.op="source-in",this},blendSourceOut:function(){return this.op="source-out",this},blendSourceAtop:function(){return this.op="source-atop",this},blendDestinationOver:function(){return this.op="destination-over",this},blendDestinationIn:function(){return this.op="destination-in",this},blendDestinationOut:function(){return this.op="destination-out",this},blendDestinationAtop:function(){return this.op="destination-atop",this},blendXor:function(){return this.op="xor",this},blendAdd:function(){return this.op="lighter",this},blendMultiply:function(){return this.op="multiply",this},blendScreen:function(){return this.op="screen",this},blendOverlay:function(){return this.op="overlay",this},blendDarken:function(){return this.op="darken",this},blendLighten:function(){return this.op="lighten",this},blendColorDodge:function(){return this.op="color-dodge",this},blendColorBurn:function(){return this.op="color-burn",this},blendHardLight:function(){return this.op="hard-light",this},blendSoftLight:function(){return this.op="soft-light",this},blendDifference:function(){return this.op="difference",this},blendExclusion:function(){return this.op="exclusion",this},blendHue:function(){return this.op="hue",this},blendSaturation:function(){return this.op="saturation",this},blendColor:function(){return this.op="color",this},blendLuminosity:function(){return this.op="luminosity",this},copyBitmapData:function(t,e,i){t.update();for(var s,n=0;n80*i){s=r=t[0],n=o=t[1];for(var f=i;fr.x?n.x>o.x?n.x:o.x:r.x>o.x?r.x:o.x,c=n.y>r.y?n.y>o.y?n.y:o.y:r.y>o.y?r.y:o.y,u=X.EarCut.zOrder(a,h,e,i,s),d=X.EarCut.zOrder(l,c,e,i,s),p=t.nextZ;p&&p.z<=d;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&X.EarCut.pointInTriangle(n.x,n.y,r.x,r.y,o.x,o.y,p.x,p.y)&&0<=X.EarCut.area(p.prev,p,p.next))return!1;p=p.prevZ}return!0},X.EarCut.cureLocalIntersections=function(t,e,i){var s=t;do{var n=s.prev,r=s.next.next;X.EarCut.intersects(n,s,s.next,r)&&X.EarCut.locallyInside(n,r)&&X.EarCut.locallyInside(r,n)&&(e.push(n.i/i),e.push(s.i/i),e.push(r.i/i),X.EarCut.removeNode(s),X.EarCut.removeNode(s.next),s=t=r),s=s.next}while(s!==t);return s},X.EarCut.splitEarcut=function(t,e,i,s,n,r){var o=t;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&X.EarCut.isValidDiagonal(o,a)){var h=X.EarCut.splitPolygon(o,a);return o=X.EarCut.filterPoints(o,o.next),h=X.EarCut.filterPoints(h,h.next),X.EarCut.earcutLinked(o,e,i,s,n,r),void X.EarCut.earcutLinked(h,e,i,s,n,r)}a=a.next}o=o.next}while(o!==t)},X.EarCut.eliminateHoles=function(t,e,i,s){var n,r,o,a,h,l=[];for(n=0,r=e.length;n=s.next.y){var a=s.x+(r-s.y)*(s.next.x-s.x)/(s.next.y-s.y);a<=n&&o=s.x&&s.x>=i.x&&X.EarCut.pointInTriangle(ri.x)&&X.EarCut.locallyInside(s,t)&&(i=s,c=h),s=s.next;return i},X.EarCut.indexCurve=function(t,e,i,s){for(var n=t;null===n.z&&(n.z=X.EarCut.zOrder(n.x,n.y,e,i,s)),n.prevZ=n.prev,n.nextZ=n.next,(n=n.next)!==t;);n.prevZ.nextZ=null,n.prevZ=null,X.EarCut.sortLinked(n)},X.EarCut.sortLinked=function(t){var e,i,s,n,r,o,a,h,l=1;do{for(i=t,r=t=null,o=0;i;){for(o++,s=i,e=a=0;er!=i.next.y>r&&n<(i.next.x-i.x)*(r-i.y)/(i.next.y-i.y)+i.x&&(s=!s),(i=i.next)!==t;);return s},X.EarCut.splitPolygon=function(t,e){var i=new X.EarCut.Node(t.i,t.x,t.y),s=new X.EarCut.Node(e.i,e.x,e.y),n=t.next,r=e.prev;return(t.next=e).prev=t,(i.next=n).prev=i,(s.next=i).prev=s,(r.next=s).prev=r,s},X.EarCut.insertNode=function(t,e,i,s){var n=new X.EarCut.Node(t,e,i);return s?(n.next=s.next,(n.prev=s).next.prev=n,s.next=n):(n.prev=n).next=n,n},X.EarCut.removeNode=function(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)},X.EarCut.Node=function(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1},PIXI.WebGLGraphics=function(){},PIXI.WebGLGraphics.stencilBufferLimit=6,PIXI.WebGLGraphics.renderGraphics=function(t,e){var i,s=e.gl,n=e.projection,r=e.offset,o=e.shaderManager.primitiveShader;t.dirty&&PIXI.WebGLGraphics.updateGraphics(t,s);var a=t._webGL[s.id];if(a)for(var h=0;h=PIXI.WebGLGraphics.stencilBufferLimit)if(o.points.length<2*PIXI.WebGLGraphics.stencilBufferLimit)s=PIXI.WebGLGraphics.switchMode(n,0),PIXI.WebGLGraphics.buildPoly(o,s)||(s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s));else s=PIXI.WebGLGraphics.switchMode(n,1),PIXI.WebGLGraphics.buildComplexPoly(o,s);0>16&255)/255,i=(t.tint>>8&255)/255,s=(255&t.tint)/255,n=0;n>16&255)/255*e*255<<16)+((o>>8&255)/255*i*255<<8)+(255&o)/255*s*255,r._lineTint=((a>>16&255)/255*e*255<<16)+((a>>8&255)/255*i*255<<8)+(255&a)/255*s*255}},X.GraphicsData=function(t,e,i,s,n,r,o){this.lineWidth=t,this.lineColor=e,this.lineAlpha=i,this._lineTint=e,this.fillColor=s,this.fillAlpha=n,this._fillTint=s,this.fill=r,this.shape=o,this.type=o.type},X.GraphicsData.prototype.constructor=X.GraphicsData,X.GraphicsData.prototype.clone=function(){return new X.GraphicsData(this.lineWidth,this.lineColor,this.lineAlpha,this.fillColor,this.fillAlpha,this.fill,this.shape)},X.Graphics=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=0),this.type=X.GRAPHICS,this.physicsType=X.SPRITE,this.anchor=new X.Point,PIXI.DisplayObjectContainer.call(this),this.renderable=!0,this.fillAlpha=1,this.lineWidth=0,this.lineColor=0,this.graphicsData=[],this.tint=16777215,this.blendMode=PIXI.blendModes.NORMAL,this.currentPath=null,this._webGL=[],this.isMask=!1,this.boundsPadding=0,this._localBounds=new X.Rectangle(0,0,1,1),this.dirty=!0,this._boundsDirty=!1,this.webGLDirty=!1,this.cachedSpriteDirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.Graphics.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.Graphics.prototype.constructor=X.Graphics,X.Component.Core.install.call(X.Graphics.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.Graphics.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.Graphics.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.Graphics.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.Graphics.prototype.preUpdateCore=X.Component.Core.preUpdate,X.Graphics.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.Graphics.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this._boundsDirty&&(this.updateLocalBounds(),this._boundsDirty=!1);for(var t=0;tg&&(y=-g),0!==y&&(m+=0i&&(this.style.wordWrapWidth=i)),this.updateTexture(),this},X.Text.prototype.updateTexture=function(){var t=this.texture.baseTexture,e=this.texture.crop,i=this.texture.frame,s=this.canvas.width,n=this.canvas.height;if(t.width=s,t.height=n,e.width=s,e.height=n,i.width=s,i.height=n,this.texture.width=s,this.texture.height=n,this._width=s,this._height=n,this.textBounds){var r=this.textBounds.x,o=this.textBounds.y;"right"===this.style.boundsAlignH?r+=this.textBounds.width-this.canvas.width/this.resolution:"center"===this.style.boundsAlignH&&(r+=this.textBounds.halfWidth-this.canvas.width/this.resolution/2),"bottom"===this.style.boundsAlignV?o+=this.textBounds.height-this.canvas.height/this.resolution:"middle"===this.style.boundsAlignV&&(o+=this.textBounds.halfHeight-this.canvas.height/this.resolution/2),this.pivot.x=-r,this.pivot.y=-o}this.renderable=0!==s&&0!==n,this.texture.requiresReTint=!0,this.texture.baseTexture.dirty()},X.Text.prototype._renderWebGL=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderWebGL.call(this,t)},X.Text.prototype._renderCanvas=function(t){this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype._renderCanvas.call(this,t)},X.Text.prototype.determineFontProperties=function(t){var e=X.Text.fontPropertiesCache[t];if(e)return e;var i=X.Text.fontPropertiesContext;i.font=t;var s=i.measureText(this.testString);if(s.actualBoundingBoxAscent){e={ascent:n=Math.ceil(s.actualBoundingBoxAscent),descent:r=Math.ceil(s.actualBoundingBoxDescent),fontSize:n+r}}else{var n,r,o=i.measureText("MX").width;e={ascent:n=Math.ceil(.75*o),descent:r=Math.ceil(.25*o),fontSize:n+r}}return X.Text.fontPropertiesCache[t]=e},X.Text.prototype.getBounds=function(t){return this.dirty&&(this.updateText(),this.dirty=!1),PIXI.Sprite.prototype.getBounds.call(this,t)},X.Text.prototype.setCharacterLimit=function(t,e){this.characterLimitSuffix=void 0===e?"":e,this.characterLimitSize=t,this.updateText()},Object.defineProperty(X.Text.prototype,"text",{get:function(){return this._text},set:function(t){t!==this._text&&(this._text=t.toString()||"",this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"cssFont",{get:function(){return this.componentsToFont(this._fontComponents)},set:function(t){t=t||"bold 20pt Arial",this._fontComponents=this.fontToComponents(t),this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"font",{get:function(){return this._fontComponents.fontFamily},set:function(t){t=(t=t||"Arial").trim(),/^(?:inherit|serif|sans-serif|cursive|fantasy|monospace)$/.exec(t)||/['",]/.exec(t)||(t="'"+t+"'"),this._fontComponents.fontFamily=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontSize",{get:function(){var t=this._fontComponents.fontSize;return t&&/(?:^0$|px$)/.exec(t)?parseInt(t,10):t},set:function(t){"number"==typeof(t=t||"0")&&(t+="px"),this._fontComponents.fontSize=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontWeight",{get:function(){return this._fontComponents.fontWeight||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontWeight=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontStyle",{get:function(){return this._fontComponents.fontStyle||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontStyle=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fontVariant",{get:function(){return this._fontComponents.fontVariant||"normal"},set:function(t){t=t||"normal",this._fontComponents.fontVariant=t,this.updateFont(this._fontComponents)}}),Object.defineProperty(X.Text.prototype,"fill",{get:function(){return this.style.fill},set:function(t){t!==this.style.fill&&(this.style.fill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"align",{get:function(){return this.style.align},set:function(t){(t=t.toLowerCase())!==this.style.align&&(this.style.align=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"resolution",{get:function(){return this._res},set:function(t){t!==this._res&&(this._res=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"tabs",{get:function(){return this.style.tabs},set:function(t){t!==this.style.tabs&&(this.style.tabs=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignH",{get:function(){return this.style.boundsAlignH},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignH&&(this.style.boundsAlignH=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"boundsAlignV",{get:function(){return this.style.boundsAlignV},set:function(t){(t=t.toLowerCase())!==this.style.boundsAlignV&&(this.style.boundsAlignV=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"stroke",{get:function(){return this.style.stroke},set:function(t){t!==this.style.stroke&&(this.style.stroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"strokeThickness",{get:function(){return this.style.strokeThickness},set:function(t){t!==this.style.strokeThickness&&(this.style.strokeThickness=Number(t),this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrap",{get:function(){return this.style.wordWrap},set:function(t){t!==this.style.wordWrap&&(this.style.wordWrap=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"wordWrapWidth",{get:function(){return this.style.wordWrapWidth},set:function(t){t!==this.style.wordWrapWidth&&(this.style.wordWrapWidth=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"lineSpacing",{get:function(){return this._lineSpacing},set:function(t){t!==this._lineSpacing&&(this._lineSpacing=parseFloat(t),this.dirty=!0,this.parent&&this.updateTransform())}}),Object.defineProperty(X.Text.prototype,"shadowOffsetX",{get:function(){return this.style.shadowOffsetX},set:function(t){t!==this.style.shadowOffsetX&&(this.style.shadowOffsetX=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowOffsetY",{get:function(){return this.style.shadowOffsetY},set:function(t){t!==this.style.shadowOffsetY&&(this.style.shadowOffsetY=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowColor",{get:function(){return this.style.shadowColor},set:function(t){t!==this.style.shadowColor&&(this.style.shadowColor=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowBlur",{get:function(){return this.style.shadowBlur},set:function(t){t!==this.style.shadowBlur&&(this.style.shadowBlur=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowStroke",{get:function(){return this.style.shadowStroke},set:function(t){t!==this.style.shadowStroke&&(this.style.shadowStroke=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"shadowFill",{get:function(){return this.style.shadowFill},set:function(t){t!==this.style.shadowFill&&(this.style.shadowFill=t,this.dirty=!0)}}),Object.defineProperty(X.Text.prototype,"width",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.x*(this.texture.frame.width/this.resolution)},set:function(t){this.scale.x=t/this.texture.frame.width,this._width=t}}),Object.defineProperty(X.Text.prototype,"height",{get:function(){return this.dirty&&(this.updateText(),this.dirty=!1),this.scale.y*(this.texture.frame.height/this.resolution)},set:function(t){this.scale.y=t/this.texture.frame.height,this._height=t}}),Object.defineProperty(X.Text.prototype,"testString",{get:function(){return this._testString},set:function(t){this._testString=t,this.updateText()}}),X.Text.fontPropertiesCache={},X.Text.fontPropertiesCanvas=document.createElement("canvas"),X.Text.fontPropertiesContext=X.Text.fontPropertiesCanvas.getContext("2d"),X.BitmapText=function(t,e,i,s,n,r,o){e=e||0,i=i||0,s=s||"",n=n||"",r=r||32,o=o||"left",PIXI.DisplayObjectContainer.call(this),this.type=X.BITMAPTEXT,this.physicsType=X.SPRITE,this.textWidth=0,this.textHeight=0,this.anchor=new X.Point,this._prevAnchor=new X.Point,this._glyphs=[],this._maxWidth=0,this._text=n.toString()||"",this._data=t.cache.getBitmapFont(s),this._font=s,this._fontSize=r,this._align=o,this._letterSpacing=0,this._tint=16777215,this.updateText(),this.dirty=!1,X.Component.Core.init.call(this,t,e,i,"",null)},X.BitmapText.prototype=Object.create(PIXI.DisplayObjectContainer.prototype),X.BitmapText.prototype.constructor=X.BitmapText,X.Component.Core.install.call(X.BitmapText.prototype,["Angle","AutoCull","Bounds","Destroy","FixedToCamera","InputEnabled","InWorld","LifeSpan","PhysicsBody","Reset"]),X.BitmapText.prototype.preUpdatePhysics=X.Component.PhysicsBody.preUpdate,X.BitmapText.prototype.preUpdateLifeSpan=X.Component.LifeSpan.preUpdate,X.BitmapText.prototype.preUpdateInWorld=X.Component.InWorld.preUpdate,X.BitmapText.prototype.preUpdateCore=X.Component.Core.preUpdate,X.BitmapText.prototype.preUpdate=function(){return!!(this.preUpdatePhysics()&&this.preUpdateLifeSpan()&&this.preUpdateInWorld())&&this.preUpdateCore()},X.BitmapText.prototype.postUpdate=function(){X.Component.PhysicsBody.postUpdate.call(this),X.Component.FixedToCamera.postUpdate.call(this),this.body&&this.body.type===X.Physics.ARCADE&&(this.textWidth===this.body.sourceWidth&&this.textHeight===this.body.sourceHeight||this.body.setSize(this.textWidth,this.textHeight))},X.BitmapText.prototype.setText=function(t){this.text=t},X.BitmapText.prototype.scanLine=function(t,e,i){for(var s=0,n=0,r=-1,o=0,a=null,h=0this.textWidth&&(this.textWidth=c.width),n+=t.lineHeight*i,e=e.substr(c.text.length+1)}while(!1===c.end);this.textHeight=n;for(var r=0,o=0,a=this.textWidth*this.anchor.x,h=this.textHeight*this.anchor.y,l=0;l?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~",X.RetroFont.TEXT_SET2=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET3="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",X.RetroFont.TEXT_SET4="ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789",X.RetroFont.TEXT_SET5="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789",X.RetroFont.TEXT_SET6="ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' ",X.RetroFont.TEXT_SET7="AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39",X.RetroFont.TEXT_SET8="0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET9="ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!",X.RetroFont.TEXT_SET10="ABCDEFGHIJKLMNOPQRSTUVWXYZ",X.RetroFont.TEXT_SET11="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789",X.RetroFont.prototype.setFixedWidth=function(t,e){void 0===e&&(e="left"),this.fixedWidth=t,this.align=e},X.RetroFont.prototype.setText=function(t,e,i,s,n,r){this.multiLine=e||!1,this.customSpacingX=i||0,this.customSpacingY=s||0,this.align=n||"left",this.autoUpperCase=!r,0this.width))break},X.RetroFont.prototype.getLongestLine=function(){var t=0;if(0t&&(t=e[i].length);return t},X.RetroFont.prototype.removeUnsupportedCharacters=function(t){for(var e="",i=0;i=X.Math.PI2-i?t=e:(Math.abs(e-t)>Math.PI&&(et[i]&&(i=e);return t[i]},minProperty:function(t){if(2===arguments.length&&"object"==typeof arguments[1])var e=arguments[1];else e=arguments.slice(1);for(var i=1,s=0,n=e.length;ie[s][t]&&(s=i);return e[s][t]},wrapAngle:function(t,e){return e?this.wrap(t,-Math.PI,Math.PI):this.wrap(t,-180,180)},linearInterpolation:function(t,e){var i=t.length-1,s=i*e,n=Math.floor(s);return e<0?this.linear(t[0],t[1],s):1>>0,s=(e*=s)>>>0,s+=4294967296*(e-=s);return 2.3283064365386963e-10*(s>>>0)},integer:function(){return 4294967296*this.rnd.apply(this)},frac:function(){return this.rnd.apply(this)+11102230246251565e-32*(2097152*this.rnd.apply(this)|0)},real:function(){return this.integer()+this.frac()},integerInRange:function(t,e){return Math.floor(this.realInRange(0,e-t+1)+t)},between:function(t,e){return this.integerInRange(t,e)},realInRange:function(t,e){return this.frac()*(e-t)+t},normal:function(){return 1-2*this.frac()},uuid:function(){var t="",e="";for(e=t="";t++<36;e+=~t%5|3*t&4?(15^t?8^this.frac()*(20^t?16:4):4).toString(16):"-");return e},pick:function(t){return t[this.integerInRange(0,t.length-1)]},sign:function(){return this.pick([-1,1])},weightedPick:function(t){return t[~~(Math.pow(this.frac(),2)*(t.length-1)+.5)]},timestamp:function(t,e){return this.realInRange(t||9466848e5,e||1577862e6)},angle:function(){return this.integerInRange(-180,180)},state:function(t){return"string"==typeof t&&t.match(/^!rnd/)&&(t=t.split(","),this.c=parseFloat(t[1]),this.s0=parseFloat(t[2]),this.s1=parseFloat(t[3]),this.s2=parseFloat(t[4])),["!rnd",this.c,this.s0,this.s1,this.s2].join(",")}},X.RandomDataGenerator.prototype.constructor=X.RandomDataGenerator,X.QuadTree=function(t,e,i,s,n,r,o){this.maxObjects=10,this.maxLevels=4,this.level=0,this.bounds={},this.objects=[],this.nodes=[],this._empty=[],this.reset(t,e,i,s,n,r,o)},X.QuadTree.prototype={reset:function(t,e,i,s,n,r,o){this.maxObjects=n||10,this.maxLevels=r||4,this.level=o||0,this.bounds={x:Math.round(t),y:Math.round(e),width:i,height:s,subWidth:Math.floor(i/2),subHeight:Math.floor(s/2),right:Math.round(t)+Math.floor(i/2),bottom:Math.round(e)+Math.floor(s/2)},this.objects.length=0,this.nodes.length=0},populate:function(t){t.forEach(this.populateHandler,this,!0)},populateHandler:function(t){t.body&&t.exists&&this.insert(t.body)},split:function(){this.nodes[0]=new X.QuadTree(this.bounds.right,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[1]=new X.QuadTree(this.bounds.x,this.bounds.y,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[2]=new X.QuadTree(this.bounds.x,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1),this.nodes[3]=new X.QuadTree(this.bounds.right,this.bounds.bottom,this.bounds.subWidth,this.bounds.subHeight,this.maxObjects,this.maxLevels,this.level+1)},insert:function(t){var e,i=0;if(null==this.nodes[0]||-1===(e=this.getIndex(t))){if(this.objects.push(t),this.objects.length>this.maxObjects&&this.levelthis.bounds.bottom&&(e=2):t.x>this.bounds.right&&(t.ythis.bounds.bottom&&(e=3)),e},retrieve:function(t){if(t instanceof X.Rectangle)var e=this.objects,i=this.getIndex(t);else{if(!t.body)return this._empty;e=this.objects,i=this.getIndex(t.body)}return this.nodes[0]&&(e=-1!==i?e.concat(this.nodes[i].retrieve(t)):(e=(e=(e=e.concat(this.nodes[0].retrieve(t))).concat(this.nodes[1].retrieve(t))).concat(this.nodes[2].retrieve(t))).concat(this.nodes[3].retrieve(t))),e},clear:function(){this.objects.length=0;for(var t=this.nodes.length;t--;)this.nodes[t].clear(),this.nodes.splice(t,1);this.nodes.length=0}},X.QuadTree.prototype.constructor=X.QuadTree,X.TweenManager=function(t){this.game=t,this._tweens=[],this._add=[],this.easeMap={Power0:X.Easing.Power0,Power1:X.Easing.Power1,Power2:X.Easing.Power2,Power3:X.Easing.Power3,Power4:X.Easing.Power4,Linear:X.Easing.Linear.None,Quad:X.Easing.Quadratic.Out,Cubic:X.Easing.Cubic.Out,Quart:X.Easing.Quartic.Out,Quint:X.Easing.Quintic.Out,Sine:X.Easing.Sinusoidal.Out,Expo:X.Easing.Exponential.Out,Circ:X.Easing.Circular.Out,Elastic:X.Easing.Elastic.Out,Back:X.Easing.Back.Out,Bounce:X.Easing.Bounce.Out,"Quad.easeIn":X.Easing.Quadratic.In,"Cubic.easeIn":X.Easing.Cubic.In,"Quart.easeIn":X.Easing.Quartic.In,"Quint.easeIn":X.Easing.Quintic.In,"Sine.easeIn":X.Easing.Sinusoidal.In,"Expo.easeIn":X.Easing.Exponential.In,"Circ.easeIn":X.Easing.Circular.In,"Elastic.easeIn":X.Easing.Elastic.In,"Back.easeIn":X.Easing.Back.In,"Bounce.easeIn":X.Easing.Bounce.In,"Quad.easeOut":X.Easing.Quadratic.Out,"Cubic.easeOut":X.Easing.Cubic.Out,"Quart.easeOut":X.Easing.Quartic.Out,"Quint.easeOut":X.Easing.Quintic.Out,"Sine.easeOut":X.Easing.Sinusoidal.Out,"Expo.easeOut":X.Easing.Exponential.Out,"Circ.easeOut":X.Easing.Circular.Out,"Elastic.easeOut":X.Easing.Elastic.Out,"Back.easeOut":X.Easing.Back.Out,"Bounce.easeOut":X.Easing.Bounce.Out,"Quad.easeInOut":X.Easing.Quadratic.InOut,"Cubic.easeInOut":X.Easing.Cubic.InOut,"Quart.easeInOut":X.Easing.Quartic.InOut,"Quint.easeInOut":X.Easing.Quintic.InOut,"Sine.easeInOut":X.Easing.Sinusoidal.InOut,"Expo.easeInOut":X.Easing.Exponential.InOut,"Circ.easeInOut":X.Easing.Circular.InOut,"Elastic.easeInOut":X.Easing.Elastic.InOut,"Back.easeInOut":X.Easing.Back.InOut,"Bounce.easeInOut":X.Easing.Bounce.InOut},this.game.onPause.add(this._pauseAll,this),this.game.onResume.add(this._resumeAll,this)},X.TweenManager.prototype={getAll:function(){return this._tweens},removeAll:function(){for(var t=0;tthis.timeline.length-1)&&(t=0),this.current=t,this.timeline[this.current].start(),this},stop:function(t){return void 0===t&&(t=!1),this.isRunning=!1,this._onUpdateCallback=null,this._onUpdateCallbackContext=null,t&&(this.onComplete.dispatch(this.target,this),this._hasStarted=!1,this.chainedTween&&this.chainedTween.start()),this.manager.remove(this),this},updateTweenData:function(t,e,i){if(0===this.timeline.length)return this;if(void 0===i&&(i=0),-1===i)for(var s=0;s=this.startTime))return X.TweenData.PENDING;this.isRunning=!0}var e=this.game.time.delta;for(var i in this.parent.reverse?(this.dt-=e*this.parent.timeScale,this.dt=Math.max(this.dt,0)):(this.dt+=e*this.parent.timeScale,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent),this.vEnd){var s=this.vStart[i],n=this.vEnd[i];Array.isArray(n)?this.parent.target[i]=this.interpolationFunction.call(this.interpolationContext,n,this.value):this.parent.target[i]=s+(n-s)*this.value}return!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent?this.repeat():X.TweenData.RUNNING},generateData:function(t){this.parent.reverse?this.dt=this.duration:this.dt=0;var e=[],i=!1,s=1/t*1e3;do{this.parent.reverse?(this.dt-=s,this.dt=Math.max(this.dt,0)):(this.dt+=s,this.dt=Math.min(this.dt,this.duration)),this.percent=this.dt/this.duration,this.value=this.easingFunction(this.percent);var n={};for(var r in this.vEnd){var o=this.vStart[r],a=this.vEnd[r];Array.isArray(a)?n[r]=this.interpolationFunction.call(this.interpolationContext,a,this.value):n[r]=o+(a-o)*this.value}e.push(n),(!this.parent.reverse&&1===this.percent||this.parent.reverse&&0===this.percent)&&(i=!0)}while(!i);if(this.yoyo){var h=e.slice();h.reverse(),e=e.concat(h)}return e},repeat:function(){if(this.yoyo){if(this.inReverse&&0===this.repeatCounter){for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];return this.inReverse=!1,X.TweenData.COMPLETE}this.inReverse=!this.inReverse}else if(0===this.repeatCounter)return X.TweenData.COMPLETE;if(this.inReverse)for(var t in this.vStartCache)this.vStart[t]=this.vEndCache[t],this.vEnd[t]=this.vStartCache[t];else{for(var t in this.vStartCache)this.vStart[t]=this.vStartCache[t],this.vEnd[t]=this.vEndCache[t];0=2*this._desiredFps&&(this.suggestedFps=5*Math.floor(200/(this._elapsedAccumulator/this._frameCount)),this._frameCount=0,this._elapsedAccumulator=0),this.msMin=Math.min(this.msMin,this.elapsed),this.msMax=Math.max(this.msMax,this.elapsed),this.frames++,this.now>this._timeLastSecond+1e3){var t=this.now-this._timeLastSecond;this.fps=Math.round(1e3*this.frames/t),this.ups=Math.round(1e3*this.updates/t),this.rps=Math.round(1e3*this.renders/t),this.fpsMin=Math.min(this.fpsMin,this.fps),this.fpsMax=Math.max(this.fpsMax,this.fps),this._timeLastSecond=this.now,this.frames=0,this.updates=0,this.renders=0}},preUpdate:function(t){t*=1e3,this.delta=t,this.deltaTotal+=t,this.game.paused||(this.events.update(this.deltaTotal),this.updateTimers()),this.advancedTiming&&this.updates++},preRender:function(){this.advancedTiming&&this.renders++},gamePaused:function(){this._pauseStarted=Date.now()},gameResumed:function(){this.time=Date.now(),this.pauseDuration=this.time-this._pauseStarted},totalElapsedSeconds:function(){return.001*(this.time-this._started)},elapsedSince:function(t){return this.time-t},elapsedSecondsSince:function(t){return.001*(this.time-t)},reset:function(){this._started=this.time,this.removeAll()}},Object.defineProperty(X.Time.prototype,"desiredFps",{get:function(){return this._desiredFps},set:function(t){this._desiredFps=t,this.desiredFpsMult=1/t}}),Object.defineProperty(X.Time.prototype,"desiredMinFps",{get:function(){return 1e3/this.deltaMax},set:function(t){this.deltaMax=1e3/t}}),X.Time.prototype.constructor=X.Time,X.Timer=function(t,e){void 0===e&&(e=!0),this.game=t,this.running=!1,this.autoDestroy=e,this.expired=!1,this.elapsed=0,this.events=[],this.onComplete=new X.Signal,this.nextTick=0,this.paused=!1,this._codePaused=!1,this._started=0,this._pauseStarted=0,this._pauseTotal=0,this._now=this.game.time?this.game.time.deltaTotal:0,this._len=0,this._marked=0,this._i=0,this._diff=0,this._newTick=0},X.Timer.MINUTE=6e4,X.Timer.SECOND=1e3,X.Timer.HALF=500,X.Timer.QUARTER=250,X.Timer.prototype={create:function(t,e,i,s,n,r){var o=(t=Math.round(t))+this._now,a=new X.TimerEvent(this,t,o,i,e,s,n,r);return this.events.push(a),this.order(),this.expired=!1,a},add:function(t,e,i){return this.create(t,!1,0,e,i,Array.prototype.slice.call(arguments,3))},repeat:function(t,e,i,s){return this.create(t,!1,e,i,s,Array.prototype.slice.call(arguments,4))},loop:function(t,e,i){return this.create(t,!0,0,e,i,Array.prototype.slice.call(arguments,3))},start:function(t){if(!this.running){this._started=this.game.time.deltaTotal+(t||0),this.running=!0;for(var e=0;ee.tick?1:0},clearPendingEvents:function(){for(this._i=this.events.length;this._i--;)this.events[this._i].pendingDelete&&this.events.splice(this._i,1);this._len=this.events.length,this._i=0},update:function(t){if(this.paused)return!0;if(this.elapsed=t-this._now,this._now=t,this._marked=0,this.clearPendingEvents(),this.running&&this._now>=this.nextTick&&0=e.tick)||e.pendingDelete)break;this._newTick=this._now+e.delay-(this._now-e.tick),this._newTick<0&&(this._newTick=this._now+e.delay),!0===e.loop?e.tick=this._newTick:0this._marked?this.order():(this.expired=!0,this.onComplete.dispatch(this))}return!this.expired||!this.autoDestroy},pause:function(){this.running&&(this._codePaused=!0,this.paused||(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0))},_pause:function(){!this.paused&&this.running&&(this._pauseStarted=this.game.time.deltaTotal,this.paused=!0)},adjustEvents:function(t){for(var e=0;ethis._now?this.nextTick-this._now:0}}),Object.defineProperty(X.Timer.prototype,"length",{get:function(){return this.events.length}}),Object.defineProperty(X.Timer.prototype,"ms",{get:function(){return this.running?this._now-this._started-this._pauseTotal:0}}),Object.defineProperty(X.Timer.prototype,"seconds",{get:function(){return this.running?.001*this.ms:0}}),X.Timer.prototype.constructor=X.Timer,X.TimerEvent=function(t,e,i,s,n,r,o,a){this.timer=t,this.delay=e,this.tick=i,this.repeatCount=s-1,this.loop=n,this.callback=r,this.callbackContext=o,this.args=a,this.pendingDelete=!1},X.TimerEvent.prototype.constructor=X.TimerEvent,X.AnimationManager=function(t){this.sprite=t,this.game=t.game,this.currentFrame=null,this.currentAnim=null,this.updateIfVisible=!0,this.isLoaded=!1,this._frameData=null,this._anims={},this._outputFrames=[]},X.AnimationManager.prototype={loadFrameData:function(t,e){if(void 0===t)return!1;if(this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(t);return this._frameData=t,null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},copyFrameData:function(t,e){if(this._frameData=t.clone(),this.isLoaded)for(var i in this._anims)this._anims[i].updateFrameData(this._frameData);return null==e?this.frame=0:"string"==typeof e?this.frameName=e:this.frame=e,this.isLoaded=!0},add:function(t,e,i,s,n){return e=e||[],i=i||60,void 0===s&&(s=!1),void 0===n&&(n=!(!e||"number"!=typeof e[0])),this._outputFrames=[],this._frameData.getFrameIndexes(e,n,this._outputFrames),this._anims[t]=new X.Animation(this.game,this.sprite,t,this._frameData,this._outputFrames,i,s),this.currentAnim=this._anims[t],this.sprite.tilingTexture&&(this.sprite.refreshTexture=!0),this._anims[t]},validateFrames:function(t,e){void 0===e&&(e=!0);for(var i=0;ithis._frameData.total)return!1}else if(!1===this._frameData.checkFrameName(t[i]))return!1;return!0},play:function(t,e,i,s){if(this._anims[t])return this.currentAnim===this._anims[t]?!1===this.currentAnim.isPlaying?(this.currentAnim.paused=!1,this.currentAnim.play(e,i,s)):this.currentAnim:(this.currentAnim&&this.currentAnim.isPlaying&&this.currentAnim.stop(),this.currentAnim=this._anims[t],this.currentAnim.paused=!1,this.currentFrame=this.currentAnim.currentFrame,this.currentAnim.play(e,i,s))},stop:function(t,e){void 0===e&&(e=!1),!this.currentAnim||"string"==typeof t&&t!==this.currentAnim.name||this.currentAnim.stop(e)},update:function(){return!(this.updateIfVisible&&!this.sprite.visible)&&(!(!this.currentAnim||!this.currentAnim.update())&&(this.currentFrame=this.currentAnim.currentFrame,!0))},next:function(t){this.currentAnim&&(this.currentAnim.next(t),this.currentFrame=this.currentAnim.currentFrame)},previous:function(t){this.currentAnim&&(this.currentAnim.previous(t),this.currentFrame=this.currentAnim.currentFrame)},getAnimation:function(t){return"string"==typeof t&&this._anims[t]?this._anims[t]:null},refreshFrame:function(){},destroy:function(){var t=null;for(var t in this._anims)this._anims.hasOwnProperty(t)&&this._anims[t].destroy();this._anims={},this._outputFrames=[],this._frameData=null,this.currentAnim=null,this.currentFrame=null,this.sprite=null,this.game=null}},X.AnimationManager.prototype.constructor=X.AnimationManager,Object.defineProperty(X.AnimationManager.prototype,"frameData",{get:function(){return this._frameData}}),Object.defineProperty(X.AnimationManager.prototype,"frameTotal",{get:function(){return this._frameData.total}}),Object.defineProperty(X.AnimationManager.prototype,"paused",{get:function(){return this.currentAnim.isPaused},set:function(t){this.currentAnim.paused=t}}),Object.defineProperty(X.AnimationManager.prototype,"name",{get:function(){return this.currentAnim?this.currentAnim.name:void 0}}),Object.defineProperty(X.AnimationManager.prototype,"frame",{get:function(){return this.currentFrame?this.currentFrame.index:void 0},set:function(t){var e;"number"==typeof t&&this._frameData&&(e=this._frameData.getFrame(t))&&(this.currentFrame=e,this.sprite.setFrame(this.currentFrame))}}),Object.defineProperty(X.AnimationManager.prototype,"frameName",{get:function(){return this.currentFrame?this.currentFrame.name:void 0},set:function(t){var e;"string"==typeof t&&this._frameData&&(e=this._frameData.getFrameByName(t))?(this.currentFrame=e,this._frameIndex=this.currentFrame.index,this.sprite.setFrame(this.currentFrame)):console.warn("Cannot set frameName: "+t)}}),X.Animation=function(t,e,i,s,n,r,o){void 0===o&&(o=!1),this.game=t,this._parent=e,this._frameData=s,this.name=i,this._frames=[],this._frames=this._frames.concat(n),this.delay=1e3/r,this.loop=o,this.loopCount=0,this.killOnComplete=!1,this.isFinished=!1,this.isPlaying=!1,this.isPaused=!1,this._pauseStartTime=0,this._frameIndex=0,this._frameDiff=0,this._frameSkip=1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.onStart=new X.Signal,this.onUpdate=null,this.onComplete=new X.Signal,this.onLoop=new X.Signal,this.isReversed=!1,this.game.onPause.add(this.onPause,this),this.game.onResume.add(this.onResume,this)},X.Animation.prototype={play:function(t,e,i){return"number"==typeof t&&(this.delay=1e3/t),"boolean"==typeof e&&(this.loop=e),void 0!==i&&(this.killOnComplete=i),this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=this.isReversed?this._frames.length-1:0,this.updateCurrentFrame(!1,!0),this._parent.events.onAnimationStart$dispatch(this._parent,this),this.onStart.dispatch(this._parent,this),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this},restart:function(){this.isPlaying=!0,this.isFinished=!1,this.paused=!1,this.loopCount=0,this._timeLastFrame=this.game.time.deltaTotal,this._timeNextFrame=this.game.time.deltaTotal+this.delay,this._frameIndex=0,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this._parent.setFrame(this.currentFrame),(this._parent.animations.currentAnim=this)._parent.animations.currentFrame=this.currentFrame,this.onStart.dispatch(this._parent,this)},reverse:function(){return this.reversed=!this.reversed,this},reverseOnce:function(){return this.onComplete.addOnce(this.reverse,this),this.reverse()},setFrame:function(t,e){var i;if(void 0===e&&(e=!1),"string"==typeof t)for(var s=0;sthis.delay&&(this._frameSkip=Math.floor(this._frameDiff/this.delay),this._frameDiff-=this._frameSkip*this.delay),this._timeNextFrame=t+(this.delay-this._frameDiff),this.isReversed?this._frameIndex-=this._frameSkip:this._frameIndex+=this._frameSkip,!this.isReversed&&this._frameIndex>=this._frames.length||this.isReversed&&this._frameIndex<=-1?this.loop?(this._frameIndex=Math.abs(this._frameIndex)%this._frames.length,this.isReversed&&(this._frameIndex=this._frames.length-1-this._frameIndex),this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&this._parent.setFrame(this.currentFrame),this.loopCount++,this._parent.events.onAnimationLoop$dispatch(this._parent,this),this.onLoop.dispatch(this._parent,this),!this.onUpdate||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)):(this.complete(),!1):this.updateCurrentFrame(!0))},updateCurrentFrame:function(t,e){if(void 0===e&&(e=!1),!this._frameData)return!1;var i=this.currentFrame.index;return this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.currentFrame&&(e||i!==this.currentFrame.index)&&this._parent.setFrame(this.currentFrame),!this.onUpdate||!t||(this.onUpdate.dispatch(this,this.currentFrame),!!this._frameData)},next:function(t){void 0===t&&(t=1);var e=this._frameIndex+t;e>=this._frames.length&&(this.loop?e%=this._frames.length:e=this._frames.length-1),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},previous:function(t){void 0===t&&(t=1);var e=this._frameIndex-t;e<0&&(this.loop?e=this._frames.length+e:e++),e!==this._frameIndex&&(this._frameIndex=e,this.updateCurrentFrame(!0))},updateFrameData:function(t){this._frameData=t,this.currentFrame=this._frameData?this._frameData.getFrame(this._frames[this._frameIndex%this._frames.length]):null},destroy:function(){this._frameData&&(this.game.onPause.remove(this.onPause,this),this.game.onResume.remove(this.onResume,this),this.game=null,this._parent=null,this._frames=null,this._frameData=null,this.currentFrame=null,this.isPlaying=!1,this.onStart.dispose(),this.onLoop.dispose(),this.onComplete.dispose(),this.onUpdate&&this.onUpdate.dispose())},complete:function(){this._frameIndex=this._frames.length-1,this.currentFrame=this._frameData.getFrame(this._frames[this._frameIndex]),this.updateCurrentFrame(!1),this.isPlaying=!1,this.isFinished=!0,this.paused=!1,this._parent.events.onAnimationComplete$dispatch(this._parent,this),this.onComplete.dispatch(this._parent,this),this.killOnComplete&&this._parent.kill()}},X.Animation.prototype.constructor=X.Animation,Object.defineProperty(X.Animation.prototype,"paused",{get:function(){return this.isPaused},set:function(t){(this.isPaused=t)?this._pauseStartTime=this.game.time.deltaTotal:this.isPlaying&&(this._timeNextFrame=this.game.time.deltaTotal+this.delay)}}),Object.defineProperty(X.Animation.prototype,"reversed",{get:function(){return this.isReversed},set:function(t){this.isReversed=t}}),Object.defineProperty(X.Animation.prototype,"frameTotal",{get:function(){return this._frames.length}}),Object.defineProperty(X.Animation.prototype,"frame",{get:function(){return null!==this.currentFrame?this.currentFrame.index:this._frameIndex},set:function(t){this.currentFrame=this._frameData.getFrame(this._frames[t]),null!==this.currentFrame&&(this._frameIndex=t,this._parent.setFrame(this.currentFrame),this.onUpdate&&this.onUpdate.dispatch(this,this.currentFrame))}}),Object.defineProperty(X.Animation.prototype,"speed",{get:function(){return 1e3/this.delay},set:function(t){0=this._frames.length&&(t=0),this._frames[t]},getFrameByName:function(t){return"number"==typeof this._frameNames[t]?this._frames[this._frameNames[t]]:null},checkFrameName:function(t){return null!=this._frameNames[t]},clone:function(){for(var t=new X.FrameData,e=0;e tag")}},X.Cache=function(t){this.game=t,this.autoResolveURL=!1,this._cache={canvas:{},image:{},texture:{},sound:{},video:{},text:{},json:{},xml:{},physics:{},tilemap:{},binary:{},bitmapData:{},bitmapFont:{},shader:{},renderTexture:{},compressedTexture:{},data:{}},this._urlMap={},this._urlResolver=new Image,this._urlTemp=null,this.onSoundUnlock=new X.Signal,this._cacheMap=[],this._cacheMap[X.Cache.CANVAS]=this._cache.canvas,this._cacheMap[X.Cache.IMAGE]=this._cache.image,this._cacheMap[X.Cache.TEXTURE]=this._cache.texture,this._cacheMap[X.Cache.SOUND]=this._cache.sound,this._cacheMap[X.Cache.TEXT]=this._cache.text,this._cacheMap[X.Cache.PHYSICS]=this._cache.physics,this._cacheMap[X.Cache.TILEMAP]=this._cache.tilemap,this._cacheMap[X.Cache.BINARY]=this._cache.binary,this._cacheMap[X.Cache.BITMAPDATA]=this._cache.bitmapData,this._cacheMap[X.Cache.BITMAPFONT]=this._cache.bitmapFont,this._cacheMap[X.Cache.JSON]=this._cache.json,this._cacheMap[X.Cache.XML]=this._cache.xml,this._cacheMap[X.Cache.VIDEO]=this._cache.video,this._cacheMap[X.Cache.SHADER]=this._cache.shader,this._cacheMap[X.Cache.RENDER_TEXTURE]=this._cache.renderTexture,this._cacheMap[X.Cache.DATA]=this._cache.data,this._pendingCount=0,this.onReady=new X.Signal,this._addImages()},X.Cache.CANVAS=1,X.Cache.IMAGE=2,X.Cache.TEXTURE=3,X.Cache.SOUND=4,X.Cache.TEXT=5,X.Cache.PHYSICS=6,X.Cache.TILEMAP=7,X.Cache.BINARY=8,X.Cache.BITMAPDATA=9,X.Cache.BITMAPFONT=10,X.Cache.JSON=11,X.Cache.XML=12,X.Cache.VIDEO=13,X.Cache.SHADER=14,X.Cache.RENDER_TEXTURE=15,X.Cache.DATA=16,X.Cache.DEFAULT=null,X.Cache.DEFAULT_KEY="__default",X.Cache.DEFAULT_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==",X.Cache.MISSING=null,X.Cache.MISSING_KEY="__missing",X.Cache.MISSING_SRC="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==",X.Cache.READY_TIMEOUT=1e3,X.Cache.prototype={addCompressedTextureMetaData:function(t,e,i,s){this.checkImageKey(t)&&this.removeImage(t);var n=i in X.LoaderParser?X.LoaderParser[i](s):s,r={key:t,url:e,data:n,base:new PIXI.BaseTexture(n,null,this.game.resolution),frame:new X.Frame(0,0,0,n.width,n.height,t),frameData:new X.FrameData,fileFormat:i};return r.frameData.addFrame(new X.Frame(0,0,0,n.width,n.height,e)),this._cache.image[t]=r,this._resolveURL(e,r),r},addCanvas:function(t,e,i){void 0===i&&(i=e.getContext("2d")),this._cache.canvas[t]={canvas:e,context:i}},addImage:function(t,e,i){this.checkImageKey(t)&&this.removeImage(t),!1===i.complete&&console.warn('Phaser.Cache.addImage: Image "%s" is not complete',t);var s={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution),frame:new X.Frame(0,0,0,i.width,i.height,t),frameData:new X.FrameData};return s.frameData.addFrame(new X.Frame(0,0,0,i.width,i.height,e)),this._cache.image[t]=s,this._resolveURL(e,s),"__default"===t?X.Cache.DEFAULT=new PIXI.Texture(s.base):"__missing"===t&&(X.Cache.MISSING=new PIXI.Texture(s.base)),s},addImageAsync:function(t,e,i){var s=this,n=new Image;n.onload=function(){i.call(this,s.addImage(t,null,n)),s._removePending(),n.onload=null},this._addPending(),n.src=e},addDefaultImage:function(){this.addImageAsync(X.Cache.DEFAULT_KEY,X.Cache.DEFAULT_SRC,function(t){t.base.skipRender=!0,X.Cache.DEFAULT=new PIXI.Texture(t.base)})},addMissingImage:function(){this.addImageAsync(X.Cache.MISSING_KEY,X.Cache.MISSING_SRC,function(t){X.Cache.MISSING=new PIXI.Texture(t.base)})},addSound:function(t,e,i,s,n){void 0===s&&(n=!(s=!0)),void 0===n&&(n=!(s=!1));var r=!1;n&&(r=!0),this._cache.sound[t]={url:e,data:i,isDecoding:!1,decoded:r,webAudio:s,audioTag:n,locked:this.game.sound.touchLocked},this._resolveURL(e,this._cache.sound[t])},addText:function(t,e,i){this._cache.text[t]={url:e,data:i},this._resolveURL(e,this._cache.text[t])},addPhysicsData:function(t,e,i,s){this._cache.physics[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.physics[t])},addTilemap:function(t,e,i,s){this._cache.tilemap[t]={url:e,data:i,format:s},this._resolveURL(e,this._cache.tilemap[t])},addBinary:function(t,e){this._cache.binary[t]=e},addBitmapData:function(t,e,i){return e.key=t,void 0===i&&(i=new X.FrameData).addFrame(e.textureFrame),this._cache.bitmapData[t]={data:e,frameData:i},e},addBitmapFont:function(t,e,i,s,n,r,o){var a={url:e,data:i,font:null,base:new PIXI.BaseTexture(i,null,this.game.resolution)};void 0===r&&(r=0),void 0===o&&(o=0),a.font="json"===n?X.LoaderParser.jsonBitmapFont(s,a.base,r,o,!1,this.game.resolution):X.LoaderParser.xmlBitmapFont(s,a.base,r,o,!1,this.game.resolution),this._cache.bitmapFont[t]=a,this._resolveURL(e,a)},addBitmapFontFromAtlas:function(t,e,i,s,n,r,o){var a=this.getFrameByName(e,i);if(a){var h,l={font:null,base:this.getBaseTexture(e),frame:a};void 0===r&&(r=0),void 0===o&&(o=0),"json"===n?(h=this.getJSON(s),l.font=X.LoaderParser.jsonBitmapFont(h,l.base,r,o,a,this.game.resolution)):(h=this.getXML(s),l.font=X.LoaderParser.xmlBitmapFont(h,l.base,r,o,a,this.game.resolution)),this._cache.bitmapFont[t]=l}},addJSON:function(t,e,i){this._cache.json[t]={url:e,data:i},this._resolveURL(e,this._cache.json[t])},addXML:function(t,e,i){this._cache.xml[t]={url:e,data:i},this._resolveURL(e,this._cache.xml[t])},addVideo:function(t,e,i,s){this._cache.video[t]={url:e,data:i,isBlob:s,locked:!0},this._resolveURL(e,this._cache.video[t])},addShader:function(t,e,i){this._cache.shader[t]={url:e,data:i},this._resolveURL(e,this._cache.shader[t])},addRenderTexture:function(t,e){this._cache.renderTexture[t]={texture:e,frame:new X.Frame(0,0,0,e.width,e.height,"","")}},addSpriteSheet:function(t,e,i,s,n,r,o,a,h){void 0===r&&(r=-1),void 0===o&&(o=0),void 0===a&&(a=0);var l={key:t,url:e,data:i,frameWidth:s,frameHeight:n,margin:o,spacing:a,base:new PIXI.BaseTexture(i,null,this.game.resolution),frameData:X.AnimationParser.spriteSheet(this.game,i,s,n,r,o,a,h)};this._cache.image[t]=l,this._resolveURL(e,l)},addTextureAtlas:function(t,e,i,s,n){var r={key:t,url:e,data:i,base:new PIXI.BaseTexture(i,null,this.game.resolution)};n===X.Loader.TEXTURE_ATLAS_XML_STARLING?r.frameData=X.AnimationParser.XMLData(this.game,s,t):n===X.Loader.TEXTURE_ATLAS_JSON_PYXEL?r.frameData=X.AnimationParser.JSONDataPyxel(this.game,s,t):Array.isArray(s.frames)?r.frameData=X.AnimationParser.JSONData(this.game,s,t):r.frameData=X.AnimationParser.JSONDataHash(this.game,s,t),this._cache.image[t]=r,this._resolveURL(e,r)},addData:function(t,e){this._cache.data[t]=e},reloadSound:function(t){var e=this,i=this.getSound(t);i&&(i.data.src=i.url,i.data.addEventListener("canplaythrough",function(){return e.reloadSoundComplete(t)},!1),i.data.load())},reloadSoundComplete:function(t){var e=this.getSound(t);e&&(e.locked=!1,this.onSoundUnlock.dispatch(t))},updateSound:function(t,e,i){var s=this.getSound(t);s&&(s[e]=i)},decodedSound:function(t,e){var i=this.getSound(t);i.data=e,i.decoded=!0,i.isDecoding=!1},isSoundDecoded:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded},isSoundReady:function(t){var e=this.getItem(t,X.Cache.SOUND,"isSoundDecoded");if(e)return e.decoded&&!this.game.sound.touchLocked},checkKey:function(t,e){return!!this._cacheMap[t][e]},checkURL:function(t){return!!this._urlMap[this._resolveURL(t)]},checkCanvasKey:function(t){return this.checkKey(X.Cache.CANVAS,t)},checkDataKey:function(t){return this.checkKey(X.Cache.DATA,t)},checkImageKey:function(t){return this.checkKey(X.Cache.IMAGE,t)},checkTextureKey:function(t){return this.checkKey(X.Cache.TEXTURE,t)},checkSoundKey:function(t){return this.checkKey(X.Cache.SOUND,t)},checkTextKey:function(t){return this.checkKey(X.Cache.TEXT,t)},checkPhysicsKey:function(t){return this.checkKey(X.Cache.PHYSICS,t)},checkTilemapKey:function(t){return this.checkKey(X.Cache.TILEMAP,t)},checkBinaryKey:function(t){return this.checkKey(X.Cache.BINARY,t)},checkBitmapDataKey:function(t){return this.checkKey(X.Cache.BITMAPDATA,t)},checkBitmapFontKey:function(t){return this.checkKey(X.Cache.BITMAPFONT,t)},checkJSONKey:function(t){return this.checkKey(X.Cache.JSON,t)},checkXMLKey:function(t){return this.checkKey(X.Cache.XML,t)},checkVideoKey:function(t){return this.checkKey(X.Cache.VIDEO,t)},checkShaderKey:function(t){return this.checkKey(X.Cache.SHADER,t)},checkRenderTextureKey:function(t){return this.checkKey(X.Cache.RENDER_TEXTURE,t)},getItem:function(t,e,i,s){return this.checkKey(e,t)?void 0===s?this._cacheMap[e][t]:this._cacheMap[e][t][s]:(i&&console.warn("Phaser.Cache."+i+': Key "'+t+'" not found in Cache.'),null)},getCanvas:function(t){return this.getItem(t,X.Cache.CANVAS,"getCanvas","canvas")},getImage:function(t,e){null==t&&(t="__default"),void 0===e&&(e=!1);var i=this.getItem(t,X.Cache.IMAGE,"getImage");return null===i&&(i=this.getItem("__missing",X.Cache.IMAGE,"getImage")),e?i:i.data},getTextureFrame:function(t){return this.getItem(t,X.Cache.TEXTURE,"getTextureFrame","frame")},getSound:function(t){return this.getItem(t,X.Cache.SOUND,"getSound")},getSoundData:function(t){return this.getItem(t,X.Cache.SOUND,"getSoundData","data")},getText:function(t){return this.getItem(t,X.Cache.TEXT,"getText","data")},getPhysicsData:function(t,e,i){var s=this.getItem(t,X.Cache.PHYSICS,"getPhysicsData","data");if(null===s||null==e)return s;if(s[e]){var n=s[e];if(!n||!i)return n;for(var r in n)if((r=n[r]).fixtureKey===i)return r;console.warn('Phaser.Cache.getPhysicsData: Could not find given fixtureKey: "'+i+" in "+t+'"')}else console.warn('Phaser.Cache.getPhysicsData: Invalid key/object: "'+t+" / "+e+'"');return null},getTilemapData:function(t){return this.getItem(t,X.Cache.TILEMAP,"getTilemapData")},getBinary:function(t){return this.getItem(t,X.Cache.BINARY,"getBinary")},getBitmapData:function(t){return this.getItem(t,X.Cache.BITMAPDATA,"getBitmapData","data")},getBitmapFont:function(t){return this.getItem(t,X.Cache.BITMAPFONT,"getBitmapFont")},getJSON:function(t,e){var i=this.getItem(t,X.Cache.JSON,"getJSON","data");return i?e?X.Utils.extend(!0,Array.isArray(i)?[]:{},i):i:null},getXML:function(t){return this.getItem(t,X.Cache.XML,"getXML","data")},getVideo:function(t){return this.getItem(t,X.Cache.VIDEO,"getVideo")},getShader:function(t){return this.getItem(t,X.Cache.SHADER,"getShader","data")},getRenderTexture:function(t){return this.getItem(t,X.Cache.RENDER_TEXTURE,"getRenderTexture")},getData:function(t){return this.getItem(t,X.Cache.DATA,"getData")},getBaseTexture:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getBaseTexture","base")},getFrame:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrame","frame")},getFrameCount:function(t,e){var i=this.getFrameData(t,e);return i?i.total:0},getFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),this.getItem(t,e,"getFrameData","frameData")},hasFrameData:function(t,e){return void 0===e&&(e=X.Cache.IMAGE),null!==this.getItem(t,e,"","frameData")},updateFrameData:function(t,e,i){void 0===i&&(i=X.Cache.IMAGE),this._cacheMap[i][t]&&(this._cacheMap[i][t].frameData=e)},getFrameByIndex:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrame(e):null},getFrameByName:function(t,e,i){var s=this.getFrameData(t,i);return s?s.getFrameByName(e):null},getURL:function(t){return(t=this._resolveURL(t))?this._urlMap[t]:(console.warn('Phaser.Cache.getUrl: Invalid url: "'+t+'" or Cache.autoResolveURL was false'),null)},getKeys:function(t){void 0===t&&(t=X.Cache.IMAGE);var e=[];if(this._cacheMap[t])for(var i in this._cacheMap[t])"__default"!==i&&"__missing"!==i&&e.push(i);return e},removeCanvas:function(t){delete this._cache.canvas[t]},removeImage:function(t,e){void 0===e&&(e=!0);var i=this.getImage(t,!0);e&&i.base&&i.base.destroy(),delete this._cache.image[t]},removeSound:function(t){delete this._cache.sound[t]},removeText:function(t){delete this._cache.text[t]},removePhysics:function(t){delete this._cache.physics[t]},removeTilemap:function(t){delete this._cache.tilemap[t]},removeBinary:function(t){delete this._cache.binary[t]},removeBitmapData:function(t){delete this._cache.bitmapData[t]},removeBitmapFont:function(t){delete this._cache.bitmapFont[t]},removeJSON:function(t){delete this._cache.json[t]},removeXML:function(t){delete this._cache.xml[t]},removeVideo:function(t){delete this._cache.video[t]},removeShader:function(t){delete this._cache.shader[t]},removeRenderTexture:function(t){delete this._cache.renderTexture[t]},removeSpriteSheet:function(t){delete this._cache.spriteSheet[t]},removeTextureAtlas:function(t){delete this._cache.image[t]},removeData:function(t){delete this._cache.data[t]},clearGLTextures:function(){for(var t in this._cache.image)this._cache.image[t].base._glTextures=[]},_resolveURL:function(t,e){return this.autoResolveURL?(this._urlResolver.src=this.game.load.baseURL+t,this._urlTemp=this._urlResolver.src,this._urlResolver.src="",e&&(this._urlMap[this._urlTemp]=e),this._urlTemp):null},destroy:function(){for(var t=0;t=i||e&&this._loadedPackCount===this._totalPackCount)break}if(this.updateProgress(),this._processingHead>=this._fileList.length)this.finishedLoading();else if(!this._flightQueue.length){console.warn("Phaser.Loader - aborting: processing queue empty, loading may have stalled");var n=this;setTimeout(function(){n.finishedLoading(!0)},2e3)}}},finishedLoading:function(t){!this.hasLoaded&&this.game.state&&(this.hasLoaded=!0,this.isLoading=!1,t||this._fileLoadStarted||(this._fileLoadStarted=!0,this.onLoadStart.dispatch()),this.game.state.loadUpdate(),this.onBeforeLoadComplete.dispatch(),this.reset(),this.onLoadComplete.dispatch(),this.game.state.loadComplete())},asyncComplete:function(t,e){void 0===e&&(e=""),t.loaded=!0,t.error=!!e,e&&(t.errorMessage=e,console.warn("Phaser.Loader - "+t.type+"["+t.key+"]: "+e)),this.processLoadQueue()},processPack:function(t){var e=t.data[t.key];if(e)for(var i=0;in.spriteSourceSizeX+n.spriteSourceSizeW&&(f.width-=f.x+f.width-n.spriteSourceSizeX-n.spriteSourceSizeW),f.y+f.height>n.spriteSourceSizeY+n.spriteSourceSizeH&&(f.height-=f.y+f.height-n.spriteSourceSizeY-n.spriteSourceSizeH),f.xr.spriteSourceSizeX+r.spriteSourceSizeW&&(i.width-=i.x+i.width-r.spriteSourceSizeX-r.spriteSourceSizeW),i.y+i.height>r.spriteSourceSizeY+r.spriteSourceSizeH&&(i.height-=i.y+i.height-r.spriteSourceSizeY-r.spriteSourceSizeH),i.x((this.paused?this._tempPause:0)||this.position||0)))return;this._pendingStart=!1,this.startTime=t-1e3*e,this.stopTime=this.startTime+this.durationMS}this.currentTime=t-this.startTime,this.currentTime>=this.durationMS&&(this.usingWebAudio?this.loop?(this.onLoop.dispatch(this),this.isPlaying=!1,""===this.currentMarker?(this.currentTime=0,this.startTime=t,this.isPlaying=!0):(this.onMarkerComplete.dispatch(this.currentMarker,this),this.play(this.currentMarker,0,this.volume,!0,!0,!1))):""!==this.currentMarker&&this.stop():this.loop?(this.onLoop.dispatch(this),""===this.currentMarker&&(this.currentTime=0,this.startTime=t),this.isPlaying=!1,this.play(this.currentMarker,0,this.volume,!0,!0,!1)):this.stop())}}else this.destroy()},loopFull:function(t){return this.play(null,0,t,!0)},play:function(t,e,i,s,n,r){if(void 0!==t&&!1!==t&&null!==t||(t=""),void 0===n&&(n=!0),void 0===r&&(r=!0),this.isPlaying&&!this.allowMultiple&&!n&&!this.override)return this;if(this._sound&&this.isPlaying&&!this.allowMultiple&&(this.override||n)&&(this.usingWebAudio?this._stopSourceAndDisconnect():this.usingAudioTag&&(this._sound.pause(),this._sound.currentTime=0),this.isPlaying=!1),""===t&&0')},setTouchLock:function(){this.noAudio||window.PhaserGlobal&&!0===window.PhaserGlobal.disableAudio||(this.game.input.addTouchLockCallback(this.unlock,this,!0),this.touchLocked=!0)},setTouchUnlock:function(){this.touchLocked=!1,this._unlockSource=null,this.onTouchUnlock.dispatch()},webAudioIsSuspended:function(){return this.usingWebAudio&&"suspended"===this.context.state},resumeWebAudio:function(){if(this.usingWebAudio)return this.context.resume()},resumeWebAudioIfSuspended:function(){if(this.webAudioIsSuspended())return this.context.resume()},unlock:function(){if(this.noAudio||!this.touchLocked||null!==this._unlockSource)return!0;if(this.usingAudioTag)this.setTouchUnlock();else if(this.usingWebAudio){var t=this.context.createBuffer(1,1,22050);this._unlockSource=this.context.createBufferSource(),this._unlockSource.buffer=t,this._unlockSource.connect(this.context.destination);var e=this;this._unlockSource.onended=function(){e.setTouchUnlock(),e.resumeWebAudioIfSuspended()},void 0===this._unlockSource.start?this._unlockSource.noteOn(0):this._unlockSource.start(0),this.resumeWebAudioIfSuspended()}return!0},stopAll:function(){if(!this.noAudio)for(var t=0;tthis.width}}),Object.defineProperty(X.ScaleManager.prototype,"isGameLandscape",{get:function(){return this.width>this.height}}),X.Utils.Debug=function(t){this.game=t,this.sprite=null,this.bmd=null,this.canvas=null,this.context=null,this.font="14px monospace",this.columnWidth=100,this.lineHeight=16,this.lineWidth=1,this.renderShadow=!0,this.currentColor=null,this.currentX=0,this.currentY=0,this.currentAlpha=1,this.dirty=!1,this.isDisabled=!1,this._line=null,this._rect=null},X.Utils.Debug.GEOM_AUTO=0,X.Utils.Debug.GEOM_RECTANGLE=1,X.Utils.Debug.GEOM_CIRCLE=2,X.Utils.Debug.GEOM_POINT=3,X.Utils.Debug.GEOM_LINE=4,X.Utils.Debug.GEOM_ELLIPSE=5,X.Utils.Debug.prototype={boot:function(){this.game.renderType===X.CANVAS?this.context=this.game.context:(this.bmd=new X.BitmapData(this.game,"__DEBUG",this.game.width,this.game.height,!0),this.sprite=this.game.make.image(0,0,this.bmd),this.sprite.anchor.set(0,0),this.game.stage.addChild(this.sprite),this.game.scale.onSizeChange.add(this.resize,this),this.canvas=X.CanvasPool.create(this,this.game.width,this.game.height),this.context=this.canvas.getContext("2d")),this._line=new X.Line,this._rect=new X.Rectangle},resize:function(){this.bmd.resize(this.game.width,this.game.height),this.canvas.width=this.game.width,this.canvas.height=this.game.height},preUpdate:function(){this.dirty&&this.sprite&&(this.bmd.clear(),this.bmd.draw(this.canvas,0,0),this.context.clearRect(0,0,this.game.width,this.game.height),this.dirty=!1)},reset:function(){this.context&&this.context.clearRect(0,0,this.game.width,this.game.height),this.sprite&&this.bmd.clear()},start:function(t,e,i,s){"number"!=typeof t&&(t=0),"number"!=typeof e&&(e=0),i=i||"rgb(255,255,255)",void 0===s&&(s=0),this.currentX=t,this.currentY=e,this.currentColor=i,this.columnWidth=s,this.dirty=!0,this.context.save(),this.context.setTransform(1,0,0,1,0,0),this.context.strokeStyle=i,this.context.fillStyle=i,this.context.font=this.font,this.context.globalAlpha=this.currentAlpha},stop:function(){this.context.restore()},line:function(){for(var t=this.currentX,e=0;e ")+o):o===s._pendingState?this.line("+ "+o):this.line(" "+o)}this.stop()},sound:function(t,e,i){var s=this.game.sound;this.start(t,e,i),s.noAudio?this.line("Audio is disabled"):(this.line("Volume: "+s.volume.toFixed(2)+(s.mute?" (Mute)":"")),this.line("Mute on pause: "+s.muteOnPause),this.line("Using: "+(s.usingWebAudio?"Web Audio - "+s.context.state:"Audio Tag")),this.line("Touch locked: "+s.touchLocked),this.line("Sounds: "+s._sounds.length)),this.stop()},soundInfo:function(t,e,i,s){if(this.start(e,i,s),this.line("Sound: "+t.key+" Touch locked: "+t.game.sound.touchLocked),this.line("Is Ready?: "+this.game.cache.isSoundReady(t.key)+" Pending Playback: "+t.pendingPlayback),this.line("Decoded: "+t.isDecoded+" Decoding: "+t.isDecoding),this.line("Playing: "+t.isPlaying+" Loop: "+t.loop),this.line("Time: "+(t.currentTime/1e3).toFixed(3)+"s Total: "+t.totalDuration.toFixed(3)+"s"),this.line("Volume: "+t.volume.toFixed(2)+(t.mute?" (Mute)":"")),this.line("Using: "+(t.usingWebAudio?"Web Audio":"Audio Tag")),t.usingWebAudio&&this.line(" Source: "+(t.sourceId||"none")),t.usingAudioTag&&t._sound){var n=t._sound;this.line(" currentSrc: "+n.currentSrc),this.line(" currentTime: "+n.currentTime),this.line(" duration: "+n.duration),this.line(" ended: "+n.ended),this.line(" loop: "+n.loop),this.line(" muted: "+n.muted),this.line(" paused: "+n.paused)}""!==t.currentMarker&&(this.line("Marker: "+t.currentMarker+" Duration: "+t.duration.toFixed(3)+"s ("+t.durationMS+"ms)"),this.line("Start: "+t.markers[t.currentMarker].start.toFixed(3)+" Stop: "+t.markers[t.currentMarker].stop.toFixed(3)),this.line("Position: "+t.position.toFixed(3))),this.stop()},camera:function(t,e,i){var s=t.deadzone,n=t.target,r=t.view;s&&(this._rect.setTo(r.x+s.x,r.y+s.y,s.width,s.height),this.rectangle(this._rect,e,i)),n&&(this._line.setTo(r.centerX,r.centerY,n.x,n.y),this.geom(this._line,e,i),this.geom(n,e,!1,3))},cameraInfo:function(t,e,i,s){var n=t.bounds,r=t.deadzone,o=t.target,a=t.view;this.start(e,i,s),this.line("Camera ("+t.width+" x "+t.height+")"),this.line("x: "+t.x+" y: "+t.y),this.line("Bounds: "+(n?"x: "+n.x+" y: "+n.y+" w: "+n.width+" h: "+n.height:"none")),this.line("View: x: "+a.x+" y: "+a.y+" w: "+a.width+" h: "+a.height),this.line("Center: x: "+t.centerX+" y: "+t.centerY),this.line("Deadzone: "+(r?"x: "+r.x+" y: "+r.y+" w: "+r.width+" h: "+r.height:r)),this.line("Total in view: "+t.totalInView),this.line("At limit: x: "+t.atLimit.x+" y: "+t.atLimit.y),this.line("Target: "+(o?o.name||o:"none")),this.stop()},timer:function(t,e,i,s){this.start(e,i,s),this.line("Timer (running: "+t.running+" expired: "+t.expired+")"),this.line("Next Tick: "+t.next+" Duration: "+t.duration),this.line("Paused: "+t.paused+" Length: "+t.length),this.stop()},pointer:function(t,e,i,s,n,r){if(null!=t&&(void 0===e&&(e=!1),i=i||"rgba(0,255,0,0.5)",s=s||"rgba(255,255,0,0.5)",r=r||"rgba(255,0,0,0.5)",!0!==e||!0!==t.isUp)){this.start(t.x,t.y-150,n),this.context.beginPath(),this.context.arc(t.x,t.y,t.circle.radius,0,2*Math.PI),t.active?this.context.fillStyle=t.isDown?i:s:this.context.fillStyle=r,this.context.fill(),this.context.closePath(),this.context.beginPath(),this.context.moveTo(t.positionDown.x,t.positionDown.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath();var o=t.movementX,a=t.movementY;(o||a)&&(this.context.beginPath(),this.context.moveTo(o+t.position.x,a+t.position.y),this.context.lineTo(t.position.x,t.position.y),this.context.lineWidth=2,this.context.stroke(),this.context.closePath()),this.line("ID: "+t.id+" Active: "+t.active),this.line("World X: "+t.worldX.toFixed(1)+" World Y: "+t.worldY.toFixed(1)),this.line("Screen X: "+t.x.toFixed(1)+" Screen Y: "+t.y.toFixed(1)+" In: "+t.withinGame),this.line("Movement: X: "+o+" Y: "+a),this.line("Duration: "+t.duration+" ms"),this.line("is Down: "+t.isDown+" is Up: "+t.isUp),this.line("Identifier: "+t.identifier+" Pointer ID: "+t.pointerId),t.isMouse&&this.line("Buttons: "+this._pointerButtonIcon(t.leftButton)+" "+this._pointerButtonIcon(t.middleButton)+" "+this._pointerButtonIcon(t.rightButton)),this.stop()}},_pointerButtonIcon:function(t){return t.isDown?"x":t.isUp?"o":"-"},spriteInputInfo:function(t,e,i,s){this.start(e,i,s),this.line("Sprite Input: ("+t.width+" x "+t.height+")"),this.line("x: "+t.input.pointerX().toFixed(1)+" y: "+t.input.pointerY().toFixed(1)),this.line("over: "+t.input.pointerOver()+" duration: "+t.input.overDuration().toFixed(0)),this.line("down: "+t.input.pointerDown()+" duration: "+t.input.downDuration().toFixed(0)),this.line("just over: "+t.input.justOver()+" just out: "+t.input.justOut()),this.stop()},key:function(t,e,i,s){this.start(e,i,s,150),this.line("Key:",t.keyCode,"isDown:",t.isDown),this.line("justDown:",t.justDown,"justUp:",t.justUp),this.line("Time Down:",t.timeDown.toFixed(0),"duration:",t.duration.toFixed(0)),this.stop()},inputInfo:function(t,e,i,s){var n=this.game.input;if(void 0===s&&(s=!0),this.start(t,e,i),this.line("Input"),this.line("X: "+n.x+" Y: "+n.y),this.line("World X: "+n.worldX+" World Y: "+n.worldY),this.line("Scale X: "+n.scale.x.toFixed(2)+" Scale Y: "+n.scale.x.toFixed(2)),this.line("Screen X: "+n.activePointer.screenX.toFixed(1)+" Screen Y: "+n.activePointer.screenY.toFixed(1)),s){this.line("Sources:"),this.line(" "+this._inputHandler(n.mouse,"mouse")),this.line(" "+this._inputHandler(n.mspointer,"mspointer")),this.line(" "+this._inputHandler(n.touch,"touch"));var r=n.pointers,o=n.mousePointer,a=X.PointerModes,h=0,l=0;this.line("Pointers:"),this.line(" "+(o.isDown?"x":"o")+" "+a[o.pointerMode]+" "+o.identifier);for(var c=0;ce.width?s:n;if("viewport"===t)return this.visualBounds.height>this.visualBounds.width?s:n;if("window.orientation"===t&&"number"==typeof window.orientation)return 0===window.orientation||180===window.orientation?s:n;if(window.matchMedia){if(window.matchMedia("(orientation: portrait)").matches)return s;if(window.matchMedia("(orientation: landscape)").matches)return n}return this.visualBounds.height>this.visualBounds.width?s:n},visualBounds:new X.Rectangle,layoutBounds:new X.Rectangle,documentBounds:new X.Rectangle},X.Device.whenReady(function(t){var e=window&&"pageXOffset"in window?function(){return window.pageXOffset}:function(){return document.documentElement.scrollLeft},i=window&&"pageYOffset"in window?function(){return window.pageYOffset}:function(){return document.documentElement.scrollTop};if(Object.defineProperty(X.DOM,"scrollX",{get:e}),Object.defineProperty(X.DOM,"scrollY",{get:i}),Object.defineProperty(X.DOM.visualBounds,"x",{get:e}),Object.defineProperty(X.DOM.visualBounds,"y",{get:i}),Object.defineProperty(X.DOM.layoutBounds,"x",{value:0}),Object.defineProperty(X.DOM.layoutBounds,"y",{value:0}),t.desktop&&document.documentElement.clientWidth<=window.innerWidth&&document.documentElement.clientHeight<=window.innerHeight){var s=function(){return Math.max(window.innerWidth,document.documentElement.clientWidth)},n=function(){return Math.max(window.innerHeight,document.documentElement.clientHeight)};Object.defineProperty(X.DOM.visualBounds,"width",{get:s}),Object.defineProperty(X.DOM.visualBounds,"height",{get:n}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:s}),Object.defineProperty(X.DOM.layoutBounds,"height",{get:n})}else Object.defineProperty(X.DOM.visualBounds,"width",{get:function(){return window.innerWidth}}),Object.defineProperty(X.DOM.visualBounds,"height",{get:function(){return window.innerHeight}}),Object.defineProperty(X.DOM.layoutBounds,"width",{get:function(){var t=document.documentElement.clientWidth,e=window.innerWidth;return t>>0:(t<<24|e<<16|i<<8|s)>>>0},unpackPixel:function(t,e,i,s){return null==e&&(e=X.Color.createColor()),null==i&&(i=!1),null==s&&(s=!1),X.Device.LITTLE_ENDIAN?(e.a=(4278190080&t)>>>24,e.b=(16711680&t)>>>16,e.g=(65280&t)>>>8,e.r=255&t):(e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t),e.color=t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a/255+")",i&&X.Color.RGBtoHSL(e.r,e.g,e.b,e),s&&X.Color.RGBtoHSV(e.r,e.g,e.b,e),e},fromRGBA:function(t,e){return e||(e=X.Color.createColor()),e.r=(4278190080&t)>>>24,e.g=(16711680&t)>>>16,e.b=(65280&t)>>>8,e.a=255&t,e.rgba="rgba("+e.r+","+e.g+","+e.b+","+e.a+")",e},toRGBA:function(t,e,i,s){return t<<24|e<<16|i<<8|s},toABGR:function(t,e,i,s){return(s<<24|i<<16|e<<8|t)>>>0},hexToRGBArray:function(t){return[(t>>16&255)/255,(t>>8&255)/255,(255&t)/255]},RGBArrayToHex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+255*t[2]},RGBtoHSL:function(t,e,i,s){s||(s=X.Color.createColor(t,e,i,1)),t/=255,e/=255,i/=255;var n=Math.min(t,e,i),r=Math.max(t,e,i);if(s.h=0,s.s=0,s.l=(r+n)/2,r!==n){var o=r-n;s.s=.5p.h){var g=p.h;p.h=d.h,d.h=g,f=-f,s=i-s}.5>>24,red:t>>16&255,green:t>>8&255,blue:255&t,a:t>>>24,r:t>>16&255,g:t>>8&255,b:255&t}:{alpha:255,red:t>>16&255,green:t>>8&255,blue:255&t,a:255,r:t>>16&255,g:t>>8&255,b:255&t}},getWebRGB:function(t){if("object"==typeof t)return"rgba("+t.r.toString()+","+t.g.toString()+","+t.b.toString()+","+(t.a/255).toString()+")";var e=X.Color.getRGB(t);return"rgba("+e.r.toString()+","+e.g.toString()+","+e.b.toString()+","+(e.a/255).toString()+")"},getAlpha:function(t){return t>>>24},getAlphaFloat:function(t){return(t>>>24)/255},getRed:function(t){return t>>16&255},getGreen:function(t){return t>>8&255},getBlue:function(t){return 255&t},blendNormal:function(t){return t},blendLighten:function(t,e){return t>8)},blendExclusion:function(t,e){return t+e-2*t*e/255},blendOverlay:function(t,e){return e<128?2*t*e/255:255-2*(255-t)*(255-e)/255},blendSoftLight:function(t,e){return e<128?2*(64+(t>>1))*(e/255):255-2*(255-(64+(t>>1)))*(255-e)/255},blendHardLight:function(t,e){return X.Color.blendOverlay(e,t)},blendColorDodge:function(t,e){return 255===e?e:Math.min(255,(t<<8)/(255-e))},blendColorBurn:function(t,e){return 0===e?e:Math.max(0,255-(255-t<<8)/e)},blendLinearDodge:function(t,e){return X.Color.blendAdd(t,e)},blendLinearBurn:function(t,e){return X.Color.blendSubtract(t,e)},blendLinearLight:function(t,e){return e<128?X.Color.blendLinearBurn(t,2*e):X.Color.blendLinearDodge(t,2*(e-128))},blendVividLight:function(t,e){return e<128?X.Color.blendColorBurn(t,2*e):X.Color.blendColorDodge(t,2*(e-128))},blendPinLight:function(t,e){return e<128?X.Color.blendDarken(t,2*e):X.Color.blendLighten(t,2*(e-128))},blendHardMix:function(t,e){return X.Color.blendVividLight(t,e)<128?0:255},blendReflect:function(t,e){return 255===e?e:Math.min(255,t*t/(255-e))},blendGlow:function(t,e){return X.Color.blendReflect(e,t)},blendPhoenix:function(t,e){return Math.min(t,e)-Math.max(t,e)+255}},X.Physics=function(t,e){e=e||{},this.game=t,this.config=e,this.arcade=null,this.p2=null,this.ninja=null,this.box2d=null,this.chipmunk=null,this.matter=null,this.parseConfig()},X.Physics.ARCADE=0,X.Physics.P2JS=1,X.Physics.NINJA=2,X.Physics.BOX2D=3,X.Physics.CHIPMUNK=4,X.Physics.MATTERJS=5,X.Physics.prototype={parseConfig:function(){this.config.hasOwnProperty("arcade")&&!0!==this.config.arcade||!X.Physics.hasOwnProperty("Arcade")||(this.arcade=new X.Physics.Arcade(this.game)),this.config.hasOwnProperty("ninja")&&!0===this.config.ninja&&X.Physics.hasOwnProperty("Ninja")&&(this.ninja=new X.Physics.Ninja(this.game)),this.config.hasOwnProperty("p2")&&!0===this.config.p2&&X.Physics.hasOwnProperty("P2")&&(this.p2=new X.Physics.P2(this.game,this.config)),this.config.hasOwnProperty("box2d")&&!0===this.config.box2d&&X.Physics.hasOwnProperty("BOX2D")&&(this.box2d=new X.Physics.Box2D(this.game,this.config)),this.config.hasOwnProperty("matter")&&!0===this.config.matter&&X.Physics.hasOwnProperty("Matter")&&(this.matter=new X.Physics.Matter(this.game,this.config))},startSystem:function(t){t===X.Physics.ARCADE?this.arcade=new X.Physics.Arcade(this.game):t===X.Physics.P2JS?null===this.p2?this.p2=new X.Physics.P2(this.game,this.config):this.p2.reset():t===X.Physics.NINJA?this.ninja=new X.Physics.Ninja(this.game):t===X.Physics.BOX2D?null===this.box2d?this.box2d=new X.Physics.Box2D(this.game,this.config):this.box2d.reset():t===X.Physics.MATTERJS&&(null===this.matter?this.matter=new X.Physics.Matter(this.game,this.config):this.matter.reset())},enable:function(t,e,i){void 0===e&&(e=X.Physics.ARCADE),void 0===i&&(i=!1),e===X.Physics.ARCADE?this.arcade.enable(t):e===X.Physics.P2JS&&this.p2?this.p2.enable(t,i):e===X.Physics.NINJA&&this.ninja?this.ninja.enableAABB(t):e===X.Physics.BOX2D&&this.box2d?this.box2d.enable(t):e===X.Physics.MATTERJS&&this.matter?this.matter.enable(t):console.warn(t.key+" is attempting to enable a physics body using an unknown physics system.")},preUpdate:function(){this.p2&&this.p2.preUpdate(),this.box2d&&this.box2d.preUpdate(),this.matter&&this.matter.preUpdate()},update:function(){this.p2&&this.p2.update(),this.box2d&&this.box2d.update(),this.matter&&this.matter.update()},setBoundsToWorld:function(){this.arcade&&this.arcade.setBoundsToWorld(),this.ninja&&this.ninja.setBoundsToWorld(),this.p2&&this.p2.setBoundsToWorld(),this.box2d&&this.box2d.setBoundsToWorld(),this.matter&&this.matter.setBoundsToWorld()},clear:function(){this.p2&&this.p2.clear(),this.box2d&&this.box2d.clear(),this.matter&&this.matter.clear()},reset:function(){this.p2&&this.p2.reset(),this.box2d&&this.box2d.reset(),this.matter&&this.matter.reset()},destroy:function(){this.p2&&this.p2.destroy(),this.box2d&&this.box2d.destroy(),this.matter&&this.matter.destroy(),this.arcade=null,this.ninja=null,this.p2=null,this.box2d=null,this.matter=null}},X.Physics.prototype.constructor=X.Physics,X.Physics.Arcade=function(t){this.game=t,this.gravity=new X.Point,this.bounds=new X.Rectangle(0,0,t.world.width,t.world.height),this.checkCollision={up:!0,down:!0,left:!0,right:!0},this.maxObjects=10,this.maxLevels=4,this.OVERLAP_BIAS=4,this.forceX=!1,this.sortDirection=X.Physics.Arcade.LEFT_RIGHT,this.skipQuadTree=!0,this.isPaused=!1,this.quadTree=new X.QuadTree(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this._total=0,this.setBoundsToWorld()},X.Physics.Arcade.prototype.constructor=X.Physics.Arcade,X.Physics.Arcade.SORT_NONE=0,X.Physics.Arcade.LEFT_RIGHT=1,X.Physics.Arcade.RIGHT_LEFT=2,X.Physics.Arcade.TOP_BOTTOM=3,X.Physics.Arcade.BOTTOM_TOP=4,X.Physics.Arcade.prototype={setBounds:function(t,e,i,s){this.bounds.setTo(t,e,i,s)},setBoundsToWorld:function(){this.bounds.copyFrom(this.game.world.bounds)},enable:function(t,e){void 0===e&&(e=!0);var i=1;if(Array.isArray(t))for(i=t.length;i--;)t[i]instanceof X.Group?this.enable(t[i].children,e):(this.enableBody(t[i]),e&&t[i].hasOwnProperty("children")&&0o.right)break;if(o.x>t.body.right)continue}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(t.body.bottomo.bottom)break;if(o.y>t.body.bottom)continue}this.collideSpriteVsSprite(t,h,i,s,n,r)}}else{this.quadTree.clear(),this.quadTree.reset(this.game.world.bounds.x,this.game.world.bounds.y,this.game.world.bounds.width,this.game.world.bounds.height,this.maxObjects,this.maxLevels),this.quadTree.populate(e);var l=this.quadTree.retrieve(t);for(a=0;al.right)continue;if(l.x>o.right)break}else if(this.sortDirection===X.Physics.Arcade.TOP_BOTTOM){if(o.bottoml.bottom)continue;if(l.y>a.body.bottom)break}this.collideSpriteVsSprite(a,c,e,i,s,n)}}}}},collideGroupVsGroup:function(t,e,i,s,n,r){if(0!==t.length&&0!==e.length)for(var o=0;oc)&&(u.xl))return this.separateCircle(t,e,n)}var d=!1,p=!1;this.forceX||Math.abs(this.gravity.y+t.gravity.y)=e.right)&&!(t.position.y>=e.bottom))))},circleBodyIntersects:function(t,e){var i=X.Math.clamp(t.center.x,e.left,e.right),s=X.Math.clamp(t.center.y,e.top,e.bottom);return(t.center.x-i)*(t.center.x-i)+(t.center.y-s)*(t.center.y-s)<=t.halfWidth*t.halfWidth},separateCircle:function(t,e,i){this.getOverlapX(t,e),this.getOverlapY(t,e);var s=e.center.x-t.center.x,n=e.center.y-t.center.y,r=Math.atan2(n,s),o=0;if(t.isCircle!==e.isCircle){var a={x:e.isCircle?t.position.x:e.position.x,y:e.isCircle?t.position.y:e.position.y,right:e.isCircle?t.right:e.right,bottom:e.isCircle?t.bottom:e.bottom},h={x:t.isCircle?t.center.x:e.center.x,y:t.isCircle?t.center.y:e.center.y,radius:t.isCircle?t.halfWidth:e.halfWidth};h.yt.velocity.x?t.velocity.x*=-1:e.velocity.x<0&&!e.immovable&&t.velocity.xt.velocity.y?t.velocity.y*=-1:e.velocity.y<0&&!e.immovable&&t.velocity.yMath.PI/2&&(t.velocity.x<0&&!t.immovable&&e.velocity.xe.velocity.x?e.velocity.x*=-1:t.velocity.y<0&&!t.immovable&&e.velocity.ye.velocity.y&&(e.velocity.y*=-1)),t.immovable||(t.x+=.001*t.velocity.x*this.game.time.delta-o*Math.cos(r),t.y+=.001*t.velocity.y*this.game.time.delta-o*Math.sin(r)),e.immovable||(e.x+=.001*e.velocity.x*this.game.time.delta+o*Math.cos(r),e.y+=.001*e.velocity.y*this.game.time.delta+o*Math.sin(r)),t.onCollide&&t.onCollide.dispatch(t.sprite,e.sprite),e.onCollide&&e.onCollide.dispatch(e.sprite,t.sprite),!0},getOverlapX:function(t,e,i){var s=0,n=t.deltaAbsX()+e.deltaAbsX()+this.OVERLAP_BIAS;return 0===t.deltaX()&&0===e.deltaX()?(t.embedded=!0,e.embedded=!0):t.deltaX()>e.deltaX()?n<(s=t.right-e.x)&&!i||!1===t.checkCollision.right||!1===e.checkCollision.left?s=0:(t.touching.none=!1,t.touching.right=!0,e.touching.none=!1,e.touching.left=!0):t.deltaX()e.deltaY()?n<(s=t.bottom-e.y)&&!i||!1===t.checkCollision.down||!1===e.checkCollision.up?s=0:(t.touching.none=!1,t.touching.down=!0,e.touching.none=!1,e.touching.up=!0):t.deltaY()this.deltaMax.x&&(this._dx=this.deltaMax.x)),0!==this.deltaMax.y&&0!==this._dy&&(this._dy<0&&this._dy<-this.deltaMax.y?this._dy=-this.deltaMax.y:0this.deltaMax.y&&(this._dy=this.deltaMax.y)),this.sprite.position.x+=this._dx,this.sprite.position.y+=this._dy,this._reset=!0),this.updateCenter(),this.allowRotation&&(this.sprite.angle+=this.deltaZ()),this.prev.x=this.position.x,this.prev.y=this.position.y)},checkWorldBounds:function(){var t=this.position,e=this.game.physics.arcade.bounds,i=this.game.physics.arcade.checkCollision,s=this.worldBounce?-this.worldBounce.x:-this.bounce.x,n=this.worldBounce?-this.worldBounce.y:-this.bounce.y;return t.xe.right&&i.right&&(t.x=e.right-this.width,this.velocity.x*=s,this.blocked.right=!0,this.blocked.none=!1),t.ye.bottom&&i.down&&(t.y=e.bottom-this.height,this.velocity.y*=n,this.blocked.down=!0,this.blocked.none=!1),!this.blocked.none},moveFrom:function(t,e,i){return void 0===e&&(e=this.speed),0!==e&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),this.moveTimer=0,this.moveDuration=t,0===i||180===i?this.velocity.set(Math.cos(s)*e,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*e):this.velocity.setToPolar(s,e),this.isMoving=!0);var s},moveTo:function(t,e,i){var s,n=e/(t/1e3);return 0!==n&&(void 0===i?(s=this.angle,i=this.game.math.radToDeg(s)):s=this.game.math.degToRad(i),e=Math.abs(e),this.moveDuration=0,this.moveDistance=e,null===this.moveTarget&&(this.moveTarget=new X.Line,this.moveEnd=new X.Point),this.moveTarget.fromAngle(this.x,this.y,s,e),this.moveEnd.set(this.moveTarget.end.x,this.moveTarget.end.y),this.moveTarget.setTo(this.x,this.y,this.x,this.y),0===i||180===i?this.velocity.set(Math.cos(s)*n,0):90===i||270===i?this.velocity.set(0,Math.sin(s)*n):this.velocity.setToPolar(s,n),this.isMoving=!0)},setSize:function(t,e,i,s){void 0===i&&(i=this.offset.x),void 0===s&&(s=this.offset.y),this.sourceWidth=t,this.sourceHeight=e,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.setTo(i,s),this.updateCenter(),this.isCircle=!1,this.radius=0},setCircle:function(t,e,i){void 0===e&&(e=this.offset.x),void 0===i&&(i=this.offset.y),0e.deltaAbsY()?l=-1:e.deltaAbsX()e.left&&(s=t.right-n-e.left)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateX?t.overlapX=s:this.processTileSeparationX(t,s)),s},tileCheckY:function(t,e,i){var s=0,n=i.getTileOffsetY();return t.deltaY()<0&&!t.blocked.up&&e.collideDown&&t.checkCollision.up?e.faceBottom&&t.y-ne.top&&(s=t.bottom-n-e.top)>this.TILE_BIAS&&(s=0),0!==s&&(t.customSeparateY?t.overlapY=s:this.processTileSeparationY(t,s)),s},processTileSeparationX:function(t,e){e<0?(t.blocked.left=!0,t.blocked.none=!1):0=this.firstgid&&tthis.right||e>this.bottom)},intersects:function(t,e,i,s){return!(i<=this.worldX)&&(!(s<=this.worldY)&&(!(t>=this.worldX+this.width)&&!(e>=this.worldY+this.height)))},setCollisionCallback:function(t,e){this.collisionCallback=t,this.collisionCallbackContext=e},destroy:function(){this.collisionCallback=null,this.collisionCallbackContext=null,this.properties=null},setCollision:function(t,e,i,s){this.collideLeft=t,this.collideRight=e,this.collideUp=i,this.collideDown=s,this.faceLeft=t,this.faceRight=e,this.faceTop=i,this.faceBottom=s},resetCollision:function(){this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1},isInteresting:function(t,e){return t&&e?this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.faceTop||this.faceBottom||this.faceLeft||this.faceRight||this.collisionCallback:t?this.collideLeft||this.collideRight||this.collideUp||this.collideDown:!!e&&(this.faceTop||this.faceBottom||this.faceLeft||this.faceRight)},copy:function(t){this.index=t.index,this.alpha=t.alpha,this.properties=t.properties,this.collideUp=t.collideUp,this.collideDown=t.collideDown,this.collideLeft=t.collideLeft,this.collideRight=t.collideRight,this.collisionCallback=t.collisionCallback,this.collisionCallbackContext=t.collisionCallbackContext}},X.Tile.prototype.constructor=X.Tile,Object.defineProperty(X.Tile.prototype,"collides",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}}),Object.defineProperty(X.Tile.prototype,"canCollide",{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback}}),Object.defineProperty(X.Tile.prototype,"left",{get:function(){return this.worldX}}),Object.defineProperty(X.Tile.prototype,"right",{get:function(){return this.worldX+this.width}}),Object.defineProperty(X.Tile.prototype,"top",{get:function(){return this.worldY}}),Object.defineProperty(X.Tile.prototype,"bottom",{get:function(){return this.worldY+this.height}}),X.Tilemap=function(t,e,i,s,n,r){this.game=t,this.key=e;var o=X.TilemapParser.parse(this.game,e,i,s,n,r);null!==o&&(this.width=o.width,this.height=o.height,this.tileWidth=o.tileWidth,this.tileHeight=o.tileHeight,this.orientation=o.orientation,this.format=o.format,this.version=o.version,this.properties=o.properties,this.widthInPixels=o.widthInPixels,this.heightInPixels=o.heightInPixels,this.layers=o.layers,this.tilesets=o.tilesets,this.imagecollections=o.imagecollections,this.tiles=o.tiles,this.objects=o.objects,this.objectsMap=o.objectsMap,this.collideIndexes=[],this.collision=o.collision,this.images=o.images,this.enableDebug=!1,this.currentLayer=0,this.debugMap=[],this._results=[],this._tempA=0,this._tempB=0)},X.Tilemap.CSV=0,X.Tilemap.TILED_JSON=1,X.Tilemap.NORTH=0,X.Tilemap.EAST=1,X.Tilemap.SOUTH=2,X.Tilemap.WEST=3,X.Tilemap.prototype={create:function(t,e,i,s,n,r){return void 0===r&&(r=this.game.world),this.width=e,this.height=i,this.setTileSize(s,n),this.layers.length=0,this.createBlankLayer(t,e,i,s,n,r)},setTileSize:function(t,e){this.tileWidth=t,this.tileHeight=e,this.widthInPixels=this.width*t,this.heightInPixels=this.height*e},addTilesetImage:function(t,e,i,s,n,r,o){if(void 0===t)return null;void 0===i&&(i=this.tileWidth),void 0===s&&(s=this.tileHeight),void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),0===i&&(i=32),0===s&&(s=32);var a=null;if(null==e&&(e=t),X.BitmapData&&e instanceof X.BitmapData)a=e.canvas;else{if(!this.game.cache.checkImageKey(e))return console.warn('Phaser.Tilemap.addTilesetImage: Invalid image key given: "'+e+'"'),null;a=this.game.cache.getImage(e)}var h=this.getTilesetIndex(t);if(null===h&&this.format===X.Tilemap.TILED_JSON)return console.warn('Phaser.Tilemap.addTilesetImage: No data found in the JSON matching the tileset name: "'+t+'"'),console.log("Tilesets: ",this.tilesets),null;if(this.tilesets[h])return this.tilesets[h].setImage(a),this.tilesets[h];var l=new X.Tileset(t,o,i,s,n,r,{});l.setImage(a),this.tilesets.push(l);for(var c=this.tilesets.length-1,u=n,d=n,p=0,f=0,g=0,m=o;mthis.layers.length)return console.warn('Tilemap.createLayer: Invalid layer ID given: "'+t+'"'),void console.log("Layers: ",this.layers);void 0===e||e<=0?e=Math.min(this.game.width,this.layers[n].widthInPixels):e>this.game.width&&(e=this.game.width),void 0===i||i<=0?i=Math.min(this.game.height,this.layers[n].heightInPixels):i>this.game.height&&(i=this.game.height),this.enableDebug&&(console.group("Tilemap.createLayer"),console.log("Name:",this.layers[n].name),console.log("Size:",e,"x",i),console.log("Tileset:",this.tilesets[0].name,"index:",n));var r=s.add(new X.TilemapLayer(this.game,this,n,e,i));return this.enableDebug&&console.groupEnd(),r},createBlankLayer:function(t,e,i,s,n,r){if(void 0===r&&(r=this.game.world),null===this.getLayerIndex(t)){for(var o,a={name:t,x:0,y:0,width:e,height:i,widthInPixels:e*s,heightInPixels:i*n,alpha:1,visible:!0,properties:{},indexes:[],callbacks:[],bodies:[],data:null},h=[],l=0;lthis.game.width&&(u=this.game.width),d>this.game.height&&(d=this.game.height),(h=new X.TilemapLayer(this.game,this,this.layers.length-1,u,d)).name=t,r.add(h)}console.warn("Tilemap.createBlankLayer: Layer with matching name already exists: "+t)},getIndex:function(t,e){for(var i=0;ithis.layers[n].width&&(i=this.layers[n].width),s>this.layers[n].height&&(s=this.layers[n].height),this._results.length=0,this._results.push({x:t,y:e,width:i,height:s,layer:n});for(var r=e;r>>0;n.data=a,delete n.encoding}else if(n.compression){console.warn('Layer compression is unsupported, skipping layer "%s".',n.name);continue}var l={name:n.name,x:n.x,y:n.y,width:n.width,height:n.height,widthInPixels:n.width*t.tilewidth,heightInPixels:n.height*t.tileheight,alpha:n.opacity,offsetX:n.offsetx,offsetY:n.offsety,visible:n.visible,properties:{},indexes:[],callbacks:[],bodies:[]};n.properties&&(l.properties=n.properties);var c,u,d,p=0,f=[],g=[],m=0;for(o=n.data.length;m=this.firstgid&&t=this._timer)if(this._timer=this.game.time.deltaTotal+this.frequency,0!==this._flowTotal)if(0=this._flowTotal)){this.on=!1;break}}else this.emitParticle()&&(this._counter++,-1!==this._flowTotal&&this._counter>=this._flowTotal&&(this.on=!1));else this.emitParticle()&&(this._counter++,0=this._total&&(this.on=!1));for(t=this.children.length;t--;)this.children[t].exists&&this.children[t].update()},X.Particles.Arcade.Emitter.prototype.makeParticles=function(t,e,i,s,n,r){var o;void 0===e&&(e=0),void 0===i&&(i=this.maxParticles),void 0===s&&(s=!1),void 0===n&&(n=!1),void 0===r&&(r=null);var a=0,h=t,l=e;for(this._frames=e,i>this.maxParticles&&(this.maxParticles=i);athis.maxParticles&&(i=this.maxParticles),this._counter=0,this._flowQuantity=i,this._flowTotal=s,n?(this.start(!0,t,e,i),this._counter+=i,this.on=!0,this._timer=this.game.time.deltaTotal+e):this.start(!1,t,e,i),this},X.Particles.Arcade.Emitter.prototype.start=function(t,e,i,s,n){if(void 0===t&&(t=!0),void 0===e&&(e=0),null==i&&(i=250),void 0===s&&(s=0),void 0===n&&(n=!1),s>this.maxParticles&&(s=this.maxParticles),this.revive(),this.visible=!0,this.lifespan=e,this.frequency=i,t||n)for(var r=0;r=this.bulletFrames.length&&(this.bulletFrameIndex=0)):this.bulletFrameRandom&&(u.frame=this.bulletFrames[Math.floor(Math.random()*this.bulletFrames.length)]);u.data.bodyDirty&&(this._data.customBody&&u.body.setSize(this._data.width,this._data.height,this._data.offsetX,this._data.offsetY),u.body.collideWorldBounds=this.bulletCollideWorldBounds,u.data.bodyDirty=!1),u.body.velocity.set(l,c),u.body.gravity.set(this.bulletGravity.x,this.bulletGravity.y);var p=0;if(0!==this.bulletSpeedVariance){var f=this.fireRate;(f+=X.Math.between(-this.fireRateVariance,this.fireRateVariance))<0&&(f=0),p=this.game.time.deltaTotal+f}else p=this.game.time.deltaTotal+this.fireRate;this.multiFire?this._hasFired||(this._hasFired=!0,this._tempNextFire=p,this.shots++):(this._nextFire=p,this.shots++),this.onFire.dispatch(u,this,r),0X.Weapon.KILL_LIFESPAN&&(this.data.killType===X.Weapon.KILL_DISTANCE?this.game.physics.arcade.distanceToXY(this,this.data.fromX,this.data.fromY,!0)>this.data.killDistance&&this.kill():this.data.bulletManager.bulletBounds.intersects(this)||this.kill()),this.data.rotateToVelocity&&(this.rotation=this.body.velocity.atan()),this.data.bulletManager.bulletWorldWrap&&this.game.world.wrap(this,this.data.bulletManager.bulletWorldWrapPadding))},X.Video=function(t,e,i){if(void 0===e&&(e=null),void 0===i&&(i=null),this.game=t,this.key=e,this.width=0,this.height=0,this.type=X.VIDEO,this.disableTextureUpload=!1,this.touchLocked=!1,this.onPlay=new X.Signal,this.onChangeSource=new X.Signal,this.onComplete=new X.Signal,this.onAccess=new X.Signal,this.onError=new X.Signal,this.onTimeout=new X.Signal,this.onTouchUnlock=new X.Signal,this.playWhenUnlocked=!0,this.timeout=15e3,this._timeOutID=null,this.video=null,this.videoStream=null,this.isStreaming=!1,this.retryLimit=20,this.retry=0,this.retryInterval=500,this._retryID=null,this._codeMuted=!1,this._muted=!1,this._codePaused=!1,this._paused=!1,this._pending=!1,this._pendingChangeSource=!1,this._autoplay=!1,this._endCallback=null,this._playCallback=null,e&&this.game.cache.checkVideoKey(e)){var s=this.game.cache.getVideo(e);s.isBlob?this.createVideoFromBlob(s.data):this.video=s.data,this.width=this.video.videoWidth,this.height=this.video.videoHeight}else i&&this.createVideoFromURL(i,!1);this.video&&!i?this.baseTexture=new PIXI.BaseTexture(this.video,null,this.game.resolution):this.baseTexture=new PIXI.BaseTexture(X.Cache.DEFAULT.baseTexture.source,null,this.game.resolution),this.baseTexture.forceLoaded(this.width,this.height),this.texture=new PIXI.Texture(this.baseTexture),this.textureFrame=new X.Frame(0,0,0,this.width,this.height,"video"),this.texture.setFrame(this.textureFrame),this.texture.valid=!1,null!==e&&this.video&&(this.texture.valid=this.video.canplay),this.snapshot=null,X.BitmapData&&(this.snapshot=new X.BitmapData(this.game,"",this.width,this.height)),this.game.device.needsTouchUnlock()?this.setTouchLock():s&&(s.locked=!1)},X.Video.prototype={connectToMediaStream:function(t,e){return t&&e&&(this.video=t,this.videoStream=e,this.isStreaming=!0,this.baseTexture.source=this.video,this.updateTexture(null,this.video.videoWidth,this.video.videoHeight),this.onAccess.dispatch(this)),this},startMediaStream:function(t,e,i,s){if(void 0===t&&(t=!1),void 0===e&&(e=null),void 0===i&&(i=null),void 0===s&&(s=!0),!this.game.device.getUserMedia)return this.onError.dispatch(this,"No getUserMedia"),!1;if(null!==this.videoStream&&(this.videoStream.active?this.videoStream.active=!1:this.videoStream.stop()),this.removeVideoElement(),this.video=document.createElement("video"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("playsinline","playsinline"),null!==e&&(this.video.width=e),null!==i&&(this.video.height=i),this._timeOutID=window.setTimeout(this.getUserMediaTimeout.bind(this),this.timeout),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:t,video:s}).then(this.getUserMediaSuccess.bind(this)).catch(this.getUserMediaError.bind(this));else try{navigator.getUserMedia({audio:t,video:s},this.getUserMediaSuccess.bind(this),this.getUserMediaError.bind(this))}catch(t){this.getUserMediaError(t)}return this},getUserMediaTimeout:function(){clearTimeout(this._timeOutID),this.onTimeout.dispatch(this)},getUserMediaError:function(t){clearTimeout(this._timeOutID),this.onError.dispatch(this,t)},getUserMediaSuccess:function(t){clearTimeout(this._timeOutID),this.videoStream=t,void 0!==this.video.mozSrcObject?this.video.mozSrcObject=t:void 0!==this.video.srcObject?this.video.srcObject=t:this.video.src=window.URL&&window.URL.createObjectURL(t)||t;var n=this;this.video.onloadeddata=function(){var s=10;!function t(){if(0 Phaser CE Class: CreatureShader - + @@ -224,7 +224,7 @@
Parameters:
Source:
- src/gameobjects/Creature.js line 15 + src/gameobjects/Creature.js line 15 @@ -329,7 +329,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 42 + src/gameobjects/Creature.js line 42 @@ -402,7 +402,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 28 + src/gameobjects/Creature.js line 28 @@ -479,7 +479,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 35 + src/gameobjects/Creature.js line 35 @@ -556,7 +556,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 64 + src/gameobjects/Creature.js line 64 @@ -589,9 +589,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -608,7 +608,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -637,7 +637,7 @@
Type:
- + diff --git a/docs/EarCut.html b/docs/EarCut.html index 3cfec1f7f..887cb4480 100644 --- a/docs/EarCut.html +++ b/docs/EarCut.html @@ -6,7 +6,7 @@ Phaser CE Class: EarCut - + @@ -174,7 +174,7 @@

Source:
- src/utils/EarCut.js line 20 + src/utils/EarCut.js line 20 @@ -231,9 +231,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -250,7 +250,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -279,7 +279,7 @@

- + diff --git a/docs/Event.html b/docs/Event.html index 99a5a200b..5ccfbd224 100644 --- a/docs/Event.html +++ b/docs/Event.html @@ -6,7 +6,7 @@ Phaser CE Class: Event - + @@ -276,7 +276,7 @@

Parameters:
Source:
- src/plugins/path/EventTarget.js line 222 + src/plugins/path/EventTarget.js line 222 @@ -392,7 +392,7 @@
Type:
Source:
- src/plugins/path/EventTarget.js line 274 + src/plugins/path/EventTarget.js line 274 @@ -469,7 +469,7 @@
Type:
Source:
- src/plugins/path/EventTarget.js line 256 + src/plugins/path/EventTarget.js line 256 @@ -546,7 +546,7 @@
Type:
Source:
- src/plugins/path/EventTarget.js line 286 + src/plugins/path/EventTarget.js line 286 @@ -623,7 +623,7 @@
Type:
Source:
- src/plugins/path/EventTarget.js line 265 + src/plugins/path/EventTarget.js line 265 @@ -656,9 +656,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -675,7 +675,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -704,7 +704,7 @@
Type:
- + diff --git a/docs/EventTarget.html b/docs/EventTarget.html index 56f6c3275..12174b905 100644 --- a/docs/EventTarget.html +++ b/docs/EventTarget.html @@ -6,7 +6,7 @@ Phaser CE Class: EventTarget - + @@ -178,7 +178,7 @@

Source:
- src/plugins/path/EventTarget.js line 23 + src/plugins/path/EventTarget.js line 23 @@ -291,7 +291,7 @@

Source:
- src/plugins/path/EventTarget.js line 27 + src/plugins/path/EventTarget.js line 27 @@ -334,9 +334,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -353,7 +353,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -382,7 +382,7 @@

- + diff --git a/docs/PIXI.BaseTexture.html b/docs/PIXI.BaseTexture.html index 40b6dff57..2d29d5c5c 100644 --- a/docs/PIXI.BaseTexture.html +++ b/docs/PIXI.BaseTexture.html @@ -6,7 +6,7 @@ Phaser CE Class: BaseTexture - + @@ -312,7 +312,7 @@

Parameters:
Source:
- src/pixi/textures/BaseTexture.js line 14 + src/pixi/textures/BaseTexture.js line 14 @@ -417,7 +417,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 58 + src/pixi/textures/BaseTexture.js line 58 @@ -494,7 +494,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 40 + src/pixi/textures/BaseTexture.js line 40 @@ -572,7 +572,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 93 + src/pixi/textures/BaseTexture.js line 93 @@ -656,7 +656,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 75 + src/pixi/textures/BaseTexture.js line 75 @@ -733,7 +733,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 22 + src/pixi/textures/BaseTexture.js line 22 @@ -817,7 +817,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 49 + src/pixi/textures/BaseTexture.js line 49 @@ -896,7 +896,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 131 + src/pixi/textures/BaseTexture.js line 131 @@ -979,7 +979,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 66 + src/pixi/textures/BaseTexture.js line 66 @@ -1056,7 +1056,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 100 + src/pixi/textures/BaseTexture.js line 100 @@ -1133,7 +1133,7 @@
Type:
Source:
- src/pixi/textures/BaseTexture.js line 31 + src/pixi/textures/BaseTexture.js line 31 @@ -1211,7 +1211,7 @@

Source:
- src/pixi/textures/BaseTexture.js line 160 + src/pixi/textures/BaseTexture.js line 160 @@ -1295,7 +1295,7 @@

Source:
- src/pixi/textures/BaseTexture.js line 177 + src/pixi/textures/BaseTexture.js line 177 @@ -1455,7 +1455,7 @@
Parameters:
Source:
- src/pixi/textures/BaseTexture.js line 143 + src/pixi/textures/BaseTexture.js line 143 @@ -1665,7 +1665,7 @@
Parameters:
Source:
- src/pixi/textures/BaseTexture.js line 217 + src/pixi/textures/BaseTexture.js line 217 @@ -1770,7 +1770,7 @@

Source:
- src/pixi/textures/BaseTexture.js line 190 + src/pixi/textures/BaseTexture.js line 190 @@ -1813,9 +1813,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1832,7 +1832,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1861,7 +1861,7 @@

- + diff --git a/docs/PIXI.CanvasBuffer.html b/docs/PIXI.CanvasBuffer.html index ecf349e7f..230aa7978 100644 --- a/docs/PIXI.CanvasBuffer.html +++ b/docs/PIXI.CanvasBuffer.html @@ -6,7 +6,7 @@ Phaser CE Class: CanvasBuffer - + @@ -254,7 +254,7 @@

Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 13 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 13 @@ -359,7 +359,7 @@
Type:
Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 37 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 37 @@ -436,7 +436,7 @@
Type:
Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 45 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 45 @@ -513,7 +513,7 @@
Type:
Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 29 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 29 @@ -590,7 +590,7 @@
Type:
Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 21 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 21 @@ -668,7 +668,7 @@

Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 78 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 78 @@ -826,7 +826,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasBuffer.js line 65 + src/pixi/renderers/canvas/utils/CanvasBuffer.js line 65 @@ -869,9 +869,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -888,7 +888,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -917,7 +917,7 @@
Parameters:
- + diff --git a/docs/PIXI.CanvasGraphics.html b/docs/PIXI.CanvasGraphics.html index 9e60a98a0..1cdd50c33 100644 --- a/docs/PIXI.CanvasGraphics.html +++ b/docs/PIXI.CanvasGraphics.html @@ -6,7 +6,7 @@ Phaser CE Class: CanvasGraphics - + @@ -180,7 +180,7 @@

Source:
- src/pixi/renderers/canvas/CanvasGraphics.js line 11 + src/pixi/renderers/canvas/CanvasGraphics.js line 11 @@ -356,7 +356,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/CanvasGraphics.js line 15 + src/pixi/renderers/canvas/CanvasGraphics.js line 15 @@ -399,9 +399,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -418,7 +418,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -447,7 +447,7 @@
Parameters:
- + diff --git a/docs/PIXI.CanvasMaskManager.html b/docs/PIXI.CanvasMaskManager.html index 68432c703..bd3258935 100644 --- a/docs/PIXI.CanvasMaskManager.html +++ b/docs/PIXI.CanvasMaskManager.html @@ -6,7 +6,7 @@ Phaser CE Class: CanvasMaskManager - + @@ -180,7 +180,7 @@

Source:
- src/pixi/renderers/canvas/utils/CanvasMaskManager.js line 11 + src/pixi/renderers/canvas/utils/CanvasMaskManager.js line 11 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasMaskManager.js line 49 + src/pixi/renderers/canvas/utils/CanvasMaskManager.js line 49 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasMaskManager.js line 17 + src/pixi/renderers/canvas/utils/CanvasMaskManager.js line 17 @@ -533,9 +533,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -552,7 +552,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -581,7 +581,7 @@
Parameters:
- + diff --git a/docs/PIXI.CanvasRenderer.html b/docs/PIXI.CanvasRenderer.html index 0869bc600..933c8c4c5 100644 --- a/docs/PIXI.CanvasRenderer.html +++ b/docs/PIXI.CanvasRenderer.html @@ -6,7 +6,7 @@ Phaser CE Class: CanvasRenderer - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 13 + src/pixi/renderers/canvas/CanvasRenderer.js line 13 @@ -336,7 +336,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 67 + src/pixi/renderers/canvas/CanvasRenderer.js line 67 @@ -416,7 +416,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 51 + src/pixi/renderers/canvas/CanvasRenderer.js line 51 @@ -493,7 +493,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 100 + src/pixi/renderers/canvas/CanvasRenderer.js line 100 @@ -570,7 +570,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 121 + src/pixi/renderers/canvas/CanvasRenderer.js line 121 @@ -647,7 +647,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 18 + src/pixi/renderers/canvas/CanvasRenderer.js line 18 @@ -731,7 +731,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 85 + src/pixi/renderers/canvas/CanvasRenderer.js line 85 @@ -855,7 +855,7 @@
Properties:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 128 + src/pixi/renderers/canvas/CanvasRenderer.js line 128 @@ -932,7 +932,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 113 + src/pixi/renderers/canvas/CanvasRenderer.js line 113 @@ -1009,7 +1009,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 135 + src/pixi/renderers/canvas/CanvasRenderer.js line 135 @@ -1086,7 +1086,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 39 + src/pixi/renderers/canvas/CanvasRenderer.js line 39 @@ -1163,7 +1163,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 59 + src/pixi/renderers/canvas/CanvasRenderer.js line 59 @@ -1240,7 +1240,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 31 + src/pixi/renderers/canvas/CanvasRenderer.js line 31 @@ -1317,7 +1317,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 93 + src/pixi/renderers/canvas/CanvasRenderer.js line 93 @@ -1401,7 +1401,7 @@
Type:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 76 + src/pixi/renderers/canvas/CanvasRenderer.js line 76 @@ -1549,7 +1549,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 212 + src/pixi/renderers/canvas/CanvasRenderer.js line 212 @@ -1686,7 +1686,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 156 + src/pixi/renderers/canvas/CanvasRenderer.js line 156 @@ -1844,7 +1844,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/CanvasRenderer.js line 233 + src/pixi/renderers/canvas/CanvasRenderer.js line 233 @@ -1887,9 +1887,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1906,7 +1906,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1935,7 +1935,7 @@
Parameters:
- + diff --git a/docs/PIXI.CanvasTinter.html b/docs/PIXI.CanvasTinter.html index b20e66d17..2fa53c3e0 100644 --- a/docs/PIXI.CanvasTinter.html +++ b/docs/PIXI.CanvasTinter.html @@ -6,7 +6,7 @@ Phaser CE Class: CanvasTinter - + @@ -180,7 +180,7 @@

Source:
- src/pixi/renderers/canvas/utils/CanvasTinter.js line 11 + src/pixi/renderers/canvas/utils/CanvasTinter.js line 11 @@ -356,7 +356,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasTinter.js line 13 + src/pixi/renderers/canvas/utils/CanvasTinter.js line 13 @@ -562,7 +562,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasTinter.js line 72 + src/pixi/renderers/canvas/utils/CanvasTinter.js line 72 @@ -744,7 +744,7 @@
Parameters:
Source:
- src/pixi/renderers/canvas/utils/CanvasTinter.js line 31 + src/pixi/renderers/canvas/utils/CanvasTinter.js line 31 @@ -787,9 +787,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -806,7 +806,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -835,7 +835,7 @@
Parameters:
- + diff --git a/docs/PIXI.ComplexPrimitiveShader.html b/docs/PIXI.ComplexPrimitiveShader.html index 16660cd77..4c0d5ccbb 100644 --- a/docs/PIXI.ComplexPrimitiveShader.html +++ b/docs/PIXI.ComplexPrimitiveShader.html @@ -6,7 +6,7 @@ Phaser CE Class: ComplexPrimitiveShader - + @@ -226,7 +226,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 10 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 10 @@ -331,7 +331,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 37 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 37 @@ -404,7 +404,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 23 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 23 @@ -481,7 +481,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 30 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 30 @@ -558,7 +558,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 53 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 53 @@ -636,7 +636,7 @@

Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 112 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 112 @@ -720,7 +720,7 @@

Source:
- src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 80 + src/pixi/renderers/webgl/shaders/ComplexPrimitiveShader.js line 80 @@ -763,9 +763,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -782,7 +782,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -811,7 +811,7 @@

- + diff --git a/docs/PIXI.DisplayObject.html b/docs/PIXI.DisplayObject.html index 441e5e7cc..8f1835f7b 100644 --- a/docs/PIXI.DisplayObject.html +++ b/docs/PIXI.DisplayObject.html @@ -6,7 +6,7 @@ Phaser CE Class: DisplayObject - + @@ -183,7 +183,7 @@

Source:
- src/pixi/display/DisplayObject.js line 18 + src/pixi/display/DisplayObject.js line 18 @@ -298,7 +298,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -382,7 +382,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -459,7 +459,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -541,7 +541,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -628,7 +628,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -708,7 +708,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -788,7 +788,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -866,7 +866,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -945,7 +945,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -1023,7 +1023,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -1103,7 +1103,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -1183,7 +1183,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -1273,7 +1273,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -1356,7 +1356,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -1438,7 +1438,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -1520,7 +1520,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -1602,7 +1602,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -1684,7 +1684,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -1761,7 +1761,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -1839,7 +1839,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -1917,7 +1917,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -1997,7 +1997,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -2233,7 +2233,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -2343,7 +2343,7 @@

Source:
- src/pixi/display/DisplayObject.js line 433 + src/pixi/display/DisplayObject.js line 433 @@ -2477,7 +2477,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -2681,7 +2681,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -2791,7 +2791,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -2971,7 +2971,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -3040,9 +3040,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3059,7 +3059,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3088,7 +3088,7 @@
Returns:
- + diff --git a/docs/PIXI.DisplayObjectContainer.html b/docs/PIXI.DisplayObjectContainer.html index 4ba75f44e..e6a4aebac 100644 --- a/docs/PIXI.DisplayObjectContainer.html +++ b/docs/PIXI.DisplayObjectContainer.html @@ -6,7 +6,7 @@ Phaser CE Class: DisplayObjectContainer - + @@ -181,7 +181,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 13 + src/pixi/display/DisplayObjectContainer.js line 13 @@ -316,7 +316,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -409,7 +409,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -486,7 +486,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -572,7 +572,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -663,7 +663,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -740,7 +740,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -836,7 +836,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -915,7 +915,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -1004,7 +1004,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -1093,7 +1093,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -1180,7 +1180,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -1268,7 +1268,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -1355,7 +1355,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -1444,7 +1444,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -1533,7 +1533,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -1632,7 +1632,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -1709,7 +1709,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -1801,7 +1801,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -1892,7 +1892,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -1983,7 +1983,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -2074,7 +2074,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -2165,7 +2165,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -2251,7 +2251,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -2338,7 +2338,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -2425,7 +2425,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -2553,7 +2553,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -2735,7 +2735,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -2893,7 +2893,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -3008,7 +3008,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -3253,7 +3253,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -3428,7 +3428,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -3586,7 +3586,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -3744,7 +3744,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -3852,7 +3852,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -3969,7 +3969,7 @@

Source:
- src/pixi/display/DisplayObject.js line 433 + src/pixi/display/DisplayObject.js line 433 @@ -4103,7 +4103,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -4261,7 +4261,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -4443,7 +4443,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -4601,7 +4601,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -4759,7 +4759,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -4902,7 +4902,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -5115,7 +5115,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -5234,7 +5234,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -5428,7 +5428,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -5497,9 +5497,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -5516,7 +5516,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -5545,7 +5545,7 @@
Returns:
- + diff --git a/docs/PIXI.FilterTexture.html b/docs/PIXI.FilterTexture.html index 784b6cf49..14f7d8d95 100644 --- a/docs/PIXI.FilterTexture.html +++ b/docs/PIXI.FilterTexture.html @@ -6,7 +6,7 @@ Phaser CE Class: FilterTexture - + @@ -298,7 +298,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 66 + src/pixi/renderers/webgl/utils/FilterTexture.js line 66 @@ -399,7 +399,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 82 + src/pixi/renderers/webgl/utils/FilterTexture.js line 82 @@ -472,7 +472,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 74 + src/pixi/renderers/webgl/utils/FilterTexture.js line 74 @@ -545,7 +545,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 88 + src/pixi/renderers/webgl/utils/FilterTexture.js line 88 @@ -623,7 +623,7 @@

Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 96 + src/pixi/renderers/webgl/utils/FilterTexture.js line 96 @@ -707,7 +707,7 @@

Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 132 + src/pixi/renderers/webgl/utils/FilterTexture.js line 132 @@ -865,7 +865,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/FilterTexture.js line 109 + src/pixi/renderers/webgl/utils/FilterTexture.js line 109 @@ -908,9 +908,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -927,7 +927,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -956,7 +956,7 @@
Parameters:
- + diff --git a/docs/PIXI.PixiFastShader.html b/docs/PIXI.PixiFastShader.html index c4d41b4c9..236083625 100644 --- a/docs/PIXI.PixiFastShader.html +++ b/docs/PIXI.PixiFastShader.html @@ -6,7 +6,7 @@ Phaser CE Class: PixiFastShader - + @@ -226,7 +226,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 10 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 10 @@ -331,7 +331,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 49 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 49 @@ -404,7 +404,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 23 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 23 @@ -481,7 +481,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 30 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 30 @@ -558,7 +558,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 136 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 136 @@ -635,7 +635,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 96 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 96 @@ -713,7 +713,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 224 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 224 @@ -797,7 +797,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiFastShader.js line 143 + src/pixi/renderers/webgl/shaders/PixiFastShader.js line 143 @@ -840,9 +840,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -859,7 +859,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -888,7 +888,7 @@

- + diff --git a/docs/PIXI.PixiShader.html b/docs/PIXI.PixiShader.html index cecabb8fe..16afe300b 100644 --- a/docs/PIXI.PixiShader.html +++ b/docs/PIXI.PixiShader.html @@ -6,7 +6,7 @@ Phaser CE Class: PixiShader - + @@ -226,7 +226,7 @@

Parameters:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 11 + src/pixi/renderers/webgl/shaders/PixiShader.js line 11 @@ -331,7 +331,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 495 + src/pixi/renderers/webgl/shaders/PixiShader.js line 495 @@ -408,7 +408,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 60 + src/pixi/renderers/webgl/shaders/PixiShader.js line 60 @@ -485,7 +485,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 38 + src/pixi/renderers/webgl/shaders/PixiShader.js line 38 @@ -558,7 +558,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 24 + src/pixi/renderers/webgl/shaders/PixiShader.js line 24 @@ -635,7 +635,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 31 + src/pixi/renderers/webgl/shaders/PixiShader.js line 31 @@ -712,7 +712,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 45 + src/pixi/renderers/webgl/shaders/PixiShader.js line 45 @@ -790,7 +790,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 475 + src/pixi/renderers/webgl/shaders/PixiShader.js line 475 @@ -874,7 +874,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 240 + src/pixi/renderers/webgl/shaders/PixiShader.js line 240 @@ -958,7 +958,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 330 + src/pixi/renderers/webgl/shaders/PixiShader.js line 330 @@ -1044,7 +1044,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 257 + src/pixi/renderers/webgl/shaders/PixiShader.js line 257 @@ -1128,7 +1128,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PixiShader.js line 409 + src/pixi/renderers/webgl/shaders/PixiShader.js line 409 @@ -1171,9 +1171,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1190,7 +1190,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1219,7 +1219,7 @@

- + diff --git a/docs/PIXI.PrimitiveShader.html b/docs/PIXI.PrimitiveShader.html index 22f060fc1..0f5531d0e 100644 --- a/docs/PIXI.PrimitiveShader.html +++ b/docs/PIXI.PrimitiveShader.html @@ -6,7 +6,7 @@ Phaser CE Class: PrimitiveShader - + @@ -226,7 +226,7 @@

Parameters:
Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 10 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 10 @@ -331,7 +331,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 37 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 37 @@ -404,7 +404,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 23 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 23 @@ -481,7 +481,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 30 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 30 @@ -558,7 +558,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 51 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 51 @@ -636,7 +636,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 105 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 105 @@ -720,7 +720,7 @@

Source:
- src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 75 + src/pixi/renderers/webgl/shaders/PrimitiveShader.js line 75 @@ -763,9 +763,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -782,7 +782,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -811,7 +811,7 @@

- + diff --git a/docs/PIXI.Sprite.html b/docs/PIXI.Sprite.html index 87618be9a..1b9b8c4d2 100644 --- a/docs/PIXI.Sprite.html +++ b/docs/PIXI.Sprite.html @@ -6,7 +6,7 @@ Phaser CE Class: Sprite - + @@ -230,7 +230,7 @@

Parameters:
Source:
- src/pixi/display/Sprite.js line 13 + src/pixi/display/Sprite.js line 13 @@ -396,7 +396,7 @@
Properties:
Source:
- src/pixi/display/Sprite.js line 127 + src/pixi/display/Sprite.js line 127 @@ -492,7 +492,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -573,7 +573,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -658,7 +658,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -751,7 +751,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -837,7 +837,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -921,7 +921,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -1007,7 +1007,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -1098,7 +1098,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -1184,7 +1184,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -1280,7 +1280,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -1368,7 +1368,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -1457,7 +1457,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -1546,7 +1546,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -1633,7 +1633,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -1721,7 +1721,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -1813,7 +1813,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -1902,7 +1902,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -1991,7 +1991,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -2076,7 +2076,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -2153,7 +2153,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -2237,7 +2237,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -2321,7 +2321,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -2420,7 +2420,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -2506,7 +2506,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -2598,7 +2598,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -2689,7 +2689,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -2780,7 +2780,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -2871,7 +2871,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -2967,7 +2967,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -3053,7 +3053,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -3140,7 +3140,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -3227,7 +3227,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -3364,7 +3364,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -3555,7 +3555,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -3722,7 +3722,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -3837,7 +3837,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -4082,7 +4082,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -4253,7 +4253,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -4420,7 +4420,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -4587,7 +4587,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -4700,7 +4700,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -4817,7 +4817,7 @@

Source:
- src/pixi/display/DisplayObject.js line 433 + src/pixi/display/DisplayObject.js line 433 @@ -4960,7 +4960,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -5127,7 +5127,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -5318,7 +5318,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -5485,7 +5485,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -5676,7 +5676,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -5843,7 +5843,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -5986,7 +5986,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -6199,7 +6199,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -6318,7 +6318,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -6507,7 +6507,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -6576,9 +6576,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6595,7 +6595,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6624,7 +6624,7 @@
Returns:
- + diff --git a/docs/PIXI.StripShader.html b/docs/PIXI.StripShader.html index 349de6411..d8bf34a64 100644 --- a/docs/PIXI.StripShader.html +++ b/docs/PIXI.StripShader.html @@ -6,7 +6,7 @@ Phaser CE Class: StripShader - + @@ -226,7 +226,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 10 + src/pixi/renderers/webgl/shaders/StripShader.js line 10 @@ -331,7 +331,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 49 + src/pixi/renderers/webgl/shaders/StripShader.js line 49 @@ -408,7 +408,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 85 + src/pixi/renderers/webgl/shaders/StripShader.js line 85 @@ -481,7 +481,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 23 + src/pixi/renderers/webgl/shaders/StripShader.js line 23 @@ -558,7 +558,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 30 + src/pixi/renderers/webgl/shaders/StripShader.js line 30 @@ -635,7 +635,7 @@
Type:
Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 105 + src/pixi/renderers/webgl/shaders/StripShader.js line 105 @@ -713,7 +713,7 @@

Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 193 + src/pixi/renderers/webgl/shaders/StripShader.js line 193 @@ -797,7 +797,7 @@

Source:
- src/pixi/renderers/webgl/shaders/StripShader.js line 139 + src/pixi/renderers/webgl/shaders/StripShader.js line 139 @@ -840,9 +840,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -859,7 +859,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -888,7 +888,7 @@

- + diff --git a/docs/PIXI.Texture.html b/docs/PIXI.Texture.html index bf395bc39..4f4c90dd3 100644 --- a/docs/PIXI.Texture.html +++ b/docs/PIXI.Texture.html @@ -6,7 +6,7 @@ Phaser CE Class: Texture - + @@ -341,7 +341,7 @@

Parameters:
Source:
- src/pixi/textures/Texture.js line 25 + src/pixi/textures/Texture.js line 25 @@ -446,7 +446,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 52 + src/pixi/textures/Texture.js line 52 @@ -524,7 +524,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 134 + src/pixi/textures/Texture.js line 134 @@ -601,7 +601,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 60 + src/pixi/textures/Texture.js line 60 @@ -678,7 +678,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 125 + src/pixi/textures/Texture.js line 125 @@ -755,7 +755,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 84 + src/pixi/textures/Texture.js line 84 @@ -832,7 +832,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 33 + src/pixi/textures/Texture.js line 33 @@ -909,7 +909,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 100 + src/pixi/textures/Texture.js line 100 @@ -986,7 +986,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 92 + src/pixi/textures/Texture.js line 92 @@ -1065,7 +1065,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 144 + src/pixi/textures/Texture.js line 144 @@ -1142,7 +1142,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 68 + src/pixi/textures/Texture.js line 68 @@ -1219,7 +1219,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 76 + src/pixi/textures/Texture.js line 76 @@ -1296,7 +1296,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 117 + src/pixi/textures/Texture.js line 117 @@ -1424,7 +1424,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 173 + src/pixi/textures/Texture.js line 173 @@ -1582,7 +1582,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 283 + src/pixi/textures/Texture.js line 283 @@ -1736,7 +1736,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 186 + src/pixi/textures/Texture.js line 186 @@ -1779,9 +1779,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1798,7 +1798,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1827,7 +1827,7 @@
Parameters:
- + diff --git a/docs/PIXI.WebGLBlendModeManager.html b/docs/PIXI.WebGLBlendModeManager.html index 4a199ea52..e20265733 100644 --- a/docs/PIXI.WebGLBlendModeManager.html +++ b/docs/PIXI.WebGLBlendModeManager.html @@ -6,7 +6,7 @@ Phaser CE Class: WebGLBlendModeManager - + @@ -226,7 +226,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 10 + src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 10 @@ -327,7 +327,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 16 + src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 16 @@ -405,7 +405,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 54 + src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 54 @@ -539,7 +539,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 32 + src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 32 @@ -673,7 +673,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 21 + src/pixi/renderers/webgl/utils/WebGLBlendModeManager.js line 21 @@ -716,9 +716,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -735,7 +735,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -764,7 +764,7 @@
Parameters:
- + diff --git a/docs/PIXI.WebGLFastSpriteBatch.html b/docs/PIXI.WebGLFastSpriteBatch.html index 435d4a3d5..d6170bba0 100644 --- a/docs/PIXI.WebGLFastSpriteBatch.html +++ b/docs/PIXI.WebGLFastSpriteBatch.html @@ -6,7 +6,7 @@ Phaser CE Class: WebGLFastSpriteBatch - + @@ -176,7 +176,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 15 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 15 @@ -277,7 +277,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 99 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 99 @@ -350,7 +350,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 93 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 93 @@ -423,7 +423,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 105 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 105 @@ -496,7 +496,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 87 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 87 @@ -569,7 +569,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 65 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 65 @@ -646,7 +646,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 53 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 53 @@ -719,7 +719,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 71 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 71 @@ -792,7 +792,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 123 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 123 @@ -865,7 +865,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 27 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 27 @@ -938,7 +938,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 111 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 111 @@ -1011,7 +1011,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 117 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 117 @@ -1084,7 +1084,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 33 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 33 @@ -1157,7 +1157,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 59 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 59 @@ -1234,7 +1234,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 46 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 46 @@ -1307,7 +1307,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 21 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 21 @@ -1455,7 +1455,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 154 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 154 @@ -1535,7 +1535,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 169 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 169 @@ -1615,7 +1615,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 375 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 375 @@ -1745,7 +1745,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 177 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 177 @@ -1875,7 +1875,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 215 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 215 @@ -2009,7 +2009,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 130 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 130 @@ -2089,7 +2089,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 426 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 426 @@ -2169,7 +2169,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 418 + src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js line 418 @@ -2212,9 +2212,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2231,7 +2231,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2260,7 +2260,7 @@

- + diff --git a/docs/PIXI.WebGLFilterManager.html b/docs/PIXI.WebGLFilterManager.html index 376a042c0..245abb5b3 100644 --- a/docs/PIXI.WebGLFilterManager.html +++ b/docs/PIXI.WebGLFilterManager.html @@ -6,7 +6,7 @@ Phaser CE Class: WebGLFilterManager - + @@ -176,7 +176,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 9 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 9 @@ -277,7 +277,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 15 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 15 @@ -350,7 +350,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 21 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 21 @@ -423,7 +423,7 @@
Type:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 27 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 27 @@ -623,7 +623,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 352 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 352 @@ -777,7 +777,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 46 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 46 @@ -861,7 +861,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 462 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 462 @@ -945,7 +945,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 413 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 413 @@ -1029,7 +1029,7 @@

Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 149 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 149 @@ -1163,7 +1163,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 62 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 62 @@ -1297,7 +1297,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 32 + src/pixi/renderers/webgl/utils/WebGLFilterManager.js line 32 @@ -1340,9 +1340,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1359,7 +1359,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1388,7 +1388,7 @@
Parameters:
- + diff --git a/docs/PIXI.WebGLRenderer.html b/docs/PIXI.WebGLRenderer.html index 0d00a80b8..318890b3a 100644 --- a/docs/PIXI.WebGLRenderer.html +++ b/docs/PIXI.WebGLRenderer.html @@ -6,7 +6,7 @@ Phaser CE Class: WebGLRenderer - + @@ -233,7 +233,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 19 + src/pixi/renderers/webgl/WebGLRenderer.js line 19 @@ -338,7 +338,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 62 + src/pixi/renderers/webgl/WebGLRenderer.js line 62 @@ -415,7 +415,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 187 + src/pixi/renderers/webgl/WebGLRenderer.js line 187 @@ -495,7 +495,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 82 + src/pixi/renderers/webgl/WebGLRenderer.js line 82 @@ -568,7 +568,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 199 + src/pixi/renderers/webgl/WebGLRenderer.js line 199 @@ -645,7 +645,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 173 + src/pixi/renderers/webgl/WebGLRenderer.js line 173 @@ -722,7 +722,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 24 + src/pixi/renderers/webgl/WebGLRenderer.js line 24 @@ -799,7 +799,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 108 + src/pixi/renderers/webgl/WebGLRenderer.js line 108 @@ -876,7 +876,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 166 + src/pixi/renderers/webgl/WebGLRenderer.js line 166 @@ -949,7 +949,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 143 + src/pixi/renderers/webgl/WebGLRenderer.js line 143 @@ -1026,7 +1026,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 92 + src/pixi/renderers/webgl/WebGLRenderer.js line 92 @@ -1103,7 +1103,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 70 + src/pixi/renderers/webgl/WebGLRenderer.js line 70 @@ -1176,7 +1176,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 137 + src/pixi/renderers/webgl/WebGLRenderer.js line 137 @@ -1249,7 +1249,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 193 + src/pixi/renderers/webgl/WebGLRenderer.js line 193 @@ -1333,7 +1333,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 46 + src/pixi/renderers/webgl/WebGLRenderer.js line 46 @@ -1410,7 +1410,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 152 + src/pixi/renderers/webgl/WebGLRenderer.js line 152 @@ -1487,7 +1487,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 159 + src/pixi/renderers/webgl/WebGLRenderer.js line 159 @@ -1564,7 +1564,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 180 + src/pixi/renderers/webgl/WebGLRenderer.js line 180 @@ -1641,7 +1641,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 54 + src/pixi/renderers/webgl/WebGLRenderer.js line 54 @@ -1714,7 +1714,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 37 + src/pixi/renderers/webgl/WebGLRenderer.js line 37 @@ -1791,7 +1791,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 116 + src/pixi/renderers/webgl/WebGLRenderer.js line 116 @@ -1868,7 +1868,7 @@
Type:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 100 + src/pixi/renderers/webgl/WebGLRenderer.js line 100 @@ -1946,7 +1946,7 @@

Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 604 + src/pixi/renderers/webgl/WebGLRenderer.js line 604 @@ -2026,7 +2026,7 @@

Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 226 + src/pixi/renderers/webgl/WebGLRenderer.js line 226 @@ -2110,7 +2110,7 @@

Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 636 + src/pixi/renderers/webgl/WebGLRenderer.js line 636 @@ -2244,7 +2244,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 378 + src/pixi/renderers/webgl/WebGLRenderer.js line 378 @@ -2426,7 +2426,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 419 + src/pixi/renderers/webgl/WebGLRenderer.js line 419 @@ -2584,7 +2584,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 456 + src/pixi/renderers/webgl/WebGLRenderer.js line 456 @@ -2729,7 +2729,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 280 + src/pixi/renderers/webgl/WebGLRenderer.js line 280 @@ -2887,7 +2887,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 483 + src/pixi/renderers/webgl/WebGLRenderer.js line 483 @@ -3045,7 +3045,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 543 + src/pixi/renderers/webgl/WebGLRenderer.js line 543 @@ -3112,9 +3112,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3131,7 +3131,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3160,7 +3160,7 @@
Returns:
- + diff --git a/docs/PIXI.html b/docs/PIXI.html index 74fb7b444..ac2061c46 100644 --- a/docs/PIXI.html +++ b/docs/PIXI.html @@ -6,7 +6,7 @@ Phaser CE Namespace: PIXI - + @@ -167,7 +167,7 @@

Source:
- src/pixi/Pixi.js line 1 + src/pixi/Pixi.js line 1 @@ -314,7 +314,7 @@

Source:
- src/pixi/renderers/webgl/WebGLRenderer.js line 5 + src/pixi/renderers/webgl/WebGLRenderer.js line 5 @@ -393,7 +393,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 12 + src/pixi/textures/Texture.js line 12 @@ -541,7 +541,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLShaderUtils.js line 26 + src/pixi/renderers/webgl/utils/WebGLShaderUtils.js line 26 @@ -739,7 +739,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLShaderUtils.js line 69 + src/pixi/renderers/webgl/utils/WebGLShaderUtils.js line 69 @@ -913,7 +913,7 @@
Parameters:
Source:
- src/pixi/renderers/webgl/utils/WebGLShaderUtils.js line 14 + src/pixi/renderers/webgl/utils/WebGLShaderUtils.js line 14 @@ -976,9 +976,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -995,7 +995,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1024,7 +1024,7 @@
Returns:
- + diff --git a/docs/Phaser.Animation.html b/docs/Phaser.Animation.html index 84cedf693..c09e109dd 100644 --- a/docs/Phaser.Animation.html +++ b/docs/Phaser.Animation.html @@ -6,7 +6,7 @@ Phaser CE Class: Animation - + @@ -474,7 +474,7 @@
Parameters:
Source:
- src/animation/Animation.js line 22 + src/animation/Animation.js line 22 @@ -579,7 +579,7 @@
Type:
Source:
- src/animation/Animation.js line 125 + src/animation/Animation.js line 125 @@ -656,7 +656,7 @@
Type:
Source:
- src/animation/Animation.js line 58 + src/animation/Animation.js line 58 @@ -733,7 +733,7 @@
Type:
Source:
- src/animation/Animation.js line 782 + src/animation/Animation.js line 782 @@ -810,7 +810,7 @@
Type:
Source:
- src/animation/Animation.js line 725 + src/animation/Animation.js line 725 @@ -887,7 +887,7 @@
Type:
Source:
- src/animation/Animation.js line 711 + src/animation/Animation.js line 711 @@ -964,7 +964,7 @@
Type:
Source:
- src/animation/Animation.js line 29 + src/animation/Animation.js line 29 @@ -1041,7 +1041,7 @@
Type:
Source:
- src/animation/Animation.js line 80 + src/animation/Animation.js line 80 @@ -1118,7 +1118,7 @@
Type:
Source:
- src/animation/Animation.js line 92 + src/animation/Animation.js line 92 @@ -1195,7 +1195,7 @@
Type:
Source:
- src/animation/Animation.js line 86 + src/animation/Animation.js line 86 @@ -1272,7 +1272,7 @@
Type:
Source:
- src/animation/Animation.js line 157 + src/animation/Animation.js line 157 @@ -1349,7 +1349,7 @@
Type:
Source:
- src/animation/Animation.js line 74 + src/animation/Animation.js line 74 @@ -1426,7 +1426,7 @@
Type:
Source:
- src/animation/Animation.js line 63 + src/animation/Animation.js line 63 @@ -1503,7 +1503,7 @@
Type:
Source:
- src/animation/Animation.js line 68 + src/animation/Animation.js line 68 @@ -1580,7 +1580,7 @@
Type:
Source:
- src/animation/Animation.js line 46 + src/animation/Animation.js line 46 @@ -1657,7 +1657,7 @@
Type:
Source:
- src/animation/Animation.js line 146 + src/animation/Animation.js line 146 @@ -1734,7 +1734,7 @@
Type:
Source:
- src/animation/Animation.js line 151 + src/animation/Animation.js line 151 @@ -1811,7 +1811,7 @@
Type:
Source:
- src/animation/Animation.js line 130 + src/animation/Animation.js line 130 @@ -1895,7 +1895,7 @@
Type:
Source:
- src/animation/Animation.js line 141 + src/animation/Animation.js line 141 @@ -1972,7 +1972,7 @@
Type:
Source:
- src/animation/Animation.js line 661 + src/animation/Animation.js line 661 @@ -2049,7 +2049,7 @@
Type:
Source:
- src/animation/Animation.js line 693 + src/animation/Animation.js line 693 @@ -2126,7 +2126,7 @@
Type:
Source:
- src/animation/Animation.js line 761 + src/animation/Animation.js line 761 @@ -2424,7 +2424,7 @@
Parameters:
Source:
- src/animation/Animation.js line 808 + src/animation/Animation.js line 808 @@ -2533,7 +2533,7 @@

Source:
- src/animation/Animation.js line 631 + src/animation/Animation.js line 631 @@ -2617,7 +2617,7 @@

Source:
- src/animation/Animation.js line 598 + src/animation/Animation.js line 598 @@ -2771,7 +2771,7 @@
Parameters:
Source:
- src/animation/Animation.js line 524 + src/animation/Animation.js line 524 @@ -2855,7 +2855,7 @@

Source:
- src/animation/Animation.js line 362 + src/animation/Animation.js line 362 @@ -2939,7 +2939,7 @@

Source:
- src/animation/Animation.js line 375 + src/animation/Animation.js line 375 @@ -3175,7 +3175,7 @@
Parameters:
Source:
- src/animation/Animation.js line 166 + src/animation/Animation.js line 166 @@ -3355,7 +3355,7 @@
Parameters:
Source:
- src/animation/Animation.js line 555 + src/animation/Animation.js line 555 @@ -3439,7 +3439,7 @@

Source:
- src/animation/Animation.js line 219 + src/animation/Animation.js line 219 @@ -3523,7 +3523,7 @@

Source:
- src/animation/Animation.js line 246 + src/animation/Animation.js line 246 @@ -3633,7 +3633,7 @@

Source:
- src/animation/Animation.js line 259 + src/animation/Animation.js line 259 @@ -3852,7 +3852,7 @@
Parameters:
Source:
- src/animation/Animation.js line 274 + src/animation/Animation.js line 274 @@ -4047,7 +4047,7 @@
Parameters:
Source:
- src/animation/Animation.js line 332 + src/animation/Animation.js line 332 @@ -4131,7 +4131,7 @@

Source:
- src/animation/Animation.js line 388 + src/animation/Animation.js line 388 @@ -4265,7 +4265,7 @@
Parameters:
Source:
- src/animation/Animation.js line 586 + src/animation/Animation.js line 586 @@ -4308,9 +4308,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4327,7 +4327,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4356,7 +4356,7 @@
Parameters:
- + diff --git a/docs/Phaser.AnimationManager.html b/docs/Phaser.AnimationManager.html index 6965d2289..eedd65f54 100644 --- a/docs/Phaser.AnimationManager.html +++ b/docs/Phaser.AnimationManager.html @@ -6,7 +6,7 @@ Phaser CE Class: AnimationManager - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 15 + src/animation/AnimationManager.js line 15 @@ -336,7 +336,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 40 + src/animation/AnimationManager.js line 40 @@ -414,7 +414,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 34 + src/animation/AnimationManager.js line 34 @@ -491,7 +491,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 485 + src/animation/AnimationManager.js line 485 @@ -568,7 +568,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 426 + src/animation/AnimationManager.js line 426 @@ -645,7 +645,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 509 + src/animation/AnimationManager.js line 509 @@ -722,7 +722,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 440 + src/animation/AnimationManager.js line 440 @@ -799,7 +799,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 25 + src/animation/AnimationManager.js line 25 @@ -876,7 +876,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 52 + src/animation/AnimationManager.js line 52 @@ -953,7 +953,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 472 + src/animation/AnimationManager.js line 472 @@ -1030,7 +1030,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 454 + src/animation/AnimationManager.js line 454 @@ -1107,7 +1107,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 20 + src/animation/AnimationManager.js line 20 @@ -1191,7 +1191,7 @@
Type:
Source:
- src/animation/AnimationManager.js line 46 + src/animation/AnimationManager.js line 46 @@ -1496,7 +1496,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 165 + src/animation/AnimationManager.js line 165 @@ -1605,7 +1605,7 @@

Source:
- src/animation/AnimationManager.js line 395 + src/animation/AnimationManager.js line 395 @@ -1739,7 +1739,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 360 + src/animation/AnimationManager.js line 360 @@ -1917,7 +1917,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 330 + src/animation/AnimationManager.js line 330 @@ -2191,7 +2191,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 244 + src/animation/AnimationManager.js line 244 @@ -2369,7 +2369,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 345 + src/animation/AnimationManager.js line 345 @@ -2453,7 +2453,7 @@

Source:
- src/animation/AnimationManager.js line 380 + src/animation/AnimationManager.js line 380 @@ -2648,7 +2648,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 289 + src/animation/AnimationManager.js line 289 @@ -2732,7 +2732,7 @@

Source:
- src/animation/AnimationManager.js line 307 + src/animation/AnimationManager.js line 307 @@ -2946,7 +2946,7 @@
Parameters:
Source:
- src/animation/AnimationManager.js line 213 + src/animation/AnimationManager.js line 213 @@ -3013,9 +3013,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3032,7 +3032,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3061,7 +3061,7 @@
Returns:
- + diff --git a/docs/Phaser.AnimationParser.html b/docs/Phaser.AnimationParser.html index 0e2974f3c..d733f6163 100644 --- a/docs/Phaser.AnimationParser.html +++ b/docs/Phaser.AnimationParser.html @@ -6,7 +6,7 @@ Phaser CE Class: AnimationParser - + @@ -180,7 +180,7 @@

Source:
- src/animation/AnimationParser.js line 13 + src/animation/AnimationParser.js line 13 @@ -356,7 +356,7 @@
Parameters:
Source:
- src/animation/AnimationParser.js line 181 + src/animation/AnimationParser.js line 181 @@ -538,7 +538,7 @@
Parameters:
Source:
- src/animation/AnimationParser.js line 296 + src/animation/AnimationParser.js line 296 @@ -720,7 +720,7 @@
Parameters:
Source:
- src/animation/AnimationParser.js line 239 + src/animation/AnimationParser.js line 239 @@ -1165,7 +1165,7 @@
Parameters:
Source:
- src/animation/AnimationParser.js line 15 + src/animation/AnimationParser.js line 15 @@ -1354,7 +1354,7 @@
Parameters:
Source:
- src/animation/AnimationParser.js line 357 + src/animation/AnimationParser.js line 357 @@ -1421,9 +1421,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1440,7 +1440,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1469,7 +1469,7 @@
Returns:
- + diff --git a/docs/Phaser.ArraySet.html b/docs/Phaser.ArraySet.html index c41e5d560..7c55e65cb 100644 --- a/docs/Phaser.ArraySet.html +++ b/docs/Phaser.ArraySet.html @@ -6,7 +6,7 @@ Phaser CE Class: ArraySet - + @@ -253,7 +253,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 19 + src/utils/ArraySet.js line 19 @@ -358,7 +358,7 @@
Type:
Source:
- src/utils/ArraySet.js line 222 + src/utils/ArraySet.js line 222 @@ -435,7 +435,7 @@
Type:
Source:
- src/utils/ArraySet.js line 32 + src/utils/ArraySet.js line 32 @@ -512,7 +512,7 @@
Type:
Source:
- src/utils/ArraySet.js line 246 + src/utils/ArraySet.js line 246 @@ -589,7 +589,7 @@
Type:
Source:
- src/utils/ArraySet.js line 26 + src/utils/ArraySet.js line 26 @@ -666,7 +666,7 @@
Type:
Source:
- src/utils/ArraySet.js line 207 + src/utils/ArraySet.js line 207 @@ -795,7 +795,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 37 + src/utils/ArraySet.js line 37 @@ -999,7 +999,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 151 + src/utils/ArraySet.js line 151 @@ -1133,7 +1133,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 91 + src/utils/ArraySet.js line 91 @@ -1316,7 +1316,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 67 + src/utils/ArraySet.js line 67 @@ -1474,7 +1474,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 55 + src/utils/ArraySet.js line 55 @@ -1632,7 +1632,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 113 + src/utils/ArraySet.js line 113 @@ -1810,7 +1810,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 176 + src/utils/ArraySet.js line 176 @@ -1894,7 +1894,7 @@

Source:
- src/utils/ArraySet.js line 103 + src/utils/ArraySet.js line 103 @@ -2052,7 +2052,7 @@
Parameters:
Source:
- src/utils/ArraySet.js line 131 + src/utils/ArraySet.js line 131 @@ -2095,9 +2095,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2114,7 +2114,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2143,7 +2143,7 @@
Parameters:
- + diff --git a/docs/Phaser.ArrayUtils.html b/docs/Phaser.ArrayUtils.html index 8eca1157f..0d427ee88 100644 --- a/docs/Phaser.ArrayUtils.html +++ b/docs/Phaser.ArrayUtils.html @@ -6,7 +6,7 @@ Phaser CE Class: ArrayUtils - + @@ -180,7 +180,7 @@

Source:
- src/utils/ArrayUtils.js line 13 + src/utils/ArrayUtils.js line 13 @@ -357,7 +357,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 193 + src/utils/ArrayUtils.js line 193 @@ -565,7 +565,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 15 + src/utils/ArrayUtils.js line 15 @@ -774,7 +774,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 267 + src/utils/ArrayUtils.js line 267 @@ -1030,7 +1030,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 304 + src/utils/ArrayUtils.js line 304 @@ -1304,7 +1304,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 72 + src/utils/ArrayUtils.js line 72 @@ -1521,7 +1521,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 38 + src/utils/ArrayUtils.js line 38 @@ -1683,7 +1683,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 246 + src/utils/ArrayUtils.js line 246 @@ -1869,7 +1869,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 153 + src/utils/ArrayUtils.js line 153 @@ -2031,7 +2031,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 225 + src/utils/ArrayUtils.js line 225 @@ -2189,7 +2189,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 106 + src/utils/ArrayUtils.js line 106 @@ -2347,7 +2347,7 @@
Parameters:
Source:
- src/utils/ArrayUtils.js line 126 + src/utils/ArrayUtils.js line 126 @@ -2414,9 +2414,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2433,7 +2433,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2462,7 +2462,7 @@
Returns:
- + diff --git a/docs/Phaser.AudioSprite.html b/docs/Phaser.AudioSprite.html index 690fa4f0e..fdbfaef77 100644 --- a/docs/Phaser.AudioSprite.html +++ b/docs/Phaser.AudioSprite.html @@ -6,7 +6,7 @@ Phaser CE Class: AudioSprite - + @@ -255,7 +255,7 @@
Parameters:
Source:
- src/sound/AudioSprite.js line 17 + src/sound/AudioSprite.js line 17 @@ -360,7 +360,7 @@
Type:
Source:
- src/sound/AudioSprite.js line 48 + src/sound/AudioSprite.js line 48 @@ -437,7 +437,7 @@
Type:
Source:
- src/sound/AudioSprite.js line 41 + src/sound/AudioSprite.js line 41 @@ -514,7 +514,7 @@
Type:
Source:
- src/sound/AudioSprite.js line 35 + src/sound/AudioSprite.js line 35 @@ -591,7 +591,7 @@
Type:
Source:
- src/sound/AudioSprite.js line 23 + src/sound/AudioSprite.js line 23 @@ -668,7 +668,7 @@
Type:
Source:
- src/sound/AudioSprite.js line 29 + src/sound/AudioSprite.js line 29 @@ -745,7 +745,7 @@
Type:
Source:
- src/sound/AudioSprite.js line 54 + src/sound/AudioSprite.js line 54 @@ -873,7 +873,7 @@
Parameters:
Source:
- src/sound/AudioSprite.js line 112 + src/sound/AudioSprite.js line 112 @@ -1089,7 +1089,7 @@
Parameters:
Source:
- src/sound/AudioSprite.js line 76 + src/sound/AudioSprite.js line 76 @@ -1267,7 +1267,7 @@
Parameters:
Source:
- src/sound/AudioSprite.js line 91 + src/sound/AudioSprite.js line 91 @@ -1310,9 +1310,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1329,7 +1329,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1358,7 +1358,7 @@
Parameters:
- + diff --git a/docs/Phaser.BitmapData.html b/docs/Phaser.BitmapData.html index a32ca0e34..0d1515cf7 100644 --- a/docs/Phaser.BitmapData.html +++ b/docs/Phaser.BitmapData.html @@ -6,7 +6,7 @@ Phaser CE Class: BitmapData - + @@ -407,7 +407,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 24 + src/gameobjects/BitmapData.js line 24 @@ -512,7 +512,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 122 + src/gameobjects/BitmapData.js line 122 @@ -589,7 +589,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 54 + src/gameobjects/BitmapData.js line 54 @@ -666,7 +666,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 60 + src/gameobjects/BitmapData.js line 60 @@ -743,7 +743,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 65 + src/gameobjects/BitmapData.js line 65 @@ -821,7 +821,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 84 + src/gameobjects/BitmapData.js line 84 @@ -898,7 +898,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 157 + src/gameobjects/BitmapData.js line 157 @@ -975,7 +975,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 152 + src/gameobjects/BitmapData.js line 152 @@ -1052,7 +1052,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 133 + src/gameobjects/BitmapData.js line 133 @@ -1129,7 +1129,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 33 + src/gameobjects/BitmapData.js line 33 @@ -1206,7 +1206,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 48 + src/gameobjects/BitmapData.js line 48 @@ -1285,7 +1285,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 77 + src/gameobjects/BitmapData.js line 77 @@ -1362,7 +1362,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 38 + src/gameobjects/BitmapData.js line 38 @@ -1439,7 +1439,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 2478 + src/gameobjects/BitmapData.js line 2478 @@ -1516,7 +1516,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 94 + src/gameobjects/BitmapData.js line 94 @@ -1593,7 +1593,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 2460 + src/gameobjects/BitmapData.js line 2460 @@ -1670,7 +1670,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 70 + src/gameobjects/BitmapData.js line 70 @@ -1747,7 +1747,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 128 + src/gameobjects/BitmapData.js line 128 @@ -1824,7 +1824,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 139 + src/gameobjects/BitmapData.js line 139 @@ -1901,7 +1901,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 147 + src/gameobjects/BitmapData.js line 147 @@ -1978,7 +1978,7 @@
Type:
Source:
- src/gameobjects/BitmapData.js line 43 + src/gameobjects/BitmapData.js line 43 @@ -2226,7 +2226,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 2496 + src/gameobjects/BitmapData.js line 2496 @@ -2394,7 +2394,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 387 + src/gameobjects/BitmapData.js line 387 @@ -2772,7 +2772,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1232 + src/gameobjects/BitmapData.js line 1232 @@ -3078,7 +3078,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1780 + src/gameobjects/BitmapData.js line 1780 @@ -3186,7 +3186,7 @@

Source:
- src/gameobjects/BitmapData.js line 2240 + src/gameobjects/BitmapData.js line 2240 @@ -3294,7 +3294,7 @@

Source:
- src/gameobjects/BitmapData.js line 2408 + src/gameobjects/BitmapData.js line 2408 @@ -3402,7 +3402,7 @@

Source:
- src/gameobjects/BitmapData.js line 2324 + src/gameobjects/BitmapData.js line 2324 @@ -3510,7 +3510,7 @@

Source:
- src/gameobjects/BitmapData.js line 2312 + src/gameobjects/BitmapData.js line 2312 @@ -3618,7 +3618,7 @@

Source:
- src/gameobjects/BitmapData.js line 2288 + src/gameobjects/BitmapData.js line 2288 @@ -3726,7 +3726,7 @@

Source:
- src/gameobjects/BitmapData.js line 2216 + src/gameobjects/BitmapData.js line 2216 @@ -3834,7 +3834,7 @@

Source:
- src/gameobjects/BitmapData.js line 2192 + src/gameobjects/BitmapData.js line 2192 @@ -3942,7 +3942,7 @@

Source:
- src/gameobjects/BitmapData.js line 2204 + src/gameobjects/BitmapData.js line 2204 @@ -4050,7 +4050,7 @@

Source:
- src/gameobjects/BitmapData.js line 2180 + src/gameobjects/BitmapData.js line 2180 @@ -4158,7 +4158,7 @@

Source:
- src/gameobjects/BitmapData.js line 2360 + src/gameobjects/BitmapData.js line 2360 @@ -4266,7 +4266,7 @@

Source:
- src/gameobjects/BitmapData.js line 2372 + src/gameobjects/BitmapData.js line 2372 @@ -4374,7 +4374,7 @@

Source:
- src/gameobjects/BitmapData.js line 2336 + src/gameobjects/BitmapData.js line 2336 @@ -4482,7 +4482,7 @@

Source:
- src/gameobjects/BitmapData.js line 2384 + src/gameobjects/BitmapData.js line 2384 @@ -4590,7 +4590,7 @@

Source:
- src/gameobjects/BitmapData.js line 2300 + src/gameobjects/BitmapData.js line 2300 @@ -4698,7 +4698,7 @@

Source:
- src/gameobjects/BitmapData.js line 2420 + src/gameobjects/BitmapData.js line 2420 @@ -4806,7 +4806,7 @@

Source:
- src/gameobjects/BitmapData.js line 2252 + src/gameobjects/BitmapData.js line 2252 @@ -4914,7 +4914,7 @@

Source:
- src/gameobjects/BitmapData.js line 2276 + src/gameobjects/BitmapData.js line 2276 @@ -5022,7 +5022,7 @@

Source:
- src/gameobjects/BitmapData.js line 2120 + src/gameobjects/BitmapData.js line 2120 @@ -5130,7 +5130,7 @@

Source:
- src/gameobjects/BitmapData.js line 2396 + src/gameobjects/BitmapData.js line 2396 @@ -5238,7 +5238,7 @@

Source:
- src/gameobjects/BitmapData.js line 2264 + src/gameobjects/BitmapData.js line 2264 @@ -5346,7 +5346,7 @@

Source:
- src/gameobjects/BitmapData.js line 2348 + src/gameobjects/BitmapData.js line 2348 @@ -5454,7 +5454,7 @@

Source:
- src/gameobjects/BitmapData.js line 2168 + src/gameobjects/BitmapData.js line 2168 @@ -5562,7 +5562,7 @@

Source:
- src/gameobjects/BitmapData.js line 2144 + src/gameobjects/BitmapData.js line 2144 @@ -5670,7 +5670,7 @@

Source:
- src/gameobjects/BitmapData.js line 2156 + src/gameobjects/BitmapData.js line 2156 @@ -5778,7 +5778,7 @@

Source:
- src/gameobjects/BitmapData.js line 2132 + src/gameobjects/BitmapData.js line 2132 @@ -5886,7 +5886,7 @@

Source:
- src/gameobjects/BitmapData.js line 2228 + src/gameobjects/BitmapData.js line 2228 @@ -6152,7 +6152,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1929 + src/gameobjects/BitmapData.js line 1929 @@ -6450,7 +6450,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 455 + src/gameobjects/BitmapData.js line 455 @@ -6558,7 +6558,7 @@

Source:
- src/gameobjects/BitmapData.js line 449 + src/gameobjects/BitmapData.js line 449 @@ -7366,7 +7366,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1257 + src/gameobjects/BitmapData.js line 1257 @@ -7607,7 +7607,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 2432 + src/gameobjects/BitmapData.js line 2432 @@ -8027,7 +8027,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1584 + src/gameobjects/BitmapData.js line 1584 @@ -8298,7 +8298,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1477 + src/gameobjects/BitmapData.js line 1477 @@ -8406,7 +8406,7 @@

Source:
- src/gameobjects/BitmapData.js line 2106 + src/gameobjects/BitmapData.js line 2106 @@ -8807,7 +8807,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1602 + src/gameobjects/BitmapData.js line 1602 @@ -9085,7 +9085,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1692 + src/gameobjects/BitmapData.js line 1692 @@ -9346,7 +9346,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1629 + src/gameobjects/BitmapData.js line 1629 @@ -9829,7 +9829,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1813 + src/gameobjects/BitmapData.js line 1813 @@ -10115,7 +10115,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 485 + src/gameobjects/BitmapData.js line 485 @@ -10371,7 +10371,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 548 + src/gameobjects/BitmapData.js line 548 @@ -10578,7 +10578,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 506 + src/gameobjects/BitmapData.js line 506 @@ -10758,7 +10758,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1205 + src/gameobjects/BitmapData.js line 1205 @@ -10942,7 +10942,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1123 + src/gameobjects/BitmapData.js line 1123 @@ -11216,7 +11216,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 521 + src/gameobjects/BitmapData.js line 521 @@ -11461,7 +11461,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1044 + src/gameobjects/BitmapData.js line 1044 @@ -11646,7 +11646,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1074 + src/gameobjects/BitmapData.js line 1074 @@ -11976,7 +11976,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1093 + src/gameobjects/BitmapData.js line 1093 @@ -12134,7 +12134,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1111 + src/gameobjects/BitmapData.js line 1111 @@ -12496,7 +12496,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1957 + src/gameobjects/BitmapData.js line 1957 @@ -12675,7 +12675,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 415 + src/gameobjects/BitmapData.js line 415 @@ -12926,7 +12926,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 237 + src/gameobjects/BitmapData.js line 237 @@ -13141,7 +13141,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 263 + src/gameobjects/BitmapData.js line 263 @@ -13356,7 +13356,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 325 + src/gameobjects/BitmapData.js line 325 @@ -13660,7 +13660,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1990 + src/gameobjects/BitmapData.js line 1990 @@ -14030,7 +14030,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 765 + src/gameobjects/BitmapData.js line 765 @@ -14403,7 +14403,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 708 + src/gameobjects/BitmapData.js line 708 @@ -14701,7 +14701,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1865 + src/gameobjects/BitmapData.js line 1865 @@ -14811,7 +14811,7 @@

Source:
- src/gameobjects/BitmapData.js line 2087 + src/gameobjects/BitmapData.js line 2087 @@ -15238,7 +15238,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 818 + src/gameobjects/BitmapData.js line 818 @@ -15420,7 +15420,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 622 + src/gameobjects/BitmapData.js line 622 @@ -15716,7 +15716,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 867 + src/gameobjects/BitmapData.js line 867 @@ -16074,7 +16074,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1027 + src/gameobjects/BitmapData.js line 1027 @@ -16468,7 +16468,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 989 + src/gameobjects/BitmapData.js line 989 @@ -16764,7 +16764,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1749 + src/gameobjects/BitmapData.js line 1749 @@ -17062,7 +17062,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 927 + src/gameobjects/BitmapData.js line 927 @@ -17430,7 +17430,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 1888 + src/gameobjects/BitmapData.js line 1888 @@ -17683,7 +17683,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 2038 + src/gameobjects/BitmapData.js line 2038 @@ -17984,7 +17984,7 @@
Parameters:
Source:
- src/gameobjects/BitmapData.js line 665 + src/gameobjects/BitmapData.js line 665 @@ -18051,9 +18051,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -18070,7 +18070,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -18099,7 +18099,7 @@
Returns:
- + diff --git a/docs/Phaser.BitmapText.html b/docs/Phaser.BitmapText.html index 492466018..fb3de1ea1 100644 --- a/docs/Phaser.BitmapText.html +++ b/docs/Phaser.BitmapText.html @@ -6,7 +6,7 @@ Phaser CE Class: BitmapText - + @@ -489,7 +489,7 @@
Parameters:
Source:
- src/gameobjects/BitmapText.js line 54 + src/gameobjects/BitmapText.js line 54 @@ -627,7 +627,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 558 + src/gameobjects/BitmapText.js line 558 @@ -724,7 +724,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -820,7 +820,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -897,7 +897,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 92 + src/gameobjects/BitmapText.js line 92 @@ -988,7 +988,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -1075,7 +1075,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1172,7 +1172,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1275,7 +1275,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1362,7 +1362,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1455,7 +1455,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1542,7 +1542,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1629,7 +1629,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1716,7 +1716,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1808,7 +1808,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -1894,7 +1894,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1980,7 +1980,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -2076,7 +2076,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2162,7 +2162,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2249,7 +2249,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2326,7 +2326,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 159 + src/gameobjects/BitmapText.js line 159 @@ -2413,7 +2413,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2511,7 +2511,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 277 + src/gameobjects/components/Core.js line 277 @@ -2597,7 +2597,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2688,7 +2688,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2781,7 +2781,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -2858,7 +2858,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 602 + src/gameobjects/BitmapText.js line 602 @@ -2935,7 +2935,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 625 + src/gameobjects/BitmapText.js line 625 @@ -3022,7 +3022,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3108,7 +3108,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3194,7 +3194,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3290,7 +3290,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3378,7 +3378,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3465,7 +3465,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3556,7 +3556,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3649,7 +3649,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -3735,7 +3735,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -3837,7 +3837,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -3924,7 +3924,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4001,7 +4001,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 536 + src/gameobjects/BitmapText.js line 536 @@ -4091,7 +4091,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4180,7 +4180,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4261,7 +4261,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 671 + src/gameobjects/BitmapText.js line 671 @@ -4348,7 +4348,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4436,7 +4436,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4524,7 +4524,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4610,7 +4610,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -4697,7 +4697,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -4786,7 +4786,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -4875,7 +4875,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -4952,7 +4952,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 75 + src/gameobjects/BitmapText.js line 75 @@ -5039,7 +5039,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -5127,7 +5127,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -5213,7 +5213,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5299,7 +5299,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5386,7 +5386,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -5473,7 +5473,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -5560,7 +5560,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -5649,7 +5649,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5738,7 +5738,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -5817,7 +5817,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 702 + src/gameobjects/BitmapText.js line 702 @@ -5894,7 +5894,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 649 + src/gameobjects/BitmapText.js line 649 @@ -5971,7 +5971,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 87 + src/gameobjects/BitmapText.js line 87 @@ -6048,7 +6048,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 81 + src/gameobjects/BitmapText.js line 81 @@ -6125,7 +6125,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 580 + src/gameobjects/BitmapText.js line 580 @@ -6212,7 +6212,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -6289,7 +6289,7 @@
Type:
Source:
- src/gameobjects/BitmapText.js line 69 + src/gameobjects/BitmapText.js line 69 @@ -6388,7 +6388,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -6474,7 +6474,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -6562,7 +6562,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -6654,7 +6654,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -6745,7 +6745,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -6836,7 +6836,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -6927,7 +6927,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -7018,7 +7018,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -7104,7 +7104,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -7196,7 +7196,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -7288,7 +7288,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -7377,7 +7377,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -7514,7 +7514,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7705,7 +7705,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -8048,7 +8048,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -8392,7 +8392,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -8608,7 +8608,7 @@
Parameters:
Source:
- src/gameobjects/BitmapText.js line 315 + src/gameobjects/BitmapText.js line 315 @@ -8775,7 +8775,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -8895,7 +8895,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -9140,7 +9140,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -9324,7 +9324,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -9491,7 +9491,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -9658,7 +9658,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -9775,7 +9775,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -9896,7 +9896,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -10009,7 +10009,7 @@

Source:
- src/gameobjects/BitmapText.js line 202 + src/gameobjects/BitmapText.js line 202 @@ -10098,7 +10098,7 @@

Source:
- src/gameobjects/BitmapText.js line 192 + src/gameobjects/BitmapText.js line 192 @@ -10215,7 +10215,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -10304,7 +10304,7 @@

Source:
- src/gameobjects/BitmapText.js line 480 + src/gameobjects/BitmapText.js line 480 @@ -10471,7 +10471,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -10638,7 +10638,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -10829,7 +10829,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -11068,7 +11068,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -11257,7 +11257,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -11448,7 +11448,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -11583,7 +11583,7 @@
Parameters:
Source:
- src/gameobjects/BitmapText.js line 220 + src/gameobjects/BitmapText.js line 220 @@ -11750,7 +11750,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -11893,7 +11893,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -12106,7 +12106,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -12227,7 +12227,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -12320,7 +12320,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -12389,9 +12389,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -12408,7 +12408,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -12437,7 +12437,7 @@
Returns:
- + diff --git a/docs/Phaser.Bullet.html b/docs/Phaser.Bullet.html index dc7bd39cd..3b0e3511e 100644 --- a/docs/Phaser.Bullet.html +++ b/docs/Phaser.Bullet.html @@ -6,7 +6,7 @@ Phaser CE Class: Bullet - + @@ -339,7 +339,7 @@
Parameters:
Source:
- src/plugins/weapon/Bullet.js line 20 + src/plugins/weapon/Bullet.js line 20 @@ -480,7 +480,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -576,7 +576,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -666,7 +666,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -757,7 +757,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -844,7 +844,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -941,7 +941,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1035,7 +1035,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1138,7 +1138,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1318,7 +1318,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1405,7 +1405,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1492,7 +1492,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1579,7 +1579,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1671,7 +1671,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -1757,7 +1757,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1843,7 +1843,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1931,7 +1931,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -2032,7 +2032,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2118,7 +2118,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2205,7 +2205,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -2292,7 +2292,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -2378,7 +2378,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -2465,7 +2465,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2552,7 +2552,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2657,7 +2657,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -2743,7 +2743,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2834,7 +2834,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2927,7 +2927,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -3018,7 +3018,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3109,7 +3109,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3196,7 +3196,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3282,7 +3282,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3376,7 +3376,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -3462,7 +3462,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3558,7 +3558,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3646,7 +3646,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3733,7 +3733,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3824,7 +3824,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3917,7 +3917,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -4003,7 +4003,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -4105,7 +4105,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -4192,7 +4192,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4282,7 +4282,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4371,7 +4371,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4465,7 +4465,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -4552,7 +4552,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4640,7 +4640,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4728,7 +4728,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4814,7 +4814,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -4901,7 +4901,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -4990,7 +4990,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -5079,7 +5079,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -5165,7 +5165,7 @@
Type:
Source:
- src/gameobjects/Sprite.js line 61 + src/gameobjects/Sprite.js line 61 @@ -5252,7 +5252,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -5340,7 +5340,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -5426,7 +5426,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5512,7 +5512,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5599,7 +5599,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -5686,7 +5686,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -5773,7 +5773,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -5867,7 +5867,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5956,7 +5956,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -6044,7 +6044,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -6132,7 +6132,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -6226,7 +6226,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -6314,7 +6314,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -6400,7 +6400,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -6493,7 +6493,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -6586,7 +6586,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -6673,7 +6673,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -6759,7 +6759,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -6845,7 +6845,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -6931,7 +6931,7 @@
Type:
Source:
- src/gameobjects/Sprite.js line 55 + src/gameobjects/Sprite.js line 55 @@ -7035,7 +7035,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -7121,7 +7121,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -7209,7 +7209,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -7301,7 +7301,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -7392,7 +7392,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -7483,7 +7483,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -7574,7 +7574,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -7665,7 +7665,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -7751,7 +7751,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -7838,7 +7838,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -7925,7 +7925,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -8014,7 +8014,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -8151,7 +8151,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -8342,7 +8342,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -8685,7 +8685,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -9029,7 +9029,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -9149,7 +9149,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -9316,7 +9316,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -9542,7 +9542,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -9686,7 +9686,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -9805,7 +9805,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -10050,7 +10050,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -10225,7 +10225,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -10392,7 +10392,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -10559,7 +10559,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -10676,7 +10676,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -10843,7 +10843,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -10957,7 +10957,7 @@

Source:
- src/plugins/weapon/Bullet.js line 42 + src/plugins/weapon/Bullet.js line 42 @@ -11218,7 +11218,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -11314,7 +11314,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -11434,7 +11434,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -11617,7 +11617,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -11923,7 +11923,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -12040,7 +12040,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -12133,7 +12133,7 @@

Source:
- src/gameobjects/Sprite.js line 106 + src/gameobjects/Sprite.js line 106 @@ -12250,7 +12250,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -12393,7 +12393,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -12560,7 +12560,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -12751,7 +12751,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -12990,7 +12990,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -13107,7 +13107,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -13300,7 +13300,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -13465,7 +13465,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -13585,7 +13585,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -13776,7 +13776,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -13920,7 +13920,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -14064,7 +14064,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -14325,7 +14325,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -14525,7 +14525,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -14692,7 +14692,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -14835,7 +14835,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -15048,7 +15048,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -15163,7 +15163,7 @@

Source:
- src/plugins/weapon/Bullet.js line 62 + src/plugins/weapon/Bullet.js line 62 @@ -15256,7 +15256,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -15376,7 +15376,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -15539,7 +15539,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -15608,9 +15608,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -15627,7 +15627,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -15656,7 +15656,7 @@
Returns:
- + diff --git a/docs/Phaser.Button.html b/docs/Phaser.Button.html index b9d53ddf8..c574f9aeb 100644 --- a/docs/Phaser.Button.html +++ b/docs/Phaser.Button.html @@ -6,7 +6,7 @@ Phaser CE Class: Button - + @@ -613,7 +613,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 35 + src/gameobjects/Button.js line 35 @@ -749,7 +749,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -845,7 +845,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -935,7 +935,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -1026,7 +1026,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -1113,7 +1113,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1210,7 +1210,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1304,7 +1304,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1391,7 +1391,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1484,7 +1484,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1571,7 +1571,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1658,7 +1658,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1745,7 +1745,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1831,7 +1831,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1917,7 +1917,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -2005,7 +2005,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -2101,7 +2101,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2187,7 +2187,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2274,7 +2274,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2361,7 +2361,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2461,7 +2461,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -2547,7 +2547,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2638,7 +2638,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2731,7 +2731,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -2812,7 +2812,7 @@
Type:
Source:
- src/gameobjects/Button.js line 203 + src/gameobjects/Button.js line 203 @@ -2908,7 +2908,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3004,7 +3004,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3081,7 +3081,7 @@
Type:
Source:
- src/gameobjects/Button.js line 193 + src/gameobjects/Button.js line 193 @@ -3168,7 +3168,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3254,7 +3254,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3340,7 +3340,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3436,7 +3436,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3524,7 +3524,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3611,7 +3611,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3702,7 +3702,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3800,7 +3800,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -3878,7 +3878,7 @@
Type:
Source:
- src/gameobjects/Button.js line 186 + src/gameobjects/Button.js line 186 @@ -3980,7 +3980,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -4067,7 +4067,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4157,7 +4157,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4246,7 +4246,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4333,7 +4333,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4421,7 +4421,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4509,7 +4509,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4592,7 +4592,7 @@
Type:
Source:
- src/gameobjects/Button.js line 105 + src/gameobjects/Button.js line 105 @@ -4669,7 +4669,7 @@
Type:
Source:
- src/gameobjects/Button.js line 133 + src/gameobjects/Button.js line 133 @@ -4746,7 +4746,7 @@
Type:
Source:
- src/gameobjects/Button.js line 161 + src/gameobjects/Button.js line 161 @@ -4830,7 +4830,7 @@
Type:
Source:
- src/gameobjects/Button.js line 154 + src/gameobjects/Button.js line 154 @@ -4914,7 +4914,7 @@
Type:
Source:
- src/gameobjects/Button.js line 147 + src/gameobjects/Button.js line 147 @@ -4998,7 +4998,7 @@
Type:
Source:
- src/gameobjects/Button.js line 168 + src/gameobjects/Button.js line 168 @@ -5088,7 +5088,7 @@
Type:
Source:
- src/gameobjects/Button.js line 98 + src/gameobjects/Button.js line 98 @@ -5165,7 +5165,7 @@
Type:
Source:
- src/gameobjects/Button.js line 126 + src/gameobjects/Button.js line 126 @@ -5250,7 +5250,7 @@
Type:
Source:
- src/gameobjects/Button.js line 177 + src/gameobjects/Button.js line 177 @@ -5333,7 +5333,7 @@
Type:
Source:
- src/gameobjects/Button.js line 91 + src/gameobjects/Button.js line 91 @@ -5410,7 +5410,7 @@
Type:
Source:
- src/gameobjects/Button.js line 119 + src/gameobjects/Button.js line 119 @@ -5493,7 +5493,7 @@
Type:
Source:
- src/gameobjects/Button.js line 112 + src/gameobjects/Button.js line 112 @@ -5570,7 +5570,7 @@
Type:
Source:
- src/gameobjects/Button.js line 140 + src/gameobjects/Button.js line 140 @@ -5659,7 +5659,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -5748,7 +5748,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -5825,7 +5825,7 @@
Type:
Source:
- src/gameobjects/Button.js line 56 + src/gameobjects/Button.js line 56 @@ -5912,7 +5912,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -6000,7 +6000,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -6086,7 +6086,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -6172,7 +6172,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -6259,7 +6259,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -6346,7 +6346,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -6433,7 +6433,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -6522,7 +6522,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -6611,7 +6611,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -6699,7 +6699,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -6787,7 +6787,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -6881,7 +6881,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -6969,7 +6969,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -7055,7 +7055,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -7148,7 +7148,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -7241,7 +7241,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -7328,7 +7328,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -7414,7 +7414,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -7500,7 +7500,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -7582,7 +7582,7 @@
Type:
Source:
- src/gameobjects/Button.js line 50 + src/gameobjects/Button.js line 50 @@ -7681,7 +7681,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -7767,7 +7767,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -7855,7 +7855,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -7947,7 +7947,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -8038,7 +8038,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -8129,7 +8129,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -8220,7 +8220,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -8311,7 +8311,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -8397,7 +8397,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -8484,7 +8484,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -8571,7 +8571,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -8660,7 +8660,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -8797,7 +8797,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -8988,7 +8988,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -9331,7 +9331,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -9675,7 +9675,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -9795,7 +9795,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -9903,7 +9903,7 @@

Source:
- src/gameobjects/Button.js line 234 + src/gameobjects/Button.js line 234 @@ -10046,7 +10046,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -10272,7 +10272,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -10367,7 +10367,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -10612,7 +10612,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -10787,7 +10787,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -10954,7 +10954,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -11121,7 +11121,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -11238,7 +11238,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -11359,7 +11359,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -11644,7 +11644,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -11740,7 +11740,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -11860,7 +11860,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -12042,7 +12042,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 508 + src/gameobjects/Button.js line 508 @@ -12200,7 +12200,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 488 + src/gameobjects/Button.js line 488 @@ -12358,7 +12358,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 456 + src/gameobjects/Button.js line 456 @@ -12540,7 +12540,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 528 + src/gameobjects/Button.js line 528 @@ -12699,7 +12699,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -13005,7 +13005,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -13122,7 +13122,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -13215,7 +13215,7 @@

Source:
- src/gameobjects/Image.js line 80 + src/gameobjects/Image.js line 80 @@ -13308,7 +13308,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -13451,7 +13451,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -13618,7 +13618,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -13809,7 +13809,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -14048,7 +14048,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -14165,7 +14165,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -14358,7 +14358,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -14523,7 +14523,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -14643,7 +14643,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -14834,7 +14834,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -15015,7 +15015,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 430 + src/gameobjects/Button.js line 430 @@ -15159,7 +15159,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -15420,7 +15420,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 306 + src/gameobjects/Button.js line 306 @@ -15601,7 +15601,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 417 + src/gameobjects/Button.js line 417 @@ -15782,7 +15782,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 404 + src/gameobjects/Button.js line 404 @@ -16019,7 +16019,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -16417,7 +16417,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 379 + src/gameobjects/Button.js line 379 @@ -16617,7 +16617,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -16798,7 +16798,7 @@
Parameters:
Source:
- src/gameobjects/Button.js line 443 + src/gameobjects/Button.js line 443 @@ -16965,7 +16965,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -17108,7 +17108,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -17321,7 +17321,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -17442,7 +17442,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -17535,7 +17535,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -17655,7 +17655,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -17818,7 +17818,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -17887,9 +17887,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -17906,7 +17906,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -17935,7 +17935,7 @@
Returns:
- + diff --git a/docs/Phaser.Cache.html b/docs/Phaser.Cache.html index 8fe52ad80..9f769f50b 100644 --- a/docs/Phaser.Cache.html +++ b/docs/Phaser.Cache.html @@ -6,7 +6,7 @@ Phaser CE Class: Cache - + @@ -245,7 +245,7 @@
Parameters:
Source:
- src/loader/Cache.js line 34 + src/loader/Cache.js line 34 @@ -346,7 +346,7 @@
Type:
Source:
- src/loader/Cache.js line 180 + src/loader/Cache.js line 180 @@ -419,7 +419,7 @@
Type:
Source:
- src/loader/Cache.js line 186 + src/loader/Cache.js line 186 @@ -492,7 +492,7 @@
Type:
Source:
- src/loader/Cache.js line 192 + src/loader/Cache.js line 192 @@ -565,7 +565,7 @@
Type:
Source:
- src/loader/Cache.js line 138 + src/loader/Cache.js line 138 @@ -638,7 +638,7 @@
Type:
Source:
- src/loader/Cache.js line 228 + src/loader/Cache.js line 228 @@ -715,7 +715,7 @@
Type:
Source:
- src/loader/Cache.js line 235 + src/loader/Cache.js line 235 @@ -792,7 +792,7 @@
Type:
Source:
- src/loader/Cache.js line 242 + src/loader/Cache.js line 242 @@ -869,7 +869,7 @@
Type:
Source:
- src/loader/Cache.js line 249 + src/loader/Cache.js line 249 @@ -942,7 +942,7 @@
Type:
Source:
- src/loader/Cache.js line 144 + src/loader/Cache.js line 144 @@ -1015,7 +1015,7 @@
Type:
Source:
- src/loader/Cache.js line 198 + src/loader/Cache.js line 198 @@ -1092,7 +1092,7 @@
Type:
Source:
- src/loader/Cache.js line 256 + src/loader/Cache.js line 256 @@ -1169,7 +1169,7 @@
Type:
Source:
- src/loader/Cache.js line 263 + src/loader/Cache.js line 263 @@ -1246,7 +1246,7 @@
Type:
Source:
- src/loader/Cache.js line 270 + src/loader/Cache.js line 270 @@ -1319,7 +1319,7 @@
Type:
Source:
- src/loader/Cache.js line 168 + src/loader/Cache.js line 168 @@ -1403,7 +1403,7 @@
Type:
Source:
- src/loader/Cache.js line 278 + src/loader/Cache.js line 278 @@ -1476,7 +1476,7 @@
Type:
Source:
- src/loader/Cache.js line 222 + src/loader/Cache.js line 222 @@ -1549,7 +1549,7 @@
Type:
Source:
- src/loader/Cache.js line 216 + src/loader/Cache.js line 216 @@ -1622,7 +1622,7 @@
Type:
Source:
- src/loader/Cache.js line 156 + src/loader/Cache.js line 156 @@ -1695,7 +1695,7 @@
Type:
Source:
- src/loader/Cache.js line 162 + src/loader/Cache.js line 162 @@ -1768,7 +1768,7 @@
Type:
Source:
- src/loader/Cache.js line 150 + src/loader/Cache.js line 150 @@ -1841,7 +1841,7 @@
Type:
Source:
- src/loader/Cache.js line 174 + src/loader/Cache.js line 174 @@ -1914,7 +1914,7 @@
Type:
Source:
- src/loader/Cache.js line 210 + src/loader/Cache.js line 210 @@ -1987,7 +1987,7 @@
Type:
Source:
- src/loader/Cache.js line 204 + src/loader/Cache.js line 204 @@ -2064,7 +2064,7 @@
Type:
Source:
- src/loader/Cache.js line 45 + src/loader/Cache.js line 45 @@ -2141,7 +2141,7 @@
Type:
Source:
- src/loader/Cache.js line 39 + src/loader/Cache.js line 39 @@ -2218,7 +2218,7 @@
Type:
Source:
- src/loader/Cache.js line 129 + src/loader/Cache.js line 129 @@ -2295,7 +2295,7 @@
Type:
Source:
- src/loader/Cache.js line 93 + src/loader/Cache.js line 93 @@ -2447,7 +2447,7 @@
Parameters:
Source:
- src/loader/Cache.js line 534 + src/loader/Cache.js line 534 @@ -2676,7 +2676,7 @@
Parameters:
Source:
- src/loader/Cache.js line 546 + src/loader/Cache.js line 546 @@ -3078,7 +3078,7 @@
Parameters:
Source:
- src/loader/Cache.js line 570 + src/loader/Cache.js line 570 @@ -3461,7 +3461,7 @@
Parameters:
Source:
- src/loader/Cache.js line 608 + src/loader/Cache.js line 608 @@ -3671,7 +3671,7 @@
Parameters:
Source:
- src/loader/Cache.js line 327 + src/loader/Cache.js line 327 @@ -3829,7 +3829,7 @@
Parameters:
Source:
- src/loader/Cache.js line 817 + src/loader/Cache.js line 817 @@ -3916,7 +3916,7 @@

Source:
- src/loader/Cache.js line 413 + src/loader/Cache.js line 413 @@ -4100,7 +4100,7 @@
Parameters:
Source:
- src/loader/Cache.js line 342 + src/loader/Cache.js line 342 @@ -4306,7 +4306,7 @@
Parameters:
Source:
- src/loader/Cache.js line 662 + src/loader/Cache.js line 662 @@ -4393,7 +4393,7 @@

Source:
- src/loader/Cache.js line 434 + src/loader/Cache.js line 434 @@ -4599,7 +4599,7 @@
Parameters:
Source:
- src/loader/Cache.js line 502 + src/loader/Cache.js line 502 @@ -4757,7 +4757,7 @@
Parameters:
Source:
- src/loader/Cache.js line 723 + src/loader/Cache.js line 723 @@ -4939,7 +4939,7 @@
Parameters:
Source:
- src/loader/Cache.js line 708 + src/loader/Cache.js line 708 @@ -5169,7 +5169,7 @@
Parameters:
Source:
- src/loader/Cache.js line 452 + src/loader/Cache.js line 452 @@ -5623,7 +5623,7 @@
Parameters:
Source:
- src/loader/Cache.js line 735 + src/loader/Cache.js line 735 @@ -5805,7 +5805,7 @@
Parameters:
Source:
- src/loader/Cache.js line 487 + src/loader/Cache.js line 487 @@ -6035,7 +6035,7 @@
Parameters:
Source:
- src/loader/Cache.js line 772 + src/loader/Cache.js line 772 @@ -6241,7 +6241,7 @@
Parameters:
Source:
- src/loader/Cache.js line 518 + src/loader/Cache.js line 518 @@ -6447,7 +6447,7 @@
Parameters:
Source:
- src/loader/Cache.js line 692 + src/loader/Cache.js line 692 @@ -6629,7 +6629,7 @@
Parameters:
Source:
- src/loader/Cache.js line 677 + src/loader/Cache.js line 677 @@ -6763,7 +6763,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1084 + src/loader/Cache.js line 1084 @@ -6921,7 +6921,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1096 + src/loader/Cache.js line 1096 @@ -7079,7 +7079,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1108 + src/loader/Cache.js line 1108 @@ -7237,7 +7237,7 @@
Parameters:
Source:
- src/loader/Cache.js line 988 + src/loader/Cache.js line 988 @@ -7395,7 +7395,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1000 + src/loader/Cache.js line 1000 @@ -7553,7 +7553,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1012 + src/loader/Cache.js line 1012 @@ -7711,7 +7711,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1120 + src/loader/Cache.js line 1120 @@ -7893,7 +7893,7 @@
Parameters:
Source:
- src/loader/Cache.js line 950 + src/loader/Cache.js line 950 @@ -8051,7 +8051,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1060 + src/loader/Cache.js line 1060 @@ -8209,7 +8209,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1168 + src/loader/Cache.js line 1168 @@ -8367,7 +8367,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1156 + src/loader/Cache.js line 1156 @@ -8525,7 +8525,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1036 + src/loader/Cache.js line 1036 @@ -8683,7 +8683,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1048 + src/loader/Cache.js line 1048 @@ -8841,7 +8841,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1024 + src/loader/Cache.js line 1024 @@ -8999,7 +8999,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1072 + src/loader/Cache.js line 1072 @@ -9160,7 +9160,7 @@
Parameters:
Source:
- src/loader/Cache.js line 968 + src/loader/Cache.js line 968 @@ -9318,7 +9318,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1144 + src/loader/Cache.js line 1144 @@ -9476,7 +9476,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1132 + src/loader/Cache.js line 1132 @@ -9585,7 +9585,7 @@

Source:
- src/loader/Cache.js line 2034 + src/loader/Cache.js line 2034 @@ -9743,7 +9743,7 @@
Parameters:
Source:
- src/loader/Cache.js line 893 + src/loader/Cache.js line 893 @@ -9830,7 +9830,7 @@

Source:
- src/loader/Cache.js line 2082 + src/loader/Cache.js line 2082 @@ -9960,7 +9960,7 @@
Parameters:
Source:
- src/loader/Cache.js line 2112 + src/loader/Cache.js line 2112 @@ -10150,7 +10150,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1582 + src/loader/Cache.js line 1582 @@ -10310,7 +10310,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1416 + src/loader/Cache.js line 1416 @@ -10470,7 +10470,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1432 + src/loader/Cache.js line 1432 @@ -10630,7 +10630,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1448 + src/loader/Cache.js line 1448 @@ -10790,7 +10790,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1221 + src/loader/Cache.js line 1221 @@ -10948,7 +10948,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1564 + src/loader/Cache.js line 1564 @@ -11162,7 +11162,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1597 + src/loader/Cache.js line 1597 @@ -11412,7 +11412,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1686 + src/loader/Cache.js line 1686 @@ -11662,7 +11662,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1709 + src/loader/Cache.js line 1709 @@ -11876,7 +11876,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1612 + src/loader/Cache.js line 1612 @@ -12092,7 +12092,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1634 + src/loader/Cache.js line 1634 @@ -12312,7 +12312,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1237 + src/loader/Cache.js line 1237 @@ -12582,7 +12582,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1186 + src/loader/Cache.js line 1186 @@ -12800,7 +12800,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1464 + src/loader/Cache.js line 1464 @@ -12978,7 +12978,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1756 + src/loader/Cache.js line 1756 @@ -13231,7 +13231,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1341 + src/loader/Cache.js line 1341 @@ -13391,7 +13391,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1548 + src/loader/Cache.js line 1548 @@ -13551,7 +13551,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1532 + src/loader/Cache.js line 1532 @@ -13711,7 +13711,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1293 + src/loader/Cache.js line 1293 @@ -13871,7 +13871,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1309 + src/loader/Cache.js line 1309 @@ -14031,7 +14031,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1325 + src/loader/Cache.js line 1325 @@ -14190,7 +14190,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1279 + src/loader/Cache.js line 1279 @@ -14350,7 +14350,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1400 + src/loader/Cache.js line 1400 @@ -14510,7 +14510,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1732 + src/loader/Cache.js line 1732 @@ -14670,7 +14670,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1516 + src/loader/Cache.js line 1516 @@ -14830,7 +14830,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1500 + src/loader/Cache.js line 1500 @@ -15044,7 +15044,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1653 + src/loader/Cache.js line 1653 @@ -15202,7 +15202,7 @@
Parameters:
Source:
- src/loader/Cache.js line 909 + src/loader/Cache.js line 909 @@ -15361,7 +15361,7 @@
Parameters:
Source:
- src/loader/Cache.js line 926 + src/loader/Cache.js line 926 @@ -15519,7 +15519,7 @@
Parameters:
Source:
- src/loader/Cache.js line 835 + src/loader/Cache.js line 835 @@ -15653,7 +15653,7 @@
Parameters:
Source:
- src/loader/Cache.js line 860 + src/loader/Cache.js line 860 @@ -15789,7 +15789,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1889 + src/loader/Cache.js line 1889 @@ -15925,7 +15925,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1903 + src/loader/Cache.js line 1903 @@ -16061,7 +16061,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1917 + src/loader/Cache.js line 1917 @@ -16197,7 +16197,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1789 + src/loader/Cache.js line 1789 @@ -16390,7 +16390,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1803 + src/loader/Cache.js line 1803 @@ -16526,7 +16526,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1931 + src/loader/Cache.js line 1931 @@ -16662,7 +16662,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1861 + src/loader/Cache.js line 1861 @@ -16798,7 +16798,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1987 + src/loader/Cache.js line 1987 @@ -16934,7 +16934,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1973 + src/loader/Cache.js line 1973 @@ -17073,7 +17073,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1829 + src/loader/Cache.js line 1829 @@ -17209,7 +17209,7 @@
Parameters:
Source:
- src/loader/Cache.js line 2001 + src/loader/Cache.js line 2001 @@ -17345,7 +17345,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1847 + src/loader/Cache.js line 1847 @@ -17481,7 +17481,7 @@
Parameters:
Source:
- src/loader/Cache.js line 2015 + src/loader/Cache.js line 2015 @@ -17617,7 +17617,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1875 + src/loader/Cache.js line 1875 @@ -17753,7 +17753,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1959 + src/loader/Cache.js line 1959 @@ -17889,7 +17889,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1945 + src/loader/Cache.js line 1945 @@ -18115,7 +18115,7 @@
Parameters:
Source:
- src/loader/Cache.js line 1668 + src/loader/Cache.js line 1668 @@ -18249,7 +18249,7 @@
Parameters:
Source:
- src/loader/Cache.js line 877 + src/loader/Cache.js line 877 @@ -18292,9 +18292,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -18311,7 +18311,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -18340,7 +18340,7 @@
Parameters:
- + diff --git a/docs/Phaser.Camera.html b/docs/Phaser.Camera.html index ed55b8329..4c16250b8 100644 --- a/docs/Phaser.Camera.html +++ b/docs/Phaser.Camera.html @@ -6,7 +6,7 @@ Phaser CE Class: Camera - + @@ -351,7 +351,7 @@
Parameters:
Source:
- src/core/Camera.js line 20 + src/core/Camera.js line 20 @@ -452,7 +452,7 @@
Type:
Source:
- src/core/Camera.js line 245 + src/core/Camera.js line 245 @@ -525,7 +525,7 @@
Type:
Source:
- src/core/Camera.js line 263 + src/core/Camera.js line 263 @@ -598,7 +598,7 @@
Type:
Source:
- src/core/Camera.js line 257 + src/core/Camera.js line 257 @@ -671,7 +671,7 @@
Type:
Source:
- src/core/Camera.js line 251 + src/core/Camera.js line 251 @@ -748,7 +748,7 @@
Type:
Source:
- src/core/Camera.js line 197 + src/core/Camera.js line 197 @@ -825,7 +825,7 @@
Type:
Source:
- src/core/Camera.js line 205 + src/core/Camera.js line 205 @@ -902,7 +902,7 @@
Type:
Source:
- src/core/Camera.js line 213 + src/core/Camera.js line 213 @@ -979,7 +979,7 @@
Type:
Source:
- src/core/Camera.js line 221 + src/core/Camera.js line 221 @@ -1052,7 +1052,7 @@
Type:
Source:
- src/core/Camera.js line 227 + src/core/Camera.js line 227 @@ -1125,7 +1125,7 @@
Type:
Source:
- src/core/Camera.js line 233 + src/core/Camera.js line 233 @@ -1198,7 +1198,7 @@
Type:
Source:
- src/core/Camera.js line 239 + src/core/Camera.js line 239 @@ -1275,7 +1275,7 @@
Type:
Source:
- src/core/Camera.js line 76 + src/core/Camera.js line 76 @@ -1354,7 +1354,7 @@
Type:
Source:
- src/core/Camera.js line 54 + src/core/Camera.js line 54 @@ -1431,7 +1431,7 @@
Type:
Source:
- src/core/Camera.js line 1016 + src/core/Camera.js line 1016 @@ -1508,7 +1508,7 @@
Type:
Source:
- src/core/Camera.js line 1031 + src/core/Camera.js line 1031 @@ -1585,7 +1585,7 @@
Type:
Source:
- src/core/Camera.js line 59 + src/core/Camera.js line 59 @@ -1662,7 +1662,7 @@
Type:
Source:
- src/core/Camera.js line 87 + src/core/Camera.js line 87 @@ -1739,7 +1739,7 @@
Type:
Source:
- src/core/Camera.js line 999 + src/core/Camera.js line 999 @@ -1816,7 +1816,7 @@
Type:
Source:
- src/core/Camera.js line 136 + src/core/Camera.js line 136 @@ -1893,7 +1893,7 @@
Type:
Source:
- src/core/Camera.js line 25 + src/core/Camera.js line 25 @@ -1970,7 +1970,7 @@
Type:
Source:
- src/core/Camera.js line 961 + src/core/Camera.js line 961 @@ -2047,7 +2047,7 @@
Type:
Source:
- src/core/Camera.js line 36 + src/core/Camera.js line 36 @@ -2128,7 +2128,7 @@
Type:
Source:
- src/core/Camera.js line 109 + src/core/Camera.js line 109 @@ -2209,7 +2209,7 @@
Type:
Source:
- src/core/Camera.js line 129 + src/core/Camera.js line 129 @@ -2286,7 +2286,7 @@
Type:
Source:
- src/core/Camera.js line 119 + src/core/Camera.js line 119 @@ -2363,7 +2363,7 @@
Type:
Source:
- src/core/Camera.js line 114 + src/core/Camera.js line 114 @@ -2440,7 +2440,7 @@
Type:
Source:
- src/core/Camera.js line 915 + src/core/Camera.js line 915 @@ -2524,7 +2524,7 @@
Type:
Source:
- src/core/Camera.js line 71 + src/core/Camera.js line 71 @@ -2601,7 +2601,7 @@
Type:
Source:
- src/core/Camera.js line 92 + src/core/Camera.js line 92 @@ -2678,7 +2678,7 @@
Type:
Source:
- src/core/Camera.js line 980 + src/core/Camera.js line 980 @@ -2755,7 +2755,7 @@
Type:
Source:
- src/core/Camera.js line 82 + src/core/Camera.js line 82 @@ -2832,7 +2832,7 @@
Type:
Source:
- src/core/Camera.js line 98 + src/core/Camera.js line 98 @@ -2912,7 +2912,7 @@
Type:
Source:
- src/core/Camera.js line 45 + src/core/Camera.js line 45 @@ -2996,7 +2996,7 @@
Type:
Source:
- src/core/Camera.js line 65 + src/core/Camera.js line 65 @@ -3073,7 +3073,7 @@
Type:
Source:
- src/core/Camera.js line 942 + src/core/Camera.js line 942 @@ -3150,7 +3150,7 @@
Type:
Source:
- src/core/Camera.js line 30 + src/core/Camera.js line 30 @@ -3227,7 +3227,7 @@
Type:
Source:
- src/core/Camera.js line 867 + src/core/Camera.js line 867 @@ -3304,7 +3304,7 @@
Type:
Source:
- src/core/Camera.js line 891 + src/core/Camera.js line 891 @@ -3383,7 +3383,7 @@

Source:
- src/core/Camera.js line 728 + src/core/Camera.js line 728 @@ -3664,7 +3664,7 @@
Parameters:
Source:
- src/core/Camera.js line 467 + src/core/Camera.js line 467 @@ -3964,7 +3964,7 @@
Parameters:
Source:
- src/core/Camera.js line 492 + src/core/Camera.js line 492 @@ -4265,7 +4265,7 @@
Parameters:
Source:
- src/core/Camera.js line 426 + src/core/Camera.js line 426 @@ -4423,7 +4423,7 @@
Parameters:
Source:
- src/core/Camera.js line 363 + src/core/Camera.js line 363 @@ -4581,7 +4581,7 @@
Parameters:
Source:
- src/core/Camera.js line 373 + src/core/Camera.js line 373 @@ -4859,7 +4859,7 @@
Parameters:
Source:
- src/core/Camera.js line 299 + src/core/Camera.js line 299 @@ -4943,7 +4943,7 @@

Source:
- src/core/Camera.js line 289 + src/core/Camera.js line 289 @@ -5029,7 +5029,7 @@

Source:
- src/core/Camera.js line 825 + src/core/Camera.js line 825 @@ -5114,7 +5114,7 @@

Source:
- src/core/Camera.js line 846 + src/core/Camera.js line 846 @@ -5198,7 +5198,7 @@

Source:
- src/core/Camera.js line 715 + src/core/Camera.js line 715 @@ -5357,7 +5357,7 @@
Parameters:
Source:
- src/core/Camera.js line 793 + src/core/Camera.js line 793 @@ -5515,7 +5515,7 @@
Parameters:
Source:
- src/core/Camera.js line 812 + src/core/Camera.js line 812 @@ -5832,7 +5832,7 @@
Parameters:
Source:
- src/core/Camera.js line 384 + src/core/Camera.js line 384 @@ -5940,7 +5940,7 @@

Source:
- src/core/Camera.js line 353 + src/core/Camera.js line 353 @@ -6024,7 +6024,7 @@

Source:
- src/core/Camera.js line 550 + src/core/Camera.js line 550 @@ -6067,9 +6067,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6086,7 +6086,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6115,7 +6115,7 @@

- + diff --git a/docs/Phaser.Canvas.html b/docs/Phaser.Canvas.html index 5e7a3ebeb..59659b0ea 100644 --- a/docs/Phaser.Canvas.html +++ b/docs/Phaser.Canvas.html @@ -6,7 +6,7 @@ Phaser CE Class: Canvas - + @@ -181,7 +181,7 @@

Source:
- src/utils/Canvas.js line 14 + src/utils/Canvas.js line 14 @@ -429,7 +429,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 105 + src/utils/Canvas.js line 105 @@ -763,7 +763,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 16 + src/utils/Canvas.js line 16 @@ -921,7 +921,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 233 + src/utils/Canvas.js line 233 @@ -1079,7 +1079,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 209 + src/utils/Canvas.js line 209 @@ -1240,7 +1240,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 151 + src/utils/Canvas.js line 151 @@ -1430,7 +1430,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 46 + src/utils/Canvas.js line 46 @@ -1589,7 +1589,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 276 + src/utils/Canvas.js line 276 @@ -1750,7 +1750,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 250 + src/utils/Canvas.js line 250 @@ -1945,7 +1945,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 185 + src/utils/Canvas.js line 185 @@ -2147,7 +2147,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 63 + src/utils/Canvas.js line 63 @@ -2449,7 +2449,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 165 + src/utils/Canvas.js line 165 @@ -2651,7 +2651,7 @@
Parameters:
Source:
- src/utils/Canvas.js line 82 + src/utils/Canvas.js line 82 @@ -2718,9 +2718,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2737,7 +2737,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2766,7 +2766,7 @@
Returns:
- + diff --git a/docs/Phaser.CanvasPool.html b/docs/Phaser.CanvasPool.html index 9facec215..ece4fafbe 100644 --- a/docs/Phaser.CanvasPool.html +++ b/docs/Phaser.CanvasPool.html @@ -6,7 +6,7 @@ Phaser CE Class: CanvasPool - + @@ -180,7 +180,7 @@

Source:
- src/utils/CanvasPool.js line 13 + src/utils/CanvasPool.js line 13 @@ -285,7 +285,7 @@
Type:
Source:
- src/utils/CanvasPool.js line 196 + src/utils/CanvasPool.js line 196 @@ -461,7 +461,7 @@
Parameters:
Source:
- src/utils/CanvasPool.js line 15 + src/utils/CanvasPool.js line 15 @@ -569,7 +569,7 @@

Source:
- src/utils/CanvasPool.js line 57 + src/utils/CanvasPool.js line 57 @@ -673,7 +673,7 @@

Source:
- src/utils/CanvasPool.js line 148 + src/utils/CanvasPool.js line 148 @@ -781,7 +781,7 @@

Source:
- src/utils/CanvasPool.js line 125 + src/utils/CanvasPool.js line 125 @@ -889,7 +889,7 @@

Source:
- src/utils/CanvasPool.js line 171 + src/utils/CanvasPool.js line 171 @@ -1024,7 +1024,7 @@
Parameters:
Source:
- src/utils/CanvasPool.js line 79 + src/utils/CanvasPool.js line 79 @@ -1159,7 +1159,7 @@
Parameters:
Source:
- src/utils/CanvasPool.js line 102 + src/utils/CanvasPool.js line 102 @@ -1202,9 +1202,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1221,7 +1221,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1250,7 +1250,7 @@
Parameters:
- + diff --git a/docs/Phaser.Circle.html b/docs/Phaser.Circle.html index 0aeb13843..d74f4d47d 100644 --- a/docs/Phaser.Circle.html +++ b/docs/Phaser.Circle.html @@ -6,7 +6,7 @@ Phaser CE Class: Circle - + @@ -331,7 +331,7 @@
Parameters:
Source:
- src/geom/Circle.js line 17 + src/geom/Circle.js line 17 @@ -436,7 +436,7 @@
Type:
Source:
- src/geom/Circle.js line 440 + src/geom/Circle.js line 440 @@ -513,7 +513,7 @@
Type:
Source:
- src/geom/Circle.js line 413 + src/geom/Circle.js line 413 @@ -590,7 +590,7 @@
Type:
Source:
- src/geom/Circle.js line 285 + src/geom/Circle.js line 285 @@ -668,7 +668,7 @@
Type:
Source:
- src/geom/Circle.js line 462 + src/geom/Circle.js line 462 @@ -734,7 +734,7 @@

Source:
- src/geom/Circle.js line 332 + src/geom/Circle.js line 332 @@ -811,7 +811,7 @@
Type:
Source:
- src/geom/Circle.js line 309 + src/geom/Circle.js line 309 @@ -888,7 +888,7 @@
Type:
Source:
- src/geom/Circle.js line 359 + src/geom/Circle.js line 359 @@ -965,7 +965,7 @@
Type:
Source:
- src/geom/Circle.js line 386 + src/geom/Circle.js line 386 @@ -1042,7 +1042,7 @@
Type:
Source:
- src/geom/Circle.js line 54 + src/geom/Circle.js line 54 @@ -1119,7 +1119,7 @@
Type:
Source:
- src/geom/Circle.js line 26 + src/geom/Circle.js line 26 @@ -1196,7 +1196,7 @@
Type:
Source:
- src/geom/Circle.js line 31 + src/geom/Circle.js line 31 @@ -1454,7 +1454,7 @@
Parameters:
Source:
- src/geom/Circle.js line 534 + src/geom/Circle.js line 534 @@ -1660,7 +1660,7 @@
Parameters:
Source:
- src/geom/Circle.js line 485 + src/geom/Circle.js line 485 @@ -1842,7 +1842,7 @@
Parameters:
Source:
- src/geom/Circle.js line 509 + src/geom/Circle.js line 509 @@ -2025,7 +2025,7 @@
Parameters:
Source:
- src/geom/Circle.js line 521 + src/geom/Circle.js line 521 @@ -2259,7 +2259,7 @@
Parameters:
Source:
- src/geom/Circle.js line 598 + src/geom/Circle.js line 598 @@ -2441,7 +2441,7 @@
Parameters:
Source:
- src/geom/Circle.js line 559 + src/geom/Circle.js line 559 @@ -2549,7 +2549,7 @@

Source:
- src/geom/Circle.js line 59 + src/geom/Circle.js line 59 @@ -2801,7 +2801,7 @@
Parameters:
Source:
- src/geom/Circle.js line 195 + src/geom/Circle.js line 195 @@ -2971,7 +2971,7 @@
Parameters:
Source:
- src/geom/Circle.js line 163 + src/geom/Circle.js line 163 @@ -3153,7 +3153,7 @@
Parameters:
Source:
- src/geom/Circle.js line 183 + src/geom/Circle.js line 183 @@ -3311,7 +3311,7 @@
Parameters:
Source:
- src/geom/Circle.js line 123 + src/geom/Circle.js line 123 @@ -3469,7 +3469,7 @@
Parameters:
Source:
- src/geom/Circle.js line 134 + src/geom/Circle.js line 134 @@ -3684,7 +3684,7 @@
Parameters:
Source:
- src/geom/Circle.js line 149 + src/geom/Circle.js line 149 @@ -3792,7 +3792,7 @@

Source:
- src/geom/Circle.js line 94 + src/geom/Circle.js line 94 @@ -3974,7 +3974,7 @@
Parameters:
Source:
- src/geom/Circle.js line 245 + src/geom/Circle.js line 245 @@ -4132,7 +4132,7 @@
Parameters:
Source:
- src/geom/Circle.js line 260 + src/geom/Circle.js line 260 @@ -4306,7 +4306,7 @@
Parameters:
Source:
- src/geom/Circle.js line 70 + src/geom/Circle.js line 70 @@ -4644,7 +4644,7 @@
Parameters:
Source:
- src/geom/Circle.js line 222 + src/geom/Circle.js line 222 @@ -4852,7 +4852,7 @@
Parameters:
Source:
- src/geom/Circle.js line 105 + src/geom/Circle.js line 105 @@ -4960,7 +4960,7 @@

Source:
- src/geom/Circle.js line 271 + src/geom/Circle.js line 271 @@ -5027,9 +5027,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -5046,7 +5046,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -5075,7 +5075,7 @@
Returns:
- + diff --git a/docs/Phaser.Color.html b/docs/Phaser.Color.html index f8ab5003c..ba77433ae 100644 --- a/docs/Phaser.Color.html +++ b/docs/Phaser.Color.html @@ -6,7 +6,7 @@ Phaser CE Class: Color - + @@ -180,7 +180,7 @@

Source:
- src/utils/Color.js line 12 + src/utils/Color.js line 12 @@ -292,7 +292,7 @@
Type:
Source:
- src/utils/Color.js line 57 + src/utils/Color.js line 57 @@ -369,7 +369,7 @@
Type:
Source:
- src/utils/Color.js line 93 + src/utils/Color.js line 93 @@ -453,7 +453,7 @@
Type:
Source:
- src/utils/Color.js line 66 + src/utils/Color.js line 66 @@ -537,7 +537,7 @@
Type:
Source:
- src/utils/Color.js line 102 + src/utils/Color.js line 102 @@ -621,7 +621,7 @@
Type:
Source:
- src/utils/Color.js line 48 + src/utils/Color.js line 48 @@ -705,7 +705,7 @@
Type:
Source:
- src/utils/Color.js line 30 + src/utils/Color.js line 30 @@ -789,7 +789,7 @@
Type:
Source:
- src/utils/Color.js line 21 + src/utils/Color.js line 21 @@ -873,7 +873,7 @@
Type:
Source:
- src/utils/Color.js line 75 + src/utils/Color.js line 75 @@ -957,7 +957,7 @@
Type:
Source:
- src/utils/Color.js line 84 + src/utils/Color.js line 84 @@ -1041,7 +1041,7 @@
Type:
Source:
- src/utils/Color.js line 39 + src/utils/Color.js line 39 @@ -1193,7 +1193,7 @@
Parameters:
Source:
- src/utils/Color.js line 1248 + src/utils/Color.js line 1248 @@ -1375,7 +1375,7 @@
Parameters:
Source:
- src/utils/Color.js line 1234 + src/utils/Color.js line 1234 @@ -1558,7 +1558,7 @@
Parameters:
Source:
- src/utils/Color.js line 1417 + src/utils/Color.js line 1417 @@ -1741,7 +1741,7 @@
Parameters:
Source:
- src/utils/Color.js line 1402 + src/utils/Color.js line 1402 @@ -1923,7 +1923,7 @@
Parameters:
Source:
- src/utils/Color.js line 1203 + src/utils/Color.js line 1203 @@ -2106,7 +2106,7 @@
Parameters:
Source:
- src/utils/Color.js line 1276 + src/utils/Color.js line 1276 @@ -2289,7 +2289,7 @@
Parameters:
Source:
- src/utils/Color.js line 1322 + src/utils/Color.js line 1322 @@ -2471,7 +2471,7 @@
Parameters:
Source:
- src/utils/Color.js line 1539 + src/utils/Color.js line 1539 @@ -2660,7 +2660,7 @@
Parameters:
Source:
- src/utils/Color.js line 1377 + src/utils/Color.js line 1377 @@ -2845,7 +2845,7 @@
Parameters:
Source:
- src/utils/Color.js line 1508 + src/utils/Color.js line 1508 @@ -3027,7 +3027,7 @@
Parameters:
Source:
- src/utils/Color.js line 1189 + src/utils/Color.js line 1189 @@ -3209,7 +3209,7 @@
Parameters:
Source:
- src/utils/Color.js line 1446 + src/utils/Color.js line 1446 @@ -3391,7 +3391,7 @@
Parameters:
Source:
- src/utils/Color.js line 1432 + src/utils/Color.js line 1432 @@ -3575,7 +3575,7 @@
Parameters:
Source:
- src/utils/Color.js line 1460 + src/utils/Color.js line 1460 @@ -3760,7 +3760,7 @@
Parameters:
Source:
- src/utils/Color.js line 1217 + src/utils/Color.js line 1217 @@ -3942,7 +3942,7 @@
Parameters:
Source:
- src/utils/Color.js line 1292 + src/utils/Color.js line 1292 @@ -4124,7 +4124,7 @@
Parameters:
Source:
- src/utils/Color.js line 1175 + src/utils/Color.js line 1175 @@ -4308,7 +4308,7 @@
Parameters:
Source:
- src/utils/Color.js line 1337 + src/utils/Color.js line 1337 @@ -4490,7 +4490,7 @@
Parameters:
Source:
- src/utils/Color.js line 1553 + src/utils/Color.js line 1553 @@ -4673,7 +4673,7 @@
Parameters:
Source:
- src/utils/Color.js line 1493 + src/utils/Color.js line 1493 @@ -4855,7 +4855,7 @@
Parameters:
Source:
- src/utils/Color.js line 1525 + src/utils/Color.js line 1525 @@ -5039,7 +5039,7 @@
Parameters:
Source:
- src/utils/Color.js line 1306 + src/utils/Color.js line 1306 @@ -5228,7 +5228,7 @@
Parameters:
Source:
- src/utils/Color.js line 1353 + src/utils/Color.js line 1353 @@ -5410,7 +5410,7 @@
Parameters:
Source:
- src/utils/Color.js line 1262 + src/utils/Color.js line 1262 @@ -5595,7 +5595,7 @@
Parameters:
Source:
- src/utils/Color.js line 1476 + src/utils/Color.js line 1476 @@ -5753,7 +5753,7 @@
Parameters:
Source:
- src/utils/Color.js line 802 + src/utils/Color.js line 802 @@ -6220,7 +6220,7 @@
Parameters:
Source:
- src/utils/Color.js line 550 + src/utils/Color.js line 550 @@ -6430,7 +6430,7 @@
Parameters:
Source:
- src/utils/Color.js line 185 + src/utils/Color.js line 185 @@ -6588,7 +6588,7 @@
Parameters:
Source:
- src/utils/Color.js line 1110 + src/utils/Color.js line 1110 @@ -6746,7 +6746,7 @@
Parameters:
Source:
- src/utils/Color.js line 1123 + src/utils/Color.js line 1123 @@ -6904,7 +6904,7 @@
Parameters:
Source:
- src/utils/Color.js line 1162 + src/utils/Color.js line 1162 @@ -7110,7 +7110,7 @@
Parameters:
Source:
- src/utils/Color.js line 609 + src/utils/Color.js line 609 @@ -7340,7 +7340,7 @@
Parameters:
Source:
- src/utils/Color.js line 593 + src/utils/Color.js line 593 @@ -7498,7 +7498,7 @@
Parameters:
Source:
- src/utils/Color.js line 1149 + src/utils/Color.js line 1149 @@ -7758,7 +7758,7 @@
Parameters:
Source:
- src/utils/Color.js line 1017 + src/utils/Color.js line 1017 @@ -7916,7 +7916,7 @@
Parameters:
Source:
- src/utils/Color.js line 1136 + src/utils/Color.js line 1136 @@ -8075,7 +8075,7 @@
Parameters:
Source:
- src/utils/Color.js line 1048 + src/utils/Color.js line 1048 @@ -8236,7 +8236,7 @@
Parameters:
Source:
- src/utils/Color.js line 1089 + src/utils/Color.js line 1089 @@ -8440,7 +8440,7 @@
Parameters:
Source:
- src/utils/Color.js line 670 + src/utils/Color.js line 670 @@ -8598,7 +8598,7 @@
Parameters:
Source:
- src/utils/Color.js line 652 + src/utils/Color.js line 652 @@ -8756,7 +8756,7 @@
Parameters:
Source:
- src/utils/Color.js line 246 + src/utils/Color.js line 246 @@ -8974,7 +8974,7 @@
Parameters:
Source:
- src/utils/Color.js line 841 + src/utils/Color.js line 841 @@ -9243,7 +9243,7 @@
Parameters:
Source:
- src/utils/Color.js line 334 + src/utils/Color.js line 334 @@ -9461,7 +9461,7 @@
Parameters:
Source:
- src/utils/Color.js line 817 + src/utils/Color.js line 817 @@ -9730,7 +9730,7 @@
Parameters:
Source:
- src/utils/Color.js line 441 + src/utils/Color.js line 441 @@ -9937,7 +9937,7 @@
Parameters:
Source:
- src/utils/Color.js line 509 + src/utils/Color.js line 509 @@ -10297,7 +10297,7 @@
Parameters:
Source:
- src/utils/Color.js line 865 + src/utils/Color.js line 865 @@ -10575,7 +10575,7 @@
Parameters:
Source:
- src/utils/Color.js line 932 + src/utils/Color.js line 932 @@ -10901,7 +10901,7 @@
Parameters:
Source:
- src/utils/Color.js line 955 + src/utils/Color.js line 955 @@ -11109,7 +11109,7 @@
Parameters:
Source:
- src/utils/Color.js line 978 + src/utils/Color.js line 978 @@ -11293,7 +11293,7 @@
Parameters:
Source:
- src/utils/Color.js line 996 + src/utils/Color.js line 996 @@ -11531,7 +11531,7 @@
Parameters:
Source:
- src/utils/Color.js line 104 + src/utils/Color.js line 104 @@ -11689,7 +11689,7 @@
Parameters:
Source:
- src/utils/Color.js line 263 + src/utils/Color.js line 263 @@ -11958,7 +11958,7 @@
Parameters:
Source:
- src/utils/Color.js line 276 + src/utils/Color.js line 276 @@ -12227,7 +12227,7 @@
Parameters:
Source:
- src/utils/Color.js line 386 + src/utils/Color.js line 386 @@ -12554,7 +12554,7 @@
Parameters:
Source:
- src/utils/Color.js line 624 + src/utils/Color.js line 624 @@ -12784,7 +12784,7 @@
Parameters:
Source:
- src/utils/Color.js line 230 + src/utils/Color.js line 230 @@ -13021,7 +13021,7 @@
Parameters:
Source:
- src/utils/Color.js line 213 + src/utils/Color.js line 213 @@ -13326,7 +13326,7 @@
Parameters:
Source:
- src/utils/Color.js line 129 + src/utils/Color.js line 129 @@ -13484,7 +13484,7 @@
Parameters:
Source:
- src/utils/Color.js line 576 + src/utils/Color.js line 576 @@ -13691,7 +13691,7 @@
Parameters:
Source:
- src/utils/Color.js line 746 + src/utils/Color.js line 746 @@ -13894,7 +13894,7 @@
Parameters:
Source:
- src/utils/Color.js line 714 + src/utils/Color.js line 714 @@ -13961,9 +13961,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -13980,7 +13980,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -14009,7 +14009,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.Angle.html b/docs/Phaser.Component.Angle.html index 920dc7555..2dc406b80 100644 --- a/docs/Phaser.Component.Angle.html +++ b/docs/Phaser.Component.Angle.html @@ -6,7 +6,7 @@ Phaser CE Class: Angle - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Angle.js line 12 + src/gameobjects/components/Angle.js line 12 @@ -290,7 +290,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -323,9 +323,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -342,7 +342,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -371,7 +371,7 @@
Type:
- + diff --git a/docs/Phaser.Component.Animation.html b/docs/Phaser.Component.Animation.html index 669c3d6ac..7ab374a5b 100644 --- a/docs/Phaser.Component.Animation.html +++ b/docs/Phaser.Component.Animation.html @@ -6,7 +6,7 @@ Phaser CE Class: Animation - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Animation.js line 12 + src/gameobjects/components/Animation.js line 12 @@ -471,7 +471,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -538,9 +538,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -557,7 +557,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -586,7 +586,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.AutoCull.html b/docs/Phaser.Component.AutoCull.html index 4eb390e85..1c22f95aa 100644 --- a/docs/Phaser.Component.AutoCull.html +++ b/docs/Phaser.Component.AutoCull.html @@ -6,7 +6,7 @@ Phaser CE Class: AutoCull - + @@ -181,7 +181,7 @@

Source:
- src/gameobjects/components/AutoCull.js line 13 + src/gameobjects/components/AutoCull.js line 13 @@ -290,7 +290,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -368,7 +368,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -401,9 +401,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -420,7 +420,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -449,7 +449,7 @@
Type:
- + diff --git a/docs/Phaser.Component.Bounds.html b/docs/Phaser.Component.Bounds.html index 8aa11b4df..8874f08ba 100644 --- a/docs/Phaser.Component.Bounds.html +++ b/docs/Phaser.Component.Bounds.html @@ -6,7 +6,7 @@ Phaser CE Class: Bounds - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Bounds.js line 12 + src/gameobjects/components/Bounds.js line 12 @@ -286,7 +286,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -364,7 +364,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -442,7 +442,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -520,7 +520,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -599,7 +599,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -678,7 +678,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -756,7 +756,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -834,7 +834,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -1138,7 +1138,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -1473,7 +1473,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -1540,9 +1540,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1559,7 +1559,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1588,7 +1588,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.BringToTop.html b/docs/Phaser.Component.BringToTop.html index 3d701185b..1d22e1b1f 100644 --- a/docs/Phaser.Component.BringToTop.html +++ b/docs/Phaser.Component.BringToTop.html @@ -6,7 +6,7 @@ Phaser CE Class: BringToTop - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 12 + src/gameobjects/components/BringToTop.js line 12 @@ -285,7 +285,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -396,7 +396,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -507,7 +507,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -618,7 +618,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -685,9 +685,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -704,7 +704,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -733,7 +733,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.Core.html b/docs/Phaser.Component.Core.html index c3b194c5c..6c8fb0357 100644 --- a/docs/Phaser.Component.Core.html +++ b/docs/Phaser.Component.Core.html @@ -6,7 +6,7 @@ Phaser CE Class: Core - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Core.js line 12 + src/gameobjects/components/Core.js line 12 @@ -286,7 +286,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -370,7 +370,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -457,7 +457,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -534,7 +534,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -612,7 +612,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -701,7 +701,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 277 + src/gameobjects/components/Core.js line 277 @@ -779,7 +779,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -856,7 +856,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -949,7 +949,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -1027,7 +1027,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -1107,7 +1107,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -1184,7 +1184,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -1261,7 +1261,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -1339,7 +1339,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -1418,7 +1418,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -1498,7 +1498,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -1577,7 +1577,7 @@

Source:
- src/gameobjects/components/Core.js line 53 + src/gameobjects/components/Core.js line 53 @@ -1662,7 +1662,7 @@

Source:
- src/gameobjects/components/Core.js line 22 + src/gameobjects/components/Core.js line 22 @@ -1746,7 +1746,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -1830,7 +1830,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -1916,7 +1916,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -1959,9 +1959,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1978,7 +1978,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2007,7 +2007,7 @@

- + diff --git a/docs/Phaser.Component.Crop.html b/docs/Phaser.Component.Crop.html index 932c43832..5a43b1913 100644 --- a/docs/Phaser.Component.Crop.html +++ b/docs/Phaser.Component.Crop.html @@ -6,7 +6,7 @@ Phaser CE Class: Crop - + @@ -181,7 +181,7 @@

Source:
- src/gameobjects/components/Crop.js line 13 + src/gameobjects/components/Crop.js line 13 @@ -288,7 +288,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -479,7 +479,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -564,7 +564,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -607,9 +607,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -626,7 +626,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -655,7 +655,7 @@

- + diff --git a/docs/Phaser.Component.Delta.html b/docs/Phaser.Component.Delta.html index 22a97cf90..5a8684cf2 100644 --- a/docs/Phaser.Component.Delta.html +++ b/docs/Phaser.Component.Delta.html @@ -6,7 +6,7 @@ Phaser CE Class: Delta - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Delta.js line 12 + src/gameobjects/components/Delta.js line 12 @@ -286,7 +286,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -364,7 +364,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -441,7 +441,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -474,9 +474,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -493,7 +493,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -522,7 +522,7 @@
Type:
- + diff --git a/docs/Phaser.Component.Destroy.html b/docs/Phaser.Component.Destroy.html index 8f2f7d8a6..0c1e3c17c 100644 --- a/docs/Phaser.Component.Destroy.html +++ b/docs/Phaser.Component.Destroy.html @@ -6,7 +6,7 @@ Phaser CE Class: Destroy - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Destroy.js line 12 + src/gameobjects/components/Destroy.js line 12 @@ -286,7 +286,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -478,7 +478,7 @@
Parameters:
Source:
- src/gameobjects/components/Destroy.js line 37 + src/gameobjects/components/Destroy.js line 37 @@ -521,9 +521,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -540,7 +540,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -569,7 +569,7 @@
Parameters:
- + diff --git a/docs/Phaser.Component.FixedToCamera.html b/docs/Phaser.Component.FixedToCamera.html index 82a4c7b2b..1902f0448 100644 --- a/docs/Phaser.Component.FixedToCamera.html +++ b/docs/Phaser.Component.FixedToCamera.html @@ -6,7 +6,7 @@ Phaser CE Class: FixedToCamera - + @@ -181,7 +181,7 @@

Source:
- src/gameobjects/components/FixedToCamera.js line 13 + src/gameobjects/components/FixedToCamera.js line 13 @@ -287,7 +287,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -371,7 +371,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -450,7 +450,7 @@

Source:
- src/gameobjects/components/FixedToCamera.js line 21 + src/gameobjects/components/FixedToCamera.js line 21 @@ -493,9 +493,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -512,7 +512,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -541,7 +541,7 @@

- + diff --git a/docs/Phaser.Component.Health.html b/docs/Phaser.Component.Health.html index 42bf07c6c..027786edf 100644 --- a/docs/Phaser.Component.Health.html +++ b/docs/Phaser.Component.Health.html @@ -6,7 +6,7 @@ Phaser CE Class: Health - + @@ -182,7 +182,7 @@

Source:
- src/gameobjects/components/Health.js line 14 + src/gameobjects/components/Health.js line 14 @@ -295,7 +295,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -380,7 +380,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -509,7 +509,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -667,7 +667,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -826,7 +826,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -893,9 +893,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -912,7 +912,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -941,7 +941,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.InCamera.html b/docs/Phaser.Component.InCamera.html index 018a4e6ae..f8d173b30 100644 --- a/docs/Phaser.Component.InCamera.html +++ b/docs/Phaser.Component.InCamera.html @@ -6,7 +6,7 @@ Phaser CE Class: InCamera - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/InCamera.js line 12 + src/gameobjects/components/InCamera.js line 12 @@ -287,7 +287,7 @@
Type:
Source:
- src/gameobjects/components/InCamera.js line 26 + src/gameobjects/components/InCamera.js line 26 @@ -320,9 +320,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -339,7 +339,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -368,7 +368,7 @@
Type:
- + diff --git a/docs/Phaser.Component.InWorld.html b/docs/Phaser.Component.InWorld.html index 34c15fa59..c58944bf3 100644 --- a/docs/Phaser.Component.InWorld.html +++ b/docs/Phaser.Component.InWorld.html @@ -6,7 +6,7 @@ Phaser CE Class: InWorld - + @@ -182,7 +182,7 @@

Source:
- src/gameobjects/components/InWorld.js line 14 + src/gameobjects/components/InWorld.js line 14 @@ -293,7 +293,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -370,7 +370,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -447,7 +447,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -525,7 +525,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -604,7 +604,7 @@

Source:
- src/gameobjects/components/InWorld.js line 22 + src/gameobjects/components/InWorld.js line 22 @@ -647,9 +647,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -666,7 +666,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -695,7 +695,7 @@

- + diff --git a/docs/Phaser.Component.InputEnabled.html b/docs/Phaser.Component.InputEnabled.html index 6174d3eec..e76fa059a 100644 --- a/docs/Phaser.Component.InputEnabled.html +++ b/docs/Phaser.Component.InputEnabled.html @@ -6,7 +6,7 @@ Phaser CE Class: InputEnabled - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/InputEnabled.js line 12 + src/gameobjects/components/InputEnabled.js line 12 @@ -290,7 +290,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -374,7 +374,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -407,9 +407,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -426,7 +426,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -455,7 +455,7 @@
Type:
- + diff --git a/docs/Phaser.Component.LifeSpan.html b/docs/Phaser.Component.LifeSpan.html index 229459ae8..3db383ed2 100644 --- a/docs/Phaser.Component.LifeSpan.html +++ b/docs/Phaser.Component.LifeSpan.html @@ -6,7 +6,7 @@ Phaser CE Class: LifeSpan - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 12 + src/gameobjects/components/LifeSpan.js line 12 @@ -296,7 +296,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -377,7 +377,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -456,7 +456,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 20 + src/gameobjects/components/LifeSpan.js line 20 @@ -544,7 +544,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -724,7 +724,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -791,9 +791,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -810,7 +810,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -839,7 +839,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.LoadTexture.html b/docs/Phaser.Component.LoadTexture.html index a4b42a3b5..9aca2507b 100644 --- a/docs/Phaser.Component.LoadTexture.html +++ b/docs/Phaser.Component.LoadTexture.html @@ -6,7 +6,7 @@ Phaser CE Class: LoadTexture - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 12 + src/gameobjects/components/LoadTexture.js line 12 @@ -290,7 +290,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -372,7 +372,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -618,7 +618,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -702,7 +702,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -886,7 +886,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -1021,7 +1021,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -1064,9 +1064,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1083,7 +1083,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1112,7 +1112,7 @@
Parameters:
- + diff --git a/docs/Phaser.Component.Overlap.html b/docs/Phaser.Component.Overlap.html index 2c90fc0ef..d62945214 100644 --- a/docs/Phaser.Component.Overlap.html +++ b/docs/Phaser.Component.Overlap.html @@ -6,7 +6,7 @@ Phaser CE Class: Overlap - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Overlap.js line 12 + src/gameobjects/components/Overlap.js line 12 @@ -348,7 +348,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -415,9 +415,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -434,7 +434,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -463,7 +463,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.PhysicsBody.html b/docs/Phaser.Component.PhysicsBody.html index a4a8f37c5..94ff8d57c 100644 --- a/docs/Phaser.Component.PhysicsBody.html +++ b/docs/Phaser.Component.PhysicsBody.html @@ -6,7 +6,7 @@ Phaser CE Class: PhysicsBody - + @@ -181,7 +181,7 @@

Source:
- src/gameobjects/components/PhysicsBody.js line 13 + src/gameobjects/components/PhysicsBody.js line 13 @@ -303,7 +303,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -380,7 +380,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 104 + src/gameobjects/components/PhysicsBody.js line 104 @@ -457,7 +457,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 128 + src/gameobjects/components/PhysicsBody.js line 128 @@ -536,7 +536,7 @@

Source:
- src/gameobjects/components/PhysicsBody.js line 68 + src/gameobjects/components/PhysicsBody.js line 68 @@ -621,7 +621,7 @@

Source:
- src/gameobjects/components/PhysicsBody.js line 21 + src/gameobjects/components/PhysicsBody.js line 21 @@ -664,9 +664,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -683,7 +683,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -712,7 +712,7 @@

- + diff --git a/docs/Phaser.Component.Reset.html b/docs/Phaser.Component.Reset.html index 720e3d4dc..98644eb56 100644 --- a/docs/Phaser.Component.Reset.html +++ b/docs/Phaser.Component.Reset.html @@ -6,7 +6,7 @@ Phaser CE Class: Reset - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Reset.js line 12 + src/gameobjects/components/Reset.js line 12 @@ -428,7 +428,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -495,9 +495,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -514,7 +514,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -543,7 +543,7 @@
Returns:
- + diff --git a/docs/Phaser.Component.ScaleMinMax.html b/docs/Phaser.Component.ScaleMinMax.html index 3b0f3ca6e..0950621b3 100644 --- a/docs/Phaser.Component.ScaleMinMax.html +++ b/docs/Phaser.Component.ScaleMinMax.html @@ -6,7 +6,7 @@ Phaser CE Class: ScaleMinMax - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/ScaleMinMax.js line 12 + src/gameobjects/components/ScaleMinMax.js line 12 @@ -287,7 +287,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -366,7 +366,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -443,7 +443,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -520,7 +520,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -742,7 +742,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -785,9 +785,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -804,7 +804,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -833,7 +833,7 @@
Parameters:
- + diff --git a/docs/Phaser.Component.Smoothed.html b/docs/Phaser.Component.Smoothed.html index 684be3459..e6bef7b20 100644 --- a/docs/Phaser.Component.Smoothed.html +++ b/docs/Phaser.Component.Smoothed.html @@ -6,7 +6,7 @@ Phaser CE Class: Smoothed - + @@ -180,7 +180,7 @@

Source:
- src/gameobjects/components/Smoothed.js line 12 + src/gameobjects/components/Smoothed.js line 12 @@ -287,7 +287,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -320,9 +320,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -339,7 +339,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -368,7 +368,7 @@
Type:
- + diff --git a/docs/Phaser.Create.html b/docs/Phaser.Create.html index f40c58cbc..dd8ead4b7 100644 --- a/docs/Phaser.Create.html +++ b/docs/Phaser.Create.html @@ -6,7 +6,7 @@ Phaser CE Class: Create - + @@ -233,7 +233,7 @@
Parameters:
Source:
- src/core/Create.js line 18 + src/core/Create.js line 18 @@ -338,7 +338,7 @@
Type:
Source:
- src/core/Create.js line 57 + src/core/Create.js line 57 @@ -415,7 +415,7 @@
Type:
Source:
- src/core/Create.js line 78 + src/core/Create.js line 78 @@ -492,7 +492,7 @@
Type:
Source:
- src/core/Create.js line 71 + src/core/Create.js line 71 @@ -569,7 +569,7 @@
Type:
Source:
- src/core/Create.js line 85 + src/core/Create.js line 85 @@ -646,7 +646,7 @@
Type:
Source:
- src/core/Create.js line 64 + src/core/Create.js line 64 @@ -723,7 +723,7 @@
Type:
Source:
- src/core/Create.js line 28 + src/core/Create.js line 28 @@ -800,7 +800,7 @@
Type:
Source:
- src/core/Create.js line 33 + src/core/Create.js line 33 @@ -915,7 +915,7 @@
Properties:
Source:
- src/core/Create.js line 38 + src/core/Create.js line 38 @@ -992,7 +992,7 @@
Type:
Source:
- src/core/Create.js line 23 + src/core/Create.js line 23 @@ -1069,7 +1069,7 @@
Type:
Source:
- src/core/Create.js line 43 + src/core/Create.js line 43 @@ -1451,7 +1451,7 @@
Parameters:
Source:
- src/core/Create.js line 228 + src/core/Create.js line 228 @@ -1924,7 +1924,7 @@
Parameters:
Source:
- src/core/Create.js line 168 + src/core/Create.js line 168 @@ -2382,7 +2382,7 @@
Parameters:
Source:
- src/core/Create.js line 89 + src/core/Create.js line 89 @@ -2452,9 +2452,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2471,7 +2471,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2500,7 +2500,7 @@
Returns:
- + diff --git a/docs/Phaser.Creature.html b/docs/Phaser.Creature.html index e26d63c85..af110bb6e 100644 --- a/docs/Phaser.Creature.html +++ b/docs/Phaser.Creature.html @@ -6,7 +6,7 @@ Phaser CE Class: Creature - + @@ -480,7 +480,7 @@
Parameters:
Source:
- src/gameobjects/Creature.js line 180 + src/gameobjects/Creature.js line 180 @@ -634,7 +634,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -716,7 +716,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 842 + src/gameobjects/Creature.js line 842 @@ -793,7 +793,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 724 + src/gameobjects/Creature.js line 724 @@ -870,7 +870,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 774 + src/gameobjects/Creature.js line 774 @@ -961,7 +961,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -1038,7 +1038,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 213 + src/gameobjects/Creature.js line 213 @@ -1125,7 +1125,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1222,7 +1222,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1315,7 +1315,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1402,7 +1402,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1488,7 +1488,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1565,7 +1565,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 286 + src/gameobjects/Creature.js line 286 @@ -1651,7 +1651,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1728,7 +1728,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 255 + src/gameobjects/Creature.js line 255 @@ -1805,7 +1805,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 249 + src/gameobjects/Creature.js line 249 @@ -1901,7 +1901,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -1987,7 +1987,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2074,7 +2074,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2161,7 +2161,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2259,7 +2259,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 277 + src/gameobjects/components/Core.js line 277 @@ -2345,7 +2345,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2436,7 +2436,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2529,7 +2529,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -2616,7 +2616,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -2698,7 +2698,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 185 + src/gameobjects/Creature.js line 185 @@ -2780,7 +2780,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 676 + src/gameobjects/Creature.js line 676 @@ -2876,7 +2876,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -2964,7 +2964,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3051,7 +3051,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3124,7 +3124,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 275 + src/gameobjects/Creature.js line 275 @@ -3215,7 +3215,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3308,7 +3308,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -3385,7 +3385,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 640 + src/gameobjects/Creature.js line 640 @@ -3487,7 +3487,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -3577,7 +3577,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -3654,7 +3654,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 658 + src/gameobjects/Creature.js line 658 @@ -3731,7 +3731,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 218 + src/gameobjects/Creature.js line 218 @@ -3820,7 +3820,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -3907,7 +3907,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -3996,7 +3996,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -4085,7 +4085,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -4172,7 +4172,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4260,7 +4260,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4346,7 +4346,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -4432,7 +4432,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -4519,7 +4519,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4606,7 +4606,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -4695,7 +4695,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -4784,7 +4784,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -4861,7 +4861,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 238 + src/gameobjects/Creature.js line 238 @@ -4945,7 +4945,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 224 + src/gameobjects/Creature.js line 224 @@ -5022,7 +5022,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 824 + src/gameobjects/Creature.js line 824 @@ -5099,7 +5099,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 194 + src/gameobjects/Creature.js line 194 @@ -5176,7 +5176,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 269 + src/gameobjects/Creature.js line 269 @@ -5253,7 +5253,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 263 + src/gameobjects/Creature.js line 263 @@ -5352,7 +5352,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -5434,7 +5434,7 @@
Type:
Source:
- src/gameobjects/Creature.js line 700 + src/gameobjects/Creature.js line 700 @@ -5522,7 +5522,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -5614,7 +5614,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -5705,7 +5705,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -5796,7 +5796,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -5887,7 +5887,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -5978,7 +5978,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -6064,7 +6064,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -6151,7 +6151,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -6238,7 +6238,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -6327,7 +6327,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -6464,7 +6464,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -6655,7 +6655,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -6775,7 +6775,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -6942,7 +6942,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -7042,7 +7042,7 @@

Source:
- src/gameobjects/Creature.js line 872 + src/gameobjects/Creature.js line 872 @@ -7142,7 +7142,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -7222,7 +7222,7 @@

Source:
- src/gameobjects/Creature.js line 930 + src/gameobjects/Creature.js line 930 @@ -7302,7 +7302,7 @@

Source:
- src/gameobjects/Creature.js line 907 + src/gameobjects/Creature.js line 907 @@ -7547,7 +7547,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -7731,7 +7731,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -7898,7 +7898,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -8065,7 +8065,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -8182,7 +8182,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -8303,7 +8303,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -8423,7 +8423,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -8543,7 +8543,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -8721,7 +8721,7 @@
Parameters:
Source:
- src/gameobjects/Creature.js line 612 + src/gameobjects/Creature.js line 612 @@ -8814,7 +8814,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -8903,7 +8903,7 @@

Source:
- src/gameobjects/Creature.js line 329 + src/gameobjects/Creature.js line 329 @@ -8996,7 +8996,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -9076,7 +9076,7 @@

Source:
- src/gameobjects/Creature.js line 964 + src/gameobjects/Creature.js line 964 @@ -9219,7 +9219,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -9386,7 +9386,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -9577,7 +9577,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -9816,7 +9816,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -10005,7 +10005,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -10125,7 +10125,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -10229,7 +10229,7 @@

Source:
- src/gameobjects/Creature.js line 953 + src/gameobjects/Creature.js line 953 @@ -10313,7 +10313,7 @@

Source:
- src/gameobjects/Creature.js line 860 + src/gameobjects/Creature.js line 860 @@ -10447,7 +10447,7 @@
Parameters:
Source:
- src/gameobjects/Creature.js line 582 + src/gameobjects/Creature.js line 582 @@ -10581,7 +10581,7 @@
Parameters:
Source:
- src/gameobjects/Creature.js line 597 + src/gameobjects/Creature.js line 597 @@ -10748,7 +10748,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -10828,7 +10828,7 @@

Source:
- src/gameobjects/Creature.js line 889 + src/gameobjects/Creature.js line 889 @@ -10912,7 +10912,7 @@

Source:
- src/gameobjects/Creature.js line 629 + src/gameobjects/Creature.js line 629 @@ -11079,7 +11079,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -11222,7 +11222,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -11435,7 +11435,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -11556,7 +11556,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -11649,7 +11649,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -11838,7 +11838,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -11907,9 +11907,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -11926,7 +11926,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -11955,7 +11955,7 @@
Returns:
- + diff --git a/docs/Phaser.DOM.html b/docs/Phaser.DOM.html index 65d8b8bb1..0277027ae 100644 --- a/docs/Phaser.DOM.html +++ b/docs/Phaser.DOM.html @@ -6,7 +6,7 @@ Phaser CE Class: DOM - + @@ -183,7 +183,7 @@

Source:
- src/utils/DOM.js line 18 + src/utils/DOM.js line 18 @@ -367,7 +367,7 @@
Properties:
Source:
- src/utils/DOM.js line 268 + src/utils/DOM.js line 268 @@ -529,7 +529,7 @@
Properties:
Source:
- src/utils/DOM.js line 254 + src/utils/DOM.js line 254 @@ -606,7 +606,7 @@
Type:
Source:
- src/utils/DOM.js line 283 + src/utils/DOM.js line 283 @@ -683,7 +683,7 @@
Type:
Source:
- src/utils/DOM.js line 293 + src/utils/DOM.js line 293 @@ -890,7 +890,7 @@
Properties:
Source:
- src/utils/DOM.js line 233 + src/utils/DOM.js line 233 @@ -1041,7 +1041,7 @@
Parameters:
Source:
- src/utils/DOM.js line 97 + src/utils/DOM.js line 97 @@ -1250,7 +1250,7 @@
Parameters:
Source:
- src/utils/DOM.js line 47 + src/utils/DOM.js line 47 @@ -1456,7 +1456,7 @@
Parameters:
Source:
- src/utils/DOM.js line 20 + src/utils/DOM.js line 20 @@ -1655,7 +1655,7 @@
Parameters:
Source:
- src/utils/DOM.js line 144 + src/utils/DOM.js line 144 @@ -1839,7 +1839,7 @@
Parameters:
Source:
- src/utils/DOM.js line 124 + src/utils/DOM.js line 124 @@ -1906,9 +1906,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1925,7 +1925,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1954,7 +1954,7 @@
Returns:
- + diff --git a/docs/Phaser.Device.html b/docs/Phaser.Device.html index da1f32687..d4f7e9f7b 100644 --- a/docs/Phaser.Device.html +++ b/docs/Phaser.Device.html @@ -6,7 +6,7 @@ Phaser CE Class: Device - + @@ -200,7 +200,7 @@

Source:
- src/utils/Device.js line 42 + src/utils/Device.js line 42 @@ -309,7 +309,7 @@
Type:
Source:
- src/utils/Device.js line 576 + src/utils/Device.js line 576 @@ -386,7 +386,7 @@
Type:
Source:
- src/utils/Device.js line 130 + src/utils/Device.js line 130 @@ -463,7 +463,7 @@
Type:
Source:
- src/utils/Device.js line 287 + src/utils/Device.js line 287 @@ -540,7 +540,7 @@
Type:
Source:
- src/utils/Device.js line 397 + src/utils/Device.js line 397 @@ -617,7 +617,7 @@
Type:
Source:
- src/utils/Device.js line 549 + src/utils/Device.js line 549 @@ -694,7 +694,7 @@
Type:
Source:
- src/utils/Device.js line 181 + src/utils/Device.js line 181 @@ -772,7 +772,7 @@
Type:
Source:
- src/utils/Device.js line 191 + src/utils/Device.js line 191 @@ -849,7 +849,7 @@
Type:
Source:
- src/utils/Device.js line 168 + src/utils/Device.js line 168 @@ -926,7 +926,7 @@
Type:
Source:
- src/utils/Device.js line 174 + src/utils/Device.js line 174 @@ -1003,7 +1003,7 @@
Type:
Source:
- src/utils/Device.js line 293 + src/utils/Device.js line 293 @@ -1080,7 +1080,7 @@
Type:
Source:
- src/utils/Device.js line 136 + src/utils/Device.js line 136 @@ -1157,7 +1157,7 @@
Type:
Source:
- src/utils/Device.js line 299 + src/utils/Device.js line 299 @@ -1234,7 +1234,7 @@
Type:
Source:
- src/utils/Device.js line 82 + src/utils/Device.js line 82 @@ -1311,7 +1311,7 @@
Type:
Source:
- src/utils/Device.js line 88 + src/utils/Device.js line 88 @@ -1388,7 +1388,7 @@
Type:
Source:
- src/utils/Device.js line 94 + src/utils/Device.js line 94 @@ -1465,7 +1465,7 @@
Type:
Source:
- src/utils/Device.js line 124 + src/utils/Device.js line 124 @@ -1542,7 +1542,7 @@
Type:
Source:
- src/utils/Device.js line 228 + src/utils/Device.js line 228 @@ -1619,7 +1619,7 @@
Type:
Source:
- src/utils/Device.js line 64 + src/utils/Device.js line 64 @@ -1696,7 +1696,7 @@
Type:
Source:
- src/utils/Device.js line 49 + src/utils/Device.js line 49 @@ -1773,7 +1773,7 @@
Type:
Source:
- src/utils/Device.js line 447 + src/utils/Device.js line 447 @@ -1850,7 +1850,7 @@
Type:
Source:
- src/utils/Device.js line 347 + src/utils/Device.js line 347 @@ -1927,7 +1927,7 @@
Type:
Source:
- src/utils/Device.js line 118 + src/utils/Device.js line 118 @@ -2004,7 +2004,7 @@
Type:
Source:
- src/utils/Device.js line 112 + src/utils/Device.js line 112 @@ -2081,7 +2081,7 @@
Type:
Source:
- src/utils/Device.js line 305 + src/utils/Device.js line 305 @@ -2158,7 +2158,7 @@
Type:
Source:
- src/utils/Device.js line 204 + src/utils/Device.js line 204 @@ -2235,7 +2235,7 @@
Type:
Source:
- src/utils/Device.js line 210 + src/utils/Device.js line 210 @@ -2312,7 +2312,7 @@
Type:
Source:
- src/utils/Device.js line 311 + src/utils/Device.js line 311 @@ -2389,7 +2389,7 @@
Type:
Source:
- src/utils/Device.js line 317 + src/utils/Device.js line 317 @@ -2466,7 +2466,7 @@
Type:
Source:
- src/utils/Device.js line 537 + src/utils/Device.js line 537 @@ -2543,7 +2543,7 @@
Type:
Source:
- src/utils/Device.js line 555 + src/utils/Device.js line 555 @@ -2627,7 +2627,7 @@
Type:
Source:
- src/utils/Device.js line 252 + src/utils/Device.js line 252 @@ -2704,7 +2704,7 @@
Type:
Source:
- src/utils/Device.js line 461 + src/utils/Device.js line 461 @@ -2781,7 +2781,7 @@
Type:
Source:
- src/utils/Device.js line 485 + src/utils/Device.js line 485 @@ -2858,7 +2858,7 @@
Type:
Source:
- src/utils/Device.js line 323 + src/utils/Device.js line 323 @@ -2935,7 +2935,7 @@
Type:
Source:
- src/utils/Device.js line 329 + src/utils/Device.js line 329 @@ -3012,7 +3012,7 @@
Type:
Source:
- src/utils/Device.js line 56 + src/utils/Device.js line 56 @@ -3089,7 +3089,7 @@
Type:
Source:
- src/utils/Device.js line 70 + src/utils/Device.js line 70 @@ -3166,7 +3166,7 @@
Type:
Source:
- src/utils/Device.js line 76 + src/utils/Device.js line 76 @@ -3243,7 +3243,7 @@
Type:
Source:
- src/utils/Device.js line 505 + src/utils/Device.js line 505 @@ -3320,7 +3320,7 @@
Type:
Source:
- src/utils/Device.js line 493 + src/utils/Device.js line 493 @@ -3397,7 +3397,7 @@
Type:
Source:
- src/utils/Device.js line 499 + src/utils/Device.js line 499 @@ -3474,7 +3474,7 @@
Type:
Source:
- src/utils/Device.js line 142 + src/utils/Device.js line 142 @@ -3551,7 +3551,7 @@
Type:
Source:
- src/utils/Device.js line 525 + src/utils/Device.js line 525 @@ -3628,7 +3628,7 @@
Type:
Source:
- src/utils/Device.js line 519 + src/utils/Device.js line 519 @@ -3705,7 +3705,7 @@
Type:
Source:
- src/utils/Device.js line 216 + src/utils/Device.js line 216 @@ -3782,7 +3782,7 @@
Type:
Source:
- src/utils/Device.js line 435 + src/utils/Device.js line 435 @@ -3859,7 +3859,7 @@
Type:
Source:
- src/utils/Device.js line 148 + src/utils/Device.js line 148 @@ -3936,7 +3936,7 @@
Type:
Source:
- src/utils/Device.js line 359 + src/utils/Device.js line 359 @@ -4013,7 +4013,7 @@
Type:
Source:
- src/utils/Device.js line 353 + src/utils/Device.js line 353 @@ -4090,7 +4090,7 @@
Type:
Source:
- src/utils/Device.js line 422 + src/utils/Device.js line 422 @@ -4167,7 +4167,7 @@
Type:
Source:
- src/utils/Device.js line 467 + src/utils/Device.js line 467 @@ -4244,7 +4244,7 @@
Type:
Source:
- src/utils/Device.js line 272 + src/utils/Device.js line 272 @@ -4321,7 +4321,7 @@
Type:
Source:
- src/utils/Device.js line 100 + src/utils/Device.js line 100 @@ -4398,7 +4398,7 @@
Type:
Source:
- src/utils/Device.js line 106 + src/utils/Device.js line 106 @@ -4475,7 +4475,7 @@
Type:
Source:
- src/utils/Device.js line 410 + src/utils/Device.js line 410 @@ -4552,7 +4552,7 @@
Type:
Source:
- src/utils/Device.js line 455 + src/utils/Device.js line 455 @@ -4629,7 +4629,7 @@
Type:
Source:
- src/utils/Device.js line 365 + src/utils/Device.js line 365 @@ -4706,7 +4706,7 @@
Type:
Source:
- src/utils/Device.js line 416 + src/utils/Device.js line 416 @@ -4783,7 +4783,7 @@
Type:
Source:
- src/utils/Device.js line 513 + src/utils/Device.js line 513 @@ -4860,7 +4860,7 @@
Type:
Source:
- src/utils/Device.js line 234 + src/utils/Device.js line 234 @@ -4937,7 +4937,7 @@
Type:
Source:
- src/utils/Device.js line 258 + src/utils/Device.js line 258 @@ -5014,7 +5014,7 @@
Type:
Source:
- src/utils/Device.js line 543 + src/utils/Device.js line 543 @@ -5091,7 +5091,7 @@
Type:
Source:
- src/utils/Device.js line 371 + src/utils/Device.js line 371 @@ -5168,7 +5168,7 @@
Type:
Source:
- src/utils/Device.js line 377 + src/utils/Device.js line 377 @@ -5245,7 +5245,7 @@
Type:
Source:
- src/utils/Device.js line 389 + src/utils/Device.js line 389 @@ -5322,7 +5322,7 @@
Type:
Source:
- src/utils/Device.js line 531 + src/utils/Device.js line 531 @@ -5399,7 +5399,7 @@
Type:
Source:
- src/utils/Device.js line 266 + src/utils/Device.js line 266 @@ -5476,7 +5476,7 @@
Type:
Source:
- src/utils/Device.js line 335 + src/utils/Device.js line 335 @@ -5553,7 +5553,7 @@
Type:
Source:
- src/utils/Device.js line 341 + src/utils/Device.js line 341 @@ -5630,7 +5630,7 @@
Type:
Source:
- src/utils/Device.js line 240 + src/utils/Device.js line 240 @@ -5707,7 +5707,7 @@
Type:
Source:
- src/utils/Device.js line 246 + src/utils/Device.js line 246 @@ -5784,7 +5784,7 @@
Type:
Source:
- src/utils/Device.js line 479 + src/utils/Device.js line 479 @@ -5861,7 +5861,7 @@
Type:
Source:
- src/utils/Device.js line 428 + src/utils/Device.js line 428 @@ -5938,7 +5938,7 @@
Type:
Source:
- src/utils/Device.js line 383 + src/utils/Device.js line 383 @@ -6015,7 +6015,7 @@
Type:
Source:
- src/utils/Device.js line 404 + src/utils/Device.js line 404 @@ -6099,7 +6099,7 @@
Type:
Source:
- src/utils/Device.js line 198 + src/utils/Device.js line 198 @@ -6183,7 +6183,7 @@
Type:
Source:
- src/utils/Device.js line 441 + src/utils/Device.js line 441 @@ -6260,7 +6260,7 @@
Type:
Source:
- src/utils/Device.js line 473 + src/utils/Device.js line 473 @@ -6385,7 +6385,7 @@
Properties:
Source:
- src/utils/Device.js line 279 + src/utils/Device.js line 279 @@ -6462,7 +6462,7 @@
Type:
Source:
- src/utils/Device.js line 154 + src/utils/Device.js line 154 @@ -6539,7 +6539,7 @@
Type:
Source:
- src/utils/Device.js line 160 + src/utils/Device.js line 160 @@ -6616,7 +6616,7 @@
Type:
Source:
- src/utils/Device.js line 222 + src/utils/Device.js line 222 @@ -6842,7 +6842,7 @@
Parameters:
Source:
- src/utils/Device.js line 592 + src/utils/Device.js line 592 @@ -6976,7 +6976,7 @@
Parameters:
Source:
- src/utils/Device.js line 1340 + src/utils/Device.js line 1340 @@ -7134,7 +7134,7 @@
Parameters:
Source:
- src/utils/Device.js line 1382 + src/utils/Device.js line 1382 @@ -7244,7 +7244,7 @@

Source:
- src/utils/Device.js line 1424 + src/utils/Device.js line 1424 @@ -7334,7 +7334,7 @@

Source:
- src/utils/Device.js line 1412 + src/utils/Device.js line 1412 @@ -7397,9 +7397,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -7416,7 +7416,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -7445,7 +7445,7 @@
Returns:
- + diff --git a/docs/Phaser.DeviceButton.html b/docs/Phaser.DeviceButton.html index 9a932283c..af4983ea2 100644 --- a/docs/Phaser.DeviceButton.html +++ b/docs/Phaser.DeviceButton.html @@ -6,7 +6,7 @@ Phaser CE Class: DeviceButton - + @@ -269,7 +269,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 31 + src/input/DeviceButton.js line 31 @@ -375,7 +375,7 @@
Type:
Source:
- src/input/DeviceButton.js line 87 + src/input/DeviceButton.js line 87 @@ -452,7 +452,7 @@
Type:
Source:
- src/input/DeviceButton.js line 114 + src/input/DeviceButton.js line 114 @@ -530,7 +530,7 @@
Type:
Source:
- src/input/DeviceButton.js line 103 + src/input/DeviceButton.js line 103 @@ -608,7 +608,7 @@
Type:
Source:
- src/input/DeviceButton.js line 317 + src/input/DeviceButton.js line 317 @@ -685,7 +685,7 @@
Type:
Source:
- src/input/DeviceButton.js line 47 + src/input/DeviceButton.js line 47 @@ -762,7 +762,7 @@
Type:
Source:
- src/input/DeviceButton.js line 41 + src/input/DeviceButton.js line 41 @@ -839,7 +839,7 @@
Type:
Source:
- src/input/DeviceButton.js line 53 + src/input/DeviceButton.js line 53 @@ -923,7 +923,7 @@
Type:
Source:
- src/input/DeviceButton.js line 59 + src/input/DeviceButton.js line 59 @@ -1002,7 +1002,7 @@
Type:
Source:
- src/input/DeviceButton.js line 122 + src/input/DeviceButton.js line 122 @@ -1081,7 +1081,7 @@
Type:
Source:
- src/input/DeviceButton.js line 138 + src/input/DeviceButton.js line 138 @@ -1160,7 +1160,7 @@
Type:
Source:
- src/input/DeviceButton.js line 130 + src/input/DeviceButton.js line 130 @@ -1240,7 +1240,7 @@
Type:
Source:
- src/input/DeviceButton.js line 36 + src/input/DeviceButton.js line 36 @@ -1318,7 +1318,7 @@
Type:
Source:
- src/input/DeviceButton.js line 79 + src/input/DeviceButton.js line 79 @@ -1396,7 +1396,7 @@
Type:
Source:
- src/input/DeviceButton.js line 95 + src/input/DeviceButton.js line 95 @@ -1473,7 +1473,7 @@
Type:
Source:
- src/input/DeviceButton.js line 65 + src/input/DeviceButton.js line 65 @@ -1550,7 +1550,7 @@
Type:
Source:
- src/input/DeviceButton.js line 71 + src/input/DeviceButton.js line 71 @@ -1627,7 +1627,7 @@
Type:
Source:
- src/input/DeviceButton.js line 109 + src/input/DeviceButton.js line 109 @@ -1706,7 +1706,7 @@

Source:
- src/input/DeviceButton.js line 297 + src/input/DeviceButton.js line 297 @@ -1861,7 +1861,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 249 + src/input/DeviceButton.js line 249 @@ -2040,7 +2040,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 264 + src/input/DeviceButton.js line 264 @@ -2198,7 +2198,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 232 + src/input/DeviceButton.js line 232 @@ -2282,7 +2282,7 @@

Source:
- src/input/DeviceButton.js line 279 + src/input/DeviceButton.js line 279 @@ -2463,7 +2463,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 143 + src/input/DeviceButton.js line 143 @@ -2678,7 +2678,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 210 + src/input/DeviceButton.js line 210 @@ -2859,7 +2859,7 @@
Parameters:
Source:
- src/input/DeviceButton.js line 177 + src/input/DeviceButton.js line 177 @@ -2902,9 +2902,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2921,7 +2921,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2950,7 +2950,7 @@
Parameters:
- + diff --git a/docs/Phaser.Easing.Back.html b/docs/Phaser.Easing.Back.html index 4e05f85b8..2033d523e 100644 --- a/docs/Phaser.Easing.Back.html +++ b/docs/Phaser.Easing.Back.html @@ -6,7 +6,7 @@ Phaser CE Class: Back - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 433 + src/tween/Easing.js line 433 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 435 + src/tween/Easing.js line 435 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 461 + src/tween/Easing.js line 461 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 448 + src/tween/Easing.js line 448 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Bounce.html b/docs/Phaser.Easing.Bounce.html index 7330496e5..91b7cc5f4 100644 --- a/docs/Phaser.Easing.Bounce.html +++ b/docs/Phaser.Easing.Bounce.html @@ -6,7 +6,7 @@ Phaser CE Class: Bounce - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 482 + src/tween/Easing.js line 482 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 484 + src/tween/Easing.js line 484 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 523 + src/tween/Easing.js line 523 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 496 + src/tween/Easing.js line 496 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Circular.html b/docs/Phaser.Easing.Circular.html index 860bec9d3..3aa227c3a 100644 --- a/docs/Phaser.Easing.Circular.html +++ b/docs/Phaser.Easing.Circular.html @@ -6,7 +6,7 @@ Phaser CE Class: Circular - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 323 + src/tween/Easing.js line 323 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 325 + src/tween/Easing.js line 325 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 349 + src/tween/Easing.js line 349 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 337 + src/tween/Easing.js line 337 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Cubic.html b/docs/Phaser.Easing.Cubic.html index 82e0eaa77..e6ef5666f 100644 --- a/docs/Phaser.Easing.Cubic.html +++ b/docs/Phaser.Easing.Cubic.html @@ -6,7 +6,7 @@ Phaser CE Class: Cubic - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 86 + src/tween/Easing.js line 86 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 88 + src/tween/Easing.js line 88 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 112 + src/tween/Easing.js line 112 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 100 + src/tween/Easing.js line 100 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Elastic.html b/docs/Phaser.Easing.Elastic.html index 739540328..0d075428e 100644 --- a/docs/Phaser.Easing.Elastic.html +++ b/docs/Phaser.Easing.Elastic.html @@ -6,7 +6,7 @@ Phaser CE Class: Elastic - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 369 + src/tween/Easing.js line 369 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 371 + src/tween/Easing.js line 371 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 407 + src/tween/Easing.js line 407 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 389 + src/tween/Easing.js line 389 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Exponential.html b/docs/Phaser.Easing.Exponential.html index 067048c0c..cfa6afcf6 100644 --- a/docs/Phaser.Easing.Exponential.html +++ b/docs/Phaser.Easing.Exponential.html @@ -6,7 +6,7 @@ Phaser CE Class: Exponential - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 275 + src/tween/Easing.js line 275 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 277 + src/tween/Easing.js line 277 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 301 + src/tween/Easing.js line 301 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 289 + src/tween/Easing.js line 289 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Linear.html b/docs/Phaser.Easing.Linear.html index 895c6134a..f5e0bae90 100644 --- a/docs/Phaser.Easing.Linear.html +++ b/docs/Phaser.Easing.Linear.html @@ -6,7 +6,7 @@ Phaser CE Class: Linear - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 19 + src/tween/Easing.js line 19 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 21 + src/tween/Easing.js line 21 @@ -399,9 +399,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -418,7 +418,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -447,7 +447,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Quadratic.html b/docs/Phaser.Easing.Quadratic.html index 79767760e..dcac2b545 100644 --- a/docs/Phaser.Easing.Quadratic.html +++ b/docs/Phaser.Easing.Quadratic.html @@ -6,7 +6,7 @@ Phaser CE Class: Quadratic - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 40 + src/tween/Easing.js line 40 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 42 + src/tween/Easing.js line 42 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 66 + src/tween/Easing.js line 66 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 54 + src/tween/Easing.js line 54 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Quartic.html b/docs/Phaser.Easing.Quartic.html index d2c4d5761..ab3e82966 100644 --- a/docs/Phaser.Easing.Quartic.html +++ b/docs/Phaser.Easing.Quartic.html @@ -6,7 +6,7 @@ Phaser CE Class: Quartic - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 132 + src/tween/Easing.js line 132 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 134 + src/tween/Easing.js line 134 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 158 + src/tween/Easing.js line 158 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 146 + src/tween/Easing.js line 146 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Quintic.html b/docs/Phaser.Easing.Quintic.html index 67ed14e59..556ab6df8 100644 --- a/docs/Phaser.Easing.Quintic.html +++ b/docs/Phaser.Easing.Quintic.html @@ -6,7 +6,7 @@ Phaser CE Class: Quintic - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 178 + src/tween/Easing.js line 178 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 180 + src/tween/Easing.js line 180 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 204 + src/tween/Easing.js line 204 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 192 + src/tween/Easing.js line 192 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.Sinusoidal.html b/docs/Phaser.Easing.Sinusoidal.html index a10bcb0ca..a6452e234 100644 --- a/docs/Phaser.Easing.Sinusoidal.html +++ b/docs/Phaser.Easing.Sinusoidal.html @@ -6,7 +6,7 @@ Phaser CE Class: Sinusoidal - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 224 + src/tween/Easing.js line 224 @@ -332,7 +332,7 @@
Parameters:
Source:
- src/tween/Easing.js line 226 + src/tween/Easing.js line 226 @@ -490,7 +490,7 @@
Parameters:
Source:
- src/tween/Easing.js line 254 + src/tween/Easing.js line 254 @@ -648,7 +648,7 @@
Parameters:
Source:
- src/tween/Easing.js line 240 + src/tween/Easing.js line 240 @@ -715,9 +715,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -734,7 +734,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -763,7 +763,7 @@
Returns:
- + diff --git a/docs/Phaser.Easing.html b/docs/Phaser.Easing.html index c973a7b65..76a8f3bf3 100644 --- a/docs/Phaser.Easing.html +++ b/docs/Phaser.Easing.html @@ -6,7 +6,7 @@ Phaser CE Class: Easing - + @@ -180,7 +180,7 @@

Source:
- src/tween/Easing.js line 12 + src/tween/Easing.js line 12 @@ -274,9 +274,9 @@

Classes

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -293,7 +293,7 @@

Classes

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -322,7 +322,7 @@

Classes

- + diff --git a/docs/Phaser.Ellipse.html b/docs/Phaser.Ellipse.html index 4b297a860..2587ebd72 100644 --- a/docs/Phaser.Ellipse.html +++ b/docs/Phaser.Ellipse.html @@ -6,7 +6,7 @@ Phaser CE Class: Ellipse - + @@ -370,7 +370,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 18 + src/geom/Ellipse.js line 18 @@ -475,7 +475,7 @@
Type:
Source:
- src/geom/Ellipse.js line 244 + src/geom/Ellipse.js line 244 @@ -552,7 +552,7 @@
Type:
Source:
- src/geom/Ellipse.js line 270 + src/geom/Ellipse.js line 270 @@ -629,7 +629,7 @@
Type:
Source:
- src/geom/Ellipse.js line 285 + src/geom/Ellipse.js line 285 @@ -707,7 +707,7 @@
Type:
Source:
- src/geom/Ellipse.js line 300 + src/geom/Ellipse.js line 300 @@ -784,7 +784,7 @@
Type:
Source:
- src/geom/Ellipse.js line 43 + src/geom/Ellipse.js line 43 @@ -850,7 +850,7 @@

Source:
- src/geom/Ellipse.js line 180 + src/geom/Ellipse.js line 180 @@ -927,7 +927,7 @@
Type:
Source:
- src/geom/Ellipse.js line 199 + src/geom/Ellipse.js line 199 @@ -1004,7 +1004,7 @@
Type:
Source:
- src/geom/Ellipse.js line 225 + src/geom/Ellipse.js line 225 @@ -1081,7 +1081,7 @@
Type:
Source:
- src/geom/Ellipse.js line 49 + src/geom/Ellipse.js line 49 @@ -1158,7 +1158,7 @@
Type:
Source:
- src/geom/Ellipse.js line 38 + src/geom/Ellipse.js line 38 @@ -1235,7 +1235,7 @@
Type:
Source:
- src/geom/Ellipse.js line 28 + src/geom/Ellipse.js line 28 @@ -1312,7 +1312,7 @@
Type:
Source:
- src/geom/Ellipse.js line 33 + src/geom/Ellipse.js line 33 @@ -1488,7 +1488,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 323 + src/geom/Ellipse.js line 323 @@ -1722,7 +1722,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 349 + src/geom/Ellipse.js line 349 @@ -1892,7 +1892,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 112 + src/geom/Ellipse.js line 112 @@ -2074,7 +2074,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 132 + src/geom/Ellipse.js line 132 @@ -2232,7 +2232,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 84 + src/geom/Ellipse.js line 84 @@ -2390,7 +2390,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 96 + src/geom/Ellipse.js line 96 @@ -2498,7 +2498,7 @@

Source:
- src/geom/Ellipse.js line 73 + src/geom/Ellipse.js line 73 @@ -2672,7 +2672,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 145 + src/geom/Ellipse.js line 145 @@ -2902,7 +2902,7 @@
Parameters:
Source:
- src/geom/Ellipse.js line 54 + src/geom/Ellipse.js line 54 @@ -3010,7 +3010,7 @@

Source:
- src/geom/Ellipse.js line 166 + src/geom/Ellipse.js line 166 @@ -3077,9 +3077,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3096,7 +3096,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3125,7 +3125,7 @@
Returns:
- + diff --git a/docs/Phaser.Events.html b/docs/Phaser.Events.html index 0ad054581..f36e3df1e 100644 --- a/docs/Phaser.Events.html +++ b/docs/Phaser.Events.html @@ -6,7 +6,7 @@ Phaser CE Class: Events - + @@ -240,7 +240,7 @@
Parameters:
Source:
- src/gameobjects/components/Events.js line 30 + src/gameobjects/components/Events.js line 30 @@ -350,7 +350,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 83 + src/gameobjects/components/Events.js line 83 @@ -434,7 +434,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 271 + src/gameobjects/components/Events.js line 271 @@ -518,7 +518,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 284 + src/gameobjects/components/Events.js line 284 @@ -602,7 +602,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 258 + src/gameobjects/components/Events.js line 258 @@ -684,7 +684,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 105 + src/gameobjects/components/Events.js line 105 @@ -770,7 +770,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 216 + src/gameobjects/components/Events.js line 216 @@ -853,7 +853,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 245 + src/gameobjects/components/Events.js line 245 @@ -941,7 +941,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 233 + src/gameobjects/components/Events.js line 233 @@ -1023,7 +1023,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 150 + src/gameobjects/components/Events.js line 150 @@ -1107,7 +1107,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 187 + src/gameobjects/components/Events.js line 187 @@ -1190,7 +1190,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 174 + src/gameobjects/components/Events.js line 174 @@ -1273,7 +1273,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 162 + src/gameobjects/components/Events.js line 162 @@ -1358,7 +1358,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 201 + src/gameobjects/components/Events.js line 201 @@ -1441,7 +1441,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 117 + src/gameobjects/components/Events.js line 117 @@ -1523,7 +1523,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 139 + src/gameobjects/components/Events.js line 139 @@ -1605,7 +1605,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 94 + src/gameobjects/components/Events.js line 94 @@ -1687,7 +1687,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 128 + src/gameobjects/components/Events.js line 128 @@ -1764,7 +1764,7 @@
Type:
Source:
- src/gameobjects/components/Events.js line 35 + src/gameobjects/components/Events.js line 35 @@ -1842,7 +1842,7 @@

Source:
- src/gameobjects/components/Events.js line 42 + src/gameobjects/components/Events.js line 42 @@ -1885,9 +1885,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1904,7 +1904,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1933,7 +1933,7 @@

- + diff --git a/docs/Phaser.Filter.html b/docs/Phaser.Filter.html index c476a589f..be7b0c658 100644 --- a/docs/Phaser.Filter.html +++ b/docs/Phaser.Filter.html @@ -6,7 +6,7 @@ Phaser CE Class: Filter - + @@ -325,7 +325,7 @@

Parameters:
Source:
- src/core/Filter.js line 35 + src/core/Filter.js line 35 @@ -437,7 +437,7 @@
Type:
Source:
- src/core/Filter.js line 66 + src/core/Filter.js line 66 @@ -517,7 +517,7 @@
Type:
Source:
- src/core/Filter.js line 120 + src/core/Filter.js line 120 @@ -594,7 +594,7 @@
Type:
Source:
- src/core/Filter.js line 40 + src/core/Filter.js line 40 @@ -671,7 +671,7 @@
Type:
Source:
- src/core/Filter.js line 278 + src/core/Filter.js line 278 @@ -748,7 +748,7 @@
Type:
Source:
- src/core/Filter.js line 72 + src/core/Filter.js line 72 @@ -825,7 +825,7 @@
Type:
Source:
- src/core/Filter.js line 77 + src/core/Filter.js line 77 @@ -902,7 +902,7 @@
Type:
Source:
- src/core/Filter.js line 46 + src/core/Filter.js line 46 @@ -979,7 +979,7 @@
Type:
Source:
- src/core/Filter.js line 88 + src/core/Filter.js line 88 @@ -1056,7 +1056,7 @@
Type:
Source:
- src/core/Filter.js line 260 + src/core/Filter.js line 260 @@ -1404,7 +1404,7 @@
Parameters:
Source:
- src/core/Filter.js line 174 + src/core/Filter.js line 174 @@ -1512,7 +1512,7 @@

Source:
- src/core/Filter.js line 240 + src/core/Filter.js line 240 @@ -1596,7 +1596,7 @@

Source:
- src/core/Filter.js line 125 + src/core/Filter.js line 125 @@ -1754,7 +1754,7 @@
Parameters:
Source:
- src/core/Filter.js line 137 + src/core/Filter.js line 137 @@ -1838,7 +1838,7 @@

Source:
- src/core/Filter.js line 227 + src/core/Filter.js line 227 @@ -1984,7 +1984,7 @@
Parameters:
Source:
- src/core/Filter.js line 150 + src/core/Filter.js line 150 @@ -2027,9 +2027,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2046,7 +2046,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2075,7 +2075,7 @@
Parameters:
- + diff --git a/docs/Phaser.FlexGrid.html b/docs/Phaser.FlexGrid.html index b65d92461..042944a84 100644 --- a/docs/Phaser.FlexGrid.html +++ b/docs/Phaser.FlexGrid.html @@ -6,7 +6,7 @@ Phaser CE Class: FlexGrid - + @@ -282,7 +282,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 21 + src/core/FlexGrid.js line 21 @@ -387,7 +387,7 @@
Type:
Source:
- src/core/FlexGrid.js line 26 + src/core/FlexGrid.js line 26 @@ -464,7 +464,7 @@
Type:
Source:
- src/core/FlexGrid.js line 31 + src/core/FlexGrid.js line 31 @@ -581,7 +581,7 @@
Properties:
Source:
- src/core/FlexGrid.js line 46 + src/core/FlexGrid.js line 46 @@ -696,7 +696,7 @@
Properties:
Source:
- src/core/FlexGrid.js line 55 + src/core/FlexGrid.js line 55 @@ -900,7 +900,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 102 + src/core/FlexGrid.js line 102 @@ -1070,7 +1070,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 189 + src/core/FlexGrid.js line 189 @@ -1240,7 +1240,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 138 + src/core/FlexGrid.js line 138 @@ -1410,7 +1410,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 166 + src/core/FlexGrid.js line 166 @@ -1518,7 +1518,7 @@

Source:
- src/core/FlexGrid.js line 289 + src/core/FlexGrid.js line 289 @@ -1652,7 +1652,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 275 + src/core/FlexGrid.js line 275 @@ -1810,7 +1810,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 233 + src/core/FlexGrid.js line 233 @@ -1894,7 +1894,7 @@

Source:
- src/core/FlexGrid.js line 248 + src/core/FlexGrid.js line 248 @@ -1978,7 +1978,7 @@

Source:
- src/core/FlexGrid.js line 212 + src/core/FlexGrid.js line 212 @@ -2136,7 +2136,7 @@
Parameters:
Source:
- src/core/FlexGrid.js line 76 + src/core/FlexGrid.js line 76 @@ -2179,9 +2179,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2198,7 +2198,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2227,7 +2227,7 @@
Parameters:
- + diff --git a/docs/Phaser.FlexLayer.html b/docs/Phaser.FlexLayer.html index dbe9bf8c1..4442beb48 100644 --- a/docs/Phaser.FlexLayer.html +++ b/docs/Phaser.FlexLayer.html @@ -6,7 +6,7 @@ Phaser CE Class: FlexLayer - + @@ -305,7 +305,7 @@
Parameters:
Source:
- src/core/FlexLayer.js line 22 + src/core/FlexLayer.js line 22 @@ -437,7 +437,7 @@
Type:
Source:
- src/core/Group.js line 91 + src/core/Group.js line 91 @@ -523,7 +523,7 @@
Type:
Source:
- src/core/Group.js line 3155 + src/core/Group.js line 3155 @@ -612,7 +612,7 @@
Type:
Source:
- src/core/Group.js line 2825 + src/core/Group.js line 2825 @@ -700,7 +700,7 @@
Type:
Source:
- src/core/Group.js line 2980 + src/core/Group.js line 2980 @@ -773,7 +773,7 @@
Type:
Source:
- src/core/FlexLayer.js line 76 + src/core/FlexLayer.js line 76 @@ -846,7 +846,7 @@
Type:
Source:
- src/core/FlexLayer.js line 81 + src/core/FlexLayer.js line 81 @@ -919,7 +919,7 @@
Type:
Source:
- src/core/FlexLayer.js line 86 + src/core/FlexLayer.js line 86 @@ -992,7 +992,7 @@
Type:
Source:
- src/core/FlexLayer.js line 51 + src/core/FlexLayer.js line 51 @@ -1085,7 +1085,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1172,7 +1172,7 @@
Type:
Source:
- src/core/Group.js line 277 + src/core/Group.js line 277 @@ -1260,7 +1260,7 @@
Type:
Source:
- src/core/Group.js line 2850 + src/core/Group.js line 2850 @@ -1348,7 +1348,7 @@
Type:
Source:
- src/core/Group.js line 2876 + src/core/Group.js line 2876 @@ -1434,7 +1434,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1528,7 +1528,7 @@
Type:
Source:
- src/core/Group.js line 127 + src/core/Group.js line 127 @@ -1615,7 +1615,7 @@
Type:
Source:
- src/core/Group.js line 135 + src/core/Group.js line 135 @@ -1701,7 +1701,7 @@
Type:
Source:
- src/core/Group.js line 260 + src/core/Group.js line 260 @@ -1789,7 +1789,7 @@
Type:
Source:
- src/core/Group.js line 213 + src/core/Group.js line 213 @@ -1876,7 +1876,7 @@
Type:
Source:
- src/core/Group.js line 222 + src/core/Group.js line 222 @@ -1969,7 +1969,7 @@
Type:
Source:
- src/core/Group.js line 98 + src/core/Group.js line 98 @@ -2055,7 +2055,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2146,7 +2146,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2234,7 +2234,7 @@
Type:
Source:
- src/core/Group.js line 270 + src/core/Group.js line 270 @@ -2320,7 +2320,7 @@
Type:
Source:
- src/core/Group.js line 38 + src/core/Group.js line 38 @@ -2397,7 +2397,7 @@
Type:
Source:
- src/core/FlexLayer.js line 34 + src/core/FlexLayer.js line 34 @@ -2487,7 +2487,7 @@
Type:
Source:
- src/core/Group.js line 290 + src/core/Group.js line 290 @@ -2573,7 +2573,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -2669,7 +2669,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -2757,7 +2757,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -2843,7 +2843,7 @@
Type:
Source:
- src/core/Group.js line 105 + src/core/Group.js line 105 @@ -2931,7 +2931,7 @@
Type:
Source:
- src/core/Group.js line 146 + src/core/Group.js line 146 @@ -3019,7 +3019,7 @@
Type:
Source:
- src/core/Group.js line 2902 + src/core/Group.js line 2902 @@ -3105,7 +3105,7 @@
Type:
Source:
- src/core/Group.js line 2809 + src/core/Group.js line 2809 @@ -3220,7 +3220,7 @@
Properties:
Source:
- src/core/FlexLayer.js line 29 + src/core/FlexLayer.js line 29 @@ -3309,7 +3309,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -3395,7 +3395,7 @@
Type:
Source:
- src/core/Group.js line 49 + src/core/Group.js line 49 @@ -3485,7 +3485,7 @@
Type:
Source:
- src/core/Group.js line 166 + src/core/Group.js line 166 @@ -3575,7 +3575,7 @@
Type:
Source:
- src/core/Group.js line 203 + src/core/Group.js line 203 @@ -3665,7 +3665,7 @@
Type:
Source:
- src/core/Group.js line 191 + src/core/Group.js line 191 @@ -3756,7 +3756,7 @@
Type:
Source:
- src/core/Group.js line 179 + src/core/Group.js line 179 @@ -3842,7 +3842,7 @@
Type:
Source:
- src/core/Group.js line 254 + src/core/Group.js line 254 @@ -3931,7 +3931,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -4021,7 +4021,7 @@
Type:
Source:
- src/core/Group.js line 117 + src/core/Group.js line 117 @@ -4098,7 +4098,7 @@
Type:
Source:
- src/core/FlexLayer.js line 41 + src/core/FlexLayer.js line 41 @@ -4185,7 +4185,7 @@
Type:
Source:
- src/core/Group.js line 230 + src/core/Group.js line 230 @@ -4278,7 +4278,7 @@
Type:
Source:
- src/core/Group.js line 248 + src/core/Group.js line 248 @@ -4364,7 +4364,7 @@
Type:
Source:
- src/core/Group.js line 84 + src/core/Group.js line 84 @@ -4451,7 +4451,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4529,7 +4529,7 @@
Type:
Source:
- src/core/FlexLayer.js line 46 + src/core/FlexLayer.js line 46 @@ -4616,7 +4616,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4704,7 +4704,7 @@
Type:
Source:
- src/core/Group.js line 2928 + src/core/Group.js line 2928 @@ -4792,7 +4792,7 @@
Type:
Source:
- src/core/Group.js line 3139 + src/core/Group.js line 3139 @@ -4870,7 +4870,7 @@
Type:
Source:
- src/core/FlexLayer.js line 56 + src/core/FlexLayer.js line 56 @@ -4958,7 +4958,7 @@
Type:
Source:
- src/core/Group.js line 2954 + src/core/Group.js line 2954 @@ -5031,7 +5031,7 @@
Type:
Source:
- src/core/FlexLayer.js line 61 + src/core/FlexLayer.js line 61 @@ -5104,7 +5104,7 @@
Type:
Source:
- src/core/FlexLayer.js line 66 + src/core/FlexLayer.js line 66 @@ -5177,7 +5177,7 @@
Type:
Source:
- src/core/FlexLayer.js line 71 + src/core/FlexLayer.js line 71 @@ -5263,7 +5263,7 @@
Type:
Source:
- src/core/Group.js line 2793 + src/core/Group.js line 2793 @@ -5349,7 +5349,7 @@
Type:
Source:
- src/core/Group.js line 78 + src/core/Group.js line 78 @@ -5435,7 +5435,7 @@
Type:
Source:
- src/core/Group.js line 154 + src/core/Group.js line 154 @@ -5521,7 +5521,7 @@
Type:
Source:
- src/core/Group.js line 3148 + src/core/Group.js line 3148 @@ -5607,7 +5607,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -5699,7 +5699,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -5790,7 +5790,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -5881,7 +5881,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -5972,7 +5972,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -6063,7 +6063,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -6149,7 +6149,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -6237,7 +6237,7 @@
Type:
Source:
- src/core/Group.js line 3121 + src/core/Group.js line 3121 @@ -6325,7 +6325,7 @@
Type:
Source:
- src/core/Group.js line 3130 + src/core/Group.js line 3130 @@ -6412,7 +6412,7 @@
Type:
Source:
- src/core/Group.js line 57 + src/core/Group.js line 57 @@ -6650,7 +6650,7 @@
Parameters:
Source:
- src/core/Group.js line 345 + src/core/Group.js line 345 @@ -6928,7 +6928,7 @@
Parameters:
Source:
- src/core/Group.js line 1417 + src/core/Group.js line 1417 @@ -7170,7 +7170,7 @@
Parameters:
Source:
- src/core/Group.js line 421 + src/core/Group.js line 421 @@ -7337,7 +7337,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7528,7 +7528,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7759,7 +7759,7 @@
Parameters:
Source:
- src/core/Group.js line 489 + src/core/Group.js line 489 @@ -7930,7 +7930,7 @@
Parameters:
Source:
- src/core/Group.js line 441 + src/core/Group.js line 441 @@ -8325,7 +8325,7 @@
Parameters:
Source:
- src/core/Group.js line 681 + src/core/Group.js line 681 @@ -8668,7 +8668,7 @@
Parameters:
Source:
- src/core/Group.js line 3006 + src/core/Group.js line 3006 @@ -9012,7 +9012,7 @@
Parameters:
Source:
- src/core/Group.js line 3048 + src/core/Group.js line 3048 @@ -9203,7 +9203,7 @@
Parameters:
Source:
- src/core/Group.js line 2024 + src/core/Group.js line 2024 @@ -9346,7 +9346,7 @@
Parameters:
Source:
- src/core/Group.js line 901 + src/core/Group.js line 901 @@ -9609,7 +9609,7 @@
Parameters:
Source:
- src/core/Group.js line 1624 + src/core/Group.js line 1624 @@ -9829,7 +9829,7 @@
Parameters:
Source:
- src/core/Group.js line 1540 + src/core/Group.js line 1540 @@ -10020,7 +10020,7 @@
Parameters:
Source:
- src/core/Group.js line 1575 + src/core/Group.js line 1575 @@ -10336,7 +10336,7 @@
Parameters:
Source:
- src/core/Group.js line 1349 + src/core/Group.js line 1349 @@ -10638,7 +10638,7 @@
Parameters:
Source:
- src/core/Group.js line 1384 + src/core/Group.js line 1384 @@ -10935,7 +10935,7 @@
Parameters:
Source:
- src/core/Group.js line 1208 + src/core/Group.js line 1208 @@ -11102,7 +11102,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -11289,7 +11289,7 @@
Parameters:
Source:
- src/core/Group.js line 2431 + src/core/Group.js line 2431 @@ -11406,7 +11406,7 @@

Source:
- src/core/Group.js line 2455 + src/core/Group.js line 2455 @@ -11523,7 +11523,7 @@

Source:
- src/core/Group.js line 2444 + src/core/Group.js line 2444 @@ -11917,7 +11917,7 @@
Parameters:
Source:
- src/core/Group.js line 542 + src/core/Group.js line 542 @@ -12324,7 +12324,7 @@
Parameters:
Source:
- src/core/Group.js line 578 + src/core/Group.js line 578 @@ -12537,7 +12537,7 @@
Parameters:
Source:
- src/core/Group.js line 2001 + src/core/Group.js line 2001 @@ -12621,7 +12621,7 @@

Source:
- src/core/FlexLayer.js line 101 + src/core/FlexLayer.js line 101 @@ -12788,7 +12788,7 @@
Parameters:
Source:
- src/core/Group.js line 2053 + src/core/Group.js line 2053 @@ -12992,7 +12992,7 @@
Parameters:
Source:
- src/core/Group.js line 2757 + src/core/Group.js line 2757 @@ -13208,7 +13208,7 @@
Parameters:
Source:
- src/core/Group.js line 1465 + src/core/Group.js line 1465 @@ -13414,7 +13414,7 @@
Parameters:
Source:
- src/core/Group.js line 1783 + src/core/Group.js line 1783 @@ -13720,7 +13720,7 @@
Parameters:
Source:
- src/core/Group.js line 1822 + src/core/Group.js line 1822 @@ -13958,7 +13958,7 @@
Parameters:
Source:
- src/core/Group.js line 1908 + src/core/Group.js line 1908 @@ -14196,7 +14196,7 @@
Parameters:
Source:
- src/core/Group.js line 1935 + src/core/Group.js line 1935 @@ -14434,7 +14434,7 @@
Parameters:
Source:
- src/core/Group.js line 1881 + src/core/Group.js line 1881 @@ -14679,7 +14679,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -14987,7 +14987,7 @@
Parameters:
Source:
- src/core/Group.js line 2506 + src/core/Group.js line 2506 @@ -15156,7 +15156,7 @@
Parameters:
Source:
- src/core/Group.js line 523 + src/core/Group.js line 523 @@ -15277,7 +15277,7 @@

Source:
- src/core/Group.js line 2329 + src/core/Group.js line 2329 @@ -15459,7 +15459,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -15628,7 +15628,7 @@
Parameters:
Source:
- src/core/Group.js line 1041 + src/core/Group.js line 1041 @@ -15795,7 +15795,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -15962,7 +15962,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -16213,7 +16213,7 @@
Parameters:
Source:
- src/core/Group.js line 2345 + src/core/Group.js line 2345 @@ -16404,7 +16404,7 @@
Parameters:
Source:
- src/core/Group.js line 2171 + src/core/Group.js line 2171 @@ -16763,7 +16763,7 @@
Parameters:
Source:
- src/core/Group.js line 2217 + src/core/Group.js line 2217 @@ -17122,7 +17122,7 @@
Parameters:
Source:
- src/core/Group.js line 2246 + src/core/Group.js line 2246 @@ -17520,7 +17520,7 @@
Parameters:
Source:
- src/core/Group.js line 2184 + src/core/Group.js line 2184 @@ -17771,7 +17771,7 @@
Parameters:
Source:
- src/core/Group.js line 2388 + src/core/Group.js line 2388 @@ -17938,7 +17938,7 @@
Parameters:
Source:
- src/core/Group.js line 1029 + src/core/Group.js line 1029 @@ -18055,7 +18055,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -18282,7 +18282,7 @@
Parameters:
Source:
- src/core/Group.js line 2466 + src/core/Group.js line 2466 @@ -18510,7 +18510,7 @@
Parameters:
Source:
- src/core/Group.js line 2487 + src/core/Group.js line 2487 @@ -18628,7 +18628,7 @@

Source:
- src/core/Group.js line 2313 + src/core/Group.js line 2313 @@ -18820,7 +18820,7 @@
Parameters:
Source:
- src/core/Group.js line 1093 + src/core/Group.js line 1093 @@ -19207,7 +19207,7 @@
Parameters:
Source:
- src/core/Group.js line 2077 + src/core/Group.js line 2077 @@ -19324,7 +19324,7 @@

Source:
- src/core/Group.js line 1481 + src/core/Group.js line 1481 @@ -19417,7 +19417,7 @@

Source:
- src/core/Group.js line 1493 + src/core/Group.js line 1493 @@ -19616,7 +19616,7 @@
Parameters:
Source:
- src/core/Group.js line 2598 + src/core/Group.js line 2598 @@ -19783,7 +19783,7 @@
Parameters:
Source:
- src/core/Group.js line 972 + src/core/Group.js line 972 @@ -19950,7 +19950,7 @@
Parameters:
Source:
- src/core/Group.js line 949 + src/core/Group.js line 949 @@ -20190,7 +20190,7 @@
Parameters:
Source:
- src/core/Group.js line 1449 + src/core/Group.js line 1449 @@ -20284,7 +20284,7 @@

Source:
- src/core/Group.js line 830 + src/core/Group.js line 830 @@ -20401,7 +20401,7 @@

Source:
- src/core/Group.js line 1763 + src/core/Group.js line 1763 @@ -20494,7 +20494,7 @@

Source:
- src/core/Group.js line 1695 + src/core/Group.js line 1695 @@ -20588,7 +20588,7 @@

Source:
- src/core/Group.js line 858 + src/core/Group.js line 858 @@ -20853,7 +20853,7 @@
Parameters:
Source:
- src/core/Group.js line 2551 + src/core/Group.js line 2551 @@ -21123,7 +21123,7 @@
Parameters:
Source:
- src/core/Group.js line 2626 + src/core/Group.js line 2626 @@ -21400,7 +21400,7 @@
Parameters:
Source:
- src/core/Group.js line 2673 + src/core/Group.js line 2673 @@ -21543,7 +21543,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -21710,7 +21710,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -21901,7 +21901,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -22045,7 +22045,7 @@
Parameters:
Source:
- src/core/Group.js line 465 + src/core/Group.js line 465 @@ -22238,7 +22238,7 @@
Parameters:
Source:
- src/core/Group.js line 1055 + src/core/Group.js line 1055 @@ -22592,7 +22592,7 @@
Parameters:
Source:
- src/core/Group.js line 1525 + src/core/Group.js line 1525 @@ -22898,7 +22898,7 @@
Parameters:
Source:
- src/core/Group.js line 2275 + src/core/Group.js line 2275 @@ -23086,7 +23086,7 @@
Parameters:
Source:
- src/core/Group.js line 804 + src/core/Group.js line 804 @@ -23194,7 +23194,7 @@

Source:
- src/core/FlexLayer.js line 92 + src/core/FlexLayer.js line 92 @@ -23288,7 +23288,7 @@

Source:
- src/core/Group.js line 1016 + src/core/Group.js line 1016 @@ -23381,7 +23381,7 @@

Source:
- src/core/Group.js line 1503 + src/core/Group.js line 1503 @@ -23474,7 +23474,7 @@

Source:
- src/core/Group.js line 1515 + src/core/Group.js line 1515 @@ -23677,7 +23677,7 @@
Parameters:
Source:
- src/core/Group.js line 2727 + src/core/Group.js line 2727 @@ -23820,7 +23820,7 @@
Parameters:
Source:
- src/core/Group.js line 925 + src/core/Group.js line 925 @@ -24236,7 +24236,7 @@
Parameters:
Source:
- src/core/Group.js line 1237 + src/core/Group.js line 1237 @@ -24618,7 +24618,7 @@
Parameters:
Source:
- src/core/Group.js line 1267 + src/core/Group.js line 1267 @@ -24976,7 +24976,7 @@
Parameters:
Source:
- src/core/Group.js line 1305 + src/core/Group.js line 1305 @@ -25143,7 +25143,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -25462,7 +25462,7 @@
Parameters:
Source:
- src/core/Group.js line 1127 + src/core/Group.js line 1127 @@ -25580,7 +25580,7 @@

Source:
- src/core/Group.js line 2744 + src/core/Group.js line 2744 @@ -25787,7 +25787,7 @@
Parameters:
Source:
- src/core/Group.js line 1962 + src/core/Group.js line 1962 @@ -26003,7 +26003,7 @@
Parameters:
Source:
- src/core/Group.js line 1433 + src/core/Group.js line 1433 @@ -26171,7 +26171,7 @@
Parameters:
Source:
- src/core/Group.js line 886 + src/core/Group.js line 886 @@ -26338,7 +26338,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -26481,7 +26481,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -26694,7 +26694,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -26814,7 +26814,7 @@

Source:
- src/core/Group.js line 1735 + src/core/Group.js line 1735 @@ -26907,7 +26907,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -27096,7 +27096,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -27216,7 +27216,7 @@

Source:
- src/core/Group.js line 663 + src/core/Group.js line 663 @@ -27407,7 +27407,7 @@
Parameters:
Source:
- src/core/Group.js line 995 + src/core/Group.js line 995 @@ -27450,9 +27450,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -27469,7 +27469,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -27498,7 +27498,7 @@
Parameters:
- + diff --git a/docs/Phaser.Frame.html b/docs/Phaser.Frame.html index 91b04e59d..ebaa22416 100644 --- a/docs/Phaser.Frame.html +++ b/docs/Phaser.Frame.html @@ -6,7 +6,7 @@ Phaser CE Class: Frame - + @@ -350,7 +350,7 @@
Parameters:
Source:
- src/animation/Frame.js line 19 + src/animation/Frame.js line 19 @@ -455,7 +455,7 @@
Type:
Source:
- src/animation/Frame.js line 125 + src/animation/Frame.js line 125 @@ -532,7 +532,7 @@
Type:
Source:
- src/animation/Frame.js line 59 + src/animation/Frame.js line 59 @@ -609,7 +609,7 @@
Type:
Source:
- src/animation/Frame.js line 64 + src/animation/Frame.js line 64 @@ -686,7 +686,7 @@
Type:
Source:
- src/animation/Frame.js line 69 + src/animation/Frame.js line 69 @@ -763,7 +763,7 @@
Type:
Source:
- src/animation/Frame.js line 44 + src/animation/Frame.js line 44 @@ -840,7 +840,7 @@
Type:
Source:
- src/animation/Frame.js line 24 + src/animation/Frame.js line 24 @@ -917,7 +917,7 @@
Type:
Source:
- src/animation/Frame.js line 54 + src/animation/Frame.js line 54 @@ -994,7 +994,7 @@
Type:
Source:
- src/animation/Frame.js line 120 + src/animation/Frame.js line 120 @@ -1071,7 +1071,7 @@
Type:
Source:
- src/animation/Frame.js line 75 + src/animation/Frame.js line 75 @@ -1148,7 +1148,7 @@
Type:
Source:
- src/animation/Frame.js line 91 + src/animation/Frame.js line 91 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/animation/Frame.js line 86 + src/animation/Frame.js line 86 @@ -1302,7 +1302,7 @@
Type:
Source:
- src/animation/Frame.js line 115 + src/animation/Frame.js line 115 @@ -1379,7 +1379,7 @@
Type:
Source:
- src/animation/Frame.js line 109 + src/animation/Frame.js line 109 @@ -1456,7 +1456,7 @@
Type:
Source:
- src/animation/Frame.js line 97 + src/animation/Frame.js line 97 @@ -1533,7 +1533,7 @@
Type:
Source:
- src/animation/Frame.js line 103 + src/animation/Frame.js line 103 @@ -1610,7 +1610,7 @@
Type:
Source:
- src/animation/Frame.js line 81 + src/animation/Frame.js line 81 @@ -1687,7 +1687,7 @@
Type:
Source:
- src/animation/Frame.js line 39 + src/animation/Frame.js line 39 @@ -1764,7 +1764,7 @@
Type:
Source:
- src/animation/Frame.js line 29 + src/animation/Frame.js line 29 @@ -1841,7 +1841,7 @@
Type:
Source:
- src/animation/Frame.js line 34 + src/animation/Frame.js line 34 @@ -1920,7 +1920,7 @@

Source:
- src/animation/Frame.js line 179 + src/animation/Frame.js line 179 @@ -2090,7 +2090,7 @@
Parameters:
Source:
- src/animation/Frame.js line 201 + src/animation/Frame.js line 201 @@ -2272,7 +2272,7 @@
Parameters:
Source:
- src/animation/Frame.js line 130 + src/animation/Frame.js line 130 @@ -2550,7 +2550,7 @@
Parameters:
Source:
- src/animation/Frame.js line 150 + src/animation/Frame.js line 150 @@ -2593,9 +2593,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2612,7 +2612,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2641,7 +2641,7 @@
Parameters:
- + diff --git a/docs/Phaser.FrameData.html b/docs/Phaser.FrameData.html index 5290ba610..932190492 100644 --- a/docs/Phaser.FrameData.html +++ b/docs/Phaser.FrameData.html @@ -6,7 +6,7 @@ Phaser CE Class: FrameData - + @@ -180,7 +180,7 @@

Source:
- src/animation/FrameData.js line 13 + src/animation/FrameData.js line 13 @@ -285,7 +285,7 @@
Type:
Source:
- src/animation/FrameData.js line 255 + src/animation/FrameData.js line 255 @@ -413,7 +413,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 30 + src/animation/FrameData.js line 30 @@ -571,7 +571,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 85 + src/animation/FrameData.js line 85 @@ -679,7 +679,7 @@

Source:
- src/animation/FrameData.js line 102 + src/animation/FrameData.js line 102 @@ -787,7 +787,7 @@

Source:
- src/animation/FrameData.js line 240 + src/animation/FrameData.js line 240 @@ -921,7 +921,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 51 + src/animation/FrameData.js line 51 @@ -1079,7 +1079,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 68 + src/animation/FrameData.js line 68 @@ -1334,7 +1334,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 196 + src/animation/FrameData.js line 196 @@ -1568,7 +1568,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 129 + src/animation/FrameData.js line 129 @@ -1823,7 +1823,7 @@
Parameters:
Source:
- src/animation/FrameData.js line 150 + src/animation/FrameData.js line 150 @@ -1890,9 +1890,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1909,7 +1909,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1938,7 +1938,7 @@
Returns:
- + diff --git a/docs/Phaser.Game.html b/docs/Phaser.Game.html index e3e874211..2bd6c7537 100644 --- a/docs/Phaser.Game.html +++ b/docs/Phaser.Game.html @@ -6,7 +6,7 @@ Phaser CE Class: Game - + @@ -582,7 +582,7 @@
Parameters:
Source:
- src/core/Game.js line 73 + src/core/Game.js line 73 @@ -687,7 +687,7 @@
Type:
Source:
- src/core/Game.js line 222 + src/core/Game.js line 222 @@ -771,7 +771,7 @@
Type:
Source:
- src/core/Game.js line 152 + src/core/Game.js line 152 @@ -848,7 +848,7 @@
Type:
Source:
- src/core/Game.js line 232 + src/core/Game.js line 232 @@ -925,7 +925,7 @@
Type:
Source:
- src/core/Game.js line 302 + src/core/Game.js line 302 @@ -1002,7 +1002,7 @@
Type:
Source:
- src/core/Game.js line 307 + src/core/Game.js line 307 @@ -1090,7 +1090,7 @@
Type:
Source:
- src/core/Game.js line 182 + src/core/Game.js line 182 @@ -1167,7 +1167,7 @@
Type:
Source:
- src/core/Game.js line 84 + src/core/Game.js line 84 @@ -1244,7 +1244,7 @@
Type:
Source:
- src/core/Game.js line 312 + src/core/Game.js line 312 @@ -1321,7 +1321,7 @@
Type:
Source:
- src/core/Game.js line 327 + src/core/Game.js line 327 @@ -1399,7 +1399,7 @@
Type:
Source:
- src/core/Game.js line 414 + src/core/Game.js line 414 @@ -1476,7 +1476,7 @@
Type:
Source:
- src/core/Game.js line 317 + src/core/Game.js line 317 @@ -1553,7 +1553,7 @@
Type:
Source:
- src/core/Game.js line 297 + src/core/Game.js line 297 @@ -1630,7 +1630,7 @@
Type:
Source:
- src/core/Game.js line 479 + src/core/Game.js line 479 @@ -1707,7 +1707,7 @@
Type:
Source:
- src/core/Game.js line 473 + src/core/Game.js line 473 @@ -1791,7 +1791,7 @@
Type:
Source:
- src/core/Game.js line 467 + src/core/Game.js line 467 @@ -1876,7 +1876,7 @@
Type:
Source:
- src/core/Game.js line 460 + src/core/Game.js line 460 @@ -1961,7 +1961,7 @@
Type:
Source:
- src/core/Game.js line 118 + src/core/Game.js line 118 @@ -2038,7 +2038,7 @@
Type:
Source:
- src/core/Game.js line 79 + src/core/Game.js line 79 @@ -2115,7 +2115,7 @@
Type:
Source:
- src/core/Game.js line 237 + src/core/Game.js line 237 @@ -2192,7 +2192,7 @@
Type:
Source:
- src/core/Game.js line 205 + src/core/Game.js line 205 @@ -2269,7 +2269,7 @@
Type:
Source:
- src/core/Game.js line 211 + src/core/Game.js line 211 @@ -2346,7 +2346,7 @@
Type:
Source:
- src/core/Game.js line 242 + src/core/Game.js line 242 @@ -2425,7 +2425,7 @@
Type:
Source:
- src/core/Game.js line 336 + src/core/Game.js line 336 @@ -2502,7 +2502,7 @@
Type:
Source:
- src/core/Game.js line 227 + src/core/Game.js line 227 @@ -2579,7 +2579,7 @@
Type:
Source:
- src/core/Game.js line 247 + src/core/Game.js line 247 @@ -2660,7 +2660,7 @@
Type:
Source:
- src/core/Game.js line 165 + src/core/Game.js line 165 @@ -2737,7 +2737,7 @@
Type:
Source:
- src/core/Game.js line 378 + src/core/Game.js line 378 @@ -2814,7 +2814,7 @@
Type:
Source:
- src/core/Game.js line 388 + src/core/Game.js line 388 @@ -2891,7 +2891,7 @@
Type:
Source:
- src/core/Game.js line 383 + src/core/Game.js line 383 @@ -2968,7 +2968,7 @@
Type:
Source:
- src/core/Game.js line 368 + src/core/Game.js line 368 @@ -3045,7 +3045,7 @@
Type:
Source:
- src/core/Game.js line 373 + src/core/Game.js line 373 @@ -3125,7 +3125,7 @@
Type:
Source:
- src/core/Game.js line 96 + src/core/Game.js line 96 @@ -3202,7 +3202,7 @@
Type:
Source:
- src/core/Game.js line 322 + src/core/Game.js line 322 @@ -3280,7 +3280,7 @@
Type:
Source:
- src/core/Game.js line 1390 + src/core/Game.js line 1390 @@ -3357,7 +3357,7 @@
Type:
Source:
- src/core/Game.js line 342 + src/core/Game.js line 342 @@ -3434,7 +3434,7 @@
Type:
Source:
- src/core/Game.js line 356 + src/core/Game.js line 356 @@ -3511,7 +3511,7 @@
Type:
Source:
- src/core/Game.js line 282 + src/core/Game.js line 282 @@ -3588,7 +3588,7 @@
Type:
Source:
- src/core/Game.js line 89 + src/core/Game.js line 89 @@ -3665,7 +3665,7 @@
Type:
Source:
- src/core/Game.js line 287 + src/core/Game.js line 287 @@ -3749,7 +3749,7 @@
Type:
Source:
- src/core/Game.js line 486 + src/core/Game.js line 486 @@ -3826,7 +3826,7 @@
Type:
Source:
- src/core/Game.js line 171 + src/core/Game.js line 171 @@ -3903,7 +3903,7 @@
Type:
Source:
- src/core/Game.js line 217 + src/core/Game.js line 217 @@ -3983,7 +3983,7 @@
Type:
Source:
- src/core/Game.js line 188 + src/core/Game.js line 188 @@ -4060,7 +4060,7 @@
Type:
Source:
- src/core/Game.js line 428 + src/core/Game.js line 428 @@ -4137,7 +4137,7 @@
Type:
Source:
- src/core/Game.js line 194 + src/core/Game.js line 194 @@ -4221,7 +4221,7 @@
Type:
Source:
- src/core/Game.js line 127 + src/core/Game.js line 127 @@ -4298,7 +4298,7 @@
Type:
Source:
- src/core/Game.js line 292 + src/core/Game.js line 292 @@ -4375,7 +4375,7 @@
Type:
Source:
- src/core/Game.js line 252 + src/core/Game.js line 252 @@ -4452,7 +4452,7 @@
Type:
Source:
- src/core/Game.js line 257 + src/core/Game.js line 257 @@ -4529,7 +4529,7 @@
Type:
Source:
- src/core/Game.js line 262 + src/core/Game.js line 262 @@ -4606,7 +4606,7 @@
Type:
Source:
- src/core/Game.js line 199 + src/core/Game.js line 199 @@ -4683,7 +4683,7 @@
Type:
Source:
- src/core/Game.js line 363 + src/core/Game.js line 363 @@ -4760,7 +4760,7 @@
Type:
Source:
- src/core/Game.js line 349 + src/core/Game.js line 349 @@ -4837,7 +4837,7 @@
Type:
Source:
- src/core/Game.js line 267 + src/core/Game.js line 267 @@ -4914,7 +4914,7 @@
Type:
Source:
- src/core/Game.js line 145 + src/core/Game.js line 145 @@ -4991,7 +4991,7 @@
Type:
Source:
- src/core/Game.js line 272 + src/core/Game.js line 272 @@ -5068,7 +5068,7 @@
Type:
Source:
- src/core/Game.js line 421 + src/core/Game.js line 421 @@ -5153,7 +5153,7 @@
Type:
Source:
- src/core/Game.js line 107 + src/core/Game.js line 107 @@ -5230,7 +5230,7 @@
Type:
Source:
- src/core/Game.js line 277 + src/core/Game.js line 277 @@ -5308,7 +5308,7 @@

Source:
- src/core/Game.js line 687 + src/core/Game.js line 687 @@ -5396,7 +5396,7 @@

Source:
- src/core/Game.js line 1223 + src/core/Game.js line 1223 @@ -5480,7 +5480,7 @@

Source:
- src/core/Game.js line 1200 + src/core/Game.js line 1200 @@ -5565,7 +5565,7 @@

Source:
- src/core/Game.js line 1187 + src/core/Game.js line 1187 @@ -5699,7 +5699,7 @@
Parameters:
Source:
- src/core/Game.js line 1349 + src/core/Game.js line 1349 @@ -5833,7 +5833,7 @@
Parameters:
Source:
- src/core/Game.js line 1332 + src/core/Game.js line 1332 @@ -5967,7 +5967,7 @@
Parameters:
Source:
- src/core/Game.js line 1279 + src/core/Game.js line 1279 @@ -6101,7 +6101,7 @@
Parameters:
Source:
- src/core/Game.js line 1305 + src/core/Game.js line 1305 @@ -6185,7 +6185,7 @@

Source:
- src/core/Game.js line 593 + src/core/Game.js line 593 @@ -6269,7 +6269,7 @@

Source:
- src/core/Game.js line 853 + src/core/Game.js line 853 @@ -6353,7 +6353,7 @@

Source:
- src/core/Game.js line 787 + src/core/Game.js line 787 @@ -6438,7 +6438,7 @@

Source:
- src/core/Game.js line 1211 + src/core/Game.js line 1211 @@ -6572,7 +6572,7 @@
Parameters:
Source:
- src/core/Game.js line 977 + src/core/Game.js line 977 @@ -6706,7 +6706,7 @@
Parameters:
Source:
- src/core/Game.js line 1105 + src/core/Game.js line 1105 @@ -6798,7 +6798,7 @@

Source:
- src/core/Game.js line 1155 + src/core/Game.js line 1155 @@ -6841,9 +6841,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6860,7 +6860,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6889,7 +6889,7 @@

- + diff --git a/docs/Phaser.GameObjectCreator.html b/docs/Phaser.GameObjectCreator.html index b56381ce0..0111bda2e 100644 --- a/docs/Phaser.GameObjectCreator.html +++ b/docs/Phaser.GameObjectCreator.html @@ -6,7 +6,7 @@ Phaser CE Class: GameObjectCreator - + @@ -231,7 +231,7 @@

Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 15 + src/gameobjects/GameObjectCreator.js line 15 @@ -336,7 +336,7 @@
Type:
Source:
- src/gameobjects/GameObjectCreator.js line 21 + src/gameobjects/GameObjectCreator.js line 21 @@ -413,7 +413,7 @@
Type:
Source:
- src/gameobjects/GameObjectCreator.js line 27 + src/gameobjects/GameObjectCreator.js line 27 @@ -677,7 +677,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 112 + src/gameobjects/GameObjectCreator.js line 112 @@ -835,7 +835,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 127 + src/gameobjects/GameObjectCreator.js line 127 @@ -1134,7 +1134,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 360 + src/gameobjects/GameObjectCreator.js line 360 @@ -1511,7 +1511,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 281 + src/gameobjects/GameObjectCreator.js line 281 @@ -1965,7 +1965,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 203 + src/gameobjects/GameObjectCreator.js line 203 @@ -2226,7 +2226,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 236 + src/gameobjects/GameObjectCreator.js line 236 @@ -2408,7 +2408,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 387 + src/gameobjects/GameObjectCreator.js line 387 @@ -2626,7 +2626,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 223 + src/gameobjects/GameObjectCreator.js line 223 @@ -2962,7 +2962,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 79 + src/gameobjects/GameObjectCreator.js line 79 @@ -3239,7 +3239,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 32 + src/gameobjects/GameObjectCreator.js line 32 @@ -3537,7 +3537,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 335 + src/gameobjects/GameObjectCreator.js line 335 @@ -4021,7 +4021,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 254 + src/gameobjects/GameObjectCreator.js line 254 @@ -4311,7 +4311,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 171 + src/gameobjects/GameObjectCreator.js line 171 @@ -4605,7 +4605,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 139 + src/gameobjects/GameObjectCreator.js line 139 @@ -4880,7 +4880,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 50 + src/gameobjects/GameObjectCreator.js line 50 @@ -5134,7 +5134,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 95 + src/gameobjects/GameObjectCreator.js line 95 @@ -5364,7 +5364,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 188 + src/gameobjects/GameObjectCreator.js line 188 @@ -5705,7 +5705,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 314 + src/gameobjects/GameObjectCreator.js line 314 @@ -5968,7 +5968,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 154 + src/gameobjects/GameObjectCreator.js line 154 @@ -6127,7 +6127,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectCreator.js line 65 + src/gameobjects/GameObjectCreator.js line 65 @@ -6194,9 +6194,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6213,7 +6213,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6242,7 +6242,7 @@
Returns:
- + diff --git a/docs/Phaser.GameObjectFactory.html b/docs/Phaser.GameObjectFactory.html index 392d59fac..e5cf35317 100644 --- a/docs/Phaser.GameObjectFactory.html +++ b/docs/Phaser.GameObjectFactory.html @@ -6,7 +6,7 @@ Phaser CE Class: GameObjectFactory - + @@ -232,7 +232,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 17 + src/gameobjects/GameObjectFactory.js line 17 @@ -337,7 +337,7 @@
Type:
Source:
- src/gameobjects/GameObjectFactory.js line 23 + src/gameobjects/GameObjectFactory.js line 23 @@ -414,7 +414,7 @@
Type:
Source:
- src/gameobjects/GameObjectFactory.js line 29 + src/gameobjects/GameObjectFactory.js line 29 @@ -678,7 +678,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 229 + src/gameobjects/GameObjectFactory.js line 229 @@ -836,7 +836,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 259 + src/gameobjects/GameObjectFactory.js line 259 @@ -1135,7 +1135,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 511 + src/gameobjects/GameObjectFactory.js line 511 @@ -1513,7 +1513,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 414 + src/gameobjects/GameObjectFactory.js line 414 @@ -2050,7 +2050,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 330 + src/gameobjects/GameObjectFactory.js line 330 @@ -2464,7 +2464,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 126 + src/gameobjects/GameObjectFactory.js line 126 @@ -2725,7 +2725,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 369 + src/gameobjects/GameObjectFactory.js line 369 @@ -2883,7 +2883,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 34 + src/gameobjects/GameObjectFactory.js line 34 @@ -3065,7 +3065,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 538 + src/gameobjects/GameObjectFactory.js line 538 @@ -3324,7 +3324,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 353 + src/gameobjects/GameObjectFactory.js line 353 @@ -3660,7 +3660,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 175 + src/gameobjects/GameObjectFactory.js line 175 @@ -4013,7 +4013,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 81 + src/gameobjects/GameObjectFactory.js line 81 @@ -4311,7 +4311,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 191 + src/gameobjects/GameObjectFactory.js line 191 @@ -4517,7 +4517,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 557 + src/gameobjects/GameObjectFactory.js line 557 @@ -4815,7 +4815,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 471 + src/gameobjects/GameObjectFactory.js line 471 @@ -5299,7 +5299,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 387 + src/gameobjects/GameObjectFactory.js line 387 @@ -5686,7 +5686,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 291 + src/gameobjects/GameObjectFactory.js line 291 @@ -5980,7 +5980,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 244 + src/gameobjects/GameObjectFactory.js line 244 @@ -6333,7 +6333,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 104 + src/gameobjects/GameObjectFactory.js line 104 @@ -6592,7 +6592,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 209 + src/gameobjects/GameObjectFactory.js line 209 @@ -6929,7 +6929,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 312 + src/gameobjects/GameObjectFactory.js line 312 @@ -7270,7 +7270,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 449 + src/gameobjects/GameObjectFactory.js line 449 @@ -7646,7 +7646,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 271 + src/gameobjects/GameObjectFactory.js line 271 @@ -7805,7 +7805,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 161 + src/gameobjects/GameObjectFactory.js line 161 @@ -8030,7 +8030,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 496 + src/gameobjects/GameObjectFactory.js line 496 @@ -8382,7 +8382,7 @@
Parameters:
Source:
- src/gameobjects/GameObjectFactory.js line 46 + src/gameobjects/GameObjectFactory.js line 46 @@ -8449,9 +8449,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -8468,7 +8468,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -8497,7 +8497,7 @@
Returns:
- + diff --git a/docs/Phaser.Gamepad.html b/docs/Phaser.Gamepad.html index 29add1ca1..c3e42c473 100644 --- a/docs/Phaser.Gamepad.html +++ b/docs/Phaser.Gamepad.html @@ -6,7 +6,7 @@ Phaser CE Class: Gamepad - + @@ -235,7 +235,7 @@
Parameters:
Source:
- src/input/Gamepad.js line 21 + src/input/Gamepad.js line 21 @@ -340,7 +340,7 @@
Type:
Source:
- src/input/Gamepad.js line 486 + src/input/Gamepad.js line 486 @@ -417,7 +417,7 @@
Type:
Source:
- src/input/Gamepad.js line 80 + src/input/Gamepad.js line 80 @@ -501,7 +501,7 @@
Type:
Source:
- src/input/Gamepad.js line 52 + src/input/Gamepad.js line 52 @@ -578,7 +578,7 @@
Type:
Source:
- src/input/Gamepad.js line 26 + src/input/Gamepad.js line 26 @@ -655,7 +655,7 @@
Type:
Source:
- src/input/Gamepad.js line 105 + src/input/Gamepad.js line 105 @@ -732,7 +732,7 @@
Type:
Source:
- src/input/Gamepad.js line 85 + src/input/Gamepad.js line 85 @@ -809,7 +809,7 @@
Type:
Source:
- src/input/Gamepad.js line 90 + src/input/Gamepad.js line 90 @@ -886,7 +886,7 @@
Type:
Source:
- src/input/Gamepad.js line 95 + src/input/Gamepad.js line 95 @@ -963,7 +963,7 @@
Type:
Source:
- src/input/Gamepad.js line 110 + src/input/Gamepad.js line 110 @@ -1040,7 +1040,7 @@
Type:
Source:
- src/input/Gamepad.js line 100 + src/input/Gamepad.js line 100 @@ -1117,7 +1117,7 @@
Type:
Source:
- src/input/Gamepad.js line 531 + src/input/Gamepad.js line 531 @@ -1194,7 +1194,7 @@
Type:
Source:
- src/input/Gamepad.js line 546 + src/input/Gamepad.js line 546 @@ -1271,7 +1271,7 @@
Type:
Source:
- src/input/Gamepad.js line 561 + src/input/Gamepad.js line 561 @@ -1348,7 +1348,7 @@
Type:
Source:
- src/input/Gamepad.js line 576 + src/input/Gamepad.js line 576 @@ -1425,7 +1425,7 @@
Type:
Source:
- src/input/Gamepad.js line 516 + src/input/Gamepad.js line 516 @@ -1502,7 +1502,7 @@
Type:
Source:
- src/input/Gamepad.js line 501 + src/input/Gamepad.js line 501 @@ -1655,7 +1655,7 @@
Parameters:
Source:
- src/input/Gamepad.js line 138 + src/input/Gamepad.js line 138 @@ -1739,7 +1739,7 @@

Source:
- src/input/Gamepad.js line 467 + src/input/Gamepad.js line 467 @@ -1873,7 +1873,7 @@
Parameters:
Source:
- src/input/Gamepad.js line 448 + src/input/Gamepad.js line 448 @@ -2087,7 +2087,7 @@
Parameters:
Source:
- src/input/Gamepad.js line 428 + src/input/Gamepad.js line 428 @@ -2301,7 +2301,7 @@
Parameters:
Source:
- src/input/Gamepad.js line 408 + src/input/Gamepad.js line 408 @@ -2409,7 +2409,7 @@

Source:
- src/input/Gamepad.js line 394 + src/input/Gamepad.js line 394 @@ -2493,7 +2493,7 @@

Source:
- src/input/Gamepad.js line 369 + src/input/Gamepad.js line 369 @@ -2578,7 +2578,7 @@

Source:
- src/input/Gamepad.js line 160 + src/input/Gamepad.js line 160 @@ -2662,7 +2662,7 @@

Source:
- src/input/Gamepad.js line 381 + src/input/Gamepad.js line 381 @@ -2746,7 +2746,7 @@

Source:
- src/input/Gamepad.js line 228 + src/input/Gamepad.js line 228 @@ -2789,9 +2789,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2808,7 +2808,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2837,7 +2837,7 @@

- + diff --git a/docs/Phaser.Graphics.html b/docs/Phaser.Graphics.html index d69e6e1e7..67c329468 100644 --- a/docs/Phaser.Graphics.html +++ b/docs/Phaser.Graphics.html @@ -6,7 +6,7 @@ Phaser CE Class: Graphics - + @@ -345,7 +345,7 @@

Parameters:
Source:
- src/gameobjects/Graphics.js line 54 + src/gameobjects/Graphics.js line 54 @@ -503,7 +503,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -599,7 +599,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -690,7 +690,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -777,7 +777,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -874,7 +874,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -958,7 +958,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 131 + src/gameobjects/Graphics.js line 131 @@ -1061,7 +1061,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1148,7 +1148,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 165 + src/gameobjects/Graphics.js line 165 @@ -1318,7 +1318,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1405,7 +1405,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1492,7 +1492,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1579,7 +1579,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1671,7 +1671,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -1757,7 +1757,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1843,7 +1843,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1939,7 +1939,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2025,7 +2025,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2112,7 +2112,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2199,7 +2199,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2297,7 +2297,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 277 + src/gameobjects/components/Core.js line 277 @@ -2374,7 +2374,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 87 + src/gameobjects/Graphics.js line 87 @@ -2460,7 +2460,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2551,7 +2551,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2644,7 +2644,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -2731,7 +2731,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -2817,7 +2817,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -2903,7 +2903,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -2999,7 +2999,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3087,7 +3087,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3174,7 +3174,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3265,7 +3265,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3358,7 +3358,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -3444,7 +3444,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -3521,7 +3521,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 157 + src/gameobjects/Graphics.js line 157 @@ -3623,7 +3623,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -3710,7 +3710,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -3800,7 +3800,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -3884,7 +3884,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 104 + src/gameobjects/Graphics.js line 104 @@ -3961,7 +3961,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 95 + src/gameobjects/Graphics.js line 95 @@ -4050,7 +4050,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4137,7 +4137,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4225,7 +4225,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4313,7 +4313,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4399,7 +4399,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -4486,7 +4486,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -4575,7 +4575,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -4664,7 +4664,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -4741,7 +4741,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 69 + src/gameobjects/Graphics.js line 69 @@ -4828,7 +4828,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4916,7 +4916,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -5002,7 +5002,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5088,7 +5088,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5180,7 +5180,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -5267,7 +5267,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -5354,7 +5354,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -5443,7 +5443,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5532,7 +5532,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -5616,7 +5616,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 122 + src/gameobjects/Graphics.js line 122 @@ -5703,7 +5703,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -5780,7 +5780,7 @@
Type:
Source:
- src/gameobjects/Graphics.js line 63 + src/gameobjects/Graphics.js line 63 @@ -5879,7 +5879,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -5965,7 +5965,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -6053,7 +6053,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -6150,7 +6150,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -6241,7 +6241,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -6332,7 +6332,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -6423,7 +6423,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -6519,7 +6519,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -6605,7 +6605,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -6697,7 +6697,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -6789,7 +6789,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -6878,7 +6878,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -7015,7 +7015,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7206,7 +7206,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7549,7 +7549,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -7893,7 +7893,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -8195,7 +8195,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 648 + src/gameobjects/Graphics.js line 648 @@ -8446,7 +8446,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 578 + src/gameobjects/Graphics.js line 578 @@ -8625,7 +8625,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 734 + src/gameobjects/Graphics.js line 734 @@ -8899,7 +8899,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 519 + src/gameobjects/Graphics.js line 519 @@ -9003,7 +9003,7 @@

Source:
- src/gameobjects/Graphics.js line 880 + src/gameobjects/Graphics.js line 880 @@ -9166,7 +9166,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -9320,7 +9320,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 1247 + src/gameobjects/Graphics.js line 1247 @@ -9503,7 +9503,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 274 + src/gameobjects/Graphics.js line 274 @@ -9587,7 +9587,7 @@

Source:
- src/gameobjects/Graphics.js line 1473 + src/gameobjects/Graphics.js line 1473 @@ -9769,7 +9769,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 808 + src/gameobjects/Graphics.js line 808 @@ -9995,7 +9995,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 824 + src/gameobjects/Graphics.js line 824 @@ -10152,7 +10152,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 841 + src/gameobjects/Graphics.js line 841 @@ -10374,7 +10374,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 777 + src/gameobjects/Graphics.js line 777 @@ -10620,7 +10620,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 793 + src/gameobjects/Graphics.js line 793 @@ -10766,7 +10766,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 1484 + src/gameobjects/Graphics.js line 1484 @@ -10980,7 +10980,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 287 + src/gameobjects/Graphics.js line 287 @@ -11213,7 +11213,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 318 + src/gameobjects/Graphics.js line 318 @@ -11297,7 +11297,7 @@

Source:
- src/gameobjects/Graphics.js line 762 + src/gameobjects/Graphics.js line 762 @@ -11558,7 +11558,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 901 + src/gameobjects/Graphics.js line 901 @@ -11674,7 +11674,7 @@

Source:
- src/gameobjects/Graphics.js line 1118 + src/gameobjects/Graphics.js line 1118 @@ -11841,7 +11841,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -12008,7 +12008,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -12121,7 +12121,7 @@

Source:
- src/gameobjects/Graphics.js line 1212 + src/gameobjects/Graphics.js line 1212 @@ -12292,7 +12292,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 1277 + src/gameobjects/Graphics.js line 1277 @@ -12409,7 +12409,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -12615,7 +12615,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 392 + src/gameobjects/Graphics.js line 392 @@ -12794,7 +12794,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 441 + src/gameobjects/Graphics.js line 441 @@ -12972,7 +12972,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 426 + src/gameobjects/Graphics.js line 426 @@ -13081,7 +13081,7 @@

Source:
- src/gameobjects/Graphics.js line 252 + src/gameobjects/Graphics.js line 252 @@ -13170,7 +13170,7 @@

Source:
- src/gameobjects/Graphics.js line 237 + src/gameobjects/Graphics.js line 237 @@ -13263,7 +13263,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -13470,7 +13470,7 @@
Parameters:
Source:
- src/gameobjects/Graphics.js line 464 + src/gameobjects/Graphics.js line 464 @@ -13633,7 +13633,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -13800,7 +13800,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -13991,7 +13991,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -14230,7 +14230,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -14419,7 +14419,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -14610,7 +14610,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -14777,7 +14777,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -14920,7 +14920,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -15133,7 +15133,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -15254,7 +15254,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -15347,7 +15347,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -15457,7 +15457,7 @@

Source:
- src/gameobjects/Graphics.js line 1297 + src/gameobjects/Graphics.js line 1297 @@ -15620,7 +15620,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -15689,9 +15689,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -15708,7 +15708,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -15737,7 +15737,7 @@
Returns:
- + diff --git a/docs/Phaser.GraphicsData.html b/docs/Phaser.GraphicsData.html index 90a44976a..3ab979a0c 100644 --- a/docs/Phaser.GraphicsData.html +++ b/docs/Phaser.GraphicsData.html @@ -6,7 +6,7 @@ Phaser CE Class: GraphicsData - + @@ -386,7 +386,7 @@
Parameters:
Source:
- src/gameobjects/GraphicsData.js line 14 + src/gameobjects/GraphicsData.js line 14 @@ -488,7 +488,7 @@

Source:
- src/gameobjects/GraphicsData.js line 74 + src/gameobjects/GraphicsData.js line 74 @@ -551,9 +551,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -570,7 +570,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -599,7 +599,7 @@
Returns:
- + diff --git a/docs/Phaser.Group.html b/docs/Phaser.Group.html index da58ea932..afe83a44f 100644 --- a/docs/Phaser.Group.html +++ b/docs/Phaser.Group.html @@ -6,7 +6,7 @@ Phaser CE Class: Group - + @@ -454,7 +454,7 @@
Parameters:
Source:
- src/core/Group.js line 27 + src/core/Group.js line 27 @@ -570,7 +570,7 @@
Type:
Source:
- src/core/Group.js line 329 + src/core/Group.js line 329 @@ -647,7 +647,7 @@
Type:
Source:
- src/core/Group.js line 322 + src/core/Group.js line 322 @@ -724,7 +724,7 @@
Type:
Source:
- src/core/Group.js line 308 + src/core/Group.js line 308 @@ -801,7 +801,7 @@
Type:
Source:
- src/core/Group.js line 315 + src/core/Group.js line 315 @@ -878,7 +878,7 @@
Type:
Source:
- src/core/Group.js line 336 + src/core/Group.js line 336 @@ -955,7 +955,7 @@
Type:
Source:
- src/core/Group.js line 343 + src/core/Group.js line 343 @@ -1039,7 +1039,7 @@
Type:
Source:
- src/core/Group.js line 91 + src/core/Group.js line 91 @@ -1121,7 +1121,7 @@
Type:
Source:
- src/core/Group.js line 3155 + src/core/Group.js line 3155 @@ -1201,7 +1201,7 @@
Type:
Source:
- src/core/Group.js line 2825 + src/core/Group.js line 2825 @@ -1280,7 +1280,7 @@
Type:
Source:
- src/core/Group.js line 2980 + src/core/Group.js line 2980 @@ -1373,7 +1373,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1451,7 +1451,7 @@
Type:
Source:
- src/core/Group.js line 277 + src/core/Group.js line 277 @@ -1530,7 +1530,7 @@
Type:
Source:
- src/core/Group.js line 2850 + src/core/Group.js line 2850 @@ -1609,7 +1609,7 @@
Type:
Source:
- src/core/Group.js line 2876 + src/core/Group.js line 2876 @@ -1695,7 +1695,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1780,7 +1780,7 @@
Type:
Source:
- src/core/Group.js line 127 + src/core/Group.js line 127 @@ -1858,7 +1858,7 @@
Type:
Source:
- src/core/Group.js line 135 + src/core/Group.js line 135 @@ -1935,7 +1935,7 @@
Type:
Source:
- src/core/Group.js line 260 + src/core/Group.js line 260 @@ -2014,7 +2014,7 @@
Type:
Source:
- src/core/Group.js line 213 + src/core/Group.js line 213 @@ -2092,7 +2092,7 @@
Type:
Source:
- src/core/Group.js line 222 + src/core/Group.js line 222 @@ -2176,7 +2176,7 @@
Type:
Source:
- src/core/Group.js line 98 + src/core/Group.js line 98 @@ -2262,7 +2262,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2358,7 +2358,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2437,7 +2437,7 @@
Type:
Source:
- src/core/Group.js line 270 + src/core/Group.js line 270 @@ -2514,7 +2514,7 @@
Type:
Source:
- src/core/Group.js line 38 + src/core/Group.js line 38 @@ -2595,7 +2595,7 @@
Type:
Source:
- src/core/Group.js line 290 + src/core/Group.js line 290 @@ -2681,7 +2681,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -2777,7 +2777,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -2865,7 +2865,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -2942,7 +2942,7 @@
Type:
Source:
- src/core/Group.js line 105 + src/core/Group.js line 105 @@ -3021,7 +3021,7 @@
Type:
Source:
- src/core/Group.js line 146 + src/core/Group.js line 146 @@ -3100,7 +3100,7 @@
Type:
Source:
- src/core/Group.js line 2902 + src/core/Group.js line 2902 @@ -3177,7 +3177,7 @@
Type:
Source:
- src/core/Group.js line 2809 + src/core/Group.js line 2809 @@ -3266,7 +3266,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -3343,7 +3343,7 @@
Type:
Source:
- src/core/Group.js line 49 + src/core/Group.js line 49 @@ -3424,7 +3424,7 @@
Type:
Source:
- src/core/Group.js line 166 + src/core/Group.js line 166 @@ -3505,7 +3505,7 @@
Type:
Source:
- src/core/Group.js line 203 + src/core/Group.js line 203 @@ -3586,7 +3586,7 @@
Type:
Source:
- src/core/Group.js line 191 + src/core/Group.js line 191 @@ -3668,7 +3668,7 @@
Type:
Source:
- src/core/Group.js line 179 + src/core/Group.js line 179 @@ -3745,7 +3745,7 @@
Type:
Source:
- src/core/Group.js line 254 + src/core/Group.js line 254 @@ -3834,7 +3834,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -3915,7 +3915,7 @@
Type:
Source:
- src/core/Group.js line 117 + src/core/Group.js line 117 @@ -3993,7 +3993,7 @@
Type:
Source:
- src/core/Group.js line 230 + src/core/Group.js line 230 @@ -4077,7 +4077,7 @@
Type:
Source:
- src/core/Group.js line 248 + src/core/Group.js line 248 @@ -4154,7 +4154,7 @@
Type:
Source:
- src/core/Group.js line 84 + src/core/Group.js line 84 @@ -4241,7 +4241,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4329,7 +4329,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4416,7 +4416,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4495,7 +4495,7 @@
Type:
Source:
- src/core/Group.js line 2928 + src/core/Group.js line 2928 @@ -4579,7 +4579,7 @@
Type:
Source:
- src/core/Group.js line 3139 + src/core/Group.js line 3139 @@ -4668,7 +4668,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -4747,7 +4747,7 @@
Type:
Source:
- src/core/Group.js line 2954 + src/core/Group.js line 2954 @@ -4824,7 +4824,7 @@
Type:
Source:
- src/core/Group.js line 2793 + src/core/Group.js line 2793 @@ -4901,7 +4901,7 @@
Type:
Source:
- src/core/Group.js line 78 + src/core/Group.js line 78 @@ -4978,7 +4978,7 @@
Type:
Source:
- src/core/Group.js line 154 + src/core/Group.js line 154 @@ -5060,7 +5060,7 @@
Type:
Source:
- src/core/Group.js line 3148 + src/core/Group.js line 3148 @@ -5146,7 +5146,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -5238,7 +5238,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -5329,7 +5329,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -5420,7 +5420,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -5511,7 +5511,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -5602,7 +5602,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -5688,7 +5688,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -5772,7 +5772,7 @@
Type:
Source:
- src/core/Group.js line 3121 + src/core/Group.js line 3121 @@ -5856,7 +5856,7 @@
Type:
Source:
- src/core/Group.js line 3130 + src/core/Group.js line 3130 @@ -5934,7 +5934,7 @@
Type:
Source:
- src/core/Group.js line 57 + src/core/Group.js line 57 @@ -6163,7 +6163,7 @@
Parameters:
Source:
- src/core/Group.js line 345 + src/core/Group.js line 345 @@ -6432,7 +6432,7 @@
Parameters:
Source:
- src/core/Group.js line 1417 + src/core/Group.js line 1417 @@ -6665,7 +6665,7 @@
Parameters:
Source:
- src/core/Group.js line 421 + src/core/Group.js line 421 @@ -6832,7 +6832,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7023,7 +7023,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7245,7 +7245,7 @@
Parameters:
Source:
- src/core/Group.js line 489 + src/core/Group.js line 489 @@ -7407,7 +7407,7 @@
Parameters:
Source:
- src/core/Group.js line 441 + src/core/Group.js line 441 @@ -7793,7 +7793,7 @@
Parameters:
Source:
- src/core/Group.js line 681 + src/core/Group.js line 681 @@ -8127,7 +8127,7 @@
Parameters:
Source:
- src/core/Group.js line 3006 + src/core/Group.js line 3006 @@ -8462,7 +8462,7 @@
Parameters:
Source:
- src/core/Group.js line 3048 + src/core/Group.js line 3048 @@ -8644,7 +8644,7 @@
Parameters:
Source:
- src/core/Group.js line 2024 + src/core/Group.js line 2024 @@ -8778,7 +8778,7 @@
Parameters:
Source:
- src/core/Group.js line 901 + src/core/Group.js line 901 @@ -9032,7 +9032,7 @@
Parameters:
Source:
- src/core/Group.js line 1624 + src/core/Group.js line 1624 @@ -9243,7 +9243,7 @@
Parameters:
Source:
- src/core/Group.js line 1540 + src/core/Group.js line 1540 @@ -9425,7 +9425,7 @@
Parameters:
Source:
- src/core/Group.js line 1575 + src/core/Group.js line 1575 @@ -9732,7 +9732,7 @@
Parameters:
Source:
- src/core/Group.js line 1349 + src/core/Group.js line 1349 @@ -10025,7 +10025,7 @@
Parameters:
Source:
- src/core/Group.js line 1384 + src/core/Group.js line 1384 @@ -10313,7 +10313,7 @@
Parameters:
Source:
- src/core/Group.js line 1208 + src/core/Group.js line 1208 @@ -10480,7 +10480,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -10658,7 +10658,7 @@
Parameters:
Source:
- src/core/Group.js line 2431 + src/core/Group.js line 2431 @@ -10766,7 +10766,7 @@

Source:
- src/core/Group.js line 2455 + src/core/Group.js line 2455 @@ -10874,7 +10874,7 @@

Source:
- src/core/Group.js line 2444 + src/core/Group.js line 2444 @@ -11259,7 +11259,7 @@
Parameters:
Source:
- src/core/Group.js line 542 + src/core/Group.js line 542 @@ -11657,7 +11657,7 @@
Parameters:
Source:
- src/core/Group.js line 578 + src/core/Group.js line 578 @@ -11861,7 +11861,7 @@
Parameters:
Source:
- src/core/Group.js line 2001 + src/core/Group.js line 2001 @@ -12019,7 +12019,7 @@
Parameters:
Source:
- src/core/Group.js line 2053 + src/core/Group.js line 2053 @@ -12219,7 +12219,7 @@
Parameters:
Source:
- src/core/Group.js line 2757 + src/core/Group.js line 2757 @@ -12426,7 +12426,7 @@
Parameters:
Source:
- src/core/Group.js line 1465 + src/core/Group.js line 1465 @@ -12623,7 +12623,7 @@
Parameters:
Source:
- src/core/Group.js line 1783 + src/core/Group.js line 1783 @@ -12920,7 +12920,7 @@
Parameters:
Source:
- src/core/Group.js line 1822 + src/core/Group.js line 1822 @@ -13149,7 +13149,7 @@
Parameters:
Source:
- src/core/Group.js line 1908 + src/core/Group.js line 1908 @@ -13378,7 +13378,7 @@
Parameters:
Source:
- src/core/Group.js line 1935 + src/core/Group.js line 1935 @@ -13607,7 +13607,7 @@
Parameters:
Source:
- src/core/Group.js line 1881 + src/core/Group.js line 1881 @@ -13852,7 +13852,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -14151,7 +14151,7 @@
Parameters:
Source:
- src/core/Group.js line 2506 + src/core/Group.js line 2506 @@ -14311,7 +14311,7 @@
Parameters:
Source:
- src/core/Group.js line 523 + src/core/Group.js line 523 @@ -14423,7 +14423,7 @@

Source:
- src/core/Group.js line 2329 + src/core/Group.js line 2329 @@ -14605,7 +14605,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -14765,7 +14765,7 @@
Parameters:
Source:
- src/core/Group.js line 1041 + src/core/Group.js line 1041 @@ -14932,7 +14932,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -15099,7 +15099,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -15341,7 +15341,7 @@
Parameters:
Source:
- src/core/Group.js line 2345 + src/core/Group.js line 2345 @@ -15523,7 +15523,7 @@
Parameters:
Source:
- src/core/Group.js line 2171 + src/core/Group.js line 2171 @@ -15873,7 +15873,7 @@
Parameters:
Source:
- src/core/Group.js line 2217 + src/core/Group.js line 2217 @@ -16223,7 +16223,7 @@
Parameters:
Source:
- src/core/Group.js line 2246 + src/core/Group.js line 2246 @@ -16612,7 +16612,7 @@
Parameters:
Source:
- src/core/Group.js line 2184 + src/core/Group.js line 2184 @@ -16854,7 +16854,7 @@
Parameters:
Source:
- src/core/Group.js line 2388 + src/core/Group.js line 2388 @@ -17012,7 +17012,7 @@
Parameters:
Source:
- src/core/Group.js line 1029 + src/core/Group.js line 1029 @@ -17129,7 +17129,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -17347,7 +17347,7 @@
Parameters:
Source:
- src/core/Group.js line 2466 + src/core/Group.js line 2466 @@ -17566,7 +17566,7 @@
Parameters:
Source:
- src/core/Group.js line 2487 + src/core/Group.js line 2487 @@ -17675,7 +17675,7 @@

Source:
- src/core/Group.js line 2313 + src/core/Group.js line 2313 @@ -17858,7 +17858,7 @@
Parameters:
Source:
- src/core/Group.js line 1093 + src/core/Group.js line 1093 @@ -18236,7 +18236,7 @@
Parameters:
Source:
- src/core/Group.js line 2077 + src/core/Group.js line 2077 @@ -18344,7 +18344,7 @@

Source:
- src/core/Group.js line 1481 + src/core/Group.js line 1481 @@ -18428,7 +18428,7 @@

Source:
- src/core/Group.js line 1493 + src/core/Group.js line 1493 @@ -18618,7 +18618,7 @@
Parameters:
Source:
- src/core/Group.js line 2598 + src/core/Group.js line 2598 @@ -18776,7 +18776,7 @@
Parameters:
Source:
- src/core/Group.js line 972 + src/core/Group.js line 972 @@ -18934,7 +18934,7 @@
Parameters:
Source:
- src/core/Group.js line 949 + src/core/Group.js line 949 @@ -19165,7 +19165,7 @@
Parameters:
Source:
- src/core/Group.js line 1449 + src/core/Group.js line 1449 @@ -19250,7 +19250,7 @@

Source:
- src/core/Group.js line 830 + src/core/Group.js line 830 @@ -19358,7 +19358,7 @@

Source:
- src/core/Group.js line 1763 + src/core/Group.js line 1763 @@ -19447,7 +19447,7 @@

Source:
- src/core/Group.js line 1695 + src/core/Group.js line 1695 @@ -19532,7 +19532,7 @@

Source:
- src/core/Group.js line 858 + src/core/Group.js line 858 @@ -19788,7 +19788,7 @@
Parameters:
Source:
- src/core/Group.js line 2551 + src/core/Group.js line 2551 @@ -20049,7 +20049,7 @@
Parameters:
Source:
- src/core/Group.js line 2626 + src/core/Group.js line 2626 @@ -20317,7 +20317,7 @@
Parameters:
Source:
- src/core/Group.js line 2673 + src/core/Group.js line 2673 @@ -20460,7 +20460,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -20627,7 +20627,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -20818,7 +20818,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -20953,7 +20953,7 @@
Parameters:
Source:
- src/core/Group.js line 465 + src/core/Group.js line 465 @@ -21137,7 +21137,7 @@
Parameters:
Source:
- src/core/Group.js line 1055 + src/core/Group.js line 1055 @@ -21482,7 +21482,7 @@
Parameters:
Source:
- src/core/Group.js line 1525 + src/core/Group.js line 1525 @@ -21779,7 +21779,7 @@
Parameters:
Source:
- src/core/Group.js line 2275 + src/core/Group.js line 2275 @@ -21958,7 +21958,7 @@
Parameters:
Source:
- src/core/Group.js line 804 + src/core/Group.js line 804 @@ -22067,7 +22067,7 @@

Source:
- src/core/Group.js line 1016 + src/core/Group.js line 1016 @@ -22151,7 +22151,7 @@

Source:
- src/core/Group.js line 1503 + src/core/Group.js line 1503 @@ -22235,7 +22235,7 @@

Source:
- src/core/Group.js line 1515 + src/core/Group.js line 1515 @@ -22429,7 +22429,7 @@
Parameters:
Source:
- src/core/Group.js line 2727 + src/core/Group.js line 2727 @@ -22563,7 +22563,7 @@
Parameters:
Source:
- src/core/Group.js line 925 + src/core/Group.js line 925 @@ -22970,7 +22970,7 @@
Parameters:
Source:
- src/core/Group.js line 1237 + src/core/Group.js line 1237 @@ -23343,7 +23343,7 @@
Parameters:
Source:
- src/core/Group.js line 1267 + src/core/Group.js line 1267 @@ -23692,7 +23692,7 @@
Parameters:
Source:
- src/core/Group.js line 1305 + src/core/Group.js line 1305 @@ -23859,7 +23859,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -24169,7 +24169,7 @@
Parameters:
Source:
- src/core/Group.js line 1127 + src/core/Group.js line 1127 @@ -24278,7 +24278,7 @@

Source:
- src/core/Group.js line 2744 + src/core/Group.js line 2744 @@ -24476,7 +24476,7 @@
Parameters:
Source:
- src/core/Group.js line 1962 + src/core/Group.js line 1962 @@ -24683,7 +24683,7 @@
Parameters:
Source:
- src/core/Group.js line 1433 + src/core/Group.js line 1433 @@ -24842,7 +24842,7 @@
Parameters:
Source:
- src/core/Group.js line 886 + src/core/Group.js line 886 @@ -25009,7 +25009,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -25152,7 +25152,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -25365,7 +25365,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -25476,7 +25476,7 @@

Source:
- src/core/Group.js line 1735 + src/core/Group.js line 1735 @@ -25569,7 +25569,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -25758,7 +25758,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -25869,7 +25869,7 @@

Source:
- src/core/Group.js line 663 + src/core/Group.js line 663 @@ -26051,7 +26051,7 @@
Parameters:
Source:
- src/core/Group.js line 995 + src/core/Group.js line 995 @@ -26094,9 +26094,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -26113,7 +26113,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -26142,7 +26142,7 @@
Parameters:
- + diff --git a/docs/Phaser.Hermite.html b/docs/Phaser.Hermite.html index 47f9406ff..a33a2ff13 100644 --- a/docs/Phaser.Hermite.html +++ b/docs/Phaser.Hermite.html @@ -6,7 +6,7 @@ Phaser CE Class: Hermite - + @@ -551,7 +551,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 39 + src/geom/Hermite.js line 39 @@ -656,7 +656,7 @@
Type:
Source:
- src/geom/Hermite.js line 385 + src/geom/Hermite.js line 385 @@ -733,7 +733,7 @@
Type:
Source:
- src/geom/Hermite.js line 407 + src/geom/Hermite.js line 407 @@ -810,7 +810,7 @@
Type:
Source:
- src/geom/Hermite.js line 429 + src/geom/Hermite.js line 429 @@ -887,7 +887,7 @@
Type:
Source:
- src/geom/Hermite.js line 451 + src/geom/Hermite.js line 451 @@ -964,7 +964,7 @@
Type:
Source:
- src/geom/Hermite.js line 473 + src/geom/Hermite.js line 473 @@ -1041,7 +1041,7 @@
Type:
Source:
- src/geom/Hermite.js line 495 + src/geom/Hermite.js line 495 @@ -1118,7 +1118,7 @@
Type:
Source:
- src/geom/Hermite.js line 517 + src/geom/Hermite.js line 517 @@ -1195,7 +1195,7 @@
Type:
Source:
- src/geom/Hermite.js line 539 + src/geom/Hermite.js line 539 @@ -1272,7 +1272,7 @@
Type:
Source:
- src/geom/Hermite.js line 561 + src/geom/Hermite.js line 561 @@ -1350,7 +1350,7 @@

Source:
- src/geom/Hermite.js line 144 + src/geom/Hermite.js line 144 @@ -1509,7 +1509,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 170 + src/geom/Hermite.js line 170 @@ -1687,7 +1687,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 328 + src/geom/Hermite.js line 328 @@ -1865,7 +1865,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 345 + src/geom/Hermite.js line 345 @@ -2026,7 +2026,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 366 + src/geom/Hermite.js line 366 @@ -2245,7 +2245,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 270 + src/geom/Hermite.js line 270 @@ -2464,7 +2464,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 302 + src/geom/Hermite.js line 302 @@ -2642,7 +2642,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 206 + src/geom/Hermite.js line 206 @@ -2820,7 +2820,7 @@
Parameters:
Source:
- src/geom/Hermite.js line 238 + src/geom/Hermite.js line 238 @@ -2930,7 +2930,7 @@

Source:
- src/geom/Hermite.js line 122 + src/geom/Hermite.js line 122 @@ -2997,9 +2997,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3016,7 +3016,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3045,7 +3045,7 @@
Returns:
- + diff --git a/docs/Phaser.Image.html b/docs/Phaser.Image.html index c0dfa3ebb..c201746ce 100644 --- a/docs/Phaser.Image.html +++ b/docs/Phaser.Image.html @@ -6,7 +6,7 @@ Phaser CE Class: Image - + @@ -415,7 +415,7 @@
Parameters:
Source:
- src/gameobjects/Image.js line 37 + src/gameobjects/Image.js line 37 @@ -583,7 +583,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -679,7 +679,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -769,7 +769,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -860,7 +860,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -947,7 +947,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1044,7 +1044,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1138,7 +1138,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1318,7 +1318,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1405,7 +1405,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1492,7 +1492,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1579,7 +1579,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1665,7 +1665,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1751,7 +1751,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1839,7 +1839,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -1935,7 +1935,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2021,7 +2021,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2108,7 +2108,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2195,7 +2195,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2300,7 +2300,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -2386,7 +2386,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2477,7 +2477,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2570,7 +2570,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -2661,7 +2661,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -2752,7 +2752,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -2839,7 +2839,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -2925,7 +2925,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3011,7 +3011,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3107,7 +3107,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3195,7 +3195,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3282,7 +3282,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3373,7 +3373,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3466,7 +3466,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -3568,7 +3568,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -3655,7 +3655,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -3745,7 +3745,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -3834,7 +3834,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -3921,7 +3921,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4009,7 +4009,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4097,7 +4097,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4186,7 +4186,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -4275,7 +4275,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -4362,7 +4362,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4450,7 +4450,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4536,7 +4536,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -4622,7 +4622,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -4709,7 +4709,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4796,7 +4796,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -4883,7 +4883,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -4972,7 +4972,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5061,7 +5061,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -5149,7 +5149,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -5237,7 +5237,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -5331,7 +5331,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -5419,7 +5419,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -5505,7 +5505,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -5598,7 +5598,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -5691,7 +5691,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -5778,7 +5778,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -5864,7 +5864,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -5950,7 +5950,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -6027,7 +6027,7 @@
Type:
Source:
- src/gameobjects/Image.js line 48 + src/gameobjects/Image.js line 48 @@ -6126,7 +6126,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -6212,7 +6212,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -6300,7 +6300,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -6392,7 +6392,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -6483,7 +6483,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -6574,7 +6574,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -6665,7 +6665,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -6756,7 +6756,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -6842,7 +6842,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -6929,7 +6929,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -7016,7 +7016,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -7105,7 +7105,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -7242,7 +7242,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7433,7 +7433,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7776,7 +7776,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -8120,7 +8120,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -8240,7 +8240,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -8407,7 +8407,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -8633,7 +8633,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -8733,7 +8733,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -8978,7 +8978,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -9153,7 +9153,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -9320,7 +9320,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -9487,7 +9487,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -9604,7 +9604,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -9725,7 +9725,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -10010,7 +10010,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -10106,7 +10106,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -10226,7 +10226,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -10409,7 +10409,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -10715,7 +10715,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -10832,7 +10832,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -10921,7 +10921,7 @@

Source:
- src/gameobjects/Image.js line 80 + src/gameobjects/Image.js line 80 @@ -11014,7 +11014,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -11157,7 +11157,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -11324,7 +11324,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -11515,7 +11515,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -11754,7 +11754,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -11871,7 +11871,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -12064,7 +12064,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -12229,7 +12229,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -12349,7 +12349,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -12540,7 +12540,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -12684,7 +12684,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -12921,7 +12921,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -13121,7 +13121,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -13288,7 +13288,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -13431,7 +13431,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -13644,7 +13644,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -13765,7 +13765,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -13858,7 +13858,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -13978,7 +13978,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -14141,7 +14141,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -14210,9 +14210,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -14229,7 +14229,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -14258,7 +14258,7 @@
Returns:
- + diff --git a/docs/Phaser.ImageCollection.html b/docs/Phaser.ImageCollection.html index 5e989cc70..292fe0df0 100644 --- a/docs/Phaser.ImageCollection.html +++ b/docs/Phaser.ImageCollection.html @@ -6,7 +6,7 @@ Phaser CE Class: ImageCollection - + @@ -483,7 +483,7 @@
Parameters:
Source:
- src/tilemap/ImageCollection.js line 22 + src/tilemap/ImageCollection.js line 22 @@ -589,7 +589,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 40 + src/tilemap/ImageCollection.js line 40 @@ -666,7 +666,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 54 + src/tilemap/ImageCollection.js line 54 @@ -786,7 +786,7 @@
Properties:
Source:
- src/tilemap/ImageCollection.js line 63 + src/tilemap/ImageCollection.js line 63 @@ -863,7 +863,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 85 + src/tilemap/ImageCollection.js line 85 @@ -941,7 +941,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 71 + src/tilemap/ImageCollection.js line 71 @@ -1018,7 +1018,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 47 + src/tilemap/ImageCollection.js line 47 @@ -1095,7 +1095,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 33 + src/tilemap/ImageCollection.js line 33 @@ -1172,7 +1172,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 77 + src/tilemap/ImageCollection.js line 77 @@ -1249,7 +1249,7 @@
Type:
Source:
- src/tilemap/ImageCollection.js line 93 + src/tilemap/ImageCollection.js line 93 @@ -1401,7 +1401,7 @@
Parameters:
Source:
- src/tilemap/ImageCollection.js line 113 + src/tilemap/ImageCollection.js line 113 @@ -1535,7 +1535,7 @@
Parameters:
Source:
- src/tilemap/ImageCollection.js line 98 + src/tilemap/ImageCollection.js line 98 @@ -1602,9 +1602,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1621,7 +1621,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1650,7 +1650,7 @@
Returns:
- + diff --git a/docs/Phaser.Input.html b/docs/Phaser.Input.html index 0ae17c936..4823e64ba 100644 --- a/docs/Phaser.Input.html +++ b/docs/Phaser.Input.html @@ -6,7 +6,7 @@ Phaser CE Class: Input - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/input/Input.js line 15 + src/input/Input.js line 15 @@ -336,7 +336,7 @@
Type:
Source:
- src/input/Input.js line 411 + src/input/Input.js line 411 @@ -409,7 +409,7 @@
Type:
Source:
- src/input/Input.js line 392 + src/input/Input.js line 392 @@ -482,7 +482,7 @@
Type:
Source:
- src/input/Input.js line 404 + src/input/Input.js line 404 @@ -555,7 +555,7 @@
Type:
Source:
- src/input/Input.js line 398 + src/input/Input.js line 398 @@ -633,7 +633,7 @@
Type:
Source:
- src/input/Input.js line 237 + src/input/Input.js line 237 @@ -711,7 +711,7 @@
Type:
Source:
- src/input/Input.js line 91 + src/input/Input.js line 91 @@ -795,7 +795,7 @@
Type:
Source:
- src/input/Input.js line 118 + src/input/Input.js line 118 @@ -880,7 +880,7 @@
Type:
Source:
- src/input/Input.js line 67 + src/input/Input.js line 67 @@ -957,7 +957,7 @@
Type:
Source:
- src/input/Input.js line 20 + src/input/Input.js line 20 @@ -1034,7 +1034,7 @@
Type:
Source:
- src/input/Input.js line 290 + src/input/Input.js line 290 @@ -1111,7 +1111,7 @@
Type:
Source:
- src/input/Input.js line 26 + src/input/Input.js line 26 @@ -1188,7 +1188,7 @@
Type:
Source:
- src/input/Input.js line 32 + src/input/Input.js line 32 @@ -1272,7 +1272,7 @@
Type:
Source:
- src/input/Input.js line 124 + src/input/Input.js line 124 @@ -1349,7 +1349,7 @@
Type:
Source:
- src/input/Input.js line 355 + src/input/Input.js line 355 @@ -1433,7 +1433,7 @@
Type:
Source:
- src/input/Input.js line 130 + src/input/Input.js line 130 @@ -1517,7 +1517,7 @@
Type:
Source:
- src/input/Input.js line 136 + src/input/Input.js line 136 @@ -1594,7 +1594,7 @@
Type:
Source:
- src/input/Input.js line 263 + src/input/Input.js line 263 @@ -1680,7 +1680,7 @@
Type:
Source:
- src/input/Input.js line 106 + src/input/Input.js line 106 @@ -1765,7 +1765,7 @@
Type:
Source:
- src/input/Input.js line 349 + src/input/Input.js line 349 @@ -1844,7 +1844,7 @@
Type:
Source:
- src/input/Input.js line 256 + src/input/Input.js line 256 @@ -1922,7 +1922,7 @@
Type:
Source:
- src/input/Input.js line 246 + src/input/Input.js line 246 @@ -2000,7 +2000,7 @@
Type:
Source:
- src/input/Input.js line 40 + src/input/Input.js line 40 @@ -2079,7 +2079,7 @@
Type:
Source:
- src/input/Input.js line 283 + src/input/Input.js line 283 @@ -2156,7 +2156,7 @@
Type:
Source:
- src/input/Input.js line 73 + src/input/Input.js line 73 @@ -2238,7 +2238,7 @@
Type:
Source:
- src/input/Input.js line 309 + src/input/Input.js line 309 @@ -2319,7 +2319,7 @@
Type:
Source:
- src/input/Input.js line 341 + src/input/Input.js line 341 @@ -2401,7 +2401,7 @@
Type:
Source:
- src/input/Input.js line 331 + src/input/Input.js line 331 @@ -2483,7 +2483,7 @@
Type:
Source:
- src/input/Input.js line 320 + src/input/Input.js line 320 @@ -2560,7 +2560,7 @@
Type:
Source:
- src/input/Input.js line 173 + src/input/Input.js line 173 @@ -2637,7 +2637,7 @@
Type:
Source:
- src/input/Input.js line 178 + src/input/Input.js line 178 @@ -2714,7 +2714,7 @@
Type:
Source:
- src/input/Input.js line 183 + src/input/Input.js line 183 @@ -2791,7 +2791,7 @@
Type:
Source:
- src/input/Input.js line 188 + src/input/Input.js line 188 @@ -2868,7 +2868,7 @@
Type:
Source:
- src/input/Input.js line 193 + src/input/Input.js line 193 @@ -2945,7 +2945,7 @@
Type:
Source:
- src/input/Input.js line 198 + src/input/Input.js line 198 @@ -3022,7 +3022,7 @@
Type:
Source:
- src/input/Input.js line 203 + src/input/Input.js line 203 @@ -3099,7 +3099,7 @@
Type:
Source:
- src/input/Input.js line 208 + src/input/Input.js line 208 @@ -3176,7 +3176,7 @@
Type:
Source:
- src/input/Input.js line 213 + src/input/Input.js line 213 @@ -3253,7 +3253,7 @@
Type:
Source:
- src/input/Input.js line 218 + src/input/Input.js line 218 @@ -3332,7 +3332,7 @@
Type:
Source:
- src/input/Input.js line 228 + src/input/Input.js line 228 @@ -3409,7 +3409,7 @@
Type:
Source:
- src/input/Input.js line 1248 + src/input/Input.js line 1248 @@ -3486,7 +3486,7 @@
Type:
Source:
- src/input/Input.js line 58 + src/input/Input.js line 58 @@ -3563,7 +3563,7 @@
Type:
Source:
- src/input/Input.js line 79 + src/input/Input.js line 79 @@ -3648,7 +3648,7 @@
Type:
Source:
- src/input/Input.js line 159 + src/input/Input.js line 159 @@ -3727,7 +3727,7 @@
Type:
Source:
- src/input/Input.js line 145 + src/input/Input.js line 145 @@ -3811,7 +3811,7 @@
Type:
Source:
- src/input/Input.js line 151 + src/input/Input.js line 151 @@ -3889,7 +3889,7 @@
Type:
Source:
- src/input/Input.js line 298 + src/input/Input.js line 298 @@ -3966,7 +3966,7 @@
Type:
Source:
- src/input/Input.js line 96 + src/input/Input.js line 96 @@ -4043,7 +4043,7 @@
Type:
Source:
- src/input/Input.js line 84 + src/input/Input.js line 84 @@ -4127,7 +4127,7 @@
Type:
Source:
- src/input/Input.js line 112 + src/input/Input.js line 112 @@ -4204,7 +4204,7 @@
Type:
Source:
- src/input/Input.js line 1278 + src/input/Input.js line 1278 @@ -4281,7 +4281,7 @@
Type:
Source:
- src/input/Input.js line 1263 + src/input/Input.js line 1263 @@ -4360,7 +4360,7 @@
Type:
Source:
- src/input/Input.js line 273 + src/input/Input.js line 273 @@ -4439,7 +4439,7 @@
Type:
Source:
- src/input/Input.js line 168 + src/input/Input.js line 168 @@ -4516,7 +4516,7 @@
Type:
Source:
- src/input/Input.js line 1293 + src/input/Input.js line 1293 @@ -4593,7 +4593,7 @@
Type:
Source:
- src/input/Input.js line 1308 + src/input/Input.js line 1308 @@ -4671,7 +4671,7 @@
Type:
Source:
- src/input/Input.js line 1208 + src/input/Input.js line 1208 @@ -4749,7 +4749,7 @@
Type:
Source:
- src/input/Input.js line 1228 + src/input/Input.js line 1228 @@ -4912,7 +4912,7 @@
Parameters:
Source:
- src/input/Input.js line 576 + src/input/Input.js line 576 @@ -4998,7 +4998,7 @@

Source:
- src/input/Input.js line 690 + src/input/Input.js line 690 @@ -5254,7 +5254,7 @@
Parameters:
Source:
- src/input/Input.js line 601 + src/input/Input.js line 601 @@ -5388,7 +5388,7 @@
Parameters:
Source:
- src/input/Input.js line 426 + src/input/Input.js line 426 @@ -5546,7 +5546,7 @@
Parameters:
Source:
- src/input/Input.js line 669 + src/input/Input.js line 669 @@ -5630,7 +5630,7 @@

Source:
- src/input/Input.js line 518 + src/input/Input.js line 518 @@ -5791,7 +5791,7 @@
Parameters:
Source:
- src/input/Input.js line 1041 + src/input/Input.js line 1041 @@ -5969,7 +5969,7 @@
Parameters:
Source:
- src/input/Input.js line 966 + src/input/Input.js line 966 @@ -6129,7 +6129,7 @@
Parameters:
Source:
- src/input/Input.js line 1016 + src/input/Input.js line 1016 @@ -6290,7 +6290,7 @@
Parameters:
Source:
- src/input/Input.js line 990 + src/input/Input.js line 990 @@ -6496,7 +6496,7 @@
Parameters:
Source:
- src/input/Input.js line 1062 + src/input/Input.js line 1062 @@ -6654,7 +6654,7 @@
Parameters:
Source:
- src/input/Input.js line 622 + src/input/Input.js line 622 @@ -6835,7 +6835,7 @@
Parameters:
Source:
- src/input/Input.js line 767 + src/input/Input.js line 767 @@ -6993,7 +6993,7 @@
Parameters:
Source:
- src/input/Input.js line 820 + src/input/Input.js line 820 @@ -7164,7 +7164,7 @@
Parameters:
Source:
- src/input/Input.js line 548 + src/input/Input.js line 548 @@ -7299,7 +7299,7 @@
Parameters:
Source:
- src/input/Input.js line 833 + src/input/Input.js line 833 @@ -7457,7 +7457,7 @@
Parameters:
Source:
- src/input/Input.js line 906 + src/input/Input.js line 906 @@ -7565,7 +7565,7 @@

Source:
- src/input/Input.js line 715 + src/input/Input.js line 715 @@ -7700,7 +7700,7 @@
Parameters:
Source:
- src/input/Input.js line 872 + src/input/Input.js line 872 @@ -7767,9 +7767,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -7786,7 +7786,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -7815,7 +7815,7 @@
Returns:
- + diff --git a/docs/Phaser.InputHandler.html b/docs/Phaser.InputHandler.html index 82fb02d2b..5486068fb 100644 --- a/docs/Phaser.InputHandler.html +++ b/docs/Phaser.InputHandler.html @@ -6,7 +6,7 @@ Phaser CE Class: InputHandler - + @@ -230,7 +230,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 14 + src/input/InputHandler.js line 14 @@ -342,7 +342,7 @@
Type:
Source:
- src/input/InputHandler.js line 69 + src/input/InputHandler.js line 69 @@ -426,7 +426,7 @@
Type:
Source:
- src/input/InputHandler.js line 75 + src/input/InputHandler.js line 75 @@ -503,7 +503,7 @@
Type:
Source:
- src/input/InputHandler.js line 161 + src/input/InputHandler.js line 161 @@ -580,7 +580,7 @@
Type:
Source:
- src/input/InputHandler.js line 167 + src/input/InputHandler.js line 167 @@ -657,7 +657,7 @@
Type:
Source:
- src/input/InputHandler.js line 81 + src/input/InputHandler.js line 81 @@ -734,7 +734,7 @@
Type:
Source:
- src/input/InputHandler.js line 36 + src/input/InputHandler.js line 36 @@ -811,7 +811,7 @@
Type:
Source:
- src/input/InputHandler.js line 207 + src/input/InputHandler.js line 207 @@ -888,7 +888,7 @@
Type:
Source:
- src/input/InputHandler.js line 197 + src/input/InputHandler.js line 197 @@ -965,7 +965,7 @@
Type:
Source:
- src/input/InputHandler.js line 182 + src/input/InputHandler.js line 182 @@ -1042,7 +1042,7 @@
Type:
Source:
- src/input/InputHandler.js line 155 + src/input/InputHandler.js line 155 @@ -1119,7 +1119,7 @@
Type:
Source:
- src/input/InputHandler.js line 177 + src/input/InputHandler.js line 177 @@ -1196,7 +1196,7 @@
Type:
Source:
- src/input/InputHandler.js line 192 + src/input/InputHandler.js line 192 @@ -1273,7 +1273,7 @@
Type:
Source:
- src/input/InputHandler.js line 187 + src/input/InputHandler.js line 187 @@ -1350,7 +1350,7 @@
Type:
Source:
- src/input/InputHandler.js line 202 + src/input/InputHandler.js line 202 @@ -1427,7 +1427,7 @@
Type:
Source:
- src/input/InputHandler.js line 30 + src/input/InputHandler.js line 30 @@ -1504,7 +1504,7 @@
Type:
Source:
- src/input/InputHandler.js line 24 + src/input/InputHandler.js line 24 @@ -1581,7 +1581,7 @@
Type:
Source:
- src/input/InputHandler.js line 63 + src/input/InputHandler.js line 63 @@ -1665,7 +1665,7 @@
Type:
Source:
- src/input/InputHandler.js line 149 + src/input/InputHandler.js line 149 @@ -1745,7 +1745,7 @@
Type:
Source:
- src/input/InputHandler.js line 143 + src/input/InputHandler.js line 143 @@ -1825,7 +1825,7 @@
Type:
Source:
- src/input/InputHandler.js line 133 + src/input/InputHandler.js line 133 @@ -1904,7 +1904,7 @@
Type:
Source:
- src/input/InputHandler.js line 45 + src/input/InputHandler.js line 45 @@ -1981,7 +1981,7 @@
Type:
Source:
- src/input/InputHandler.js line 172 + src/input/InputHandler.js line 172 @@ -2058,7 +2058,7 @@
Type:
Source:
- src/input/InputHandler.js line 87 + src/input/InputHandler.js line 87 @@ -2135,7 +2135,7 @@
Type:
Source:
- src/input/InputHandler.js line 117 + src/input/InputHandler.js line 117 @@ -2212,7 +2212,7 @@
Type:
Source:
- src/input/InputHandler.js line 123 + src/input/InputHandler.js line 123 @@ -2289,7 +2289,7 @@
Type:
Source:
- src/input/InputHandler.js line 93 + src/input/InputHandler.js line 93 @@ -2366,7 +2366,7 @@
Type:
Source:
- src/input/InputHandler.js line 99 + src/input/InputHandler.js line 99 @@ -2443,7 +2443,7 @@
Type:
Source:
- src/input/InputHandler.js line 212 + src/input/InputHandler.js line 212 @@ -2520,7 +2520,7 @@
Type:
Source:
- src/input/InputHandler.js line 105 + src/input/InputHandler.js line 105 @@ -2597,7 +2597,7 @@
Type:
Source:
- src/input/InputHandler.js line 111 + src/input/InputHandler.js line 111 @@ -2674,7 +2674,7 @@
Type:
Source:
- src/input/InputHandler.js line 19 + src/input/InputHandler.js line 19 @@ -2751,7 +2751,7 @@
Type:
Source:
- src/input/InputHandler.js line 51 + src/input/InputHandler.js line 51 @@ -2829,7 +2829,7 @@

Source:
- src/input/InputHandler.js line 1661 + src/input/InputHandler.js line 1661 @@ -2913,7 +2913,7 @@

Source:
- src/input/InputHandler.js line 1710 + src/input/InputHandler.js line 1710 @@ -3124,7 +3124,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 777 + src/input/InputHandler.js line 777 @@ -3339,7 +3339,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 690 + src/input/InputHandler.js line 690 @@ -3554,7 +3554,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 734 + src/input/InputHandler.js line 734 @@ -3658,7 +3658,7 @@

Source:
- src/input/InputHandler.js line 424 + src/input/InputHandler.js line 424 @@ -3743,7 +3743,7 @@

Source:
- src/input/InputHandler.js line 1434 + src/input/InputHandler.js line 1434 @@ -3827,7 +3827,7 @@

Source:
- src/input/InputHandler.js line 1650 + src/input/InputHandler.js line 1650 @@ -3981,7 +3981,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1358 + src/input/InputHandler.js line 1358 @@ -4369,7 +4369,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1377 + src/input/InputHandler.js line 1377 @@ -4716,7 +4716,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1623 + src/input/InputHandler.js line 1623 @@ -4850,7 +4850,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1552 + src/input/InputHandler.js line 1552 @@ -5008,7 +5008,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1518 + src/input/InputHandler.js line 1518 @@ -5142,7 +5142,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1535 + src/input/InputHandler.js line 1535 @@ -5226,7 +5226,7 @@

Source:
- src/input/InputHandler.js line 487 + src/input/InputHandler.js line 487 @@ -5440,7 +5440,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1291 + src/input/InputHandler.js line 1291 @@ -5650,7 +5650,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1275 + src/input/InputHandler.js line 1275 @@ -5860,7 +5860,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1307 + src/input/InputHandler.js line 1307 @@ -6070,7 +6070,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1323 + src/input/InputHandler.js line 1323 @@ -6244,7 +6244,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1339 + src/input/InputHandler.js line 1339 @@ -6423,7 +6423,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 528 + src/input/InputHandler.js line 528 @@ -6603,7 +6603,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 676 + src/input/InputHandler.js line 676 @@ -6781,7 +6781,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 618 + src/input/InputHandler.js line 618 @@ -6959,7 +6959,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 586 + src/input/InputHandler.js line 586 @@ -7139,7 +7139,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 558 + src/input/InputHandler.js line 558 @@ -7313,7 +7313,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 662 + src/input/InputHandler.js line 662 @@ -7487,7 +7487,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 648 + src/input/InputHandler.js line 648 @@ -7661,7 +7661,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 572 + src/input/InputHandler.js line 572 @@ -7836,7 +7836,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 543 + src/input/InputHandler.js line 543 @@ -8017,7 +8017,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 498 + src/input/InputHandler.js line 498 @@ -8196,7 +8196,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 513 + src/input/InputHandler.js line 513 @@ -8304,7 +8304,7 @@

Source:
- src/input/InputHandler.js line 377 + src/input/InputHandler.js line 377 @@ -8498,7 +8498,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1607 + src/input/InputHandler.js line 1607 @@ -8692,7 +8692,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 283 + src/input/InputHandler.js line 283 @@ -8850,7 +8850,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1456 + src/input/InputHandler.js line 1456 @@ -8934,7 +8934,7 @@

Source:
- src/input/InputHandler.js line 405 + src/input/InputHandler.js line 405 @@ -9068,7 +9068,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 1571 + src/input/InputHandler.js line 1571 @@ -9203,7 +9203,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 845 + src/input/InputHandler.js line 845 @@ -9454,7 +9454,7 @@
Parameters:
Source:
- src/input/InputHandler.js line 449 + src/input/InputHandler.js line 449 @@ -9521,9 +9521,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -9540,7 +9540,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -9569,7 +9569,7 @@
Returns:
- + diff --git a/docs/Phaser.Key.html b/docs/Phaser.Key.html index d36ae36e0..718bf8afd 100644 --- a/docs/Phaser.Key.html +++ b/docs/Phaser.Key.html @@ -6,7 +6,7 @@ Phaser CE Class: Key - + @@ -254,7 +254,7 @@
Parameters:
Source:
- src/input/Key.js line 15 + src/input/Key.js line 15 @@ -359,7 +359,7 @@
Type:
Source:
- src/input/Key.js line 51 + src/input/Key.js line 51 @@ -436,7 +436,7 @@
Type:
Source:
- src/input/Key.js line 57 + src/input/Key.js line 57 @@ -514,7 +514,7 @@
Type:
Source:
- src/input/Key.js line 76 + src/input/Key.js line 76 @@ -634,7 +634,7 @@
Properties:
Source:
- src/input/Key.js line 90 + src/input/Key.js line 90 @@ -719,7 +719,7 @@
Type:
Source:
- src/input/Key.js line 367 + src/input/Key.js line 367 @@ -796,7 +796,7 @@
Type:
Source:
- src/input/Key.js line 33 + src/input/Key.js line 33 @@ -873,7 +873,7 @@
Type:
Source:
- src/input/Key.js line 20 + src/input/Key.js line 20 @@ -950,7 +950,7 @@
Type:
Source:
- src/input/Key.js line 39 + src/input/Key.js line 39 @@ -1034,7 +1034,7 @@
Type:
Source:
- src/input/Key.js line 45 + src/input/Key.js line 45 @@ -1121,7 +1121,7 @@
Type:
Source:
- src/input/Key.js line 323 + src/input/Key.js line 323 @@ -1208,7 +1208,7 @@
Type:
Source:
- src/input/Key.js line 345 + src/input/Key.js line 345 @@ -1285,7 +1285,7 @@
Type:
Source:
- src/input/Key.js line 101 + src/input/Key.js line 101 @@ -1362,7 +1362,7 @@
Type:
Source:
- src/input/Key.js line 106 + src/input/Key.js line 106 @@ -1439,7 +1439,7 @@
Type:
Source:
- src/input/Key.js line 111 + src/input/Key.js line 111 @@ -1516,7 +1516,7 @@
Type:
Source:
- src/input/Key.js line 116 + src/input/Key.js line 116 @@ -1593,7 +1593,7 @@
Type:
Source:
- src/input/Key.js line 121 + src/input/Key.js line 121 @@ -1670,7 +1670,7 @@
Type:
Source:
- src/input/Key.js line 96 + src/input/Key.js line 96 @@ -1747,7 +1747,7 @@
Type:
Source:
- src/input/Key.js line 63 + src/input/Key.js line 63 @@ -1824,7 +1824,7 @@
Type:
Source:
- src/input/Key.js line 68 + src/input/Key.js line 68 @@ -1901,7 +1901,7 @@
Type:
Source:
- src/input/Key.js line 82 + src/input/Key.js line 82 @@ -2050,7 +2050,7 @@
Parameters:
Source:
- src/input/Key.js line 267 + src/input/Key.js line 267 @@ -2159,7 +2159,7 @@

Source:
- src/input/Key.js line 297 + src/input/Key.js line 297 @@ -2268,7 +2268,7 @@

Source:
- src/input/Key.js line 309 + src/input/Key.js line 309 @@ -2426,7 +2426,7 @@
Parameters:
Source:
- src/input/Key.js line 164 + src/input/Key.js line 164 @@ -2560,7 +2560,7 @@
Parameters:
Source:
- src/input/Key.js line 203 + src/input/Key.js line 203 @@ -2716,7 +2716,7 @@
Parameters:
Source:
- src/input/Key.js line 236 + src/input/Key.js line 236 @@ -2800,7 +2800,7 @@

Source:
- src/input/Key.js line 138 + src/input/Key.js line 138 @@ -2955,7 +2955,7 @@
Parameters:
Source:
- src/input/Key.js line 282 + src/input/Key.js line 282 @@ -3022,9 +3022,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3041,7 +3041,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3070,7 +3070,7 @@
Returns:
- + diff --git a/docs/Phaser.KeyCode.html b/docs/Phaser.KeyCode.html index 99716a9c8..d0770cd97 100644 --- a/docs/Phaser.KeyCode.html +++ b/docs/Phaser.KeyCode.html @@ -6,7 +6,7 @@ Phaser CE Class: KeyCode - + @@ -187,7 +187,7 @@

Source:
- src/input/Keyboard.js line 646 + src/input/Keyboard.js line 646 @@ -277,7 +277,7 @@

Source:
- src/input/Keyboard.js line 648 + src/input/Keyboard.js line 648 @@ -339,7 +339,7 @@

Source:
- src/input/Keyboard.js line 900 + src/input/Keyboard.js line 900 @@ -401,7 +401,7 @@

Source:
- src/input/Keyboard.js line 651 + src/input/Keyboard.js line 651 @@ -463,7 +463,7 @@

Source:
- src/input/Keyboard.js line 882 + src/input/Keyboard.js line 882 @@ -525,7 +525,7 @@

Source:
- src/input/Keyboard.js line 873 + src/input/Keyboard.js line 873 @@ -587,7 +587,7 @@

Source:
- src/input/Keyboard.js line 654 + src/input/Keyboard.js line 654 @@ -649,7 +649,7 @@

Source:
- src/input/Keyboard.js line 903 + src/input/Keyboard.js line 903 @@ -711,7 +711,7 @@

Source:
- src/input/Keyboard.js line 888 + src/input/Keyboard.js line 888 @@ -773,7 +773,7 @@

Source:
- src/input/Keyboard.js line 876 + src/input/Keyboard.js line 876 @@ -835,7 +835,7 @@

Source:
- src/input/Keyboard.js line 849 + src/input/Keyboard.js line 849 @@ -897,7 +897,7 @@

Source:
- src/input/Keyboard.js line 855 + src/input/Keyboard.js line 855 @@ -959,7 +959,7 @@

Source:
- src/input/Keyboard.js line 897 + src/input/Keyboard.js line 897 @@ -1021,7 +1021,7 @@

Source:
- src/input/Keyboard.js line 657 + src/input/Keyboard.js line 657 @@ -1083,7 +1083,7 @@

Source:
- src/input/Keyboard.js line 945 + src/input/Keyboard.js line 945 @@ -1145,7 +1145,7 @@

Source:
- src/input/Keyboard.js line 933 + src/input/Keyboard.js line 933 @@ -1207,7 +1207,7 @@

Source:
- src/input/Keyboard.js line 660 + src/input/Keyboard.js line 660 @@ -1269,7 +1269,7 @@

Source:
- src/input/Keyboard.js line 750 + src/input/Keyboard.js line 750 @@ -1331,7 +1331,7 @@

Source:
- src/input/Keyboard.js line 918 + src/input/Keyboard.js line 918 @@ -1393,7 +1393,7 @@

Source:
- src/input/Keyboard.js line 891 + src/input/Keyboard.js line 891 @@ -1455,7 +1455,7 @@

Source:
- src/input/Keyboard.js line 852 + src/input/Keyboard.js line 852 @@ -1517,7 +1517,7 @@

Source:
- src/input/Keyboard.js line 906 + src/input/Keyboard.js line 906 @@ -1579,7 +1579,7 @@

Source:
- src/input/Keyboard.js line 663 + src/input/Keyboard.js line 663 @@ -1641,7 +1641,7 @@

Source:
- src/input/Keyboard.js line 804 + src/input/Keyboard.js line 804 @@ -1703,7 +1703,7 @@

Source:
- src/input/Keyboard.js line 807 + src/input/Keyboard.js line 807 @@ -1765,7 +1765,7 @@

Source:
- src/input/Keyboard.js line 810 + src/input/Keyboard.js line 810 @@ -1827,7 +1827,7 @@

Source:
- src/input/Keyboard.js line 813 + src/input/Keyboard.js line 813 @@ -1889,7 +1889,7 @@

Source:
- src/input/Keyboard.js line 816 + src/input/Keyboard.js line 816 @@ -1951,7 +1951,7 @@

Source:
- src/input/Keyboard.js line 819 + src/input/Keyboard.js line 819 @@ -2013,7 +2013,7 @@

Source:
- src/input/Keyboard.js line 822 + src/input/Keyboard.js line 822 @@ -2075,7 +2075,7 @@

Source:
- src/input/Keyboard.js line 825 + src/input/Keyboard.js line 825 @@ -2137,7 +2137,7 @@

Source:
- src/input/Keyboard.js line 828 + src/input/Keyboard.js line 828 @@ -2199,7 +2199,7 @@

Source:
- src/input/Keyboard.js line 831 + src/input/Keyboard.js line 831 @@ -2261,7 +2261,7 @@

Source:
- src/input/Keyboard.js line 834 + src/input/Keyboard.js line 834 @@ -2323,7 +2323,7 @@

Source:
- src/input/Keyboard.js line 837 + src/input/Keyboard.js line 837 @@ -2385,7 +2385,7 @@

Source:
- src/input/Keyboard.js line 840 + src/input/Keyboard.js line 840 @@ -2447,7 +2447,7 @@

Source:
- src/input/Keyboard.js line 843 + src/input/Keyboard.js line 843 @@ -2509,7 +2509,7 @@

Source:
- src/input/Keyboard.js line 846 + src/input/Keyboard.js line 846 @@ -2571,7 +2571,7 @@

Source:
- src/input/Keyboard.js line 741 + src/input/Keyboard.js line 741 @@ -2633,7 +2633,7 @@

Source:
- src/input/Keyboard.js line 738 + src/input/Keyboard.js line 738 @@ -2695,7 +2695,7 @@

Source:
- src/input/Keyboard.js line 666 + src/input/Keyboard.js line 666 @@ -2757,7 +2757,7 @@

Source:
- src/input/Keyboard.js line 669 + src/input/Keyboard.js line 669 @@ -2819,7 +2819,7 @@

Source:
- src/input/Keyboard.js line 948 + src/input/Keyboard.js line 948 @@ -2881,7 +2881,7 @@

Source:
- src/input/Keyboard.js line 921 + src/input/Keyboard.js line 921 @@ -2943,7 +2943,7 @@

Source:
- src/input/Keyboard.js line 672 + src/input/Keyboard.js line 672 @@ -3005,7 +3005,7 @@

Source:
- src/input/Keyboard.js line 942 + src/input/Keyboard.js line 942 @@ -3067,7 +3067,7 @@

Source:
- src/input/Keyboard.js line 675 + src/input/Keyboard.js line 675 @@ -3129,7 +3129,7 @@

Source:
- src/input/Keyboard.js line 678 + src/input/Keyboard.js line 678 @@ -3191,7 +3191,7 @@

Source:
- src/input/Keyboard.js line 681 + src/input/Keyboard.js line 681 @@ -3253,7 +3253,7 @@

Source:
- src/input/Keyboard.js line 924 + src/input/Keyboard.js line 924 @@ -3315,7 +3315,7 @@

Source:
- src/input/Keyboard.js line 684 + src/input/Keyboard.js line 684 @@ -3377,7 +3377,7 @@

Source:
- src/input/Keyboard.js line 939 + src/input/Keyboard.js line 939 @@ -3439,7 +3439,7 @@

Source:
- src/input/Keyboard.js line 687 + src/input/Keyboard.js line 687 @@ -3501,7 +3501,7 @@

Source:
- src/input/Keyboard.js line 753 + src/input/Keyboard.js line 753 @@ -3563,7 +3563,7 @@

Source:
- src/input/Keyboard.js line 951 + src/input/Keyboard.js line 951 @@ -3625,7 +3625,7 @@

Source:
- src/input/Keyboard.js line 756 + src/input/Keyboard.js line 756 @@ -3687,7 +3687,7 @@

Source:
- src/input/Keyboard.js line 759 + src/input/Keyboard.js line 759 @@ -3749,7 +3749,7 @@

Source:
- src/input/Keyboard.js line 762 + src/input/Keyboard.js line 762 @@ -3811,7 +3811,7 @@

Source:
- src/input/Keyboard.js line 765 + src/input/Keyboard.js line 765 @@ -3873,7 +3873,7 @@

Source:
- src/input/Keyboard.js line 768 + src/input/Keyboard.js line 768 @@ -3935,7 +3935,7 @@

Source:
- src/input/Keyboard.js line 771 + src/input/Keyboard.js line 771 @@ -3997,7 +3997,7 @@

Source:
- src/input/Keyboard.js line 774 + src/input/Keyboard.js line 774 @@ -4059,7 +4059,7 @@

Source:
- src/input/Keyboard.js line 777 + src/input/Keyboard.js line 777 @@ -4121,7 +4121,7 @@

Source:
- src/input/Keyboard.js line 780 + src/input/Keyboard.js line 780 @@ -4183,7 +4183,7 @@

Source:
- src/input/Keyboard.js line 783 + src/input/Keyboard.js line 783 @@ -4245,7 +4245,7 @@

Source:
- src/input/Keyboard.js line 789 + src/input/Keyboard.js line 789 @@ -4307,7 +4307,7 @@

Source:
- src/input/Keyboard.js line 798 + src/input/Keyboard.js line 798 @@ -4369,7 +4369,7 @@

Source:
- src/input/Keyboard.js line 801 + src/input/Keyboard.js line 801 @@ -4431,7 +4431,7 @@

Source:
- src/input/Keyboard.js line 792 + src/input/Keyboard.js line 792 @@ -4493,7 +4493,7 @@

Source:
- src/input/Keyboard.js line 786 + src/input/Keyboard.js line 786 @@ -4555,7 +4555,7 @@

Source:
- src/input/Keyboard.js line 795 + src/input/Keyboard.js line 795 @@ -4617,7 +4617,7 @@

Source:
- src/input/Keyboard.js line 690 + src/input/Keyboard.js line 690 @@ -4679,7 +4679,7 @@

Source:
- src/input/Keyboard.js line 729 + src/input/Keyboard.js line 729 @@ -4741,7 +4741,7 @@

Source:
- src/input/Keyboard.js line 870 + src/input/Keyboard.js line 870 @@ -4803,7 +4803,7 @@

Source:
- src/input/Keyboard.js line 693 + src/input/Keyboard.js line 693 @@ -4865,7 +4865,7 @@

Source:
- src/input/Keyboard.js line 915 + src/input/Keyboard.js line 915 @@ -4927,7 +4927,7 @@

Source:
- src/input/Keyboard.js line 912 + src/input/Keyboard.js line 912 @@ -4989,7 +4989,7 @@

Source:
- src/input/Keyboard.js line 861 + src/input/Keyboard.js line 861 @@ -5051,7 +5051,7 @@

Source:
- src/input/Keyboard.js line 936 + src/input/Keyboard.js line 936 @@ -5113,7 +5113,7 @@

Source:
- src/input/Keyboard.js line 696 + src/input/Keyboard.js line 696 @@ -5175,7 +5175,7 @@

Source:
- src/input/Keyboard.js line 864 + src/input/Keyboard.js line 864 @@ -5237,7 +5237,7 @@

Source:
- src/input/Keyboard.js line 879 + src/input/Keyboard.js line 879 @@ -5299,7 +5299,7 @@

Source:
- src/input/Keyboard.js line 699 + src/input/Keyboard.js line 699 @@ -5361,7 +5361,7 @@

Source:
- src/input/Keyboard.js line 930 + src/input/Keyboard.js line 930 @@ -5423,7 +5423,7 @@

Source:
- src/input/Keyboard.js line 702 + src/input/Keyboard.js line 702 @@ -5485,7 +5485,7 @@

Source:
- src/input/Keyboard.js line 747 + src/input/Keyboard.js line 747 @@ -5547,7 +5547,7 @@

Source:
- src/input/Keyboard.js line 894 + src/input/Keyboard.js line 894 @@ -5609,7 +5609,7 @@

Source:
- src/input/Keyboard.js line 744 + src/input/Keyboard.js line 744 @@ -5671,7 +5671,7 @@

Source:
- src/input/Keyboard.js line 909 + src/input/Keyboard.js line 909 @@ -5733,7 +5733,7 @@

Source:
- src/input/Keyboard.js line 705 + src/input/Keyboard.js line 705 @@ -5795,7 +5795,7 @@

Source:
- src/input/Keyboard.js line 885 + src/input/Keyboard.js line 885 @@ -5857,7 +5857,7 @@

Source:
- src/input/Keyboard.js line 735 + src/input/Keyboard.js line 735 @@ -5919,7 +5919,7 @@

Source:
- src/input/Keyboard.js line 867 + src/input/Keyboard.js line 867 @@ -5981,7 +5981,7 @@

Source:
- src/input/Keyboard.js line 732 + src/input/Keyboard.js line 732 @@ -6043,7 +6043,7 @@

Source:
- src/input/Keyboard.js line 708 + src/input/Keyboard.js line 708 @@ -6105,7 +6105,7 @@

Source:
- src/input/Keyboard.js line 858 + src/input/Keyboard.js line 858 @@ -6167,7 +6167,7 @@

Source:
- src/input/Keyboard.js line 927 + src/input/Keyboard.js line 927 @@ -6229,7 +6229,7 @@

Source:
- src/input/Keyboard.js line 711 + src/input/Keyboard.js line 711 @@ -6291,7 +6291,7 @@

Source:
- src/input/Keyboard.js line 714 + src/input/Keyboard.js line 714 @@ -6353,7 +6353,7 @@

Source:
- src/input/Keyboard.js line 717 + src/input/Keyboard.js line 717 @@ -6415,7 +6415,7 @@

Source:
- src/input/Keyboard.js line 720 + src/input/Keyboard.js line 720 @@ -6477,7 +6477,7 @@

Source:
- src/input/Keyboard.js line 723 + src/input/Keyboard.js line 723 @@ -6539,7 +6539,7 @@

Source:
- src/input/Keyboard.js line 726 + src/input/Keyboard.js line 726 @@ -6572,9 +6572,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6591,7 +6591,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6620,7 +6620,7 @@

- + diff --git a/docs/Phaser.Keyboard.html b/docs/Phaser.Keyboard.html index e0418dcaa..97c2a901f 100644 --- a/docs/Phaser.Keyboard.html +++ b/docs/Phaser.Keyboard.html @@ -6,7 +6,7 @@ Phaser CE Class: Keyboard - + @@ -235,7 +235,7 @@

Parameters:
Source:
- src/input/Keyboard.js line 21 + src/input/Keyboard.js line 21 @@ -340,7 +340,7 @@
Type:
Source:
- src/input/Keyboard.js line 33 + src/input/Keyboard.js line 33 @@ -417,7 +417,7 @@
Type:
Source:
- src/input/Keyboard.js line 55 + src/input/Keyboard.js line 55 @@ -501,7 +501,7 @@
Type:
Source:
- src/input/Keyboard.js line 40 + src/input/Keyboard.js line 40 @@ -578,7 +578,7 @@
Type:
Source:
- src/input/Keyboard.js line 45 + src/input/Keyboard.js line 45 @@ -655,7 +655,7 @@
Type:
Source:
- src/input/Keyboard.js line 26 + src/input/Keyboard.js line 26 @@ -732,7 +732,7 @@
Type:
Source:
- src/input/Keyboard.js line 588 + src/input/Keyboard.js line 588 @@ -809,7 +809,7 @@
Type:
Source:
- src/input/Keyboard.js line 614 + src/input/Keyboard.js line 614 @@ -886,7 +886,7 @@
Type:
Source:
- src/input/Keyboard.js line 60 + src/input/Keyboard.js line 60 @@ -963,7 +963,7 @@
Type:
Source:
- src/input/Keyboard.js line 65 + src/input/Keyboard.js line 65 @@ -1040,7 +1040,7 @@
Type:
Source:
- src/input/Keyboard.js line 70 + src/input/Keyboard.js line 70 @@ -1117,7 +1117,7 @@
Type:
Source:
- src/input/Keyboard.js line 50 + src/input/Keyboard.js line 50 @@ -1381,7 +1381,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 120 + src/input/Keyboard.js line 120 @@ -1516,7 +1516,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 162 + src/input/Keyboard.js line 162 @@ -1684,7 +1684,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 315 + src/input/Keyboard.js line 315 @@ -1822,7 +1822,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 182 + src/input/Keyboard.js line 182 @@ -1930,7 +1930,7 @@

Source:
- src/input/Keyboard.js line 353 + src/input/Keyboard.js line 353 @@ -2014,7 +2014,7 @@

Source:
- src/input/Keyboard.js line 223 + src/input/Keyboard.js line 223 @@ -2123,7 +2123,7 @@

Source:
- src/input/Keyboard.js line 299 + src/input/Keyboard.js line 299 @@ -2314,7 +2314,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 501 + src/input/Keyboard.js line 501 @@ -2472,7 +2472,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 567 + src/input/Keyboard.js line 567 @@ -2630,7 +2630,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 381 + src/input/Keyboard.js line 381 @@ -2764,7 +2764,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 420 + src/input/Keyboard.js line 420 @@ -2898,7 +2898,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 442 + src/input/Keyboard.js line 442 @@ -2982,7 +2982,7 @@

Source:
- src/input/Keyboard.js line 149 + src/input/Keyboard.js line 149 @@ -3116,7 +3116,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 207 + src/input/Keyboard.js line 207 @@ -3250,7 +3250,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 342 + src/input/Keyboard.js line 342 @@ -3404,7 +3404,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 478 + src/input/Keyboard.js line 478 @@ -3489,7 +3489,7 @@

Source:
- src/input/Keyboard.js line 234 + src/input/Keyboard.js line 234 @@ -3593,7 +3593,7 @@

Source:
- src/input/Keyboard.js line 281 + src/input/Keyboard.js line 281 @@ -3677,7 +3677,7 @@

Source:
- src/input/Keyboard.js line 363 + src/input/Keyboard.js line 363 @@ -3871,7 +3871,7 @@
Parameters:
Source:
- src/input/Keyboard.js line 522 + src/input/Keyboard.js line 522 @@ -3938,9 +3938,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3957,7 +3957,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3986,7 +3986,7 @@
Returns:
- + diff --git a/docs/Phaser.Line.html b/docs/Phaser.Line.html index 45dc141c3..5c44fd67e 100644 --- a/docs/Phaser.Line.html +++ b/docs/Phaser.Line.html @@ -6,7 +6,7 @@ Phaser CE Class: Line - + @@ -370,7 +370,7 @@
Parameters:
Source:
- src/geom/Line.js line 17 + src/geom/Line.js line 17 @@ -475,7 +475,7 @@
Type:
Source:
- src/geom/Line.js line 373 + src/geom/Line.js line 373 @@ -552,7 +552,7 @@
Type:
Source:
- src/geom/Line.js line 485 + src/geom/Line.js line 485 @@ -629,7 +629,7 @@
Type:
Source:
- src/geom/Line.js line 32 + src/geom/Line.js line 32 @@ -706,7 +706,7 @@
Type:
Source:
- src/geom/Line.js line 513 + src/geom/Line.js line 513 @@ -783,7 +783,7 @@
Type:
Source:
- src/geom/Line.js line 443 + src/geom/Line.js line 443 @@ -860,7 +860,7 @@
Type:
Source:
- src/geom/Line.js line 359 + src/geom/Line.js line 359 @@ -937,7 +937,7 @@
Type:
Source:
- src/geom/Line.js line 555 + src/geom/Line.js line 555 @@ -1014,7 +1014,7 @@
Type:
Source:
- src/geom/Line.js line 527 + src/geom/Line.js line 527 @@ -1091,7 +1091,7 @@
Type:
Source:
- src/geom/Line.js line 541 + src/geom/Line.js line 541 @@ -1168,7 +1168,7 @@
Type:
Source:
- src/geom/Line.js line 401 + src/geom/Line.js line 401 @@ -1245,7 +1245,7 @@
Type:
Source:
- src/geom/Line.js line 457 + src/geom/Line.js line 457 @@ -1322,7 +1322,7 @@
Type:
Source:
- src/geom/Line.js line 387 + src/geom/Line.js line 387 @@ -1399,7 +1399,7 @@
Type:
Source:
- src/geom/Line.js line 27 + src/geom/Line.js line 27 @@ -1476,7 +1476,7 @@
Type:
Source:
- src/geom/Line.js line 471 + src/geom/Line.js line 471 @@ -1553,7 +1553,7 @@
Type:
Source:
- src/geom/Line.js line 38 + src/geom/Line.js line 38 @@ -1630,7 +1630,7 @@
Type:
Source:
- src/geom/Line.js line 499 + src/geom/Line.js line 499 @@ -1707,7 +1707,7 @@
Type:
Source:
- src/geom/Line.js line 415 + src/geom/Line.js line 415 @@ -1784,7 +1784,7 @@
Type:
Source:
- src/geom/Line.js line 429 + src/geom/Line.js line 429 @@ -1989,7 +1989,7 @@
Parameters:
Source:
- src/geom/Line.js line 738 + src/geom/Line.js line 738 @@ -2283,7 +2283,7 @@
Parameters:
Source:
- src/geom/Line.js line 624 + src/geom/Line.js line 624 @@ -2649,7 +2649,7 @@
Parameters:
Source:
- src/geom/Line.js line 569 + src/geom/Line.js line 569 @@ -2841,7 +2841,7 @@
Parameters:
Source:
- src/geom/Line.js line 643 + src/geom/Line.js line 643 @@ -3024,7 +3024,7 @@
Parameters:
Source:
- src/geom/Line.js line 803 + src/geom/Line.js line 803 @@ -3208,7 +3208,7 @@
Parameters:
Source:
- src/geom/Line.js line 205 + src/geom/Line.js line 205 @@ -3378,7 +3378,7 @@
Parameters:
Source:
- src/geom/Line.js line 337 + src/geom/Line.js line 337 @@ -3595,7 +3595,7 @@
Parameters:
Source:
- src/geom/Line.js line 281 + src/geom/Line.js line 281 @@ -3825,7 +3825,7 @@
Parameters:
Source:
- src/geom/Line.js line 97 + src/geom/Line.js line 97 @@ -4007,7 +4007,7 @@
Parameters:
Source:
- src/geom/Line.js line 68 + src/geom/Line.js line 68 @@ -4260,7 +4260,7 @@
Parameters:
Source:
- src/geom/Line.js line 75 + src/geom/Line.js line 75 @@ -4514,7 +4514,7 @@
Parameters:
Source:
- src/geom/Line.js line 159 + src/geom/Line.js line 159 @@ -4684,7 +4684,7 @@
Parameters:
Source:
- src/geom/Line.js line 188 + src/geom/Line.js line 188 @@ -4934,7 +4934,7 @@
Parameters:
Source:
- src/geom/Line.js line 228 + src/geom/Line.js line 228 @@ -5184,7 +5184,7 @@
Parameters:
Source:
- src/geom/Line.js line 242 + src/geom/Line.js line 242 @@ -5358,7 +5358,7 @@
Parameters:
Source:
- src/geom/Line.js line 261 + src/geom/Line.js line 261 @@ -5517,7 +5517,7 @@
Parameters:
Source:
- src/geom/Line.js line 175 + src/geom/Line.js line 175 @@ -5734,7 +5734,7 @@
Parameters:
Source:
- src/geom/Line.js line 115 + src/geom/Line.js line 115 @@ -6021,7 +6021,7 @@
Parameters:
Source:
- src/geom/Line.js line 139 + src/geom/Line.js line 139 @@ -6319,7 +6319,7 @@
Parameters:
Source:
- src/geom/Line.js line 43 + src/geom/Line.js line 43 @@ -6386,9 +6386,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6405,7 +6405,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6434,7 +6434,7 @@
Returns:
- + diff --git a/docs/Phaser.LinkedList.html b/docs/Phaser.LinkedList.html index f26c02808..2ac6dcdba 100644 --- a/docs/Phaser.LinkedList.html +++ b/docs/Phaser.LinkedList.html @@ -6,7 +6,7 @@ Phaser CE Class: LinkedList - + @@ -186,7 +186,7 @@

Source:
- src/utils/LinkedList.js line 18 + src/utils/LinkedList.js line 18 @@ -291,7 +291,7 @@
Type:
Source:
- src/utils/LinkedList.js line 39 + src/utils/LinkedList.js line 39 @@ -368,7 +368,7 @@
Type:
Source:
- src/utils/LinkedList.js line 46 + src/utils/LinkedList.js line 46 @@ -445,7 +445,7 @@
Type:
Source:
- src/utils/LinkedList.js line 25 + src/utils/LinkedList.js line 25 @@ -522,7 +522,7 @@
Type:
Source:
- src/utils/LinkedList.js line 32 + src/utils/LinkedList.js line 32 @@ -599,7 +599,7 @@
Type:
Source:
- src/utils/LinkedList.js line 53 + src/utils/LinkedList.js line 53 @@ -727,7 +727,7 @@
Parameters:
Source:
- src/utils/LinkedList.js line 58 + src/utils/LinkedList.js line 58 @@ -886,7 +886,7 @@
Parameters:
Source:
- src/utils/LinkedList.js line 152 + src/utils/LinkedList.js line 152 @@ -1020,7 +1020,7 @@
Parameters:
Source:
- src/utils/LinkedList.js line 104 + src/utils/LinkedList.js line 104 @@ -1104,7 +1104,7 @@

Source:
- src/utils/LinkedList.js line 90 + src/utils/LinkedList.js line 90 @@ -1147,9 +1147,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1166,7 +1166,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1195,7 +1195,7 @@

- + diff --git a/docs/Phaser.Loader.html b/docs/Phaser.Loader.html index 8d63ac752..135382cad 100644 --- a/docs/Phaser.Loader.html +++ b/docs/Phaser.Loader.html @@ -6,7 +6,7 @@ Phaser CE Class: Loader - + @@ -235,7 +235,7 @@

Parameters:
Source:
- src/loader/Loader.js line 21 + src/loader/Loader.js line 21 @@ -340,7 +340,7 @@
Type:
Source:
- src/loader/Loader.js line 340 + src/loader/Loader.js line 340 @@ -413,7 +413,7 @@
Type:
Source:
- src/loader/Loader.js line 320 + src/loader/Loader.js line 320 @@ -486,7 +486,7 @@
Type:
Source:
- src/loader/Loader.js line 326 + src/loader/Loader.js line 326 @@ -559,7 +559,7 @@
Type:
Source:
- src/loader/Loader.js line 302 + src/loader/Loader.js line 302 @@ -632,7 +632,7 @@
Type:
Source:
- src/loader/Loader.js line 308 + src/loader/Loader.js line 308 @@ -705,7 +705,7 @@
Type:
Source:
- src/loader/Loader.js line 332 + src/loader/Loader.js line 332 @@ -778,7 +778,7 @@
Type:
Source:
- src/loader/Loader.js line 314 + src/loader/Loader.js line 314 @@ -855,7 +855,7 @@
Type:
Source:
- src/loader/Loader.js line 226 + src/loader/Loader.js line 226 @@ -934,7 +934,7 @@
Type:
Source:
- src/loader/Loader.js line 82 + src/loader/Loader.js line 82 @@ -1011,7 +1011,7 @@
Type:
Source:
- src/loader/Loader.js line 35 + src/loader/Loader.js line 35 @@ -1091,7 +1091,7 @@
Type:
Source:
- src/loader/Loader.js line 73 + src/loader/Loader.js line 73 @@ -1169,7 +1169,7 @@
Type:
Source:
- src/loader/Loader.js line 209 + src/loader/Loader.js line 209 @@ -1246,7 +1246,7 @@
Type:
Source:
- src/loader/Loader.js line 28 + src/loader/Loader.js line 28 @@ -1323,7 +1323,7 @@
Type:
Source:
- src/loader/Loader.js line 56 + src/loader/Loader.js line 56 @@ -1416,7 +1416,7 @@
Type:
Source:
- src/loader/Loader.js line 127 + src/loader/Loader.js line 127 @@ -1493,7 +1493,7 @@
Type:
Source:
- src/loader/Loader.js line 49 + src/loader/Loader.js line 49 @@ -1572,7 +1572,7 @@
Type:
Source:
- src/loader/Loader.js line 220 + src/loader/Loader.js line 220 @@ -1650,7 +1650,7 @@
Type:
Source:
- src/loader/Loader.js line 147 + src/loader/Loader.js line 147 @@ -1730,7 +1730,7 @@
Type:
Source:
- src/loader/Loader.js line 189 + src/loader/Loader.js line 189 @@ -1809,7 +1809,7 @@
Type:
Source:
- src/loader/Loader.js line 200 + src/loader/Loader.js line 200 @@ -1888,7 +1888,7 @@
Type:
Source:
- src/loader/Loader.js line 176 + src/loader/Loader.js line 176 @@ -1966,7 +1966,7 @@
Type:
Source:
- src/loader/Loader.js line 155 + src/loader/Loader.js line 155 @@ -2044,7 +2044,7 @@
Type:
Source:
- src/loader/Loader.js line 139 + src/loader/Loader.js line 139 @@ -2123,7 +2123,7 @@
Type:
Source:
- src/loader/Loader.js line 166 + src/loader/Loader.js line 166 @@ -2210,7 +2210,7 @@
Type:
Source:
- src/loader/Loader.js line 104 + src/loader/Loader.js line 104 @@ -2288,7 +2288,7 @@
Type:
Source:
- src/loader/Loader.js line 66 + src/loader/Loader.js line 66 @@ -2403,7 +2403,7 @@
Properties:
Source:
- src/loader/Loader.js line 3360 + src/loader/Loader.js line 3360 @@ -2520,7 +2520,7 @@
Properties:
Source:
- src/loader/Loader.js line 3341 + src/loader/Loader.js line 3341 @@ -2597,7 +2597,7 @@
Type:
Source:
- src/loader/Loader.js line 42 + src/loader/Loader.js line 42 @@ -2725,7 +2725,7 @@
Parameters:
Source:
- src/loader/Loader.js line 355 + src/loader/Loader.js line 355 @@ -2904,7 +2904,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1955 + src/loader/Loader.js line 1955 @@ -3277,7 +3277,7 @@
Parameters:
Source:
- src/loader/Loader.js line 564 + src/loader/Loader.js line 564 @@ -3599,7 +3599,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1823 + src/loader/Loader.js line 1823 @@ -3888,7 +3888,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1680 + src/loader/Loader.js line 1680 @@ -4177,7 +4177,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1725 + src/loader/Loader.js line 1725 @@ -4466,7 +4466,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1770 + src/loader/Loader.js line 1770 @@ -4733,7 +4733,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1246 + src/loader/Loader.js line 1246 @@ -5076,7 +5076,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1288 + src/loader/Loader.js line 1288 @@ -5413,7 +5413,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1346 + src/loader/Loader.js line 1346 @@ -5713,7 +5713,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1144 + src/loader/Loader.js line 1144 @@ -6092,7 +6092,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1588 + src/loader/Loader.js line 1588 @@ -6275,7 +6275,7 @@
Parameters:
Source:
- src/loader/Loader.js line 443 + src/loader/Loader.js line 443 @@ -6458,7 +6458,7 @@
Parameters:
Source:
- src/loader/Loader.js line 492 + src/loader/Loader.js line 492 @@ -6642,7 +6642,7 @@
Parameters:
Source:
- src/loader/Loader.js line 458 + src/loader/Loader.js line 458 @@ -6947,7 +6947,7 @@
Parameters:
Source:
- src/loader/Loader.js line 741 + src/loader/Loader.js line 741 @@ -7197,7 +7197,7 @@
Parameters:
Source:
- src/loader/Loader.js line 852 + src/loader/Loader.js line 852 @@ -7305,7 +7305,7 @@

Source:
- src/loader/Loader.js line 866 + src/loader/Loader.js line 866 @@ -7396,7 +7396,7 @@

Source:
- src/loader/Loader.js line 877 + src/loader/Loader.js line 877 @@ -7590,7 +7590,7 @@
Parameters:
Source:
- src/loader/Loader.js line 961 + src/loader/Loader.js line 961 @@ -7848,7 +7848,7 @@
Parameters:
Source:
- src/loader/Loader.js line 831 + src/loader/Loader.js line 831 @@ -8108,7 +8108,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1031 + src/loader/Loader.js line 1031 @@ -8405,7 +8405,7 @@
Parameters:
Source:
- src/loader/Loader.js line 660 + src/loader/Loader.js line 660 @@ -8711,7 +8711,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1528 + src/loader/Loader.js line 1528 @@ -8819,7 +8819,7 @@

Source:
- src/loader/Loader.js line 2001 + src/loader/Loader.js line 2001 @@ -8978,7 +8978,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1978 + src/loader/Loader.js line 1978 @@ -9184,7 +9184,7 @@
Parameters:
Source:
- src/loader/Loader.js line 645 + src/loader/Loader.js line 645 @@ -9380,7 +9380,7 @@
Parameters:
Source:
- src/loader/Loader.js line 515 + src/loader/Loader.js line 515 @@ -9465,7 +9465,7 @@

Source:
- src/loader/Loader.js line 427 + src/loader/Loader.js line 427 @@ -9742,7 +9742,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1110 + src/loader/Loader.js line 1110 @@ -9962,7 +9962,7 @@
Parameters:
Source:
- src/loader/Loader.js line 393 + src/loader/Loader.js line 393 @@ -10197,7 +10197,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1058 + src/loader/Loader.js line 1058 @@ -10669,7 +10669,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1181 + src/loader/Loader.js line 1181 @@ -10777,7 +10777,7 @@

Source:
- src/loader/Loader.js line 2013 + src/loader/Loader.js line 2013 @@ -11012,7 +11012,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1005 + src/loader/Loader.js line 1005 @@ -11285,7 +11285,7 @@
Parameters:
Source:
- src/loader/Loader.js line 888 + src/loader/Loader.js line 888 @@ -11592,7 +11592,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1416 + src/loader/Loader.js line 1416 @@ -11828,7 +11828,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1496 + src/loader/Loader.js line 1496 @@ -12074,7 +12074,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1512 + src/loader/Loader.js line 1512 @@ -12189,7 +12189,7 @@

Source:
- src/loader/Loader.js line 3291 + src/loader/Loader.js line 3291 @@ -12297,7 +12297,7 @@

Source:
- src/loader/Loader.js line 3315 + src/loader/Loader.js line 3315 @@ -12405,7 +12405,7 @@

Source:
- src/loader/Loader.js line 3303 + src/loader/Loader.js line 3303 @@ -12513,7 +12513,7 @@

Source:
- src/loader/Loader.js line 3327 + src/loader/Loader.js line 3327 @@ -12696,7 +12696,7 @@
Parameters:
Source:
- src/loader/Loader.js line 2350 + src/loader/Loader.js line 2350 @@ -13006,7 +13006,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1363 + src/loader/Loader.js line 1363 @@ -13224,7 +13224,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1926 + src/loader/Loader.js line 1926 @@ -13483,7 +13483,7 @@
Parameters:
Source:
- src/loader/Loader.js line 1084 + src/loader/Loader.js line 1084 @@ -13550,9 +13550,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -13569,7 +13569,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -13598,7 +13598,7 @@
Returns:
- + diff --git a/docs/Phaser.LoaderParser.html b/docs/Phaser.LoaderParser.html index ef60736f4..a7c456c9a 100644 --- a/docs/Phaser.LoaderParser.html +++ b/docs/Phaser.LoaderParser.html @@ -6,7 +6,7 @@ Phaser CE Class: LoaderParser - + @@ -180,7 +180,7 @@

Source:
- src/loader/LoaderParser.js line 12 + src/loader/LoaderParser.js line 12 @@ -542,7 +542,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 14 + src/loader/LoaderParser.js line 14 @@ -700,7 +700,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 350 + src/loader/LoaderParser.js line 350 @@ -1068,7 +1068,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 124 + src/loader/LoaderParser.js line 124 @@ -1226,7 +1226,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 458 + src/loader/LoaderParser.js line 458 @@ -1384,7 +1384,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 563 + src/loader/LoaderParser.js line 563 @@ -1542,7 +1542,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 243 + src/loader/LoaderParser.js line 243 @@ -1910,7 +1910,7 @@
Parameters:
Source:
- src/loader/LoaderParser.js line 31 + src/loader/LoaderParser.js line 31 @@ -1977,9 +1977,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1996,7 +1996,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2025,7 +2025,7 @@
Returns:
- + diff --git a/docs/Phaser.MSPointer.html b/docs/Phaser.MSPointer.html index dc8b312b1..6d1fb52d8 100644 --- a/docs/Phaser.MSPointer.html +++ b/docs/Phaser.MSPointer.html @@ -6,7 +6,7 @@ Phaser CE Class: MSPointer - + @@ -237,7 +237,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 27 + src/input/MSPointer.js line 27 @@ -342,7 +342,7 @@
Type:
Source:
- src/input/MSPointer.js line 105 + src/input/MSPointer.js line 105 @@ -419,7 +419,7 @@
Type:
Source:
- src/input/MSPointer.js line 43 + src/input/MSPointer.js line 43 @@ -502,7 +502,7 @@
Type:
Source:
- src/input/MSPointer.js line 89 + src/input/MSPointer.js line 89 @@ -593,7 +593,7 @@
Type:
Source:
- src/input/MSPointer.js line 112 + src/input/MSPointer.js line 112 @@ -677,7 +677,7 @@
Type:
Source:
- src/input/MSPointer.js line 97 + src/input/MSPointer.js line 97 @@ -754,7 +754,7 @@
Type:
Source:
- src/input/MSPointer.js line 32 + src/input/MSPointer.js line 32 @@ -831,7 +831,7 @@
Type:
Source:
- src/input/MSPointer.js line 38 + src/input/MSPointer.js line 38 @@ -908,7 +908,7 @@
Type:
Source:
- src/input/MSPointer.js line 73 + src/input/MSPointer.js line 73 @@ -985,7 +985,7 @@
Type:
Source:
- src/input/MSPointer.js line 48 + src/input/MSPointer.js line 48 @@ -1062,7 +1062,7 @@
Type:
Source:
- src/input/MSPointer.js line 53 + src/input/MSPointer.js line 53 @@ -1139,7 +1139,7 @@
Type:
Source:
- src/input/MSPointer.js line 63 + src/input/MSPointer.js line 63 @@ -1216,7 +1216,7 @@
Type:
Source:
- src/input/MSPointer.js line 68 + src/input/MSPointer.js line 68 @@ -1293,7 +1293,7 @@
Type:
Source:
- src/input/MSPointer.js line 58 + src/input/MSPointer.js line 58 @@ -1370,7 +1370,7 @@
Type:
Source:
- src/input/MSPointer.js line 119 + src/input/MSPointer.js line 119 @@ -1498,7 +1498,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 464 + src/input/MSPointer.js line 464 @@ -1632,7 +1632,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 247 + src/input/MSPointer.js line 247 @@ -1766,7 +1766,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 286 + src/input/MSPointer.js line 286 @@ -1900,7 +1900,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 385 + src/input/MSPointer.js line 385 @@ -2034,7 +2034,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 434 + src/input/MSPointer.js line 434 @@ -2168,7 +2168,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 322 + src/input/MSPointer.js line 322 @@ -2302,7 +2302,7 @@
Parameters:
Source:
- src/input/MSPointer.js line 360 + src/input/MSPointer.js line 360 @@ -2386,7 +2386,7 @@

Source:
- src/input/MSPointer.js line 160 + src/input/MSPointer.js line 160 @@ -2470,7 +2470,7 @@

Source:
- src/input/MSPointer.js line 496 + src/input/MSPointer.js line 496 @@ -2513,9 +2513,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2532,7 +2532,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2561,7 +2561,7 @@

- + diff --git a/docs/Phaser.Math.html b/docs/Phaser.Math.html index 633685ae2..39dd40cf4 100644 --- a/docs/Phaser.Math.html +++ b/docs/Phaser.Math.html @@ -6,7 +6,7 @@ Phaser CE Class: Math - + @@ -181,7 +181,7 @@

Source:
- src/math/Math.js line 17 + src/math/Math.js line 17 @@ -337,7 +337,7 @@
Properties:
Source:
- src/math/Math.js line 37 + src/math/Math.js line 37 @@ -463,7 +463,7 @@
Properties:
Source:
- src/math/Math.js line 31 + src/math/Math.js line 31 @@ -589,7 +589,7 @@
Properties:
Source:
- src/math/Math.js line 24 + src/math/Math.js line 24 @@ -708,7 +708,7 @@
Properties:
Source:
- src/math/Math.js line 43 + src/math/Math.js line 43 @@ -908,7 +908,7 @@
Parameters:
Source:
- src/math/Math.js line 541 + src/math/Math.js line 541 @@ -1090,7 +1090,7 @@
Parameters:
Source:
- src/math/Math.js line 574 + src/math/Math.js line 574 @@ -1272,7 +1272,7 @@
Parameters:
Source:
- src/math/Math.js line 587 + src/math/Math.js line 587 @@ -1504,7 +1504,7 @@
Parameters:
Source:
- src/math/Math.js line 556 + src/math/Math.js line 556 @@ -1612,7 +1612,7 @@

Source:
- src/math/Math.js line 249 + src/math/Math.js line 249 @@ -1790,7 +1790,7 @@
Parameters:
Source:
- src/math/Math.js line 962 + src/math/Math.js line 962 @@ -1969,7 +1969,7 @@
Parameters:
Source:
- src/math/Math.js line 139 + src/math/Math.js line 139 @@ -2151,7 +2151,7 @@
Parameters:
Source:
- src/math/Math.js line 888 + src/math/Math.js line 888 @@ -2405,7 +2405,7 @@
Parameters:
Source:
- src/math/Math.js line 996 + src/math/Math.js line 996 @@ -2583,7 +2583,7 @@
Parameters:
Source:
- src/math/Math.js line 909 + src/math/Math.js line 909 @@ -2838,7 +2838,7 @@
Parameters:
Source:
- src/math/Math.js line 424 + src/math/Math.js line 424 @@ -3044,7 +3044,7 @@
Parameters:
Source:
- src/math/Math.js line 1150 + src/math/Math.js line 1150 @@ -3227,7 +3227,7 @@
Parameters:
Source:
- src/math/Math.js line 1175 + src/math/Math.js line 1175 @@ -3381,7 +3381,7 @@
Parameters:
Source:
- src/math/Math.js line 45 + src/math/Math.js line 45 @@ -3563,7 +3563,7 @@
Parameters:
Source:
- src/math/Math.js line 1018 + src/math/Math.js line 1018 @@ -3793,7 +3793,7 @@
Parameters:
Source:
- src/math/Math.js line 1095 + src/math/Math.js line 1095 @@ -4115,7 +4115,7 @@
Parameters:
Source:
- src/math/Math.js line 1132 + src/math/Math.js line 1132 @@ -4346,7 +4346,7 @@
Parameters:
Source:
- src/math/Math.js line 1113 + src/math/Math.js line 1113 @@ -4500,7 +4500,7 @@
Parameters:
Source:
- src/math/Math.js line 974 + src/math/Math.js line 974 @@ -4751,7 +4751,7 @@
Parameters:
Source:
- src/math/Math.js line 404 + src/math/Math.js line 404 @@ -4965,7 +4965,7 @@
Parameters:
Source:
- src/math/Math.js line 219 + src/math/Math.js line 219 @@ -5215,7 +5215,7 @@
Parameters:
Source:
- src/math/Math.js line 171 + src/math/Math.js line 171 @@ -5429,7 +5429,7 @@
Parameters:
Source:
- src/math/Math.js line 234 + src/math/Math.js line 234 @@ -5679,7 +5679,7 @@
Parameters:
Source:
- src/math/Math.js line 203 + src/math/Math.js line 203 @@ -5929,7 +5929,7 @@
Parameters:
Source:
- src/math/Math.js line 187 + src/math/Math.js line 187 @@ -6088,7 +6088,7 @@
Parameters:
Source:
- src/math/Math.js line 69 + src/math/Math.js line 69 @@ -6276,7 +6276,7 @@
Parameters:
Source:
- src/math/Math.js line 512 + src/math/Math.js line 512 @@ -6458,7 +6458,7 @@
Parameters:
Source:
- src/math/Math.js line 1082 + src/math/Math.js line 1082 @@ -6616,7 +6616,7 @@
Parameters:
Source:
- src/math/Math.js line 715 + src/math/Math.js line 715 @@ -6774,7 +6774,7 @@
Parameters:
Source:
- src/math/Math.js line 702 + src/math/Math.js line 702 @@ -6956,7 +6956,7 @@
Parameters:
Source:
- src/math/Math.js line 97 + src/math/Math.js line 97 @@ -7162,7 +7162,7 @@
Parameters:
Source:
- src/math/Math.js line 948 + src/math/Math.js line 948 @@ -7340,7 +7340,7 @@
Parameters:
Source:
- src/math/Math.js line 861 + src/math/Math.js line 861 @@ -7594,7 +7594,7 @@
Parameters:
Source:
- src/math/Math.js line 1204 + src/math/Math.js line 1204 @@ -7699,7 +7699,7 @@

Source:
- src/math/Math.js line 759 + src/math/Math.js line 759 @@ -7912,7 +7912,7 @@
Parameters:
Source:
- src/math/Math.js line 622 + src/math/Math.js line 622 @@ -8021,7 +8021,7 @@

Source:
- src/math/Math.js line 819 + src/math/Math.js line 819 @@ -8130,7 +8130,7 @@

Source:
- src/math/Math.js line 728 + src/math/Math.js line 728 @@ -8246,7 +8246,7 @@

Source:
- src/math/Math.js line 790 + src/math/Math.js line 790 @@ -8452,7 +8452,7 @@
Parameters:
Source:
- src/math/Math.js line 636 + src/math/Math.js line 636 @@ -8610,7 +8610,7 @@
Parameters:
Source:
- src/math/Math.js line 610 + src/math/Math.js line 610 @@ -8860,7 +8860,7 @@
Parameters:
Source:
- src/math/Math.js line 1268 + src/math/Math.js line 1268 @@ -9018,7 +9018,7 @@
Parameters:
Source:
- src/math/Math.js line 57 + src/math/Math.js line 57 @@ -9201,7 +9201,7 @@
Parameters:
Source:
- src/math/Math.js line 110 + src/math/Math.js line 110 @@ -9359,7 +9359,7 @@
Parameters:
Source:
- src/math/Math.js line 599 + src/math/Math.js line 599 @@ -9610,7 +9610,7 @@
Parameters:
Source:
- src/math/Math.js line 462 + src/math/Math.js line 462 @@ -9768,7 +9768,7 @@
Parameters:
Source:
- src/math/Math.js line 1031 + src/math/Math.js line 1031 @@ -10047,7 +10047,7 @@
Parameters:
Source:
- src/math/Math.js line 359 + src/math/Math.js line 359 @@ -10201,7 +10201,7 @@
Parameters:
Source:
- src/math/Math.js line 269 + src/math/Math.js line 269 @@ -10360,7 +10360,7 @@
Parameters:
Source:
- src/math/Math.js line 1254 + src/math/Math.js line 1254 @@ -10593,7 +10593,7 @@
Parameters:
Source:
- src/math/Math.js line 1044 + src/math/Math.js line 1044 @@ -10799,7 +10799,7 @@
Parameters:
Source:
- src/math/Math.js line 1238 + src/math/Math.js line 1238 @@ -11005,7 +11005,7 @@
Parameters:
Source:
- src/math/Math.js line 1220 + src/math/Math.js line 1220 @@ -11256,7 +11256,7 @@
Parameters:
Source:
- src/math/Math.js line 279 + src/math/Math.js line 279 @@ -11508,7 +11508,7 @@
Parameters:
Source:
- src/math/Math.js line 332 + src/math/Math.js line 332 @@ -11760,7 +11760,7 @@
Parameters:
Source:
- src/math/Math.js line 305 + src/math/Math.js line 305 @@ -11919,7 +11919,7 @@
Parameters:
Source:
- src/math/Math.js line 444 + src/math/Math.js line 444 @@ -12125,7 +12125,7 @@
Parameters:
Source:
- src/math/Math.js line 1189 + src/math/Math.js line 1189 @@ -12339,7 +12339,7 @@
Parameters:
Source:
- src/math/Math.js line 650 + src/math/Math.js line 650 @@ -12553,7 +12553,7 @@
Parameters:
Source:
- src/math/Math.js line 848 + src/math/Math.js line 848 @@ -12760,7 +12760,7 @@
Parameters:
Source:
- src/math/Math.js line 680 + src/math/Math.js line 680 @@ -12827,9 +12827,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -12846,7 +12846,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -12875,7 +12875,7 @@
Returns:
- + diff --git a/docs/Phaser.Matrix.html b/docs/Phaser.Matrix.html index 0ac814da2..e04e7a9ab 100644 --- a/docs/Phaser.Matrix.html +++ b/docs/Phaser.Matrix.html @@ -6,7 +6,7 @@ Phaser CE Class: Matrix - + @@ -454,7 +454,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 26 + src/geom/Matrix.js line 26 @@ -562,7 +562,7 @@
Type:
Source:
- src/geom/Matrix.js line 39 + src/geom/Matrix.js line 39 @@ -642,7 +642,7 @@
Type:
Source:
- src/geom/Matrix.js line 45 + src/geom/Matrix.js line 45 @@ -722,7 +722,7 @@
Type:
Source:
- src/geom/Matrix.js line 51 + src/geom/Matrix.js line 51 @@ -802,7 +802,7 @@
Type:
Source:
- src/geom/Matrix.js line 57 + src/geom/Matrix.js line 57 @@ -882,7 +882,7 @@
Type:
Source:
- src/geom/Matrix.js line 63 + src/geom/Matrix.js line 63 @@ -962,7 +962,7 @@
Type:
Source:
- src/geom/Matrix.js line 69 + src/geom/Matrix.js line 69 @@ -1039,7 +1039,7 @@
Type:
Source:
- src/geom/Matrix.js line 75 + src/geom/Matrix.js line 75 @@ -1167,7 +1167,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 333 + src/geom/Matrix.js line 333 @@ -1370,7 +1370,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 226 + src/geom/Matrix.js line 226 @@ -1573,7 +1573,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 246 + src/geom/Matrix.js line 246 @@ -1745,7 +1745,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 125 + src/geom/Matrix.js line 125 @@ -1903,7 +1903,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 167 + src/geom/Matrix.js line 167 @@ -2061,7 +2061,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 153 + src/geom/Matrix.js line 153 @@ -2226,7 +2226,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 80 + src/geom/Matrix.js line 80 @@ -2334,7 +2334,7 @@

Source:
- src/geom/Matrix.js line 358 + src/geom/Matrix.js line 358 @@ -2492,7 +2492,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 307 + src/geom/Matrix.js line 307 @@ -2674,7 +2674,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 287 + src/geom/Matrix.js line 287 @@ -2952,7 +2952,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 101 + src/geom/Matrix.js line 101 @@ -3168,7 +3168,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 186 + src/geom/Matrix.js line 186 @@ -3351,7 +3351,7 @@
Parameters:
Source:
- src/geom/Matrix.js line 270 + src/geom/Matrix.js line 270 @@ -3418,9 +3418,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3437,7 +3437,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3466,7 +3466,7 @@
Returns:
- + diff --git a/docs/Phaser.Mouse.html b/docs/Phaser.Mouse.html index 65deb4a4e..046a2fd15 100644 --- a/docs/Phaser.Mouse.html +++ b/docs/Phaser.Mouse.html @@ -6,7 +6,7 @@ Phaser CE Class: Mouse - + @@ -235,7 +235,7 @@
Parameters:
Source:
- src/input/Mouse.js line 21 + src/input/Mouse.js line 21 @@ -336,7 +336,7 @@
Type:
Source:
- src/input/Mouse.js line 165 + src/input/Mouse.js line 165 @@ -409,7 +409,7 @@
Type:
Source:
- src/input/Mouse.js line 171 + src/input/Mouse.js line 171 @@ -482,7 +482,7 @@
Type:
Source:
- src/input/Mouse.js line 147 + src/input/Mouse.js line 147 @@ -555,7 +555,7 @@
Type:
Source:
- src/input/Mouse.js line 153 + src/input/Mouse.js line 153 @@ -628,7 +628,7 @@
Type:
Source:
- src/input/Mouse.js line 141 + src/input/Mouse.js line 141 @@ -701,7 +701,7 @@
Type:
Source:
- src/input/Mouse.js line 159 + src/input/Mouse.js line 159 @@ -812,7 +812,7 @@
Properties:
Source:
- src/input/Mouse.js line 79 + src/input/Mouse.js line 79 @@ -898,7 +898,7 @@
Type:
Source:
- src/input/Mouse.js line 37 + src/input/Mouse.js line 37 @@ -975,7 +975,7 @@
Type:
Source:
- src/input/Mouse.js line 71 + src/input/Mouse.js line 71 @@ -1061,7 +1061,7 @@
Type:
Source:
- src/input/Mouse.js line 88 + src/input/Mouse.js line 88 @@ -1142,7 +1142,7 @@
Type:
Source:
- src/input/Mouse.js line 104 + src/input/Mouse.js line 104 @@ -1219,7 +1219,7 @@
Type:
Source:
- src/input/Mouse.js line 26 + src/input/Mouse.js line 26 @@ -1296,7 +1296,7 @@
Type:
Source:
- src/input/Mouse.js line 32 + src/input/Mouse.js line 32 @@ -1374,7 +1374,7 @@
Type:
Source:
- src/input/Mouse.js line 44 + src/input/Mouse.js line 44 @@ -1452,7 +1452,7 @@
Type:
Source:
- src/input/Mouse.js line 59 + src/input/Mouse.js line 59 @@ -1530,7 +1530,7 @@
Type:
Source:
- src/input/Mouse.js line 66 + src/input/Mouse.js line 66 @@ -1608,7 +1608,7 @@
Type:
Source:
- src/input/Mouse.js line 51 + src/input/Mouse.js line 51 @@ -1686,7 +1686,7 @@
Type:
Source:
- src/input/Mouse.js line 96 + src/input/Mouse.js line 96 @@ -1814,7 +1814,7 @@
Parameters:
Source:
- src/input/Mouse.js line 252 + src/input/Mouse.js line 252 @@ -1948,7 +1948,7 @@
Parameters:
Source:
- src/input/Mouse.js line 281 + src/input/Mouse.js line 281 @@ -2082,7 +2082,7 @@
Parameters:
Source:
- src/input/Mouse.js line 398 + src/input/Mouse.js line 398 @@ -2216,7 +2216,7 @@
Parameters:
Source:
- src/input/Mouse.js line 360 + src/input/Mouse.js line 360 @@ -2350,7 +2350,7 @@
Parameters:
Source:
- src/input/Mouse.js line 437 + src/input/Mouse.js line 437 @@ -2484,7 +2484,7 @@
Parameters:
Source:
- src/input/Mouse.js line 310 + src/input/Mouse.js line 310 @@ -2618,7 +2618,7 @@
Parameters:
Source:
- src/input/Mouse.js line 339 + src/input/Mouse.js line 339 @@ -2702,7 +2702,7 @@

Source:
- src/input/Mouse.js line 175 + src/input/Mouse.js line 175 @@ -2812,7 +2812,7 @@

Source:
- src/input/Mouse.js line 467 + src/input/Mouse.js line 467 @@ -2855,9 +2855,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2874,7 +2874,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2903,7 +2903,7 @@

- + diff --git a/docs/Phaser.MouseWheel.html b/docs/Phaser.MouseWheel.html index 99c082ed7..09a8918d4 100644 --- a/docs/Phaser.MouseWheel.html +++ b/docs/Phaser.MouseWheel.html @@ -6,7 +6,7 @@ Phaser CE Class: MouseWheel - + @@ -230,7 +230,7 @@

Parameters:
Source:
- src/input/MouseWheel.js line 7 + src/input/MouseWheel.js line 7 @@ -331,7 +331,7 @@
Type:
Source:
- src/input/MouseWheel.js line 103 + src/input/MouseWheel.js line 103 @@ -404,7 +404,7 @@
Type:
Source:
- src/input/MouseWheel.js line 97 + src/input/MouseWheel.js line 97 @@ -481,7 +481,7 @@
Type:
Source:
- src/input/MouseWheel.js line 41 + src/input/MouseWheel.js line 41 @@ -568,7 +568,7 @@
Type:
Source:
- src/input/MouseWheel.js line 48 + src/input/MouseWheel.js line 48 @@ -646,7 +646,7 @@
Type:
Source:
- src/input/MouseWheel.js line 55 + src/input/MouseWheel.js line 55 @@ -724,7 +724,7 @@
Type:
Source:
- src/input/MouseWheel.js line 64 + src/input/MouseWheel.js line 64 @@ -801,7 +801,7 @@
Type:
Source:
- src/input/MouseWheel.js line 25 + src/input/MouseWheel.js line 25 @@ -878,7 +878,7 @@
Type:
Source:
- src/input/MouseWheel.js line 13 + src/input/MouseWheel.js line 13 @@ -955,7 +955,7 @@
Type:
Source:
- src/input/MouseWheel.js line 19 + src/input/MouseWheel.js line 19 @@ -1039,7 +1039,7 @@
Type:
Source:
- src/input/MouseWheel.js line 32 + src/input/MouseWheel.js line 32 @@ -1117,7 +1117,7 @@

Source:
- src/input/MouseWheel.js line 105 + src/input/MouseWheel.js line 105 @@ -1227,7 +1227,7 @@

Source:
- src/input/MouseWheel.js line 133 + src/input/MouseWheel.js line 133 @@ -1270,9 +1270,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1289,7 +1289,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1318,7 +1318,7 @@

- + diff --git a/docs/Phaser.Particle.html b/docs/Phaser.Particle.html index 97ddf8da7..e215ae48d 100644 --- a/docs/Phaser.Particle.html +++ b/docs/Phaser.Particle.html @@ -6,7 +6,7 @@ Phaser CE Class: Particle - + @@ -338,7 +338,7 @@

Parameters:
Source:
- src/gameobjects/Particle.js line 19 + src/gameobjects/Particle.js line 19 @@ -474,7 +474,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -575,7 +575,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -652,7 +652,7 @@
Type:
Source:
- src/gameobjects/Particle.js line 62 + src/gameobjects/Particle.js line 62 @@ -742,7 +742,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -833,7 +833,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -920,7 +920,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1004,7 +1004,7 @@
Type:
Source:
- src/gameobjects/Particle.js line 51 + src/gameobjects/Particle.js line 51 @@ -1081,7 +1081,7 @@
Type:
Source:
- src/gameobjects/Particle.js line 56 + src/gameobjects/Particle.js line 56 @@ -1171,7 +1171,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1248,7 +1248,7 @@
Type:
Source:
- src/gameobjects/Particle.js line 27 + src/gameobjects/Particle.js line 27 @@ -1325,7 +1325,7 @@
Type:
Source:
- src/gameobjects/Particle.js line 33 + src/gameobjects/Particle.js line 33 @@ -1419,7 +1419,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1522,7 +1522,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1609,7 +1609,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1702,7 +1702,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1789,7 +1789,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1876,7 +1876,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1963,7 +1963,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -2055,7 +2055,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -2141,7 +2141,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -2227,7 +2227,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -2315,7 +2315,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -2411,7 +2411,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2497,7 +2497,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2584,7 +2584,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -2671,7 +2671,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -2757,7 +2757,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -2844,7 +2844,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2931,7 +2931,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -3031,7 +3031,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -3117,7 +3117,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -3208,7 +3208,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -3301,7 +3301,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -3392,7 +3392,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3483,7 +3483,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3570,7 +3570,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3656,7 +3656,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3750,7 +3750,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -3836,7 +3836,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3932,7 +3932,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -4020,7 +4020,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -4107,7 +4107,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -4198,7 +4198,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -4291,7 +4291,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -4377,7 +4377,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -4479,7 +4479,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -4566,7 +4566,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4656,7 +4656,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4745,7 +4745,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4839,7 +4839,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -4926,7 +4926,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -5014,7 +5014,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -5102,7 +5102,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -5188,7 +5188,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -5275,7 +5275,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -5364,7 +5364,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -5453,7 +5453,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -5539,7 +5539,7 @@
Type:
Source:
- src/gameobjects/Sprite.js line 61 + src/gameobjects/Sprite.js line 61 @@ -5626,7 +5626,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -5714,7 +5714,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -5800,7 +5800,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5886,7 +5886,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5973,7 +5973,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -6060,7 +6060,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -6147,7 +6147,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -6236,7 +6236,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -6325,7 +6325,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -6402,7 +6402,7 @@
Type:
Source:
- src/gameobjects/Particle.js line 39 + src/gameobjects/Particle.js line 39 @@ -6490,7 +6490,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -6578,7 +6578,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -6672,7 +6672,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -6760,7 +6760,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -6846,7 +6846,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -6939,7 +6939,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -7032,7 +7032,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -7119,7 +7119,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -7205,7 +7205,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -7291,7 +7291,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -7377,7 +7377,7 @@
Type:
Source:
- src/gameobjects/Sprite.js line 55 + src/gameobjects/Sprite.js line 55 @@ -7476,7 +7476,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -7562,7 +7562,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -7650,7 +7650,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -7742,7 +7742,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -7833,7 +7833,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -7924,7 +7924,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -8015,7 +8015,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -8106,7 +8106,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -8192,7 +8192,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -8279,7 +8279,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -8366,7 +8366,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -8455,7 +8455,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -8592,7 +8592,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -8783,7 +8783,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -9126,7 +9126,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -9470,7 +9470,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -9590,7 +9590,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -9757,7 +9757,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -9983,7 +9983,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -10127,7 +10127,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -10246,7 +10246,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -10491,7 +10491,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -10666,7 +10666,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -10833,7 +10833,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -11000,7 +11000,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -11117,7 +11117,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -11284,7 +11284,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -11405,7 +11405,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -11690,7 +11690,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -11786,7 +11786,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -11906,7 +11906,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -12014,7 +12014,7 @@

Source:
- src/gameobjects/Particle.js line 115 + src/gameobjects/Particle.js line 115 @@ -12173,7 +12173,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -12479,7 +12479,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -12596,7 +12596,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -12689,7 +12689,7 @@

Source:
- src/gameobjects/Sprite.js line 106 + src/gameobjects/Sprite.js line 106 @@ -12806,7 +12806,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -12949,7 +12949,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -13116,7 +13116,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -13307,7 +13307,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -13540,7 +13540,7 @@
Parameters:
Source:
- src/gameobjects/Particle.js line 155 + src/gameobjects/Particle.js line 155 @@ -13657,7 +13657,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -13850,7 +13850,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -14015,7 +14015,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -14135,7 +14135,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -14243,7 +14243,7 @@

Source:
- src/gameobjects/Particle.js line 125 + src/gameobjects/Particle.js line 125 @@ -14410,7 +14410,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -14554,7 +14554,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -14698,7 +14698,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -14806,7 +14806,7 @@

Source:
- src/gameobjects/Particle.js line 140 + src/gameobjects/Particle.js line 140 @@ -15043,7 +15043,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -15243,7 +15243,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -15410,7 +15410,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -15553,7 +15553,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -15766,7 +15766,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -15881,7 +15881,7 @@

Source:
- src/gameobjects/Particle.js line 74 + src/gameobjects/Particle.js line 74 @@ -15974,7 +15974,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -16094,7 +16094,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -16257,7 +16257,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -16326,9 +16326,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -16345,7 +16345,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -16374,7 +16374,7 @@
Returns:
- + diff --git a/docs/Phaser.Particles.Arcade.Emitter.html b/docs/Phaser.Particles.Arcade.Emitter.html index 2f09e650f..1041a2ce3 100644 --- a/docs/Phaser.Particles.Arcade.Emitter.html +++ b/docs/Phaser.Particles.Arcade.Emitter.html @@ -6,7 +6,7 @@ Phaser CE Class: Emitter - + @@ -368,7 +368,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 20 + src/particles/arcade/Emitter.js line 20 @@ -505,7 +505,7 @@
Type:
Source:
- src/core/Group.js line 91 + src/core/Group.js line 91 @@ -591,7 +591,7 @@
Type:
Source:
- src/core/Group.js line 3155 + src/core/Group.js line 3155 @@ -668,7 +668,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 139 + src/particles/arcade/Emitter.js line 139 @@ -757,7 +757,7 @@
Type:
Source:
- src/core/Group.js line 2825 + src/core/Group.js line 2825 @@ -834,7 +834,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 156 + src/particles/arcade/Emitter.js line 156 @@ -911,7 +911,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 57 + src/particles/arcade/Emitter.js line 57 @@ -988,7 +988,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 222 + src/particles/arcade/Emitter.js line 222 @@ -1065,7 +1065,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 227 + src/particles/arcade/Emitter.js line 227 @@ -1142,7 +1142,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 212 + src/particles/arcade/Emitter.js line 212 @@ -1219,7 +1219,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 217 + src/particles/arcade/Emitter.js line 217 @@ -1296,7 +1296,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 191 + src/particles/arcade/Emitter.js line 191 @@ -1378,7 +1378,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1207 + src/particles/arcade/Emitter.js line 1207 @@ -1455,7 +1455,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 173 + src/particles/arcade/Emitter.js line 173 @@ -1548,7 +1548,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1635,7 +1635,7 @@
Type:
Source:
- src/core/Group.js line 277 + src/core/Group.js line 277 @@ -1723,7 +1723,7 @@
Type:
Source:
- src/core/Group.js line 2850 + src/core/Group.js line 2850 @@ -1811,7 +1811,7 @@
Type:
Source:
- src/core/Group.js line 2876 + src/core/Group.js line 2876 @@ -1897,7 +1897,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1991,7 +1991,7 @@
Type:
Source:
- src/core/Group.js line 127 + src/core/Group.js line 127 @@ -2227,7 +2227,7 @@
Properties
Source:
- src/particles/arcade/Emitter.js line 248 + src/particles/arcade/Emitter.js line 248 @@ -2310,7 +2310,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1263 + src/particles/arcade/Emitter.js line 1263 @@ -2396,7 +2396,7 @@
Type:
Source:
- src/core/Group.js line 260 + src/core/Group.js line 260 @@ -2475,7 +2475,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 199 + src/particles/arcade/Emitter.js line 199 @@ -2554,7 +2554,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 207 + src/particles/arcade/Emitter.js line 207 @@ -2642,7 +2642,7 @@
Type:
Source:
- src/core/Group.js line 213 + src/core/Group.js line 213 @@ -2729,7 +2729,7 @@
Type:
Source:
- src/core/Group.js line 222 + src/core/Group.js line 222 @@ -2827,7 +2827,7 @@
Type:
Source:
- src/core/Group.js line 98 + src/core/Group.js line 98 @@ -2913,7 +2913,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -3004,7 +3004,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -3092,7 +3092,7 @@
Type:
Source:
- src/core/Group.js line 270 + src/core/Group.js line 270 @@ -3176,7 +3176,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 162 + src/particles/arcade/Emitter.js line 162 @@ -3262,7 +3262,7 @@
Type:
Source:
- src/core/Group.js line 38 + src/core/Group.js line 38 @@ -3339,7 +3339,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1057 + src/particles/arcade/Emitter.js line 1057 @@ -3429,7 +3429,7 @@
Type:
Source:
- src/core/Group.js line 290 + src/core/Group.js line 290 @@ -3511,7 +3511,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1111 + src/particles/arcade/Emitter.js line 1111 @@ -3607,7 +3607,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3684,7 +3684,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1082 + src/particles/arcade/Emitter.js line 1082 @@ -3772,7 +3772,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3858,7 +3858,7 @@
Type:
Source:
- src/core/Group.js line 105 + src/core/Group.js line 105 @@ -3946,7 +3946,7 @@
Type:
Source:
- src/core/Group.js line 146 + src/core/Group.js line 146 @@ -4028,7 +4028,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1165 + src/particles/arcade/Emitter.js line 1165 @@ -4114,7 +4114,7 @@
Type:
Source:
- src/core/Group.js line 2809 + src/core/Group.js line 2809 @@ -4198,7 +4198,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 168 + src/particles/arcade/Emitter.js line 168 @@ -4275,7 +4275,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1235 + src/particles/arcade/Emitter.js line 1235 @@ -4364,7 +4364,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4441,7 +4441,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 69 + src/particles/arcade/Emitter.js line 69 @@ -4525,7 +4525,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 134 + src/particles/arcade/Emitter.js line 134 @@ -4602,7 +4602,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 26 + src/particles/arcade/Emitter.js line 26 @@ -4686,7 +4686,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 105 + src/particles/arcade/Emitter.js line 105 @@ -4763,7 +4763,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 93 + src/particles/arcade/Emitter.js line 93 @@ -4847,7 +4847,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 122 + src/particles/arcade/Emitter.js line 122 @@ -4931,7 +4931,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 81 + src/particles/arcade/Emitter.js line 81 @@ -5008,7 +5008,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 63 + src/particles/arcade/Emitter.js line 63 @@ -5092,7 +5092,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 128 + src/particles/arcade/Emitter.js line 128 @@ -5176,7 +5176,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 99 + src/particles/arcade/Emitter.js line 99 @@ -5253,7 +5253,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 87 + src/particles/arcade/Emitter.js line 87 @@ -5330,7 +5330,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 116 + src/particles/arcade/Emitter.js line 116 @@ -5407,7 +5407,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 75 + src/particles/arcade/Emitter.js line 75 @@ -5489,7 +5489,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 39 + src/particles/arcade/Emitter.js line 39 @@ -5566,7 +5566,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 179 + src/particles/arcade/Emitter.js line 179 @@ -5656,7 +5656,7 @@
Type:
Source:
- src/core/Group.js line 166 + src/core/Group.js line 166 @@ -5746,7 +5746,7 @@
Type:
Source:
- src/core/Group.js line 203 + src/core/Group.js line 203 @@ -5836,7 +5836,7 @@
Type:
Source:
- src/core/Group.js line 191 + src/core/Group.js line 191 @@ -5927,7 +5927,7 @@
Type:
Source:
- src/core/Group.js line 179 + src/core/Group.js line 179 @@ -6013,7 +6013,7 @@
Type:
Source:
- src/core/Group.js line 254 + src/core/Group.js line 254 @@ -6090,7 +6090,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1221 + src/particles/arcade/Emitter.js line 1221 @@ -6179,7 +6179,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -6256,7 +6256,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 185 + src/particles/arcade/Emitter.js line 185 @@ -6333,7 +6333,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 233 + src/particles/arcade/Emitter.js line 233 @@ -6410,7 +6410,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 145 + src/particles/arcade/Emitter.js line 145 @@ -6487,7 +6487,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 150 + src/particles/arcade/Emitter.js line 150 @@ -6564,7 +6564,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 239 + src/particles/arcade/Emitter.js line 239 @@ -6654,7 +6654,7 @@
Type:
Source:
- src/core/Group.js line 117 + src/core/Group.js line 117 @@ -6741,7 +6741,7 @@
Type:
Source:
- src/core/Group.js line 230 + src/core/Group.js line 230 @@ -6834,7 +6834,7 @@
Type:
Source:
- src/core/Group.js line 248 + src/core/Group.js line 248 @@ -6916,7 +6916,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 51 + src/particles/arcade/Emitter.js line 51 @@ -7003,7 +7003,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -7091,7 +7091,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -7168,7 +7168,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1249 + src/particles/arcade/Emitter.js line 1249 @@ -7255,7 +7255,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -7337,7 +7337,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1179 + src/particles/arcade/Emitter.js line 1179 @@ -7425,7 +7425,7 @@
Type:
Source:
- src/core/Group.js line 3139 + src/core/Group.js line 3139 @@ -7514,7 +7514,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -7591,7 +7591,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 110 + src/particles/arcade/Emitter.js line 110 @@ -7673,7 +7673,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1193 + src/particles/arcade/Emitter.js line 1193 @@ -7759,7 +7759,7 @@
Type:
Source:
- src/core/Group.js line 2793 + src/core/Group.js line 2793 @@ -7841,7 +7841,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 45 + src/particles/arcade/Emitter.js line 45 @@ -7927,7 +7927,7 @@
Type:
Source:
- src/core/Group.js line 154 + src/core/Group.js line 154 @@ -8018,7 +8018,7 @@
Type:
Source:
- src/core/Group.js line 3148 + src/core/Group.js line 3148 @@ -8100,7 +8100,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1093 + src/particles/arcade/Emitter.js line 1093 @@ -8192,7 +8192,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -8283,7 +8283,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -8374,7 +8374,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -8465,7 +8465,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -8556,7 +8556,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -8642,7 +8642,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -8724,7 +8724,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1129 + src/particles/arcade/Emitter.js line 1129 @@ -8806,7 +8806,7 @@
Type:
Source:
- src/particles/arcade/Emitter.js line 1147 + src/particles/arcade/Emitter.js line 1147 @@ -8893,7 +8893,7 @@
Type:
Source:
- src/core/Group.js line 57 + src/core/Group.js line 57 @@ -9131,7 +9131,7 @@
Parameters:
Source:
- src/core/Group.js line 345 + src/core/Group.js line 345 @@ -9409,7 +9409,7 @@
Parameters:
Source:
- src/core/Group.js line 1417 + src/core/Group.js line 1417 @@ -9651,7 +9651,7 @@
Parameters:
Source:
- src/core/Group.js line 421 + src/core/Group.js line 421 @@ -9818,7 +9818,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -10009,7 +10009,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -10240,7 +10240,7 @@
Parameters:
Source:
- src/core/Group.js line 489 + src/core/Group.js line 489 @@ -10411,7 +10411,7 @@
Parameters:
Source:
- src/core/Group.js line 441 + src/core/Group.js line 441 @@ -10806,7 +10806,7 @@
Parameters:
Source:
- src/core/Group.js line 681 + src/core/Group.js line 681 @@ -11149,7 +11149,7 @@
Parameters:
Source:
- src/core/Group.js line 3006 + src/core/Group.js line 3006 @@ -11493,7 +11493,7 @@
Parameters:
Source:
- src/core/Group.js line 3048 + src/core/Group.js line 3048 @@ -11684,7 +11684,7 @@
Parameters:
Source:
- src/core/Group.js line 2024 + src/core/Group.js line 2024 @@ -11834,7 +11834,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 1033 + src/particles/arcade/Emitter.js line 1033 @@ -12001,7 +12001,7 @@
Parameters:
Source:
- src/core/Group.js line 901 + src/core/Group.js line 901 @@ -12264,7 +12264,7 @@
Parameters:
Source:
- src/core/Group.js line 1624 + src/core/Group.js line 1624 @@ -12484,7 +12484,7 @@
Parameters:
Source:
- src/core/Group.js line 1540 + src/core/Group.js line 1540 @@ -12675,7 +12675,7 @@
Parameters:
Source:
- src/core/Group.js line 1575 + src/core/Group.js line 1575 @@ -12991,7 +12991,7 @@
Parameters:
Source:
- src/core/Group.js line 1349 + src/core/Group.js line 1349 @@ -13293,7 +13293,7 @@
Parameters:
Source:
- src/core/Group.js line 1384 + src/core/Group.js line 1384 @@ -13590,7 +13590,7 @@
Parameters:
Source:
- src/core/Group.js line 1208 + src/core/Group.js line 1208 @@ -13757,7 +13757,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -13944,7 +13944,7 @@
Parameters:
Source:
- src/core/Group.js line 2431 + src/core/Group.js line 2431 @@ -14061,7 +14061,7 @@

Source:
- src/core/Group.js line 2455 + src/core/Group.js line 2455 @@ -14178,7 +14178,7 @@

Source:
- src/core/Group.js line 2444 + src/core/Group.js line 2444 @@ -14572,7 +14572,7 @@
Parameters:
Source:
- src/core/Group.js line 542 + src/core/Group.js line 542 @@ -14979,7 +14979,7 @@
Parameters:
Source:
- src/core/Group.js line 578 + src/core/Group.js line 578 @@ -15192,7 +15192,7 @@
Parameters:
Source:
- src/core/Group.js line 2001 + src/core/Group.js line 2001 @@ -15359,7 +15359,7 @@
Parameters:
Source:
- src/core/Group.js line 2053 + src/core/Group.js line 2053 @@ -15448,7 +15448,7 @@

Source:
- src/particles/arcade/Emitter.js line 794 + src/particles/arcade/Emitter.js line 794 @@ -15664,7 +15664,7 @@
Parameters:
Source:
- src/core/Group.js line 1465 + src/core/Group.js line 1465 @@ -15930,7 +15930,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 617 + src/particles/arcade/Emitter.js line 617 @@ -16148,7 +16148,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 478 + src/particles/arcade/Emitter.js line 478 @@ -16378,7 +16378,7 @@
Parameters:
Source:
- src/core/Group.js line 1783 + src/core/Group.js line 1783 @@ -16722,7 +16722,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 500 + src/particles/arcade/Emitter.js line 500 @@ -17028,7 +17028,7 @@
Parameters:
Source:
- src/core/Group.js line 1822 + src/core/Group.js line 1822 @@ -17266,7 +17266,7 @@
Parameters:
Source:
- src/core/Group.js line 1908 + src/core/Group.js line 1908 @@ -17504,7 +17504,7 @@
Parameters:
Source:
- src/core/Group.js line 1935 + src/core/Group.js line 1935 @@ -17742,7 +17742,7 @@
Parameters:
Source:
- src/core/Group.js line 1881 + src/core/Group.js line 1881 @@ -17987,7 +17987,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -18295,7 +18295,7 @@
Parameters:
Source:
- src/core/Group.js line 2506 + src/core/Group.js line 2506 @@ -18464,7 +18464,7 @@
Parameters:
Source:
- src/core/Group.js line 523 + src/core/Group.js line 523 @@ -18585,7 +18585,7 @@

Source:
- src/core/Group.js line 2329 + src/core/Group.js line 2329 @@ -18767,7 +18767,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -18936,7 +18936,7 @@
Parameters:
Source:
- src/core/Group.js line 1041 + src/core/Group.js line 1041 @@ -19103,7 +19103,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -19270,7 +19270,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -19521,7 +19521,7 @@
Parameters:
Source:
- src/core/Group.js line 2345 + src/core/Group.js line 2345 @@ -19712,7 +19712,7 @@
Parameters:
Source:
- src/core/Group.js line 2171 + src/core/Group.js line 2171 @@ -20071,7 +20071,7 @@
Parameters:
Source:
- src/core/Group.js line 2217 + src/core/Group.js line 2217 @@ -20430,7 +20430,7 @@
Parameters:
Source:
- src/core/Group.js line 2246 + src/core/Group.js line 2246 @@ -20828,7 +20828,7 @@
Parameters:
Source:
- src/core/Group.js line 2184 + src/core/Group.js line 2184 @@ -21079,7 +21079,7 @@
Parameters:
Source:
- src/core/Group.js line 2388 + src/core/Group.js line 2388 @@ -21246,7 +21246,7 @@
Parameters:
Source:
- src/core/Group.js line 1029 + src/core/Group.js line 1029 @@ -21363,7 +21363,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -21590,7 +21590,7 @@
Parameters:
Source:
- src/core/Group.js line 2466 + src/core/Group.js line 2466 @@ -21818,7 +21818,7 @@
Parameters:
Source:
- src/core/Group.js line 2487 + src/core/Group.js line 2487 @@ -21936,7 +21936,7 @@

Source:
- src/core/Group.js line 2313 + src/core/Group.js line 2313 @@ -22128,7 +22128,7 @@
Parameters:
Source:
- src/core/Group.js line 1093 + src/core/Group.js line 1093 @@ -22515,7 +22515,7 @@
Parameters:
Source:
- src/core/Group.js line 2077 + src/core/Group.js line 2077 @@ -22628,7 +22628,7 @@

Source:
- src/particles/arcade/Emitter.js line 449 + src/particles/arcade/Emitter.js line 449 @@ -22745,7 +22745,7 @@

Source:
- src/core/Group.js line 1493 + src/core/Group.js line 1493 @@ -23100,7 +23100,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 385 + src/particles/arcade/Emitter.js line 385 @@ -23323,7 +23323,7 @@
Parameters:
Source:
- src/core/Group.js line 2598 + src/core/Group.js line 2598 @@ -23490,7 +23490,7 @@
Parameters:
Source:
- src/core/Group.js line 972 + src/core/Group.js line 972 @@ -23657,7 +23657,7 @@
Parameters:
Source:
- src/core/Group.js line 949 + src/core/Group.js line 949 @@ -23897,7 +23897,7 @@
Parameters:
Source:
- src/core/Group.js line 1449 + src/core/Group.js line 1449 @@ -23986,7 +23986,7 @@

Source:
- src/particles/arcade/Emitter.js line 1274 + src/particles/arcade/Emitter.js line 1274 @@ -24103,7 +24103,7 @@

Source:
- src/core/Group.js line 1763 + src/core/Group.js line 1763 @@ -24196,7 +24196,7 @@

Source:
- src/core/Group.js line 1695 + src/core/Group.js line 1695 @@ -24285,7 +24285,7 @@

Source:
- src/particles/arcade/Emitter.js line 1283 + src/particles/arcade/Emitter.js line 1283 @@ -24550,7 +24550,7 @@
Parameters:
Source:
- src/core/Group.js line 2551 + src/core/Group.js line 2551 @@ -24820,7 +24820,7 @@
Parameters:
Source:
- src/core/Group.js line 2626 + src/core/Group.js line 2626 @@ -25097,7 +25097,7 @@
Parameters:
Source:
- src/core/Group.js line 2673 + src/core/Group.js line 2673 @@ -25240,7 +25240,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -25407,7 +25407,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -25598,7 +25598,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -25742,7 +25742,7 @@
Parameters:
Source:
- src/core/Group.js line 465 + src/core/Group.js line 465 @@ -25935,7 +25935,7 @@
Parameters:
Source:
- src/core/Group.js line 1055 + src/core/Group.js line 1055 @@ -26289,7 +26289,7 @@
Parameters:
Source:
- src/core/Group.js line 1525 + src/core/Group.js line 1525 @@ -26595,7 +26595,7 @@
Parameters:
Source:
- src/core/Group.js line 2275 + src/core/Group.js line 2275 @@ -26783,7 +26783,7 @@
Parameters:
Source:
- src/core/Group.js line 804 + src/core/Group.js line 804 @@ -26901,7 +26901,7 @@

Source:
- src/core/Group.js line 1016 + src/core/Group.js line 1016 @@ -26990,7 +26990,7 @@

Source:
- src/particles/arcade/Emitter.js line 464 + src/particles/arcade/Emitter.js line 464 @@ -27107,7 +27107,7 @@

Source:
- src/core/Group.js line 1515 + src/core/Group.js line 1515 @@ -27310,7 +27310,7 @@
Parameters:
Source:
- src/core/Group.js line 2727 + src/core/Group.js line 2727 @@ -27453,7 +27453,7 @@
Parameters:
Source:
- src/core/Group.js line 925 + src/core/Group.js line 925 @@ -27869,7 +27869,7 @@
Parameters:
Source:
- src/core/Group.js line 1237 + src/core/Group.js line 1237 @@ -28251,7 +28251,7 @@
Parameters:
Source:
- src/core/Group.js line 1267 + src/core/Group.js line 1267 @@ -28609,7 +28609,7 @@
Parameters:
Source:
- src/core/Group.js line 1305 + src/core/Group.js line 1305 @@ -28925,7 +28925,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 897 + src/particles/arcade/Emitter.js line 897 @@ -29199,7 +29199,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 990 + src/particles/arcade/Emitter.js line 990 @@ -29390,7 +29390,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -29584,7 +29584,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 1015 + src/particles/arcade/Emitter.js line 1015 @@ -29927,7 +29927,7 @@
Parameters:
Source:
- src/core/Group.js line 1127 + src/core/Group.js line 1127 @@ -30145,7 +30145,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 878 + src/particles/arcade/Emitter.js line 878 @@ -30565,7 +30565,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 939 + src/particles/arcade/Emitter.js line 939 @@ -30747,7 +30747,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 806 + src/particles/arcade/Emitter.js line 806 @@ -30977,7 +30977,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 822 + src/particles/arcade/Emitter.js line 822 @@ -31195,7 +31195,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 840 + src/particles/arcade/Emitter.js line 840 @@ -31413,7 +31413,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 859 + src/particles/arcade/Emitter.js line 859 @@ -31531,7 +31531,7 @@

Source:
- src/core/Group.js line 2744 + src/core/Group.js line 2744 @@ -31738,7 +31738,7 @@
Parameters:
Source:
- src/core/Group.js line 1962 + src/core/Group.js line 1962 @@ -32063,7 +32063,7 @@
Parameters:
Source:
- src/particles/arcade/Emitter.js line 550 + src/particles/arcade/Emitter.js line 550 @@ -32303,7 +32303,7 @@
Parameters:
Source:
- src/core/Group.js line 1433 + src/core/Group.js line 1433 @@ -32471,7 +32471,7 @@
Parameters:
Source:
- src/core/Group.js line 886 + src/core/Group.js line 886 @@ -32638,7 +32638,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -32781,7 +32781,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -32994,7 +32994,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -33109,7 +33109,7 @@

Source:
- src/particles/arcade/Emitter.js line 319 + src/particles/arcade/Emitter.js line 319 @@ -33202,7 +33202,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -33391,7 +33391,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -33511,7 +33511,7 @@

Source:
- src/core/Group.js line 663 + src/core/Group.js line 663 @@ -33702,7 +33702,7 @@
Parameters:
Source:
- src/core/Group.js line 995 + src/core/Group.js line 995 @@ -33745,9 +33745,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -33764,7 +33764,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -33793,7 +33793,7 @@
Parameters:
- + diff --git a/docs/Phaser.Particles.Arcade.html b/docs/Phaser.Particles.Arcade.html index d6f0a1faa..44e30e31d 100644 --- a/docs/Phaser.Particles.Arcade.html +++ b/docs/Phaser.Particles.Arcade.html @@ -6,7 +6,7 @@ Phaser CE Class: Arcade - + @@ -180,7 +180,7 @@

Source:
- src/particles/arcade/ArcadeParticles.js line 12 + src/particles/arcade/ArcadeParticles.js line 12 @@ -244,9 +244,9 @@

Classes

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -263,7 +263,7 @@

Classes

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -292,7 +292,7 @@

Classes

- + diff --git a/docs/Phaser.Particles.html b/docs/Phaser.Particles.html index 85c803ec3..808b05293 100644 --- a/docs/Phaser.Particles.html +++ b/docs/Phaser.Particles.html @@ -6,7 +6,7 @@ Phaser CE Class: Particles - + @@ -230,7 +230,7 @@
Parameters:
Source:
- src/particles/Particles.js line 14 + src/particles/Particles.js line 14 @@ -342,7 +342,7 @@
Type:
Source:
- src/particles/Particles.js line 24 + src/particles/Particles.js line 24 @@ -419,7 +419,7 @@
Type:
Source:
- src/particles/Particles.js line 19 + src/particles/Particles.js line 19 @@ -498,7 +498,7 @@
Type:
Source:
- src/particles/Particles.js line 30 + src/particles/Particles.js line 30 @@ -626,7 +626,7 @@
Parameters:
Source:
- src/particles/Particles.js line 35 + src/particles/Particles.js line 35 @@ -784,7 +784,7 @@
Parameters:
Source:
- src/particles/Particles.js line 47 + src/particles/Particles.js line 47 @@ -827,9 +827,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -846,7 +846,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -875,7 +875,7 @@
Parameters:
- + diff --git a/docs/Phaser.Path.html b/docs/Phaser.Path.html index f5b497ee7..30b8c4e9c 100644 --- a/docs/Phaser.Path.html +++ b/docs/Phaser.Path.html @@ -6,7 +6,7 @@ Phaser CE Class: Path - + @@ -327,7 +327,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 18 + src/plugins/path/Path.js line 18 @@ -432,7 +432,7 @@
Type:
Source:
- src/plugins/path/Path.js line 42 + src/plugins/path/Path.js line 42 @@ -509,7 +509,7 @@
Type:
Source:
- src/plugins/path/Path.js line 32 + src/plugins/path/Path.js line 32 @@ -586,7 +586,7 @@
Type:
Source:
- src/plugins/path/Path.js line 27 + src/plugins/path/Path.js line 27 @@ -663,7 +663,7 @@
Type:
Source:
- src/plugins/path/Path.js line 47 + src/plugins/path/Path.js line 47 @@ -740,7 +740,7 @@
Type:
Source:
- src/plugins/path/Path.js line 37 + src/plugins/path/Path.js line 37 @@ -1128,7 +1128,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 209 + src/plugins/path/Path.js line 209 @@ -1286,7 +1286,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 531 + src/plugins/path/Path.js line 531 @@ -1394,7 +1394,7 @@

Source:
- src/plugins/path/Path.js line 187 + src/plugins/path/Path.js line 187 @@ -1611,7 +1611,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 149 + src/plugins/path/Path.js line 149 @@ -1825,7 +1825,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 712 + src/plugins/path/Path.js line 712 @@ -1983,7 +1983,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 354 + src/plugins/path/Path.js line 354 @@ -2162,7 +2162,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 444 + src/plugins/path/Path.js line 444 @@ -2346,7 +2346,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 373 + src/plugins/path/Path.js line 373 @@ -2505,7 +2505,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 419 + src/plugins/path/Path.js line 419 @@ -2719,7 +2719,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 329 + src/plugins/path/Path.js line 329 @@ -2827,7 +2827,7 @@

Source:
- src/plugins/path/Path.js line 552 + src/plugins/path/Path.js line 552 @@ -2987,7 +2987,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 497 + src/plugins/path/Path.js line 497 @@ -3194,7 +3194,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 569 + src/plugins/path/Path.js line 569 @@ -3364,7 +3364,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 245 + src/plugins/path/Path.js line 245 @@ -3546,7 +3546,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 311 + src/plugins/path/Path.js line 311 @@ -3846,7 +3846,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 266 + src/plugins/path/Path.js line 266 @@ -3955,7 +3955,7 @@

Source:
- src/plugins/path/Path.js line 646 + src/plugins/path/Path.js line 646 @@ -4063,7 +4063,7 @@

Source:
- src/plugins/path/Path.js line 821 + src/plugins/path/Path.js line 821 @@ -4224,7 +4224,7 @@
Parameters:
Source:
- src/plugins/path/Path.js line 291 + src/plugins/path/Path.js line 291 @@ -4291,9 +4291,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4310,7 +4310,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4339,7 +4339,7 @@
Returns:
- + diff --git a/docs/Phaser.PathFollower.html b/docs/Phaser.PathFollower.html index ddf8035fe..dd51ac7b3 100644 --- a/docs/Phaser.PathFollower.html +++ b/docs/Phaser.PathFollower.html @@ -6,7 +6,7 @@ Phaser CE Class: PathFollower - + @@ -447,7 +447,7 @@
Parameters:
Source:
- src/plugins/path/PathFollower.js line 25 + src/plugins/path/PathFollower.js line 25 @@ -504,9 +504,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -523,7 +523,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -552,7 +552,7 @@
Parameters:
- + diff --git a/docs/Phaser.PathPoint.html b/docs/Phaser.PathPoint.html index b95f007dc..da5758001 100644 --- a/docs/Phaser.PathPoint.html +++ b/docs/Phaser.PathPoint.html @@ -6,7 +6,7 @@ Phaser CE Class: PathPoint - + @@ -508,7 +508,7 @@
Parameters:
Source:
- src/plugins/path/PathPoint.js line 22 + src/plugins/path/PathPoint.js line 22 @@ -609,7 +609,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 119 + src/plugins/path/PathPoint.js line 119 @@ -682,7 +682,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 101 + src/plugins/path/PathPoint.js line 101 @@ -755,7 +755,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 107 + src/plugins/path/PathPoint.js line 107 @@ -828,7 +828,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 113 + src/plugins/path/PathPoint.js line 113 @@ -905,7 +905,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 85 + src/plugins/path/PathPoint.js line 85 @@ -982,7 +982,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 63 + src/plugins/path/PathPoint.js line 63 @@ -1059,7 +1059,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 68 + src/plugins/path/PathPoint.js line 68 @@ -1136,7 +1136,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 73 + src/plugins/path/PathPoint.js line 73 @@ -1213,7 +1213,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 91 + src/plugins/path/PathPoint.js line 91 @@ -1290,7 +1290,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 79 + src/plugins/path/PathPoint.js line 79 @@ -1367,7 +1367,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 58 + src/plugins/path/PathPoint.js line 58 @@ -1444,7 +1444,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 53 + src/plugins/path/PathPoint.js line 53 @@ -1521,7 +1521,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 43 + src/plugins/path/PathPoint.js line 43 @@ -1598,7 +1598,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 48 + src/plugins/path/PathPoint.js line 48 @@ -1675,7 +1675,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 33 + src/plugins/path/PathPoint.js line 33 @@ -1752,7 +1752,7 @@
Type:
Source:
- src/plugins/path/PathPoint.js line 38 + src/plugins/path/PathPoint.js line 38 @@ -1892,7 +1892,7 @@
Parameters:
Source:
- src/plugins/path/PathPoint.js line 177 + src/plugins/path/PathPoint.js line 177 @@ -2051,7 +2051,7 @@
Parameters:
Source:
- src/plugins/path/PathPoint.js line 193 + src/plugins/path/PathPoint.js line 193 @@ -2307,7 +2307,7 @@
Parameters:
Source:
- src/plugins/path/PathPoint.js line 219 + src/plugins/path/PathPoint.js line 219 @@ -2489,7 +2489,7 @@
Parameters:
Source:
- src/plugins/path/PathPoint.js line 156 + src/plugins/path/PathPoint.js line 156 @@ -2757,7 +2757,7 @@
Parameters:
Source:
- src/plugins/path/PathPoint.js line 123 + src/plugins/path/PathPoint.js line 123 @@ -2865,7 +2865,7 @@

Source:
- src/plugins/path/PathPoint.js line 242 + src/plugins/path/PathPoint.js line 242 @@ -2932,9 +2932,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2951,7 +2951,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2980,7 +2980,7 @@
Returns:
- + diff --git a/docs/Phaser.Physics.Arcade.Body.html b/docs/Phaser.Physics.Arcade.Body.html index 1f182204f..86a88d81c 100644 --- a/docs/Phaser.Physics.Arcade.Body.html +++ b/docs/Phaser.Physics.Arcade.Body.html @@ -6,7 +6,7 @@ Phaser CE Class: Body - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 15 + src/physics/arcade/Body.js line 15 @@ -336,7 +336,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 161 + src/physics/arcade/Body.js line 161 @@ -420,7 +420,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 167 + src/physics/arcade/Body.js line 167 @@ -504,7 +504,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 178 + src/physics/arcade/Body.js line 178 @@ -588,7 +588,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 79 + src/physics/arcade/Body.js line 79 @@ -665,7 +665,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 295 + src/physics/arcade/Body.js line 295 @@ -742,7 +742,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 271 + src/physics/arcade/Body.js line 271 @@ -819,7 +819,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 277 + src/physics/arcade/Body.js line 277 @@ -896,7 +896,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 265 + src/physics/arcade/Body.js line 265 @@ -974,7 +974,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 402 + src/physics/arcade/Body.js line 402 @@ -1051,7 +1051,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 1359 + src/physics/arcade/Body.js line 1359 @@ -1128,7 +1128,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 188 + src/physics/arcade/Body.js line 188 @@ -1205,7 +1205,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 140 + src/physics/arcade/Body.js line 140 @@ -1285,7 +1285,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 382 + src/physics/arcade/Body.js line 382 @@ -1362,7 +1362,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 373 + src/physics/arcade/Body.js line 373 @@ -1440,7 +1440,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 335 + src/physics/arcade/Body.js line 335 @@ -1518,7 +1518,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 343 + src/physics/arcade/Body.js line 343 @@ -1595,7 +1595,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 156 + src/physics/arcade/Body.js line 156 @@ -1672,7 +1672,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 414 + src/physics/arcade/Body.js line 414 @@ -1749,7 +1749,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 172 + src/physics/arcade/Body.js line 172 @@ -1826,7 +1826,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 367 + src/physics/arcade/Body.js line 367 @@ -1910,7 +1910,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 36 + src/physics/arcade/Body.js line 36 @@ -1987,7 +1987,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 307 + src/physics/arcade/Body.js line 307 @@ -2064,7 +2064,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 259 + src/physics/arcade/Body.js line 259 @@ -2141,7 +2141,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 25 + src/physics/arcade/Body.js line 25 @@ -2218,7 +2218,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 183 + src/physics/arcade/Body.js line 183 @@ -2295,7 +2295,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 134 + src/physics/arcade/Body.js line 134 @@ -2372,7 +2372,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 128 + src/physics/arcade/Body.js line 128 @@ -2449,7 +2449,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 104 + src/physics/arcade/Body.js line 104 @@ -2526,7 +2526,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 313 + src/physics/arcade/Body.js line 313 @@ -2604,7 +2604,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 45 + src/physics/arcade/Body.js line 45 @@ -2681,7 +2681,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 434 + src/physics/arcade/Body.js line 434 @@ -2758,7 +2758,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 1319 + src/physics/arcade/Body.js line 1319 @@ -2842,7 +2842,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 289 + src/physics/arcade/Body.js line 289 @@ -2926,7 +2926,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 283 + src/physics/arcade/Body.js line 283 @@ -3003,7 +3003,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 254 + src/physics/arcade/Body.js line 254 @@ -3080,7 +3080,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 479 + src/physics/arcade/Body.js line 479 @@ -3157,7 +3157,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 484 + src/physics/arcade/Body.js line 484 @@ -3245,7 +3245,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 327 + src/physics/arcade/Body.js line 327 @@ -3322,7 +3322,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 151 + src/physics/arcade/Body.js line 151 @@ -3399,7 +3399,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 61 + src/physics/arcade/Body.js line 61 @@ -3485,7 +3485,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 228 + src/physics/arcade/Body.js line 228 @@ -3562,7 +3562,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 474 + src/physics/arcade/Body.js line 474 @@ -3648,7 +3648,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 248 + src/physics/arcade/Body.js line 248 @@ -3731,7 +3731,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 208 + src/physics/arcade/Body.js line 208 @@ -3808,7 +3808,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 361 + src/physics/arcade/Body.js line 361 @@ -3885,7 +3885,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 349 + src/physics/arcade/Body.js line 349 @@ -3962,7 +3962,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 355 + src/physics/arcade/Body.js line 355 @@ -4039,7 +4039,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 67 + src/physics/arcade/Body.js line 67 @@ -4116,7 +4116,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 92 + src/physics/arcade/Body.js line 92 @@ -4193,7 +4193,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 73 + src/physics/arcade/Body.js line 73 @@ -4273,7 +4273,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 56 + src/physics/arcade/Body.js line 56 @@ -4350,7 +4350,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 1332 + src/physics/arcade/Body.js line 1332 @@ -4428,7 +4428,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 86 + src/physics/arcade/Body.js line 86 @@ -4505,7 +4505,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 419 + src/physics/arcade/Body.js line 419 @@ -4582,7 +4582,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 116 + src/physics/arcade/Body.js line 116 @@ -4659,7 +4659,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 110 + src/physics/arcade/Body.js line 110 @@ -4736,7 +4736,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 301 + src/physics/arcade/Body.js line 301 @@ -4813,7 +4813,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 20 + src/physics/arcade/Body.js line 20 @@ -4890,7 +4890,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 439 + src/physics/arcade/Body.js line 439 @@ -4970,7 +4970,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 429 + src/physics/arcade/Body.js line 429 @@ -5048,7 +5048,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 409 + src/physics/arcade/Body.js line 409 @@ -5125,7 +5125,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 1346 + src/physics/arcade/Body.js line 1346 @@ -5203,7 +5203,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 389 + src/physics/arcade/Body.js line 389 @@ -5280,7 +5280,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 30 + src/physics/arcade/Body.js line 30 @@ -5357,7 +5357,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 145 + src/physics/arcade/Body.js line 145 @@ -5434,7 +5434,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 395 + src/physics/arcade/Body.js line 395 @@ -5511,7 +5511,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 98 + src/physics/arcade/Body.js line 98 @@ -5590,7 +5590,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 196 + src/physics/arcade/Body.js line 196 @@ -5667,7 +5667,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 1373 + src/physics/arcade/Body.js line 1373 @@ -5744,7 +5744,7 @@
Type:
Source:
- src/physics/arcade/Body.js line 1391 + src/physics/arcade/Body.js line 1391 @@ -5822,7 +5822,7 @@

Source:
- src/physics/arcade/Body.js line 824 + src/physics/arcade/Body.js line 824 @@ -5930,7 +5930,7 @@

Source:
- src/physics/arcade/Body.js line 1243 + src/physics/arcade/Body.js line 1243 @@ -6038,7 +6038,7 @@

Source:
- src/physics/arcade/Body.js line 1254 + src/physics/arcade/Body.js line 1254 @@ -6146,7 +6146,7 @@

Source:
- src/physics/arcade/Body.js line 1265 + src/physics/arcade/Body.js line 1265 @@ -6254,7 +6254,7 @@

Source:
- src/physics/arcade/Body.js line 1276 + src/physics/arcade/Body.js line 1276 @@ -6362,7 +6362,7 @@

Source:
- src/physics/arcade/Body.js line 1287 + src/physics/arcade/Body.js line 1287 @@ -6472,7 +6472,7 @@

Source:
- src/physics/arcade/Body.js line 1298 + src/physics/arcade/Body.js line 1298 @@ -6607,7 +6607,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1178 + src/physics/arcade/Body.js line 1178 @@ -6789,7 +6789,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1197 + src/physics/arcade/Body.js line 1197 @@ -7040,7 +7040,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 873 + src/physics/arcade/Body.js line 873 @@ -7288,7 +7288,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 946 + src/physics/arcade/Body.js line 946 @@ -7396,7 +7396,7 @@

Source:
- src/physics/arcade/Body.js line 1221 + src/physics/arcade/Body.js line 1221 @@ -7504,7 +7504,7 @@

Source:
- src/physics/arcade/Body.js line 1210 + src/physics/arcade/Body.js line 1210 @@ -7612,7 +7612,7 @@

Source:
- src/physics/arcade/Body.js line 1232 + src/physics/arcade/Body.js line 1232 @@ -7720,7 +7720,7 @@

Source:
- src/physics/arcade/Body.js line 739 + src/physics/arcade/Body.js line 739 @@ -7804,7 +7804,7 @@

Source:
- src/physics/arcade/Body.js line 573 + src/physics/arcade/Body.js line 573 @@ -8110,7 +8110,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1409 + src/physics/arcade/Body.js line 1409 @@ -8372,7 +8372,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1454 + src/physics/arcade/Body.js line 1454 @@ -8530,7 +8530,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1136 + src/physics/arcade/Body.js line 1136 @@ -8749,7 +8749,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1091 + src/physics/arcade/Body.js line 1091 @@ -9016,7 +9016,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 1032 + src/physics/arcade/Body.js line 1032 @@ -9100,7 +9100,7 @@

Source:
- src/physics/arcade/Body.js line 1164 + src/physics/arcade/Body.js line 1164 @@ -9249,7 +9249,7 @@
Parameters:
Source:
- src/physics/arcade/Body.js line 710 + src/physics/arcade/Body.js line 710 @@ -9333,7 +9333,7 @@

Source:
- src/physics/arcade/Body.js line 519 + src/physics/arcade/Body.js line 519 @@ -9417,7 +9417,7 @@

Source:
- src/physics/arcade/Body.js line 562 + src/physics/arcade/Body.js line 562 @@ -9501,7 +9501,7 @@

Source:
- src/physics/arcade/Body.js line 670 + src/physics/arcade/Body.js line 670 @@ -9544,9 +9544,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -9563,7 +9563,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -9592,7 +9592,7 @@

- + diff --git a/docs/Phaser.Physics.Arcade.TilemapCollision.html b/docs/Phaser.Physics.Arcade.TilemapCollision.html index 1660ce670..79968b836 100644 --- a/docs/Phaser.Physics.Arcade.TilemapCollision.html +++ b/docs/Phaser.Physics.Arcade.TilemapCollision.html @@ -6,7 +6,7 @@ Phaser CE Class: TilemapCollision - + @@ -181,7 +181,7 @@

Source:
- src/physics/arcade/TilemapCollision.js line 15 + src/physics/arcade/TilemapCollision.js line 15 @@ -286,7 +286,7 @@
Type:
Source:
- src/physics/arcade/TilemapCollision.js line 22 + src/physics/arcade/TilemapCollision.js line 22 @@ -319,9 +319,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -338,7 +338,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -367,7 +367,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.Arcade.html b/docs/Phaser.Physics.Arcade.html index 87d91d74c..c559a3102 100644 --- a/docs/Phaser.Physics.Arcade.html +++ b/docs/Phaser.Physics.Arcade.html @@ -6,7 +6,7 @@ Phaser CE Class: Arcade - + @@ -230,7 +230,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 14 + src/physics/arcade/World.js line 14 @@ -346,7 +346,7 @@
Type:
Source:
- src/physics/arcade/World.js line 130 + src/physics/arcade/World.js line 130 @@ -424,7 +424,7 @@
Type:
Source:
- src/physics/arcade/World.js line 106 + src/physics/arcade/World.js line 106 @@ -502,7 +502,7 @@
Type:
Source:
- src/physics/arcade/World.js line 114 + src/physics/arcade/World.js line 114 @@ -580,7 +580,7 @@
Type:
Source:
- src/physics/arcade/World.js line 98 + src/physics/arcade/World.js line 98 @@ -658,7 +658,7 @@
Type:
Source:
- src/physics/arcade/World.js line 122 + src/physics/arcade/World.js line 122 @@ -735,7 +735,7 @@
Type:
Source:
- src/physics/arcade/World.js line 29 + src/physics/arcade/World.js line 29 @@ -813,7 +813,7 @@
Type:
Source:
- src/physics/arcade/World.js line 36 + src/physics/arcade/World.js line 36 @@ -890,7 +890,7 @@
Type:
Source:
- src/physics/arcade/World.js line 57 + src/physics/arcade/World.js line 57 @@ -967,7 +967,7 @@
Type:
Source:
- src/physics/arcade/World.js line 19 + src/physics/arcade/World.js line 19 @@ -1044,7 +1044,7 @@
Type:
Source:
- src/physics/arcade/World.js line 24 + src/physics/arcade/World.js line 24 @@ -1121,7 +1121,7 @@
Type:
Source:
- src/physics/arcade/World.js line 73 + src/physics/arcade/World.js line 73 @@ -1198,7 +1198,7 @@
Type:
Source:
- src/physics/arcade/World.js line 46 + src/physics/arcade/World.js line 46 @@ -1275,7 +1275,7 @@
Type:
Source:
- src/physics/arcade/World.js line 41 + src/physics/arcade/World.js line 41 @@ -1359,7 +1359,7 @@
Type:
Source:
- src/physics/arcade/World.js line 52 + src/physics/arcade/World.js line 52 @@ -1436,7 +1436,7 @@
Type:
Source:
- src/physics/arcade/World.js line 78 + src/physics/arcade/World.js line 78 @@ -1513,7 +1513,7 @@
Type:
Source:
- src/physics/arcade/World.js line 68 + src/physics/arcade/World.js line 68 @@ -1590,7 +1590,7 @@
Type:
Source:
- src/physics/arcade/World.js line 63 + src/physics/arcade/World.js line 63 @@ -1893,7 +1893,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1828 + src/physics/arcade/World.js line 1828 @@ -2228,7 +2228,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1856 + src/physics/arcade/World.js line 1856 @@ -2597,7 +2597,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1885 + src/physics/arcade/World.js line 1885 @@ -2853,7 +2853,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1810 + src/physics/arcade/World.js line 1810 @@ -3108,7 +3108,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2072 + src/physics/arcade/World.js line 2072 @@ -3290,7 +3290,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2099 + src/physics/arcade/World.js line 2099 @@ -3545,7 +3545,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2143 + src/physics/arcade/World.js line 2143 @@ -3834,7 +3834,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2115 + src/physics/arcade/World.js line 2115 @@ -4016,7 +4016,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1137 + src/physics/arcade/World.js line 1137 @@ -4306,7 +4306,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2012 + src/physics/arcade/World.js line 2012 @@ -4684,7 +4684,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 353 + src/physics/arcade/World.js line 353 @@ -5043,7 +5043,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 253 + src/physics/arcade/World.js line 253 @@ -5340,7 +5340,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1914 + src/physics/arcade/World.js line 1914 @@ -5597,7 +5597,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1986 + src/physics/arcade/World.js line 1986 @@ -5888,7 +5888,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1960 + src/physics/arcade/World.js line 1960 @@ -6109,7 +6109,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 158 + src/physics/arcade/World.js line 158 @@ -6245,7 +6245,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 211 + src/physics/arcade/World.js line 211 @@ -6511,7 +6511,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2042 + src/physics/arcade/World.js line 2042 @@ -6849,7 +6849,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1631 + src/physics/arcade/World.js line 1631 @@ -7119,7 +7119,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1609 + src/physics/arcade/World.js line 1609 @@ -7326,7 +7326,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1345 + src/physics/arcade/World.js line 1345 @@ -7533,7 +7533,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1408 + src/physics/arcade/World.js line 1408 @@ -7715,7 +7715,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1076 + src/physics/arcade/World.js line 1076 @@ -8010,7 +8010,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1674 + src/physics/arcade/World.js line 1674 @@ -8306,7 +8306,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1707 + src/physics/arcade/World.js line 1707 @@ -8637,7 +8637,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1740 + src/physics/arcade/World.js line 1740 @@ -8992,7 +8992,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 313 + src/physics/arcade/World.js line 313 @@ -9222,7 +9222,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 134 + src/physics/arcade/World.js line 134 @@ -9306,7 +9306,7 @@

Source:
- src/physics/arcade/World.js line 148 + src/physics/arcade/World.js line 148 @@ -9487,7 +9487,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 495 + src/physics/arcade/World.js line 495 @@ -9646,7 +9646,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 475 + src/physics/arcade/World.js line 475 @@ -9829,7 +9829,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 415 + src/physics/arcade/World.js line 415 @@ -10012,7 +10012,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 435 + src/physics/arcade/World.js line 435 @@ -10195,7 +10195,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 455 + src/physics/arcade/World.js line 455 @@ -10353,7 +10353,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 234 + src/physics/arcade/World.js line 234 @@ -10585,7 +10585,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1774 + src/physics/arcade/World.js line 1774 @@ -10843,7 +10843,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 1792 + src/physics/arcade/World.js line 1792 @@ -11048,7 +11048,7 @@
Parameters:
Source:
- src/physics/arcade/World.js line 2171 + src/physics/arcade/World.js line 2171 @@ -11115,9 +11115,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -11134,7 +11134,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -11163,7 +11163,7 @@
Returns:
- + diff --git a/docs/Phaser.Physics.Ninja.AABB.html b/docs/Phaser.Physics.Ninja.AABB.html index 0d7f7d489..9fa013fc3 100644 --- a/docs/Phaser.Physics.Ninja.AABB.html +++ b/docs/Phaser.Physics.Ninja.AABB.html @@ -6,7 +6,7 @@ Phaser CE Class: AABB - + @@ -327,7 +327,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 19 + src/physics/ninja/AABB.js line 19 @@ -432,7 +432,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 86 + src/physics/ninja/AABB.js line 86 @@ -547,7 +547,7 @@
Properties:
Source:
- src/physics/ninja/AABB.js line 25 + src/physics/ninja/AABB.js line 25 @@ -624,7 +624,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 64 + src/physics/ninja/AABB.js line 64 @@ -701,7 +701,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 40 + src/physics/ninja/AABB.js line 40 @@ -778,7 +778,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 35 + src/physics/ninja/AABB.js line 35 @@ -855,7 +855,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 30 + src/physics/ninja/AABB.js line 30 @@ -932,7 +932,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 81 + src/physics/ninja/AABB.js line 81 @@ -1009,7 +1009,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 58 + src/physics/ninja/AABB.js line 58 @@ -1086,7 +1086,7 @@
Type:
Source:
- src/physics/ninja/AABB.js line 46 + src/physics/ninja/AABB.js line 46 @@ -1201,7 +1201,7 @@
Properties:
Source:
- src/physics/ninja/AABB.js line 52 + src/physics/ninja/AABB.js line 52 @@ -1329,7 +1329,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 346 + src/physics/ninja/AABB.js line 346 @@ -1463,7 +1463,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 419 + src/physics/ninja/AABB.js line 419 @@ -1547,7 +1547,7 @@

Source:
- src/physics/ninja/AABB.js line 304 + src/physics/ninja/AABB.js line 304 @@ -1631,7 +1631,7 @@

Source:
- src/physics/ninja/AABB.js line 1011 + src/physics/ninja/AABB.js line 1011 @@ -1715,7 +1715,7 @@

Source:
- src/physics/ninja/AABB.js line 108 + src/physics/ninja/AABB.js line 108 @@ -1921,7 +1921,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 717 + src/physics/ninja/AABB.js line 717 @@ -2151,7 +2151,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 638 + src/physics/ninja/AABB.js line 638 @@ -2381,7 +2381,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 584 + src/physics/ninja/AABB.js line 584 @@ -2611,7 +2611,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 849 + src/physics/ninja/AABB.js line 849 @@ -2841,7 +2841,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 771 + src/physics/ninja/AABB.js line 771 @@ -3071,7 +3071,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 952 + src/physics/ninja/AABB.js line 952 @@ -3301,7 +3301,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 901 + src/physics/ninja/AABB.js line 901 @@ -3531,7 +3531,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 504 + src/physics/ninja/AABB.js line 504 @@ -3761,7 +3761,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 524 + src/physics/ninja/AABB.js line 524 @@ -4015,7 +4015,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 1022 + src/physics/ninja/AABB.js line 1022 @@ -4221,7 +4221,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 129 + src/physics/ninja/AABB.js line 129 @@ -4451,7 +4451,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 256 + src/physics/ninja/AABB.js line 256 @@ -4657,7 +4657,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 204 + src/physics/ninja/AABB.js line 204 @@ -4863,7 +4863,7 @@
Parameters:
Source:
- src/physics/ninja/AABB.js line 479 + src/physics/ninja/AABB.js line 479 @@ -4967,7 +4967,7 @@

Source:
- src/physics/ninja/AABB.js line 219 + src/physics/ninja/AABB.js line 219 @@ -5010,9 +5010,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -5029,7 +5029,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -5058,7 +5058,7 @@

- + diff --git a/docs/Phaser.Physics.Ninja.Body.html b/docs/Phaser.Physics.Ninja.Body.html index bfd10faa1..87c97a777 100644 --- a/docs/Phaser.Physics.Ninja.Body.html +++ b/docs/Phaser.Physics.Ninja.Body.html @@ -6,7 +6,7 @@ Phaser CE Class: Body - + @@ -563,7 +563,7 @@

Parameters:
Source:
- src/physics/ninja/Body.js line 23 + src/physics/ninja/Body.js line 23 @@ -668,7 +668,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 55 + src/physics/ninja/Body.js line 55 @@ -745,7 +745,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 560 + src/physics/ninja/Body.js line 560 @@ -822,7 +822,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 518 + src/physics/ninja/Body.js line 518 @@ -906,7 +906,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 96 + src/physics/ninja/Body.js line 96 @@ -984,7 +984,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 126 + src/physics/ninja/Body.js line 126 @@ -1061,7 +1061,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 65 + src/physics/ninja/Body.js line 65 @@ -1138,7 +1138,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 119 + src/physics/ninja/Body.js line 119 @@ -1222,7 +1222,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 78 + src/physics/ninja/Body.js line 78 @@ -1299,7 +1299,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 107 + src/physics/ninja/Body.js line 107 @@ -1383,7 +1383,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 84 + src/physics/ninja/Body.js line 84 @@ -1460,7 +1460,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 40 + src/physics/ninja/Body.js line 40 @@ -1544,7 +1544,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 90 + src/physics/ninja/Body.js line 90 @@ -1621,7 +1621,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 504 + src/physics/ninja/Body.js line 504 @@ -1698,7 +1698,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 113 + src/physics/ninja/Body.js line 113 @@ -1782,7 +1782,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 145 + src/physics/ninja/Body.js line 145 @@ -1859,7 +1859,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 532 + src/physics/ninja/Body.js line 532 @@ -1936,7 +1936,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 70 + src/physics/ninja/Body.js line 70 @@ -2013,7 +2013,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 546 + src/physics/ninja/Body.js line 546 @@ -2090,7 +2090,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 35 + src/physics/ninja/Body.js line 35 @@ -2167,7 +2167,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 50 + src/physics/ninja/Body.js line 50 @@ -2244,7 +2244,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 60 + src/physics/ninja/Body.js line 60 @@ -2322,7 +2322,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 133 + src/physics/ninja/Body.js line 133 @@ -2399,7 +2399,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 45 + src/physics/ninja/Body.js line 45 @@ -2476,7 +2476,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 101 + src/physics/ninja/Body.js line 101 @@ -2553,7 +2553,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 139 + src/physics/ninja/Body.js line 139 @@ -2630,7 +2630,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 490 + src/physics/ninja/Body.js line 490 @@ -2707,7 +2707,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 454 + src/physics/ninja/Body.js line 454 @@ -2784,7 +2784,7 @@
Type:
Source:
- src/physics/ninja/Body.js line 472 + src/physics/ninja/Body.js line 472 @@ -2862,7 +2862,7 @@

Source:
- src/physics/ninja/Body.js line 392 + src/physics/ninja/Body.js line 392 @@ -2970,7 +2970,7 @@

Source:
- src/physics/ninja/Body.js line 403 + src/physics/ninja/Body.js line 403 @@ -3078,7 +3078,7 @@

Source:
- src/physics/ninja/Body.js line 414 + src/physics/ninja/Body.js line 414 @@ -3186,7 +3186,7 @@

Source:
- src/physics/ninja/Body.js line 425 + src/physics/ninja/Body.js line 425 @@ -3294,7 +3294,7 @@

Source:
- src/physics/ninja/Body.js line 436 + src/physics/ninja/Body.js line 436 @@ -3378,7 +3378,7 @@

Source:
- src/physics/ninja/Body.js line 216 + src/physics/ninja/Body.js line 216 @@ -3462,7 +3462,7 @@

Source:
- src/physics/ninja/Body.js line 185 + src/physics/ninja/Body.js line 185 @@ -3728,7 +3728,7 @@
Parameters:
Source:
- src/physics/ninja/Body.js line 574 + src/physics/ninja/Body.js line 574 @@ -3812,7 +3812,7 @@

Source:
- src/physics/ninja/Body.js line 375 + src/physics/ninja/Body.js line 375 @@ -3896,7 +3896,7 @@

Source:
- src/physics/ninja/Body.js line 260 + src/physics/ninja/Body.js line 260 @@ -3939,9 +3939,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3958,7 +3958,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3987,7 +3987,7 @@

- + diff --git a/docs/Phaser.Physics.Ninja.Circle.html b/docs/Phaser.Physics.Ninja.Circle.html index 3b858f32d..121c4a7be 100644 --- a/docs/Phaser.Physics.Ninja.Circle.html +++ b/docs/Phaser.Physics.Ninja.Circle.html @@ -6,7 +6,7 @@ Phaser CE Class: Circle - + @@ -303,7 +303,7 @@

Parameters:
Source:
- src/physics/ninja/Circle.js line 18 + src/physics/ninja/Circle.js line 18 @@ -446,7 +446,7 @@
Properties:
Source:
- src/physics/ninja/Circle.js line 24 + src/physics/ninja/Circle.js line 24 @@ -523,7 +523,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 90 + src/physics/ninja/Circle.js line 90 @@ -600,7 +600,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 68 + src/physics/ninja/Circle.js line 68 @@ -677,7 +677,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 39 + src/physics/ninja/Circle.js line 39 @@ -754,7 +754,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 34 + src/physics/ninja/Circle.js line 34 @@ -831,7 +831,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 44 + src/physics/ninja/Circle.js line 44 @@ -908,7 +908,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 29 + src/physics/ninja/Circle.js line 29 @@ -985,7 +985,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 85 + src/physics/ninja/Circle.js line 85 @@ -1062,7 +1062,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 62 + src/physics/ninja/Circle.js line 62 @@ -1139,7 +1139,7 @@
Type:
Source:
- src/physics/ninja/Circle.js line 50 + src/physics/ninja/Circle.js line 50 @@ -1254,7 +1254,7 @@
Properties:
Source:
- src/physics/ninja/Circle.js line 56 + src/physics/ninja/Circle.js line 56 @@ -1382,7 +1382,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 251 + src/physics/ninja/Circle.js line 251 @@ -1490,7 +1490,7 @@

Source:
- src/physics/ninja/Circle.js line 209 + src/physics/ninja/Circle.js line 209 @@ -1574,7 +1574,7 @@

Source:
- src/physics/ninja/Circle.js line 2634 + src/physics/ninja/Circle.js line 2634 @@ -1658,7 +1658,7 @@

Source:
- src/physics/ninja/Circle.js line 112 + src/physics/ninja/Circle.js line 112 @@ -1912,7 +1912,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 1732 + src/physics/ninja/Circle.js line 1732 @@ -2190,7 +2190,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 1437 + src/physics/ninja/Circle.js line 1437 @@ -2468,7 +2468,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 453 + src/physics/ninja/Circle.js line 453 @@ -2746,7 +2746,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 2326 + src/physics/ninja/Circle.js line 2326 @@ -3024,7 +3024,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 2038 + src/physics/ninja/Circle.js line 2038 @@ -3302,7 +3302,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 724 + src/physics/ninja/Circle.js line 724 @@ -3580,7 +3580,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 959 + src/physics/ninja/Circle.js line 959 @@ -3858,7 +3858,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 340 + src/physics/ninja/Circle.js line 340 @@ -4136,7 +4136,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 1202 + src/physics/ninja/Circle.js line 1202 @@ -4390,7 +4390,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 2645 + src/physics/ninja/Circle.js line 2645 @@ -4620,7 +4620,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 133 + src/physics/ninja/Circle.js line 133 @@ -4874,7 +4874,7 @@
Parameters:
Source:
- src/physics/ninja/Circle.js line 314 + src/physics/ninja/Circle.js line 314 @@ -4941,9 +4941,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4960,7 +4960,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4989,7 +4989,7 @@
Returns:
- + diff --git a/docs/Phaser.Physics.Ninja.Tile.html b/docs/Phaser.Physics.Ninja.Tile.html index a9efb80a8..afb408705 100644 --- a/docs/Phaser.Physics.Ninja.Tile.html +++ b/docs/Phaser.Physics.Ninja.Tile.html @@ -6,7 +6,7 @@ Phaser CE Class: Tile - + @@ -434,7 +434,7 @@
Parameters:
Source:
- src/physics/ninja/Tile.js line 24 + src/physics/ninja/Tile.js line 24 @@ -577,7 +577,7 @@
Properties:
Source:
- src/physics/ninja/Tile.js line 32 + src/physics/ninja/Tile.js line 32 @@ -654,7 +654,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 712 + src/physics/ninja/Tile.js line 712 @@ -731,7 +731,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 89 + src/physics/ninja/Tile.js line 89 @@ -808,7 +808,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 43 + src/physics/ninja/Tile.js line 43 @@ -885,7 +885,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 59 + src/physics/ninja/Tile.js line 59 @@ -962,7 +962,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 54 + src/physics/ninja/Tile.js line 54 @@ -1039,7 +1039,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 726 + src/physics/ninja/Tile.js line 726 @@ -1116,7 +1116,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 37 + src/physics/ninja/Tile.js line 37 @@ -1193,7 +1193,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 49 + src/physics/ninja/Tile.js line 49 @@ -1270,7 +1270,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 94 + src/physics/ninja/Tile.js line 94 @@ -1347,7 +1347,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 83 + src/physics/ninja/Tile.js line 83 @@ -1424,7 +1424,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 676 + src/physics/ninja/Tile.js line 676 @@ -1501,7 +1501,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 71 + src/physics/ninja/Tile.js line 71 @@ -1578,7 +1578,7 @@
Type:
Source:
- src/physics/ninja/Tile.js line 694 + src/physics/ninja/Tile.js line 694 @@ -1693,7 +1693,7 @@
Properties:
Source:
- src/physics/ninja/Tile.js line 77 + src/physics/ninja/Tile.js line 77 @@ -1771,7 +1771,7 @@

Source:
- src/physics/ninja/Tile.js line 294 + src/physics/ninja/Tile.js line 294 @@ -1855,7 +1855,7 @@

Source:
- src/physics/ninja/Tile.js line 154 + src/physics/ninja/Tile.js line 154 @@ -1939,7 +1939,7 @@

Source:
- src/physics/ninja/Tile.js line 307 + src/physics/ninja/Tile.js line 307 @@ -2023,7 +2023,7 @@

Source:
- src/physics/ninja/Tile.js line 135 + src/physics/ninja/Tile.js line 135 @@ -2253,7 +2253,7 @@
Parameters:
Source:
- src/physics/ninja/Tile.js line 196 + src/physics/ninja/Tile.js line 196 @@ -2387,7 +2387,7 @@
Parameters:
Source:
- src/physics/ninja/Tile.js line 271 + src/physics/ninja/Tile.js line 271 @@ -2430,9 +2430,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2449,7 +2449,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2478,7 +2478,7 @@
Parameters:
- + diff --git a/docs/Phaser.Physics.Ninja.html b/docs/Phaser.Physics.Ninja.html index ef643090d..26f726d17 100644 --- a/docs/Phaser.Physics.Ninja.html +++ b/docs/Phaser.Physics.Ninja.html @@ -6,7 +6,7 @@ Phaser CE Class: Ninja - + @@ -243,7 +243,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 29 + src/physics/ninja/World.js line 29 @@ -364,7 +364,7 @@
Type:
Source:
- src/physics/ninja/World.js line 50 + src/physics/ninja/World.js line 50 @@ -441,7 +441,7 @@
Type:
Source:
- src/physics/ninja/World.js line 35 + src/physics/ninja/World.js line 35 @@ -518,7 +518,7 @@
Type:
Source:
- src/physics/ninja/World.js line 45 + src/physics/ninja/World.js line 45 @@ -595,7 +595,7 @@
Type:
Source:
- src/physics/ninja/World.js line 60 + src/physics/ninja/World.js line 60 @@ -672,7 +672,7 @@
Type:
Source:
- src/physics/ninja/World.js line 55 + src/physics/ninja/World.js line 55 @@ -749,7 +749,7 @@
Type:
Source:
- src/physics/ninja/World.js line 65 + src/physics/ninja/World.js line 65 @@ -826,7 +826,7 @@
Type:
Source:
- src/physics/ninja/World.js line 40 + src/physics/ninja/World.js line 40 @@ -1004,7 +1004,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 230 + src/physics/ninja/World.js line 230 @@ -1334,7 +1334,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 339 + src/physics/ninja/World.js line 339 @@ -1555,7 +1555,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 253 + src/physics/ninja/World.js line 253 @@ -1896,7 +1896,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 125 + src/physics/ninja/World.js line 125 @@ -2093,7 +2093,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 76 + src/physics/ninja/World.js line 76 @@ -2228,7 +2228,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 184 + src/physics/ninja/World.js line 184 @@ -2461,7 +2461,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 91 + src/physics/ninja/World.js line 91 @@ -2700,7 +2700,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 107 + src/physics/ninja/World.js line 107 @@ -3022,7 +3022,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 299 + src/physics/ninja/World.js line 299 @@ -3204,7 +3204,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 585 + src/physics/ninja/World.js line 585 @@ -3434,7 +3434,7 @@
Parameters:
Source:
- src/physics/ninja/World.js line 202 + src/physics/ninja/World.js line 202 @@ -3518,7 +3518,7 @@

Source:
- src/physics/ninja/World.js line 218 + src/physics/ninja/World.js line 218 @@ -3561,9 +3561,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3580,7 +3580,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3609,7 +3609,7 @@

- + diff --git a/docs/Phaser.Physics.P2.Body.html b/docs/Phaser.Physics.P2.Body.html index e6b87691e..531453506 100644 --- a/docs/Phaser.Physics.P2.Body.html +++ b/docs/Phaser.Physics.P2.Body.html @@ -6,7 +6,7 @@ Phaser CE Class: Body - + @@ -409,7 +409,7 @@

Parameters:
Source:
- src/physics/p2/Body.js line 23 + src/physics/p2/Body.js line 23 @@ -514,7 +514,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1563 + src/physics/p2/Body.js line 1563 @@ -591,7 +591,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1579 + src/physics/p2/Body.js line 1579 @@ -668,7 +668,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1571 + src/physics/p2/Body.js line 1571 @@ -747,7 +747,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1674 + src/physics/p2/Body.js line 1674 @@ -826,7 +826,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1699 + src/physics/p2/Body.js line 1699 @@ -903,7 +903,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1725 + src/physics/p2/Body.js line 1725 @@ -980,7 +980,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1748 + src/physics/p2/Body.js line 1748 @@ -1057,7 +1057,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1770 + src/physics/p2/Body.js line 1770 @@ -1134,7 +1134,7 @@
Type:
Source:
- src/physics/p2/Body.js line 113 + src/physics/p2/Body.js line 113 @@ -1221,7 +1221,7 @@
Type:
Source:
- src/physics/p2/Body.js line 2051 + src/physics/p2/Body.js line 2051 @@ -1298,7 +1298,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1792 + src/physics/p2/Body.js line 1792 @@ -1375,7 +1375,7 @@
Type:
Source:
- src/physics/p2/Body.js line 60 + src/physics/p2/Body.js line 60 @@ -1452,7 +1452,7 @@
Type:
Source:
- src/physics/p2/Body.js line 2020 + src/physics/p2/Body.js line 2020 @@ -1529,7 +1529,7 @@
Type:
Source:
- src/physics/p2/Body.js line 123 + src/physics/p2/Body.js line 123 @@ -1606,7 +1606,7 @@
Type:
Source:
- src/physics/p2/Body.js line 128 + src/physics/p2/Body.js line 128 @@ -1683,7 +1683,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1612 + src/physics/p2/Body.js line 1612 @@ -1762,7 +1762,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1815 + src/physics/p2/Body.js line 1815 @@ -1839,7 +1839,7 @@
Type:
Source:
- src/physics/p2/Body.js line 72 + src/physics/p2/Body.js line 72 @@ -1916,7 +1916,7 @@
Type:
Source:
- src/physics/p2/Body.js line 34 + src/physics/p2/Body.js line 34 @@ -1993,7 +1993,7 @@
Type:
Source:
- src/physics/p2/Body.js line 77 + src/physics/p2/Body.js line 77 @@ -2070,7 +2070,7 @@
Type:
Source:
- src/physics/p2/Body.js line 2004 + src/physics/p2/Body.js line 2004 @@ -2147,7 +2147,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1840 + src/physics/p2/Body.js line 1840 @@ -2224,7 +2224,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1643 + src/physics/p2/Body.js line 1643 @@ -2301,7 +2301,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1862 + src/physics/p2/Body.js line 1862 @@ -2378,7 +2378,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1888 + src/physics/p2/Body.js line 1888 @@ -2455,7 +2455,7 @@
Type:
Source:
- src/physics/p2/Body.js line 54 + src/physics/p2/Body.js line 54 @@ -2539,7 +2539,7 @@
Type:
Source:
- src/physics/p2/Body.js line 93 + src/physics/p2/Body.js line 93 @@ -2622,7 +2622,7 @@
Type:
Source:
- src/physics/p2/Body.js line 108 + src/physics/p2/Body.js line 108 @@ -2699,7 +2699,7 @@
Type:
Source:
- src/physics/p2/Body.js line 118 + src/physics/p2/Body.js line 118 @@ -2777,7 +2777,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1913 + src/physics/p2/Body.js line 1913 @@ -2854,7 +2854,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1938 + src/physics/p2/Body.js line 1938 @@ -2931,7 +2931,7 @@
Type:
Source:
- src/physics/p2/Body.js line 44 + src/physics/p2/Body.js line 44 @@ -3008,7 +3008,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1581 + src/physics/p2/Body.js line 1581 @@ -3085,7 +3085,7 @@
Type:
Source:
- src/physics/p2/Body.js line 49 + src/physics/p2/Body.js line 49 @@ -3162,7 +3162,7 @@
Type:
Source:
- src/physics/p2/Body.js line 67 + src/physics/p2/Body.js line 67 @@ -3239,7 +3239,7 @@
Type:
Source:
- src/physics/p2/Body.js line 39 + src/physics/p2/Body.js line 39 @@ -3316,7 +3316,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1960 + src/physics/p2/Body.js line 1960 @@ -3393,7 +3393,7 @@
Type:
Source:
- src/physics/p2/Body.js line 1982 + src/physics/p2/Body.js line 1982 @@ -3694,7 +3694,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1153 + src/physics/p2/Body.js line 1153 @@ -3988,7 +3988,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1057 + src/physics/p2/Body.js line 1057 @@ -4146,7 +4146,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1404 + src/physics/p2/Body.js line 1404 @@ -4442,7 +4442,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1132 + src/physics/p2/Body.js line 1132 @@ -4700,7 +4700,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1114 + src/physics/p2/Body.js line 1114 @@ -4885,7 +4885,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1363 + src/physics/p2/Body.js line 1363 @@ -5143,7 +5143,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1096 + src/physics/p2/Body.js line 1096 @@ -5484,7 +5484,7 @@
Properties
Source:
- src/physics/p2/Body.js line 1174 + src/physics/p2/Body.js line 1174 @@ -5814,7 +5814,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1076 + src/physics/p2/Body.js line 1076 @@ -6110,7 +6110,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1030 + src/physics/p2/Body.js line 1030 @@ -6218,7 +6218,7 @@

Source:
- src/physics/p2/Body.js line 938 + src/physics/p2/Body.js line 938 @@ -6302,7 +6302,7 @@

Source:
- src/physics/p2/Body.js line 497 + src/physics/p2/Body.js line 497 @@ -6436,7 +6436,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 525 + src/physics/p2/Body.js line 525 @@ -6623,7 +6623,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 573 + src/physics/p2/Body.js line 573 @@ -6810,7 +6810,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 538 + src/physics/p2/Body.js line 538 @@ -6997,7 +6997,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 555 + src/physics/p2/Body.js line 555 @@ -7229,7 +7229,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 329 + src/physics/p2/Body.js line 329 @@ -7313,7 +7313,7 @@

Source:
- src/physics/p2/Body.js line 1011 + src/physics/p2/Body.js line 1011 @@ -7562,7 +7562,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 443 + src/physics/p2/Body.js line 443 @@ -7756,7 +7756,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 181 + src/physics/p2/Body.js line 181 @@ -7942,7 +7942,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 222 + src/physics/p2/Body.js line 222 @@ -8026,7 +8026,7 @@

Source:
- src/physics/p2/Body.js line 979 + src/physics/p2/Body.js line 979 @@ -8110,7 +8110,7 @@

Source:
- src/physics/p2/Body.js line 250 + src/physics/p2/Body.js line 250 @@ -8292,7 +8292,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 510 + src/physics/p2/Body.js line 510 @@ -8550,7 +8550,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1477 + src/physics/p2/Body.js line 1477 @@ -8709,7 +8709,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 713 + src/physics/p2/Body.js line 713 @@ -8844,7 +8844,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 845 + src/physics/p2/Body.js line 845 @@ -8979,7 +8979,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 695 + src/physics/p2/Body.js line 695 @@ -9114,7 +9114,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 803 + src/physics/p2/Body.js line 803 @@ -9249,7 +9249,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 817 + src/physics/p2/Body.js line 817 @@ -9384,7 +9384,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 831 + src/physics/p2/Body.js line 831 @@ -9468,7 +9468,7 @@

Source:
- src/physics/p2/Body.js line 878 + src/physics/p2/Body.js line 878 @@ -9552,7 +9552,7 @@

Source:
- src/physics/p2/Body.js line 859 + src/physics/p2/Body.js line 859 @@ -9783,7 +9783,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 378 + src/physics/p2/Body.js line 378 @@ -9867,7 +9867,7 @@

Source:
- src/physics/p2/Body.js line 964 + src/physics/p2/Body.js line 964 @@ -10013,7 +10013,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1241 + src/physics/p2/Body.js line 1241 @@ -10303,7 +10303,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 904 + src/physics/p2/Body.js line 904 @@ -10438,7 +10438,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 785 + src/physics/p2/Body.js line 785 @@ -10572,7 +10572,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 669 + src/physics/p2/Body.js line 669 @@ -10706,7 +10706,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 682 + src/physics/p2/Body.js line 682 @@ -10977,7 +10977,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1258 + src/physics/p2/Body.js line 1258 @@ -11156,7 +11156,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 300 + src/physics/p2/Body.js line 300 @@ -11335,7 +11335,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1323 + src/physics/p2/Body.js line 1323 @@ -11651,7 +11651,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1277 + src/physics/p2/Body.js line 1277 @@ -11827,7 +11827,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 1302 + src/physics/p2/Body.js line 1302 @@ -11935,7 +11935,7 @@

Source:
- src/physics/p2/Body.js line 628 + src/physics/p2/Body.js line 628 @@ -12019,7 +12019,7 @@

Source:
- src/physics/p2/Body.js line 591 + src/physics/p2/Body.js line 591 @@ -12103,7 +12103,7 @@

Source:
- src/physics/p2/Body.js line 603 + src/physics/p2/Body.js line 603 @@ -12187,7 +12187,7 @@

Source:
- src/physics/p2/Body.js line 615 + src/physics/p2/Body.js line 615 @@ -12271,7 +12271,7 @@

Source:
- src/physics/p2/Body.js line 1348 + src/physics/p2/Body.js line 1348 @@ -12406,7 +12406,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 731 + src/physics/p2/Body.js line 731 @@ -12541,7 +12541,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 749 + src/physics/p2/Body.js line 749 @@ -12676,7 +12676,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 767 + src/physics/p2/Body.js line 767 @@ -12840,7 +12840,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 641 + src/physics/p2/Body.js line 641 @@ -12998,7 +12998,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 655 + src/physics/p2/Body.js line 655 @@ -13144,7 +13144,7 @@
Parameters:
Source:
- src/physics/p2/Body.js line 275 + src/physics/p2/Body.js line 275 @@ -13187,9 +13187,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -13206,7 +13206,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -13235,7 +13235,7 @@
Parameters:
- + diff --git a/docs/Phaser.Physics.P2.BodyDebug.html b/docs/Phaser.Physics.P2.BodyDebug.html index 045dd97f8..761acf503 100644 --- a/docs/Phaser.Physics.P2.BodyDebug.html +++ b/docs/Phaser.Physics.P2.BodyDebug.html @@ -6,7 +6,7 @@ Phaser CE Class: BodyDebug - + @@ -283,7 +283,7 @@
Parameters:
Source:
- src/physics/p2/BodyDebug.js line 24 + src/physics/p2/BodyDebug.js line 24 @@ -415,7 +415,7 @@
Type:
Source:
- src/core/Group.js line 91 + src/core/Group.js line 91 @@ -501,7 +501,7 @@
Type:
Source:
- src/core/Group.js line 3155 + src/core/Group.js line 3155 @@ -590,7 +590,7 @@
Type:
Source:
- src/core/Group.js line 2825 + src/core/Group.js line 2825 @@ -667,7 +667,7 @@
Type:
Source:
- src/physics/p2/BodyDebug.js line 51 + src/physics/p2/BodyDebug.js line 51 @@ -755,7 +755,7 @@
Type:
Source:
- src/core/Group.js line 2980 + src/core/Group.js line 2980 @@ -848,7 +848,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -935,7 +935,7 @@
Type:
Source:
- src/core/Group.js line 277 + src/core/Group.js line 277 @@ -1012,7 +1012,7 @@
Type:
Source:
- src/physics/p2/BodyDebug.js line 56 + src/physics/p2/BodyDebug.js line 56 @@ -1100,7 +1100,7 @@
Type:
Source:
- src/core/Group.js line 2850 + src/core/Group.js line 2850 @@ -1188,7 +1188,7 @@
Type:
Source:
- src/core/Group.js line 2876 + src/core/Group.js line 2876 @@ -1274,7 +1274,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1368,7 +1368,7 @@
Type:
Source:
- src/core/Group.js line 127 + src/core/Group.js line 127 @@ -1455,7 +1455,7 @@
Type:
Source:
- src/core/Group.js line 135 + src/core/Group.js line 135 @@ -1541,7 +1541,7 @@
Type:
Source:
- src/core/Group.js line 260 + src/core/Group.js line 260 @@ -1629,7 +1629,7 @@
Type:
Source:
- src/core/Group.js line 213 + src/core/Group.js line 213 @@ -1716,7 +1716,7 @@
Type:
Source:
- src/core/Group.js line 222 + src/core/Group.js line 222 @@ -1809,7 +1809,7 @@
Type:
Source:
- src/core/Group.js line 98 + src/core/Group.js line 98 @@ -1895,7 +1895,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -1986,7 +1986,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2074,7 +2074,7 @@
Type:
Source:
- src/core/Group.js line 270 + src/core/Group.js line 270 @@ -2160,7 +2160,7 @@
Type:
Source:
- src/core/Group.js line 38 + src/core/Group.js line 38 @@ -2250,7 +2250,7 @@
Type:
Source:
- src/core/Group.js line 290 + src/core/Group.js line 290 @@ -2336,7 +2336,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -2432,7 +2432,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -2520,7 +2520,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -2606,7 +2606,7 @@
Type:
Source:
- src/core/Group.js line 105 + src/core/Group.js line 105 @@ -2694,7 +2694,7 @@
Type:
Source:
- src/core/Group.js line 146 + src/core/Group.js line 146 @@ -2782,7 +2782,7 @@
Type:
Source:
- src/core/Group.js line 2902 + src/core/Group.js line 2902 @@ -2868,7 +2868,7 @@
Type:
Source:
- src/core/Group.js line 2809 + src/core/Group.js line 2809 @@ -2957,7 +2957,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -3043,7 +3043,7 @@
Type:
Source:
- src/core/Group.js line 49 + src/core/Group.js line 49 @@ -3133,7 +3133,7 @@
Type:
Source:
- src/core/Group.js line 166 + src/core/Group.js line 166 @@ -3223,7 +3223,7 @@
Type:
Source:
- src/core/Group.js line 203 + src/core/Group.js line 203 @@ -3313,7 +3313,7 @@
Type:
Source:
- src/core/Group.js line 191 + src/core/Group.js line 191 @@ -3404,7 +3404,7 @@
Type:
Source:
- src/core/Group.js line 179 + src/core/Group.js line 179 @@ -3490,7 +3490,7 @@
Type:
Source:
- src/core/Group.js line 254 + src/core/Group.js line 254 @@ -3579,7 +3579,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -3669,7 +3669,7 @@
Type:
Source:
- src/core/Group.js line 117 + src/core/Group.js line 117 @@ -3756,7 +3756,7 @@
Type:
Source:
- src/core/Group.js line 230 + src/core/Group.js line 230 @@ -3849,7 +3849,7 @@
Type:
Source:
- src/core/Group.js line 248 + src/core/Group.js line 248 @@ -3935,7 +3935,7 @@
Type:
Source:
- src/core/Group.js line 84 + src/core/Group.js line 84 @@ -4022,7 +4022,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4110,7 +4110,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4187,7 +4187,7 @@
Type:
Source:
- src/physics/p2/BodyDebug.js line 45 + src/physics/p2/BodyDebug.js line 45 @@ -4274,7 +4274,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4362,7 +4362,7 @@
Type:
Source:
- src/core/Group.js line 2928 + src/core/Group.js line 2928 @@ -4450,7 +4450,7 @@
Type:
Source:
- src/core/Group.js line 3139 + src/core/Group.js line 3139 @@ -4539,7 +4539,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -4627,7 +4627,7 @@
Type:
Source:
- src/core/Group.js line 2954 + src/core/Group.js line 2954 @@ -4713,7 +4713,7 @@
Type:
Source:
- src/core/Group.js line 2793 + src/core/Group.js line 2793 @@ -4799,7 +4799,7 @@
Type:
Source:
- src/core/Group.js line 78 + src/core/Group.js line 78 @@ -4885,7 +4885,7 @@
Type:
Source:
- src/core/Group.js line 154 + src/core/Group.js line 154 @@ -4971,7 +4971,7 @@
Type:
Source:
- src/core/Group.js line 3148 + src/core/Group.js line 3148 @@ -5057,7 +5057,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -5149,7 +5149,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -5240,7 +5240,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -5331,7 +5331,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -5422,7 +5422,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -5513,7 +5513,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -5599,7 +5599,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -5687,7 +5687,7 @@
Type:
Source:
- src/core/Group.js line 3121 + src/core/Group.js line 3121 @@ -5775,7 +5775,7 @@
Type:
Source:
- src/core/Group.js line 3130 + src/core/Group.js line 3130 @@ -5862,7 +5862,7 @@
Type:
Source:
- src/core/Group.js line 57 + src/core/Group.js line 57 @@ -6100,7 +6100,7 @@
Parameters:
Source:
- src/core/Group.js line 345 + src/core/Group.js line 345 @@ -6378,7 +6378,7 @@
Parameters:
Source:
- src/core/Group.js line 1417 + src/core/Group.js line 1417 @@ -6620,7 +6620,7 @@
Parameters:
Source:
- src/core/Group.js line 421 + src/core/Group.js line 421 @@ -6787,7 +6787,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -6978,7 +6978,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7209,7 +7209,7 @@
Parameters:
Source:
- src/core/Group.js line 489 + src/core/Group.js line 489 @@ -7380,7 +7380,7 @@
Parameters:
Source:
- src/core/Group.js line 441 + src/core/Group.js line 441 @@ -7775,7 +7775,7 @@
Parameters:
Source:
- src/core/Group.js line 681 + src/core/Group.js line 681 @@ -8118,7 +8118,7 @@
Parameters:
Source:
- src/core/Group.js line 3006 + src/core/Group.js line 3006 @@ -8462,7 +8462,7 @@
Parameters:
Source:
- src/core/Group.js line 3048 + src/core/Group.js line 3048 @@ -8653,7 +8653,7 @@
Parameters:
Source:
- src/core/Group.js line 2024 + src/core/Group.js line 2024 @@ -8796,7 +8796,7 @@
Parameters:
Source:
- src/core/Group.js line 901 + src/core/Group.js line 901 @@ -9059,7 +9059,7 @@
Parameters:
Source:
- src/core/Group.js line 1624 + src/core/Group.js line 1624 @@ -9279,7 +9279,7 @@
Parameters:
Source:
- src/core/Group.js line 1540 + src/core/Group.js line 1540 @@ -9470,7 +9470,7 @@
Parameters:
Source:
- src/core/Group.js line 1575 + src/core/Group.js line 1575 @@ -9786,7 +9786,7 @@
Parameters:
Source:
- src/core/Group.js line 1349 + src/core/Group.js line 1349 @@ -10088,7 +10088,7 @@
Parameters:
Source:
- src/core/Group.js line 1384 + src/core/Group.js line 1384 @@ -10385,7 +10385,7 @@
Parameters:
Source:
- src/core/Group.js line 1208 + src/core/Group.js line 1208 @@ -10552,7 +10552,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -10739,7 +10739,7 @@
Parameters:
Source:
- src/core/Group.js line 2431 + src/core/Group.js line 2431 @@ -10856,7 +10856,7 @@

Source:
- src/core/Group.js line 2455 + src/core/Group.js line 2455 @@ -10973,7 +10973,7 @@

Source:
- src/core/Group.js line 2444 + src/core/Group.js line 2444 @@ -11367,7 +11367,7 @@
Parameters:
Source:
- src/core/Group.js line 542 + src/core/Group.js line 542 @@ -11774,7 +11774,7 @@
Parameters:
Source:
- src/core/Group.js line 578 + src/core/Group.js line 578 @@ -11987,7 +11987,7 @@
Parameters:
Source:
- src/core/Group.js line 2001 + src/core/Group.js line 2001 @@ -12154,7 +12154,7 @@
Parameters:
Source:
- src/core/Group.js line 2053 + src/core/Group.js line 2053 @@ -12358,7 +12358,7 @@
Parameters:
Source:
- src/core/Group.js line 2757 + src/core/Group.js line 2757 @@ -12574,7 +12574,7 @@
Parameters:
Source:
- src/core/Group.js line 1465 + src/core/Group.js line 1465 @@ -12658,7 +12658,7 @@

Source:
- src/physics/p2/BodyDebug.js line 87 + src/physics/p2/BodyDebug.js line 87 @@ -12864,7 +12864,7 @@
Parameters:
Source:
- src/core/Group.js line 1783 + src/core/Group.js line 1783 @@ -13170,7 +13170,7 @@
Parameters:
Source:
- src/core/Group.js line 1822 + src/core/Group.js line 1822 @@ -13408,7 +13408,7 @@
Parameters:
Source:
- src/core/Group.js line 1908 + src/core/Group.js line 1908 @@ -13646,7 +13646,7 @@
Parameters:
Source:
- src/core/Group.js line 1935 + src/core/Group.js line 1935 @@ -13884,7 +13884,7 @@
Parameters:
Source:
- src/core/Group.js line 1881 + src/core/Group.js line 1881 @@ -14129,7 +14129,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -14437,7 +14437,7 @@
Parameters:
Source:
- src/core/Group.js line 2506 + src/core/Group.js line 2506 @@ -14606,7 +14606,7 @@
Parameters:
Source:
- src/core/Group.js line 523 + src/core/Group.js line 523 @@ -14727,7 +14727,7 @@

Source:
- src/core/Group.js line 2329 + src/core/Group.js line 2329 @@ -14909,7 +14909,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -15078,7 +15078,7 @@
Parameters:
Source:
- src/core/Group.js line 1041 + src/core/Group.js line 1041 @@ -15245,7 +15245,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -15412,7 +15412,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -15663,7 +15663,7 @@
Parameters:
Source:
- src/core/Group.js line 2345 + src/core/Group.js line 2345 @@ -15854,7 +15854,7 @@
Parameters:
Source:
- src/core/Group.js line 2171 + src/core/Group.js line 2171 @@ -16213,7 +16213,7 @@
Parameters:
Source:
- src/core/Group.js line 2217 + src/core/Group.js line 2217 @@ -16572,7 +16572,7 @@
Parameters:
Source:
- src/core/Group.js line 2246 + src/core/Group.js line 2246 @@ -16970,7 +16970,7 @@
Parameters:
Source:
- src/core/Group.js line 2184 + src/core/Group.js line 2184 @@ -17221,7 +17221,7 @@
Parameters:
Source:
- src/core/Group.js line 2388 + src/core/Group.js line 2388 @@ -17388,7 +17388,7 @@
Parameters:
Source:
- src/core/Group.js line 1029 + src/core/Group.js line 1029 @@ -17505,7 +17505,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -17732,7 +17732,7 @@
Parameters:
Source:
- src/core/Group.js line 2466 + src/core/Group.js line 2466 @@ -17960,7 +17960,7 @@
Parameters:
Source:
- src/core/Group.js line 2487 + src/core/Group.js line 2487 @@ -18078,7 +18078,7 @@

Source:
- src/core/Group.js line 2313 + src/core/Group.js line 2313 @@ -18270,7 +18270,7 @@
Parameters:
Source:
- src/core/Group.js line 1093 + src/core/Group.js line 1093 @@ -18657,7 +18657,7 @@
Parameters:
Source:
- src/core/Group.js line 2077 + src/core/Group.js line 2077 @@ -18774,7 +18774,7 @@

Source:
- src/core/Group.js line 1481 + src/core/Group.js line 1481 @@ -18867,7 +18867,7 @@

Source:
- src/core/Group.js line 1493 + src/core/Group.js line 1493 @@ -19066,7 +19066,7 @@
Parameters:
Source:
- src/core/Group.js line 2598 + src/core/Group.js line 2598 @@ -19233,7 +19233,7 @@
Parameters:
Source:
- src/core/Group.js line 972 + src/core/Group.js line 972 @@ -19400,7 +19400,7 @@
Parameters:
Source:
- src/core/Group.js line 949 + src/core/Group.js line 949 @@ -19640,7 +19640,7 @@
Parameters:
Source:
- src/core/Group.js line 1449 + src/core/Group.js line 1449 @@ -19734,7 +19734,7 @@

Source:
- src/core/Group.js line 830 + src/core/Group.js line 830 @@ -19851,7 +19851,7 @@

Source:
- src/core/Group.js line 1763 + src/core/Group.js line 1763 @@ -19944,7 +19944,7 @@

Source:
- src/core/Group.js line 1695 + src/core/Group.js line 1695 @@ -20038,7 +20038,7 @@

Source:
- src/core/Group.js line 858 + src/core/Group.js line 858 @@ -20303,7 +20303,7 @@
Parameters:
Source:
- src/core/Group.js line 2551 + src/core/Group.js line 2551 @@ -20573,7 +20573,7 @@
Parameters:
Source:
- src/core/Group.js line 2626 + src/core/Group.js line 2626 @@ -20850,7 +20850,7 @@
Parameters:
Source:
- src/core/Group.js line 2673 + src/core/Group.js line 2673 @@ -20993,7 +20993,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -21160,7 +21160,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -21351,7 +21351,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -21495,7 +21495,7 @@
Parameters:
Source:
- src/core/Group.js line 465 + src/core/Group.js line 465 @@ -21688,7 +21688,7 @@
Parameters:
Source:
- src/core/Group.js line 1055 + src/core/Group.js line 1055 @@ -22042,7 +22042,7 @@
Parameters:
Source:
- src/core/Group.js line 1525 + src/core/Group.js line 1525 @@ -22348,7 +22348,7 @@
Parameters:
Source:
- src/core/Group.js line 2275 + src/core/Group.js line 2275 @@ -22536,7 +22536,7 @@
Parameters:
Source:
- src/core/Group.js line 804 + src/core/Group.js line 804 @@ -22654,7 +22654,7 @@

Source:
- src/core/Group.js line 1016 + src/core/Group.js line 1016 @@ -22747,7 +22747,7 @@

Source:
- src/core/Group.js line 1503 + src/core/Group.js line 1503 @@ -22840,7 +22840,7 @@

Source:
- src/core/Group.js line 1515 + src/core/Group.js line 1515 @@ -23043,7 +23043,7 @@
Parameters:
Source:
- src/core/Group.js line 2727 + src/core/Group.js line 2727 @@ -23186,7 +23186,7 @@
Parameters:
Source:
- src/core/Group.js line 925 + src/core/Group.js line 925 @@ -23602,7 +23602,7 @@
Parameters:
Source:
- src/core/Group.js line 1237 + src/core/Group.js line 1237 @@ -23984,7 +23984,7 @@
Parameters:
Source:
- src/core/Group.js line 1267 + src/core/Group.js line 1267 @@ -24342,7 +24342,7 @@
Parameters:
Source:
- src/core/Group.js line 1305 + src/core/Group.js line 1305 @@ -24509,7 +24509,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -24828,7 +24828,7 @@
Parameters:
Source:
- src/core/Group.js line 1127 + src/core/Group.js line 1127 @@ -24946,7 +24946,7 @@

Source:
- src/core/Group.js line 2744 + src/core/Group.js line 2744 @@ -25153,7 +25153,7 @@
Parameters:
Source:
- src/core/Group.js line 1962 + src/core/Group.js line 1962 @@ -25369,7 +25369,7 @@
Parameters:
Source:
- src/core/Group.js line 1433 + src/core/Group.js line 1433 @@ -25537,7 +25537,7 @@
Parameters:
Source:
- src/core/Group.js line 886 + src/core/Group.js line 886 @@ -25704,7 +25704,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -25847,7 +25847,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -26060,7 +26060,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -26180,7 +26180,7 @@

Source:
- src/core/Group.js line 1735 + src/core/Group.js line 1735 @@ -26273,7 +26273,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -26383,7 +26383,7 @@

Source:
- src/physics/p2/BodyDebug.js line 73 + src/physics/p2/BodyDebug.js line 73 @@ -26546,7 +26546,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -26666,7 +26666,7 @@

Source:
- src/core/Group.js line 663 + src/core/Group.js line 663 @@ -26857,7 +26857,7 @@
Parameters:
Source:
- src/core/Group.js line 995 + src/core/Group.js line 995 @@ -26900,9 +26900,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -26919,7 +26919,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -26948,7 +26948,7 @@
Parameters:
- + diff --git a/docs/Phaser.Physics.P2.CollisionGroup.html b/docs/Phaser.Physics.P2.CollisionGroup.html index 4879327d1..2cc72c397 100644 --- a/docs/Phaser.Physics.P2.CollisionGroup.html +++ b/docs/Phaser.Physics.P2.CollisionGroup.html @@ -6,7 +6,7 @@ Phaser CE Class: CollisionGroup - + @@ -230,7 +230,7 @@
Parameters:
Source:
- src/physics/p2/CollisionGroup.js line 14 + src/physics/p2/CollisionGroup.js line 14 @@ -335,7 +335,7 @@
Type:
Source:
- src/physics/p2/CollisionGroup.js line 20 + src/physics/p2/CollisionGroup.js line 20 @@ -368,9 +368,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -387,7 +387,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -416,7 +416,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.ContactMaterial.html b/docs/Phaser.Physics.P2.ContactMaterial.html index e4a989e53..0beb03eef 100644 --- a/docs/Phaser.Physics.P2.ContactMaterial.html +++ b/docs/Phaser.Physics.P2.ContactMaterial.html @@ -6,7 +6,7 @@ Phaser CE Class: ContactMaterial - + @@ -306,7 +306,7 @@
Parameters:
Source:
- src/physics/p2/ContactMaterial.js line 16 + src/physics/p2/ContactMaterial.js line 16 @@ -363,9 +363,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -382,7 +382,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -411,7 +411,7 @@
Parameters:
- + diff --git a/docs/Phaser.Physics.P2.DistanceConstraint.html b/docs/Phaser.Physics.P2.DistanceConstraint.html index 09bddcc8a..42e13cf7a 100644 --- a/docs/Phaser.Physics.P2.DistanceConstraint.html +++ b/docs/Phaser.Physics.P2.DistanceConstraint.html @@ -6,7 +6,7 @@ Phaser CE Class: DistanceConstraint - + @@ -470,7 +470,7 @@
Parameters:
Source:
- src/physics/p2/DistanceConstraint.js line 20 + src/physics/p2/DistanceConstraint.js line 20 @@ -575,7 +575,7 @@
Type:
Source:
- src/physics/p2/DistanceConstraint.js line 31 + src/physics/p2/DistanceConstraint.js line 31 @@ -652,7 +652,7 @@
Type:
Source:
- src/physics/p2/DistanceConstraint.js line 36 + src/physics/p2/DistanceConstraint.js line 36 @@ -685,9 +685,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -704,7 +704,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -733,7 +733,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.FixtureList.html b/docs/Phaser.Physics.P2.FixtureList.html index 93c49bd79..c8da5f507 100644 --- a/docs/Phaser.Physics.P2.FixtureList.html +++ b/docs/Phaser.Physics.P2.FixtureList.html @@ -6,7 +6,7 @@ Phaser CE Class: FixtureList - + @@ -235,7 +235,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 21 + src/physics/p2/FixtureList.js line 21 @@ -387,7 +387,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 225 + src/physics/p2/FixtureList.js line 225 @@ -521,7 +521,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 168 + src/physics/p2/FixtureList.js line 168 @@ -655,7 +655,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 131 + src/physics/p2/FixtureList.js line 131 @@ -789,7 +789,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 181 + src/physics/p2/FixtureList.js line 181 @@ -869,7 +869,7 @@

Source:
- src/physics/p2/FixtureList.js line 37 + src/physics/p2/FixtureList.js line 37 @@ -953,7 +953,7 @@

Source:
- src/physics/p2/FixtureList.js line 194 + src/physics/p2/FixtureList.js line 194 @@ -1107,7 +1107,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 63 + src/physics/p2/FixtureList.js line 63 @@ -1261,7 +1261,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 80 + src/physics/p2/FixtureList.js line 80 @@ -1415,7 +1415,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 114 + src/physics/p2/FixtureList.js line 114 @@ -1569,7 +1569,7 @@
Parameters:
Source:
- src/physics/p2/FixtureList.js line 97 + src/physics/p2/FixtureList.js line 97 @@ -1612,9 +1612,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1631,7 +1631,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1660,7 +1660,7 @@
Parameters:
- + diff --git a/docs/Phaser.Physics.P2.GearConstraint.html b/docs/Phaser.Physics.P2.GearConstraint.html index c1f27b077..a95e3c50e 100644 --- a/docs/Phaser.Physics.P2.GearConstraint.html +++ b/docs/Phaser.Physics.P2.GearConstraint.html @@ -6,7 +6,7 @@ Phaser CE Class: GearConstraint - + @@ -398,7 +398,7 @@
Parameters:
Source:
- src/physics/p2/GearConstraint.js line 18 + src/physics/p2/GearConstraint.js line 18 @@ -503,7 +503,7 @@
Type:
Source:
- src/physics/p2/GearConstraint.js line 27 + src/physics/p2/GearConstraint.js line 27 @@ -580,7 +580,7 @@
Type:
Source:
- src/physics/p2/GearConstraint.js line 32 + src/physics/p2/GearConstraint.js line 32 @@ -613,9 +613,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -632,7 +632,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -661,7 +661,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.InversePointProxy.html b/docs/Phaser.Physics.P2.InversePointProxy.html index 4aca098cf..338ff727e 100644 --- a/docs/Phaser.Physics.P2.InversePointProxy.html +++ b/docs/Phaser.Physics.P2.InversePointProxy.html @@ -6,7 +6,7 @@ Phaser CE Class: InversePointProxy - + @@ -254,7 +254,7 @@
Parameters:
Source:
- src/physics/p2/InversePointProxy.js line 15 + src/physics/p2/InversePointProxy.js line 15 @@ -359,7 +359,7 @@
Type:
Source:
- src/physics/p2/InversePointProxy.js line 69 + src/physics/p2/InversePointProxy.js line 69 @@ -436,7 +436,7 @@
Type:
Source:
- src/physics/p2/InversePointProxy.js line 91 + src/physics/p2/InversePointProxy.js line 91 @@ -513,7 +513,7 @@
Type:
Source:
- src/physics/p2/InversePointProxy.js line 25 + src/physics/p2/InversePointProxy.js line 25 @@ -590,7 +590,7 @@
Type:
Source:
- src/physics/p2/InversePointProxy.js line 47 + src/physics/p2/InversePointProxy.js line 47 @@ -623,9 +623,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -642,7 +642,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -671,7 +671,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.LockConstraint.html b/docs/Phaser.Physics.P2.LockConstraint.html index 6a221c262..09cad5600 100644 --- a/docs/Phaser.Physics.P2.LockConstraint.html +++ b/docs/Phaser.Physics.P2.LockConstraint.html @@ -6,7 +6,7 @@ Phaser CE Class: LockConstraint - + @@ -434,7 +434,7 @@
Parameters:
Source:
- src/physics/p2/LockConstraint.js line 19 + src/physics/p2/LockConstraint.js line 19 @@ -539,7 +539,7 @@
Type:
Source:
- src/physics/p2/LockConstraint.js line 29 + src/physics/p2/LockConstraint.js line 29 @@ -616,7 +616,7 @@
Type:
Source:
- src/physics/p2/LockConstraint.js line 34 + src/physics/p2/LockConstraint.js line 34 @@ -649,9 +649,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -668,7 +668,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -697,7 +697,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.Material.html b/docs/Phaser.Physics.P2.Material.html index 3faef48f7..2afc8a030 100644 --- a/docs/Phaser.Physics.P2.Material.html +++ b/docs/Phaser.Physics.P2.Material.html @@ -6,7 +6,7 @@ Phaser CE Class: Material - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/physics/p2/Material.js line 16 + src/physics/p2/Material.js line 16 @@ -336,7 +336,7 @@
Type:
Source:
- src/physics/p2/Material.js line 23 + src/physics/p2/Material.js line 23 @@ -369,9 +369,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -388,7 +388,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -417,7 +417,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.PointProxy.html b/docs/Phaser.Physics.P2.PointProxy.html index 9ca9f3ec0..11b0ce8c3 100644 --- a/docs/Phaser.Physics.P2.PointProxy.html +++ b/docs/Phaser.Physics.P2.PointProxy.html @@ -6,7 +6,7 @@ Phaser CE Class: PointProxy - + @@ -254,7 +254,7 @@
Parameters:
Source:
- src/physics/p2/PointProxy.js line 15 + src/physics/p2/PointProxy.js line 15 @@ -359,7 +359,7 @@
Type:
Source:
- src/physics/p2/PointProxy.js line 69 + src/physics/p2/PointProxy.js line 69 @@ -436,7 +436,7 @@
Type:
Source:
- src/physics/p2/PointProxy.js line 91 + src/physics/p2/PointProxy.js line 91 @@ -513,7 +513,7 @@
Type:
Source:
- src/physics/p2/PointProxy.js line 25 + src/physics/p2/PointProxy.js line 25 @@ -590,7 +590,7 @@
Type:
Source:
- src/physics/p2/PointProxy.js line 47 + src/physics/p2/PointProxy.js line 47 @@ -623,9 +623,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -642,7 +642,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -671,7 +671,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.PrismaticConstraint.html b/docs/Phaser.Physics.P2.PrismaticConstraint.html index 652f34373..70aeca719 100644 --- a/docs/Phaser.Physics.P2.PrismaticConstraint.html +++ b/docs/Phaser.Physics.P2.PrismaticConstraint.html @@ -6,7 +6,7 @@ Phaser CE Class: PrismaticConstraint - + @@ -510,7 +510,7 @@
Parameters:
Source:
- src/physics/p2/PrismaticConstraint.js line 21 + src/physics/p2/PrismaticConstraint.js line 21 @@ -615,7 +615,7 @@
Type:
Source:
- src/physics/p2/PrismaticConstraint.js line 33 + src/physics/p2/PrismaticConstraint.js line 33 @@ -692,7 +692,7 @@
Type:
Source:
- src/physics/p2/PrismaticConstraint.js line 38 + src/physics/p2/PrismaticConstraint.js line 38 @@ -725,9 +725,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -744,7 +744,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -773,7 +773,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.RevoluteConstraint.html b/docs/Phaser.Physics.P2.RevoluteConstraint.html index d2906b917..87a85dfb9 100644 --- a/docs/Phaser.Physics.P2.RevoluteConstraint.html +++ b/docs/Phaser.Physics.P2.RevoluteConstraint.html @@ -6,7 +6,7 @@ Phaser CE Class: RevoluteConstraint - + @@ -471,7 +471,7 @@
Parameters:
Source:
- src/physics/p2/RevoluteConstraint.js line 21 + src/physics/p2/RevoluteConstraint.js line 21 @@ -576,7 +576,7 @@
Type:
Source:
- src/physics/p2/RevoluteConstraint.js line 30 + src/physics/p2/RevoluteConstraint.js line 30 @@ -653,7 +653,7 @@
Type:
Source:
- src/physics/p2/RevoluteConstraint.js line 35 + src/physics/p2/RevoluteConstraint.js line 35 @@ -686,9 +686,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -705,7 +705,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -734,7 +734,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.RotationalSpring.html b/docs/Phaser.Physics.P2.RotationalSpring.html index 9f695d451..8df3b5cbd 100644 --- a/docs/Phaser.Physics.P2.RotationalSpring.html +++ b/docs/Phaser.Physics.P2.RotationalSpring.html @@ -6,7 +6,7 @@ Phaser CE Class: RotationalSpring - + @@ -436,7 +436,7 @@
Parameters:
Source:
- src/physics/p2/RotationalSpring.js line 19 + src/physics/p2/RotationalSpring.js line 19 @@ -541,7 +541,7 @@
Type:
Source:
- src/physics/p2/RotationalSpring.js line 50 + src/physics/p2/RotationalSpring.js line 50 @@ -618,7 +618,7 @@
Type:
Source:
- src/physics/p2/RotationalSpring.js line 25 + src/physics/p2/RotationalSpring.js line 25 @@ -695,7 +695,7 @@
Type:
Source:
- src/physics/p2/RotationalSpring.js line 30 + src/physics/p2/RotationalSpring.js line 30 @@ -728,9 +728,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -747,7 +747,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -776,7 +776,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.Spring.html b/docs/Phaser.Physics.P2.Spring.html index 3c8a8be49..8c5254660 100644 --- a/docs/Phaser.Physics.P2.Spring.html +++ b/docs/Phaser.Physics.P2.Spring.html @@ -6,7 +6,7 @@ Phaser CE Class: Spring - + @@ -590,7 +590,7 @@
Parameters:
Source:
- src/physics/p2/Spring.js line 23 + src/physics/p2/Spring.js line 23 @@ -695,7 +695,7 @@
Type:
Source:
- src/physics/p2/Spring.js line 71 + src/physics/p2/Spring.js line 71 @@ -772,7 +772,7 @@
Type:
Source:
- src/physics/p2/Spring.js line 29 + src/physics/p2/Spring.js line 29 @@ -849,7 +849,7 @@
Type:
Source:
- src/physics/p2/Spring.js line 34 + src/physics/p2/Spring.js line 34 @@ -882,9 +882,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -901,7 +901,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -930,7 +930,7 @@
Type:
- + diff --git a/docs/Phaser.Physics.P2.html b/docs/Phaser.Physics.P2.html index 9e08d78e6..4114a3a8f 100644 --- a/docs/Phaser.Physics.P2.html +++ b/docs/Phaser.Physics.P2.html @@ -6,7 +6,7 @@ Phaser CE Class: P2 - + @@ -275,7 +275,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 20 + src/physics/p2/World.js line 20 @@ -429,7 +429,7 @@
Type:
Source:
- src/physics/p2/World.js line 1997 + src/physics/p2/World.js line 1997 @@ -506,7 +506,7 @@
Type:
Source:
- src/physics/p2/World.js line 2019 + src/physics/p2/World.js line 2019 @@ -583,7 +583,7 @@
Type:
Source:
- src/physics/p2/World.js line 1975 + src/physics/p2/World.js line 1975 @@ -660,7 +660,7 @@
Type:
Source:
- src/physics/p2/World.js line 233 + src/physics/p2/World.js line 233 @@ -737,7 +737,7 @@
Type:
Source:
- src/physics/p2/World.js line 223 + src/physics/p2/World.js line 223 @@ -814,7 +814,7 @@
Type:
Source:
- src/physics/p2/World.js line 171 + src/physics/p2/World.js line 171 @@ -891,7 +891,7 @@
Type:
Source:
- src/physics/p2/World.js line 213 + src/physics/p2/World.js line 213 @@ -968,7 +968,7 @@
Type:
Source:
- src/physics/p2/World.js line 49 + src/physics/p2/World.js line 49 @@ -1045,7 +1045,7 @@
Type:
Source:
- src/physics/p2/World.js line 1953 + src/physics/p2/World.js line 1953 @@ -1122,7 +1122,7 @@
Type:
Source:
- src/physics/p2/World.js line 2079 + src/physics/p2/World.js line 2079 @@ -1199,7 +1199,7 @@
Type:
Source:
- src/physics/p2/World.js line 228 + src/physics/p2/World.js line 228 @@ -1276,7 +1276,7 @@
Type:
Source:
- src/physics/p2/World.js line 61 + src/physics/p2/World.js line 61 @@ -1353,7 +1353,7 @@
Type:
Source:
- src/physics/p2/World.js line 1909 + src/physics/p2/World.js line 1909 @@ -1430,7 +1430,7 @@
Type:
Source:
- src/physics/p2/World.js line 26 + src/physics/p2/World.js line 26 @@ -1507,7 +1507,7 @@
Type:
Source:
- src/physics/p2/World.js line 84 + src/physics/p2/World.js line 84 @@ -1584,7 +1584,7 @@
Type:
Source:
- src/physics/p2/World.js line 79 + src/physics/p2/World.js line 79 @@ -1661,7 +1661,7 @@
Type:
Source:
- src/physics/p2/World.js line 218 + src/physics/p2/World.js line 218 @@ -1741,7 +1741,7 @@
Type:
Source:
- src/physics/p2/World.js line 183 + src/physics/p2/World.js line 183 @@ -1819,7 +1819,7 @@
Type:
Source:
- src/physics/p2/World.js line 98 + src/physics/p2/World.js line 98 @@ -1897,7 +1897,7 @@
Type:
Source:
- src/physics/p2/World.js line 107 + src/physics/p2/World.js line 107 @@ -1975,7 +1975,7 @@
Type:
Source:
- src/physics/p2/World.js line 134 + src/physics/p2/World.js line 134 @@ -2053,7 +2053,7 @@
Type:
Source:
- src/physics/p2/World.js line 143 + src/physics/p2/World.js line 143 @@ -2131,7 +2131,7 @@
Type:
Source:
- src/physics/p2/World.js line 152 + src/physics/p2/World.js line 152 @@ -2209,7 +2209,7 @@
Type:
Source:
- src/physics/p2/World.js line 161 + src/physics/p2/World.js line 161 @@ -2289,7 +2289,7 @@
Type:
Source:
- src/physics/p2/World.js line 195 + src/physics/p2/World.js line 195 @@ -2367,7 +2367,7 @@
Type:
Source:
- src/physics/p2/World.js line 116 + src/physics/p2/World.js line 116 @@ -2445,7 +2445,7 @@
Type:
Source:
- src/physics/p2/World.js line 125 + src/physics/p2/World.js line 125 @@ -2522,7 +2522,7 @@
Type:
Source:
- src/physics/p2/World.js line 73 + src/physics/p2/World.js line 73 @@ -2599,7 +2599,7 @@
Type:
Source:
- src/physics/p2/World.js line 166 + src/physics/p2/World.js line 166 @@ -2676,7 +2676,7 @@
Type:
Source:
- src/physics/p2/World.js line 1931 + src/physics/p2/World.js line 1931 @@ -2754,7 +2754,7 @@
Type:
Source:
- src/physics/p2/World.js line 2101 + src/physics/p2/World.js line 2101 @@ -2831,7 +2831,7 @@
Type:
Source:
- src/physics/p2/World.js line 2041 + src/physics/p2/World.js line 2041 @@ -2908,7 +2908,7 @@
Type:
Source:
- src/physics/p2/World.js line 2063 + src/physics/p2/World.js line 2063 @@ -2985,7 +2985,7 @@
Type:
Source:
- src/physics/p2/World.js line 2125 + src/physics/p2/World.js line 2125 @@ -3062,7 +3062,7 @@
Type:
Source:
- src/physics/p2/World.js line 67 + src/physics/p2/World.js line 67 @@ -3139,7 +3139,7 @@
Type:
Source:
- src/physics/p2/World.js line 89 + src/physics/p2/World.js line 89 @@ -3216,7 +3216,7 @@
Type:
Source:
- src/physics/p2/World.js line 55 + src/physics/p2/World.js line 55 @@ -3344,7 +3344,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 906 + src/physics/p2/World.js line 906 @@ -3502,7 +3502,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1147 + src/physics/p2/World.js line 1147 @@ -3660,7 +3660,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1183 + src/physics/p2/World.js line 1183 @@ -3824,7 +3824,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 952 + src/physics/p2/World.js line 952 @@ -3982,7 +3982,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 510 + src/physics/p2/World.js line 510 @@ -4075,7 +4075,7 @@

Source:
- src/physics/p2/World.js line 817 + src/physics/p2/World.js line 817 @@ -4259,7 +4259,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1730 + src/physics/p2/World.js line 1730 @@ -4494,7 +4494,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1673 + src/physics/p2/World.js line 1673 @@ -4795,7 +4795,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1753 + src/physics/p2/World.js line 1753 @@ -5311,7 +5311,7 @@
Properties
Source:
- src/physics/p2/World.js line 1588 + src/physics/p2/World.js line 1588 @@ -5485,7 +5485,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1453 + src/physics/p2/World.js line 1453 @@ -5699,7 +5699,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1281 + src/physics/p2/World.js line 1281 @@ -6045,7 +6045,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1002 + src/physics/p2/World.js line 1002 @@ -6347,7 +6347,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1031 + src/physics/p2/World.js line 1031 @@ -6685,7 +6685,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1088 + src/physics/p2/World.js line 1088 @@ -6891,7 +6891,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1253 + src/physics/p2/World.js line 1253 @@ -7407,7 +7407,7 @@
Properties
Source:
- src/physics/p2/World.js line 1631 + src/physics/p2/World.js line 1631 @@ -7798,7 +7798,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1116 + src/physics/p2/World.js line 1116 @@ -8173,7 +8173,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1058 + src/physics/p2/World.js line 1058 @@ -8513,7 +8513,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1560 + src/physics/p2/World.js line 1560 @@ -9007,7 +9007,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1528 + src/physics/p2/World.js line 1528 @@ -9115,7 +9115,7 @@

Source:
- src/physics/p2/World.js line 892 + src/physics/p2/World.js line 892 @@ -9353,7 +9353,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 316 + src/physics/p2/World.js line 316 @@ -9512,7 +9512,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 374 + src/physics/p2/World.js line 374 @@ -9646,7 +9646,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 536 + src/physics/p2/World.js line 536 @@ -9730,7 +9730,7 @@

Source:
- src/physics/p2/World.js line 1302 + src/physics/p2/World.js line 1302 @@ -9888,7 +9888,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1323 + src/physics/p2/World.js line 1323 @@ -9998,7 +9998,7 @@

Source:
- src/physics/p2/World.js line 1374 + src/physics/p2/World.js line 1374 @@ -10180,7 +10180,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1219 + src/physics/p2/World.js line 1219 @@ -10291,7 +10291,7 @@

Source:
- src/physics/p2/World.js line 1353 + src/physics/p2/World.js line 1353 @@ -10584,7 +10584,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1397 + src/physics/p2/World.js line 1397 @@ -10744,7 +10744,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1843 + src/physics/p2/World.js line 1843 @@ -10904,7 +10904,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1875 + src/physics/p2/World.js line 1875 @@ -11012,7 +11012,7 @@

Source:
- src/physics/p2/World.js line 746 + src/physics/p2/World.js line 746 @@ -11096,7 +11096,7 @@

Source:
- src/physics/p2/World.js line 297 + src/physics/p2/World.js line 297 @@ -11232,7 +11232,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1859 + src/physics/p2/World.js line 1859 @@ -11392,7 +11392,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1891 + src/physics/p2/World.js line 1891 @@ -11550,7 +11550,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 931 + src/physics/p2/World.js line 931 @@ -11708,7 +11708,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 284 + src/physics/p2/World.js line 284 @@ -11842,7 +11842,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1165 + src/physics/p2/World.js line 1165 @@ -12000,7 +12000,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1201 + src/physics/p2/World.js line 1201 @@ -12158,7 +12158,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 977 + src/physics/p2/World.js line 977 @@ -12267,7 +12267,7 @@

Source:
- src/physics/p2/World.js line 795 + src/physics/p2/World.js line 795 @@ -12351,7 +12351,7 @@

Source:
- src/physics/p2/World.js line 758 + src/physics/p2/World.js line 758 @@ -12814,7 +12814,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 659 + src/physics/p2/World.js line 659 @@ -12949,7 +12949,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 397 + src/physics/p2/World.js line 397 @@ -13107,7 +13107,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 1234 + src/physics/p2/World.js line 1234 @@ -13268,7 +13268,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 418 + src/physics/p2/World.js line 418 @@ -13352,7 +13352,7 @@

Source:
- src/physics/p2/World.js line 1440 + src/physics/p2/World.js line 1440 @@ -13460,7 +13460,7 @@

Source:
- src/physics/p2/World.js line 770 + src/physics/p2/World.js line 770 @@ -13616,7 +13616,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 620 + src/physics/p2/World.js line 620 @@ -13659,9 +13659,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -13678,7 +13678,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -13707,7 +13707,7 @@
Parameters:
- + diff --git a/docs/Phaser.Physics.html b/docs/Phaser.Physics.html index e0094d6e2..df1f61465 100644 --- a/docs/Phaser.Physics.html +++ b/docs/Phaser.Physics.html @@ -6,7 +6,7 @@ Phaser CE Class: Physics - + @@ -290,7 +290,7 @@
Parameters:
Source:
- src/physics/Physics.js line 21 + src/physics/Physics.js line 21 @@ -404,7 +404,7 @@
Type:
Source:
- src/physics/Physics.js line 72 + src/physics/Physics.js line 72 @@ -477,7 +477,7 @@
Type:
Source:
- src/physics/Physics.js line 90 + src/physics/Physics.js line 90 @@ -550,7 +550,7 @@
Type:
Source:
- src/physics/Physics.js line 96 + src/physics/Physics.js line 96 @@ -623,7 +623,7 @@
Type:
Source:
- src/physics/Physics.js line 102 + src/physics/Physics.js line 102 @@ -696,7 +696,7 @@
Type:
Source:
- src/physics/Physics.js line 84 + src/physics/Physics.js line 84 @@ -769,7 +769,7 @@
Type:
Source:
- src/physics/Physics.js line 78 + src/physics/Physics.js line 78 @@ -846,7 +846,7 @@
Type:
Source:
- src/physics/Physics.js line 38 + src/physics/Physics.js line 38 @@ -923,7 +923,7 @@
Type:
Source:
- src/physics/Physics.js line 53 + src/physics/Physics.js line 53 @@ -1000,7 +1000,7 @@
Type:
Source:
- src/physics/Physics.js line 58 + src/physics/Physics.js line 58 @@ -1077,7 +1077,7 @@
Type:
Source:
- src/physics/Physics.js line 33 + src/physics/Physics.js line 33 @@ -1154,7 +1154,7 @@
Type:
Source:
- src/physics/Physics.js line 28 + src/physics/Physics.js line 28 @@ -1231,7 +1231,7 @@
Type:
Source:
- src/physics/Physics.js line 63 + src/physics/Physics.js line 63 @@ -1308,7 +1308,7 @@
Type:
Source:
- src/physics/Physics.js line 48 + src/physics/Physics.js line 48 @@ -1385,7 +1385,7 @@
Type:
Source:
- src/physics/Physics.js line 43 + src/physics/Physics.js line 43 @@ -1463,7 +1463,7 @@

Source:
- src/physics/Physics.js line 342 + src/physics/Physics.js line 342 @@ -1547,7 +1547,7 @@

Source:
- src/physics/Physics.js line 390 + src/physics/Physics.js line 390 @@ -1790,7 +1790,7 @@
Parameters:
Source:
- src/physics/Physics.js line 205 + src/physics/Physics.js line 205 @@ -1874,7 +1874,7 @@

Source:
- src/physics/Physics.js line 106 + src/physics/Physics.js line 106 @@ -1958,7 +1958,7 @@

Source:
- src/physics/Physics.js line 256 + src/physics/Physics.js line 256 @@ -2042,7 +2042,7 @@

Source:
- src/physics/Physics.js line 366 + src/physics/Physics.js line 366 @@ -2357,7 +2357,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 562 + src/physics/p2/World.js line 562 @@ -2441,7 +2441,7 @@

Source:
- src/physics/Physics.js line 308 + src/physics/Physics.js line 308 @@ -2751,7 +2751,7 @@
Parameters:
Source:
- src/physics/p2/World.js line 580 + src/physics/p2/World.js line 580 @@ -2895,7 +2895,7 @@
Parameters:
Source:
- src/physics/Physics.js line 140 + src/physics/Physics.js line 140 @@ -2979,7 +2979,7 @@

Source:
- src/physics/Physics.js line 282 + src/physics/Physics.js line 282 @@ -3022,9 +3022,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3041,7 +3041,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3070,7 +3070,7 @@

- + diff --git a/docs/Phaser.Plugin.PathManager.html b/docs/Phaser.Plugin.PathManager.html index 4ec03ed39..d5b56f6d2 100644 --- a/docs/Phaser.Plugin.PathManager.html +++ b/docs/Phaser.Plugin.PathManager.html @@ -6,7 +6,7 @@ Phaser CE Class: PathManager - + @@ -255,7 +255,7 @@

Parameters:
Source:
- src/plugins/path/PathManagerPlugin.js line 17 + src/plugins/path/PathManagerPlugin.js line 17 @@ -360,7 +360,7 @@

Source:
- src/plugins/path/PathManagerPlugin.js line 48 + src/plugins/path/PathManagerPlugin.js line 48 @@ -403,9 +403,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -422,7 +422,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -451,7 +451,7 @@

- + diff --git a/docs/Phaser.Plugin.html b/docs/Phaser.Plugin.html index cb028114d..c088cda34 100644 --- a/docs/Phaser.Plugin.html +++ b/docs/Phaser.Plugin.html @@ -6,7 +6,7 @@ Phaser CE Class: Plugin - + @@ -279,7 +279,7 @@

Parameters:
Source:
- src/core/Plugin.js line 27 + src/core/Plugin.js line 27 @@ -391,7 +391,7 @@
Type:
Source:
- src/core/Plugin.js line 45 + src/core/Plugin.js line 45 @@ -468,7 +468,7 @@
Type:
Source:
- src/core/Plugin.js line 34 + src/core/Plugin.js line 34 @@ -545,7 +545,7 @@
Type:
Source:
- src/core/Plugin.js line 81 + src/core/Plugin.js line 81 @@ -622,7 +622,7 @@
Type:
Source:
- src/core/Plugin.js line 69 + src/core/Plugin.js line 69 @@ -699,7 +699,7 @@
Type:
Source:
- src/core/Plugin.js line 57 + src/core/Plugin.js line 57 @@ -776,7 +776,7 @@
Type:
Source:
- src/core/Plugin.js line 75 + src/core/Plugin.js line 75 @@ -853,7 +853,7 @@
Type:
Source:
- src/core/Plugin.js line 63 + src/core/Plugin.js line 63 @@ -930,7 +930,7 @@
Type:
Source:
- src/core/Plugin.js line 39 + src/core/Plugin.js line 39 @@ -1007,7 +1007,7 @@
Type:
Source:
- src/core/Plugin.js line 51 + src/core/Plugin.js line 51 @@ -1085,7 +1085,7 @@

Source:
- src/core/Plugin.js line 122 + src/core/Plugin.js line 122 @@ -1170,7 +1170,7 @@

Source:
- src/core/Plugin.js line 113 + src/core/Plugin.js line 113 @@ -1255,7 +1255,7 @@

Source:
- src/core/Plugin.js line 86 + src/core/Plugin.js line 86 @@ -1340,7 +1340,7 @@

Source:
- src/core/Plugin.js line 104 + src/core/Plugin.js line 104 @@ -1425,7 +1425,7 @@

Source:
- src/core/Plugin.js line 95 + src/core/Plugin.js line 95 @@ -1468,9 +1468,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1487,7 +1487,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1516,7 +1516,7 @@

- + diff --git a/docs/Phaser.PluginManager.html b/docs/Phaser.PluginManager.html index 0c6bf6084..90d179ebe 100644 --- a/docs/Phaser.PluginManager.html +++ b/docs/Phaser.PluginManager.html @@ -6,7 +6,7 @@ Phaser CE Class: PluginManager - + @@ -230,7 +230,7 @@

Parameters:
Source:
- src/core/PluginManager.js line 14 + src/core/PluginManager.js line 14 @@ -335,7 +335,7 @@
Type:
Source:
- src/core/PluginManager.js line 19 + src/core/PluginManager.js line 19 @@ -412,7 +412,7 @@
Type:
Source:
- src/core/PluginManager.js line 24 + src/core/PluginManager.js line 24 @@ -588,7 +588,7 @@
Parameters:
Source:
- src/core/PluginManager.js line 41 + src/core/PluginManager.js line 41 @@ -696,7 +696,7 @@

Source:
- src/core/PluginManager.js line 269 + src/core/PluginManager.js line 269 @@ -781,7 +781,7 @@

Source:
- src/core/PluginManager.js line 250 + src/core/PluginManager.js line 250 @@ -867,7 +867,7 @@

Source:
- src/core/PluginManager.js line 211 + src/core/PluginManager.js line 211 @@ -952,7 +952,7 @@

Source:
- src/core/PluginManager.js line 173 + src/core/PluginManager.js line 173 @@ -1142,7 +1142,7 @@
Parameters:
Source:
- src/core/PluginManager.js line 126 + src/core/PluginManager.js line 126 @@ -1226,7 +1226,7 @@

Source:
- src/core/PluginManager.js line 155 + src/core/PluginManager.js line 155 @@ -1311,7 +1311,7 @@

Source:
- src/core/PluginManager.js line 231 + src/core/PluginManager.js line 231 @@ -1396,7 +1396,7 @@

Source:
- src/core/PluginManager.js line 192 + src/core/PluginManager.js line 192 @@ -1439,9 +1439,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1458,7 +1458,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1487,7 +1487,7 @@

- + diff --git a/docs/Phaser.Point.html b/docs/Phaser.Point.html index 3a4df037a..8dab23243 100644 --- a/docs/Phaser.Point.html +++ b/docs/Phaser.Point.html @@ -6,7 +6,7 @@ Phaser CE Class: Point - + @@ -293,7 +293,7 @@

Parameters:
Source:
- src/geom/Point.js line 18 + src/geom/Point.js line 18 @@ -398,7 +398,7 @@
Type:
Source:
- src/geom/Point.js line 37 + src/geom/Point.js line 37 @@ -475,7 +475,7 @@
Type:
Source:
- src/geom/Point.js line 26 + src/geom/Point.js line 26 @@ -552,7 +552,7 @@
Type:
Source:
- src/geom/Point.js line 31 + src/geom/Point.js line 31 @@ -756,7 +756,7 @@
Parameters:
Source:
- src/geom/Point.js line 602 + src/geom/Point.js line 602 @@ -938,7 +938,7 @@
Parameters:
Source:
- src/geom/Point.js line 708 + src/geom/Point.js line 708 @@ -1140,7 +1140,7 @@
Parameters:
Source:
- src/geom/Point.js line 942 + src/geom/Point.js line 942 @@ -1390,7 +1390,7 @@
Parameters:
Source:
- src/geom/Point.js line 800 + src/geom/Point.js line 800 @@ -1624,7 +1624,7 @@
Parameters:
Source:
- src/geom/Point.js line 659 + src/geom/Point.js line 659 @@ -1806,7 +1806,7 @@
Parameters:
Source:
- src/geom/Point.js line 678 + src/geom/Point.js line 678 @@ -2072,7 +2072,7 @@
Parameters:
Source:
- src/geom/Point.js line 753 + src/geom/Point.js line 753 @@ -2230,7 +2230,7 @@
Parameters:
Source:
- src/geom/Point.js line 1029 + src/geom/Point.js line 1029 @@ -2466,7 +2466,7 @@
Parameters:
Source:
- src/geom/Point.js line 640 + src/geom/Point.js line 640 @@ -2732,7 +2732,7 @@
Parameters:
Source:
- src/geom/Point.js line 736 + src/geom/Point.js line 736 @@ -2934,7 +2934,7 @@
Parameters:
Source:
- src/geom/Point.js line 721 + src/geom/Point.js line 721 @@ -3136,7 +3136,7 @@
Parameters:
Source:
- src/geom/Point.js line 876 + src/geom/Point.js line 876 @@ -3338,7 +3338,7 @@
Parameters:
Source:
- src/geom/Point.js line 861 + src/geom/Point.js line 861 @@ -3593,7 +3593,7 @@
Parameters:
Source:
- src/geom/Point.js line 982 + src/geom/Point.js line 982 @@ -3795,7 +3795,7 @@
Parameters:
Source:
- src/geom/Point.js line 770 + src/geom/Point.js line 770 @@ -4029,7 +4029,7 @@
Parameters:
Source:
- src/geom/Point.js line 815 + src/geom/Point.js line 815 @@ -4263,7 +4263,7 @@
Parameters:
Source:
- src/geom/Point.js line 838 + src/geom/Point.js line 838 @@ -4627,7 +4627,7 @@
Parameters:
Source:
- src/geom/Point.js line 898 + src/geom/Point.js line 898 @@ -4829,7 +4829,7 @@
Parameters:
Source:
- src/geom/Point.js line 785 + src/geom/Point.js line 785 @@ -5063,7 +5063,7 @@
Parameters:
Source:
- src/geom/Point.js line 621 + src/geom/Point.js line 621 @@ -5221,7 +5221,7 @@
Parameters:
Source:
- src/geom/Point.js line 1013 + src/geom/Point.js line 1013 @@ -5403,7 +5403,7 @@
Parameters:
Source:
- src/geom/Point.js line 116 + src/geom/Point.js line 116 @@ -5620,7 +5620,7 @@
Parameters:
Source:
- src/geom/Point.js line 325 + src/geom/Point.js line 325 @@ -5870,7 +5870,7 @@
Parameters:
Source:
- src/geom/Point.js line 338 + src/geom/Point.js line 338 @@ -6048,7 +6048,7 @@
Parameters:
Source:
- src/geom/Point.js line 361 + src/geom/Point.js line 361 @@ -6156,7 +6156,7 @@

Source:
- src/geom/Point.js line 565 + src/geom/Point.js line 565 @@ -6338,7 +6338,7 @@
Parameters:
Source:
- src/geom/Point.js line 204 + src/geom/Point.js line 204 @@ -6520,7 +6520,7 @@
Parameters:
Source:
- src/geom/Point.js line 176 + src/geom/Point.js line 176 @@ -6702,7 +6702,7 @@
Parameters:
Source:
- src/geom/Point.js line 190 + src/geom/Point.js line 190 @@ -6860,7 +6860,7 @@
Parameters:
Source:
- src/geom/Point.js line 219 + src/geom/Point.js line 219 @@ -7030,7 +7030,7 @@
Parameters:
Source:
- src/geom/Point.js line 241 + src/geom/Point.js line 241 @@ -7188,7 +7188,7 @@
Parameters:
Source:
- src/geom/Point.js line 42 + src/geom/Point.js line 42 @@ -7346,7 +7346,7 @@
Parameters:
Source:
- src/geom/Point.js line 262 + src/geom/Point.js line 262 @@ -7504,7 +7504,7 @@
Parameters:
Source:
- src/geom/Point.js line 509 + src/geom/Point.js line 509 @@ -7706,7 +7706,7 @@
Parameters:
Source:
- src/geom/Point.js line 277 + src/geom/Point.js line 277 @@ -7888,7 +7888,7 @@
Parameters:
Source:
- src/geom/Point.js line 161 + src/geom/Point.js line 161 @@ -8046,7 +8046,7 @@
Parameters:
Source:
- src/geom/Point.js line 497 + src/geom/Point.js line 497 @@ -8207,7 +8207,7 @@
Parameters:
Source:
- src/geom/Point.js line 290 + src/geom/Point.js line 290 @@ -8389,7 +8389,7 @@
Parameters:
Source:
- src/geom/Point.js line 302 + src/geom/Point.js line 302 @@ -8547,7 +8547,7 @@
Parameters:
Source:
- src/geom/Point.js line 468 + src/geom/Point.js line 468 @@ -8662,7 +8662,7 @@

Source:
- src/geom/Point.js line 554 + src/geom/Point.js line 554 @@ -8770,7 +8770,7 @@

Source:
- src/geom/Point.js line 398 + src/geom/Point.js line 398 @@ -8878,7 +8878,7 @@

Source:
- src/geom/Point.js line 409 + src/geom/Point.js line 409 @@ -8986,7 +8986,7 @@

Source:
- src/geom/Point.js line 54 + src/geom/Point.js line 54 @@ -9094,7 +9094,7 @@

Source:
- src/geom/Point.js line 486 + src/geom/Point.js line 486 @@ -9252,7 +9252,7 @@
Parameters:
Source:
- src/geom/Point.js line 450 + src/geom/Point.js line 450 @@ -9441,7 +9441,7 @@
Parameters:
Source:
- src/geom/Point.js line 146 + src/geom/Point.js line 146 @@ -9549,7 +9549,7 @@

Source:
- src/geom/Point.js line 432 + src/geom/Point.js line 432 @@ -9657,7 +9657,7 @@

Source:
- src/geom/Point.js line 543 + src/geom/Point.js line 543 @@ -9765,7 +9765,7 @@

Source:
- src/geom/Point.js line 521 + src/geom/Point.js line 521 @@ -10089,7 +10089,7 @@
Parameters:
Source:
- src/geom/Point.js line 382 + src/geom/Point.js line 382 @@ -10197,7 +10197,7 @@

Source:
- src/geom/Point.js line 576 + src/geom/Point.js line 576 @@ -10305,7 +10305,7 @@

Source:
- src/geom/Point.js line 532 + src/geom/Point.js line 532 @@ -10539,7 +10539,7 @@
Parameters:
Source:
- src/geom/Point.js line 1042 + src/geom/Point.js line 1042 @@ -10744,7 +10744,7 @@
Parameters:
Source:
- src/geom/Point.js line 82 + src/geom/Point.js line 82 @@ -10902,7 +10902,7 @@
Parameters:
Source:
- src/geom/Point.js line 420 + src/geom/Point.js line 420 @@ -11107,7 +11107,7 @@
Parameters:
Source:
- src/geom/Point.js line 65 + src/geom/Point.js line 65 @@ -11361,7 +11361,7 @@
Parameters:
Source:
- src/geom/Point.js line 99 + src/geom/Point.js line 99 @@ -11569,7 +11569,7 @@
Parameters:
Source:
- src/geom/Point.js line 1060 + src/geom/Point.js line 1060 @@ -11751,7 +11751,7 @@
Parameters:
Source:
- src/geom/Point.js line 131 + src/geom/Point.js line 131 @@ -11859,7 +11859,7 @@

Source:
- src/geom/Point.js line 587 + src/geom/Point.js line 587 @@ -11926,9 +11926,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -11945,7 +11945,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -11974,7 +11974,7 @@
Returns:
- + diff --git a/docs/Phaser.Pointer.html b/docs/Phaser.Pointer.html index ef93a4a8e..e33af9686 100644 --- a/docs/Phaser.Pointer.html +++ b/docs/Phaser.Pointer.html @@ -6,7 +6,7 @@ Phaser CE Class: Pointer - + @@ -294,7 +294,7 @@
Parameters:
Source:
- src/input/Pointer.js line 16 + src/input/Pointer.js line 16 @@ -400,7 +400,7 @@
Type:
Source:
- src/input/Pointer.js line 398 + src/input/Pointer.js line 398 @@ -477,7 +477,7 @@
Type:
Source:
- src/input/Pointer.js line 413 + src/input/Pointer.js line 413 @@ -555,7 +555,7 @@
Type:
Source:
- src/input/Pointer.js line 406 + src/input/Pointer.js line 406 @@ -632,7 +632,7 @@
Type:
Source:
- src/input/Pointer.js line 376 + src/input/Pointer.js line 376 @@ -709,7 +709,7 @@
Type:
Source:
- src/input/Pointer.js line 390 + src/input/Pointer.js line 390 @@ -786,7 +786,7 @@
Type:
Source:
- src/input/Pointer.js line 369 + src/input/Pointer.js line 369 @@ -863,7 +863,7 @@
Type:
Source:
- src/input/Pointer.js line 383 + src/input/Pointer.js line 383 @@ -940,7 +940,7 @@
Type:
Source:
- src/input/Pointer.js line 318 + src/input/Pointer.js line 318 @@ -1020,7 +1020,7 @@
Type:
Source:
- src/input/Pointer.js line 120 + src/input/Pointer.js line 120 @@ -1099,7 +1099,7 @@
Type:
Source:
- src/input/Pointer.js line 70 + src/input/Pointer.js line 70 @@ -1177,7 +1177,7 @@
Type:
Source:
- src/input/Pointer.js line 346 + src/input/Pointer.js line 346 @@ -1254,7 +1254,7 @@
Type:
Source:
- src/input/Pointer.js line 181 + src/input/Pointer.js line 181 @@ -1331,7 +1331,7 @@
Type:
Source:
- src/input/Pointer.js line 186 + src/input/Pointer.js line 186 @@ -1408,7 +1408,7 @@
Type:
Source:
- src/input/Pointer.js line 324 + src/input/Pointer.js line 324 @@ -1487,7 +1487,7 @@
Type:
Source:
- src/input/Pointer.js line 1185 + src/input/Pointer.js line 1185 @@ -1567,7 +1567,7 @@
Type:
Source:
- src/input/Pointer.js line 146 + src/input/Pointer.js line 146 @@ -1651,7 +1651,7 @@
Type:
Source:
- src/input/Pointer.js line 38 + src/input/Pointer.js line 38 @@ -1731,7 +1731,7 @@
Type:
Source:
- src/input/Pointer.js line 133 + src/input/Pointer.js line 133 @@ -1808,7 +1808,7 @@
Type:
Source:
- src/input/Pointer.js line 21 + src/input/Pointer.js line 21 @@ -1885,7 +1885,7 @@
Type:
Source:
- src/input/Pointer.js line 26 + src/input/Pointer.js line 26 @@ -1962,7 +1962,7 @@
Type:
Source:
- src/input/Pointer.js line 44 + src/input/Pointer.js line 44 @@ -2050,7 +2050,7 @@
Type:
Source:
- src/input/Pointer.js line 312 + src/input/Pointer.js line 312 @@ -2128,7 +2128,7 @@
Type:
Source:
- src/input/Pointer.js line 257 + src/input/Pointer.js line 257 @@ -2205,7 +2205,7 @@
Type:
Source:
- src/input/Pointer.js line 249 + src/input/Pointer.js line 249 @@ -2290,7 +2290,7 @@
Type:
Source:
- src/input/Pointer.js line 265 + src/input/Pointer.js line 265 @@ -2369,7 +2369,7 @@
Type:
Source:
- src/input/Pointer.js line 81 + src/input/Pointer.js line 81 @@ -2449,7 +2449,7 @@
Type:
Source:
- src/input/Pointer.js line 94 + src/input/Pointer.js line 94 @@ -2526,7 +2526,7 @@
Type:
Source:
- src/input/Pointer.js line 226 + src/input/Pointer.js line 226 @@ -2603,7 +2603,7 @@
Type:
Source:
- src/input/Pointer.js line 232 + src/input/Pointer.js line 232 @@ -2680,7 +2680,7 @@
Type:
Source:
- src/input/Pointer.js line 295 + src/input/Pointer.js line 295 @@ -2757,7 +2757,7 @@
Type:
Source:
- src/input/Pointer.js line 191 + src/input/Pointer.js line 191 @@ -2834,7 +2834,7 @@
Type:
Source:
- src/input/Pointer.js line 196 + src/input/Pointer.js line 196 @@ -2911,7 +2911,7 @@
Type:
Source:
- src/input/Pointer.js line 50 + src/input/Pointer.js line 50 @@ -2988,7 +2988,7 @@
Type:
Source:
- src/input/Pointer.js line 55 + src/input/Pointer.js line 55 @@ -3065,7 +3065,7 @@
Type:
Source:
- src/input/Pointer.js line 329 + src/input/Pointer.js line 329 @@ -3142,7 +3142,7 @@
Type:
Source:
- src/input/Pointer.js line 334 + src/input/Pointer.js line 334 @@ -3219,7 +3219,7 @@
Type:
Source:
- src/input/Pointer.js line 339 + src/input/Pointer.js line 339 @@ -3296,7 +3296,7 @@
Type:
Source:
- src/input/Pointer.js line 283 + src/input/Pointer.js line 283 @@ -3373,7 +3373,7 @@
Type:
Source:
- src/input/Pointer.js line 213 + src/input/Pointer.js line 213 @@ -3457,7 +3457,7 @@
Type:
Source:
- src/input/Pointer.js line 220 + src/input/Pointer.js line 220 @@ -3544,7 +3544,7 @@
Type:
Source:
- src/input/Pointer.js line 107 + src/input/Pointer.js line 107 @@ -3621,7 +3621,7 @@
Type:
Source:
- src/input/Pointer.js line 201 + src/input/Pointer.js line 201 @@ -3698,7 +3698,7 @@
Type:
Source:
- src/input/Pointer.js line 206 + src/input/Pointer.js line 206 @@ -3775,7 +3775,7 @@
Type:
Source:
- src/input/Pointer.js line 61 + src/input/Pointer.js line 61 @@ -3852,7 +3852,7 @@
Type:
Source:
- src/input/Pointer.js line 301 + src/input/Pointer.js line 301 @@ -3929,7 +3929,7 @@
Type:
Source:
- src/input/Pointer.js line 271 + src/input/Pointer.js line 271 @@ -4006,7 +4006,7 @@
Type:
Source:
- src/input/Pointer.js line 277 + src/input/Pointer.js line 277 @@ -4083,7 +4083,7 @@
Type:
Source:
- src/input/Pointer.js line 289 + src/input/Pointer.js line 289 @@ -4160,7 +4160,7 @@
Type:
Source:
- src/input/Pointer.js line 32 + src/input/Pointer.js line 32 @@ -4237,7 +4237,7 @@
Type:
Source:
- src/input/Pointer.js line 176 + src/input/Pointer.js line 176 @@ -4314,7 +4314,7 @@
Type:
Source:
- src/input/Pointer.js line 1208 + src/input/Pointer.js line 1208 @@ -4391,7 +4391,7 @@
Type:
Source:
- src/input/Pointer.js line 1223 + src/input/Pointer.js line 1223 @@ -4468,7 +4468,7 @@
Type:
Source:
- src/input/Pointer.js line 238 + src/input/Pointer.js line 238 @@ -4545,7 +4545,7 @@
Type:
Source:
- src/input/Pointer.js line 244 + src/input/Pointer.js line 244 @@ -4753,7 +4753,7 @@
Parameters:
Source:
- src/input/Pointer.js line 1070 + src/input/Pointer.js line 1070 @@ -4901,7 +4901,7 @@
Parameters:
Source:
- src/input/Pointer.js line 1040 + src/input/Pointer.js line 1040 @@ -5073,7 +5073,7 @@
Parameters:
Source:
- src/input/Pointer.js line 1055 + src/input/Pointer.js line 1055 @@ -5237,7 +5237,7 @@
Parameters:
Source:
- src/input/Pointer.js line 953 + src/input/Pointer.js line 953 @@ -5433,7 +5433,7 @@
Parameters:
Source:
- src/input/Pointer.js line 724 + src/input/Pointer.js line 724 @@ -5587,7 +5587,7 @@
Parameters:
Source:
- src/input/Pointer.js line 814 + src/input/Pointer.js line 814 @@ -5695,7 +5695,7 @@

Source:
- src/input/Pointer.js line 1142 + src/input/Pointer.js line 1142 @@ -5779,7 +5779,7 @@

Source:
- src/input/Pointer.js line 417 + src/input/Pointer.js line 417 @@ -5863,7 +5863,7 @@

Source:
- src/input/Pointer.js line 1171 + src/input/Pointer.js line 1171 @@ -5997,7 +5997,7 @@
Parameters:
Source:
- src/input/Pointer.js line 604 + src/input/Pointer.js line 604 @@ -6137,7 +6137,7 @@
Parameters:
Source:
- src/input/Pointer.js line 965 + src/input/Pointer.js line 965 @@ -6330,7 +6330,7 @@
Parameters:
Source:
- src/input/Pointer.js line 897 + src/input/Pointer.js line 897 @@ -6414,7 +6414,7 @@

Source:
- src/input/Pointer.js line 673 + src/input/Pointer.js line 673 @@ -6549,7 +6549,7 @@
Parameters:
Source:
- src/input/Pointer.js line 581 + src/input/Pointer.js line 581 @@ -6592,9 +6592,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6611,7 +6611,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6640,7 +6640,7 @@
Parameters:
- + diff --git a/docs/Phaser.PointerLock.html b/docs/Phaser.PointerLock.html index b2c1eb8f0..9610801c5 100644 --- a/docs/Phaser.PointerLock.html +++ b/docs/Phaser.PointerLock.html @@ -6,7 +6,7 @@ Phaser CE Class: PointerLock - + @@ -230,7 +230,7 @@
Parameters:
Source:
- src/input/PointerLock.js line 7 + src/input/PointerLock.js line 7 @@ -335,7 +335,7 @@
Type:
Source:
- src/input/PointerLock.js line 32 + src/input/PointerLock.js line 32 @@ -412,7 +412,7 @@
Type:
Source:
- src/input/PointerLock.js line 25 + src/input/PointerLock.js line 25 @@ -489,7 +489,7 @@
Type:
Source:
- src/input/PointerLock.js line 13 + src/input/PointerLock.js line 13 @@ -566,7 +566,7 @@
Type:
Source:
- src/input/PointerLock.js line 19 + src/input/PointerLock.js line 19 @@ -643,7 +643,7 @@
Type:
Source:
- src/input/PointerLock.js line 38 + src/input/PointerLock.js line 38 @@ -721,7 +721,7 @@
Type:
Source:
- src/input/PointerLock.js line 45 + src/input/PointerLock.js line 45 @@ -799,7 +799,7 @@
Type:
Source:
- src/input/PointerLock.js line 52 + src/input/PointerLock.js line 52 @@ -878,7 +878,7 @@

Source:
- src/input/PointerLock.js line 152 + src/input/PointerLock.js line 152 @@ -963,7 +963,7 @@

Source:
- src/input/PointerLock.js line 137 + src/input/PointerLock.js line 137 @@ -1047,7 +1047,7 @@

Source:
- src/input/PointerLock.js line 92 + src/input/PointerLock.js line 92 @@ -1157,7 +1157,7 @@

Source:
- src/input/PointerLock.js line 122 + src/input/PointerLock.js line 122 @@ -1200,9 +1200,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1219,7 +1219,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1248,7 +1248,7 @@

- + diff --git a/docs/Phaser.PointerMode.html b/docs/Phaser.PointerMode.html index c5f57a8df..0d830493b 100644 --- a/docs/Phaser.PointerMode.html +++ b/docs/Phaser.PointerMode.html @@ -6,7 +6,7 @@ Phaser CE Class: PointerMode - + @@ -184,7 +184,7 @@

Source:
- src/input/Pointer.js line 1248 + src/input/Pointer.js line 1248 @@ -278,7 +278,7 @@

Source:
- src/input/Pointer.js line 1263 + src/input/Pointer.js line 1263 @@ -346,7 +346,7 @@

Source:
- src/input/Pointer.js line 1257 + src/input/Pointer.js line 1257 @@ -379,9 +379,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -398,7 +398,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -427,7 +427,7 @@

- + diff --git a/docs/Phaser.Polygon.html b/docs/Phaser.Polygon.html index ec0c713c3..aeecbfadd 100644 --- a/docs/Phaser.Polygon.html +++ b/docs/Phaser.Polygon.html @@ -6,7 +6,7 @@ Phaser CE Class: Polygon - + @@ -248,7 +248,7 @@

Parameters:
Source:
- src/geom/Polygon.js line 24 + src/geom/Polygon.js line 24 @@ -353,7 +353,7 @@
Type:
Source:
- src/geom/Polygon.js line 29 + src/geom/Polygon.js line 29 @@ -430,7 +430,7 @@
Type:
Source:
- src/geom/Polygon.js line 45 + src/geom/Polygon.js line 45 @@ -507,7 +507,7 @@
Type:
Source:
- src/geom/Polygon.js line 50 + src/geom/Polygon.js line 50 @@ -585,7 +585,7 @@
Type:
Source:
- src/geom/Polygon.js line 286 + src/geom/Polygon.js line 286 @@ -662,7 +662,7 @@
Type:
Source:
- src/geom/Polygon.js line 55 + src/geom/Polygon.js line 55 @@ -811,7 +811,7 @@
Parameters:
Source:
- src/geom/Polygon.js line 106 + src/geom/Polygon.js line 106 @@ -993,7 +993,7 @@
Parameters:
Source:
- src/geom/Polygon.js line 130 + src/geom/Polygon.js line 130 @@ -1103,7 +1103,7 @@

Source:
- src/geom/Polygon.js line 89 + src/geom/Polygon.js line 89 @@ -1281,7 +1281,7 @@
Parameters:
Source:
- src/geom/Polygon.js line 180 + src/geom/Polygon.js line 180 @@ -1451,7 +1451,7 @@
Parameters:
Source:
- src/geom/Polygon.js line 60 + src/geom/Polygon.js line 60 @@ -1518,9 +1518,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1537,7 +1537,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1566,7 +1566,7 @@
Returns:
- + diff --git a/docs/Phaser.QuadTree.html b/docs/Phaser.QuadTree.html index fe096c9ef..4c5896754 100644 --- a/docs/Phaser.QuadTree.html +++ b/docs/Phaser.QuadTree.html @@ -6,7 +6,7 @@ Phaser CE Class: QuadTree - + @@ -476,7 +476,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 23 + src/math/QuadTree.js line 23 @@ -581,7 +581,7 @@
Type:
Source:
- src/math/QuadTree.js line 45 + src/math/QuadTree.js line 45 @@ -658,7 +658,7 @@
Type:
Source:
- src/math/QuadTree.js line 40 + src/math/QuadTree.js line 40 @@ -742,7 +742,7 @@
Type:
Source:
- src/math/QuadTree.js line 35 + src/math/QuadTree.js line 35 @@ -826,7 +826,7 @@
Type:
Source:
- src/math/QuadTree.js line 29 + src/math/QuadTree.js line 29 @@ -903,7 +903,7 @@
Type:
Source:
- src/math/QuadTree.js line 55 + src/math/QuadTree.js line 55 @@ -980,7 +980,7 @@
Type:
Source:
- src/math/QuadTree.js line 50 + src/math/QuadTree.js line 50 @@ -1058,7 +1058,7 @@

Source:
- src/math/QuadTree.js line 287 + src/math/QuadTree.js line 287 @@ -1195,7 +1195,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 197 + src/math/QuadTree.js line 197 @@ -1356,7 +1356,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 146 + src/math/QuadTree.js line 146 @@ -1490,7 +1490,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 101 + src/math/QuadTree.js line 101 @@ -1627,7 +1627,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 112 + src/math/QuadTree.js line 112 @@ -2005,7 +2005,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 68 + src/math/QuadTree.js line 68 @@ -2142,7 +2142,7 @@
Parameters:
Source:
- src/math/QuadTree.js line 240 + src/math/QuadTree.js line 240 @@ -2252,7 +2252,7 @@

Source:
- src/math/QuadTree.js line 126 + src/math/QuadTree.js line 126 @@ -2295,9 +2295,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2314,7 +2314,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2343,7 +2343,7 @@

- + diff --git a/docs/Phaser.RandomDataGenerator.html b/docs/Phaser.RandomDataGenerator.html index f794898c6..21c045729 100644 --- a/docs/Phaser.RandomDataGenerator.html +++ b/docs/Phaser.RandomDataGenerator.html @@ -6,7 +6,7 @@ Phaser CE Class: RandomDataGenerator - + @@ -252,7 +252,7 @@

Parameters:
Source:
- src/math/RandomDataGenerator.js line 21 + src/math/RandomDataGenerator.js line 21 @@ -354,7 +354,7 @@

Source:
- src/math/RandomDataGenerator.js line 293 + src/math/RandomDataGenerator.js line 293 @@ -537,7 +537,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 190 + src/math/RandomDataGenerator.js line 190 @@ -645,7 +645,7 @@

Source:
- src/math/RandomDataGenerator.js line 155 + src/math/RandomDataGenerator.js line 155 @@ -753,7 +753,7 @@

Source:
- src/math/RandomDataGenerator.js line 144 + src/math/RandomDataGenerator.js line 144 @@ -935,7 +935,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 177 + src/math/RandomDataGenerator.js line 177 @@ -1043,7 +1043,7 @@

Source:
- src/math/RandomDataGenerator.js line 217 + src/math/RandomDataGenerator.js line 217 @@ -1201,7 +1201,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 245 + src/math/RandomDataGenerator.js line 245 @@ -1309,7 +1309,7 @@

Source:
- src/math/RandomDataGenerator.js line 166 + src/math/RandomDataGenerator.js line 166 @@ -1491,7 +1491,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 204 + src/math/RandomDataGenerator.js line 204 @@ -1599,7 +1599,7 @@

Source:
- src/math/RandomDataGenerator.js line 257 + src/math/RandomDataGenerator.js line 257 @@ -1758,7 +1758,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 80 + src/math/RandomDataGenerator.js line 80 @@ -1911,7 +1911,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 304 + src/math/RandomDataGenerator.js line 304 @@ -2093,7 +2093,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 280 + src/math/RandomDataGenerator.js line 280 @@ -2201,7 +2201,7 @@

Source:
- src/math/RandomDataGenerator.js line 228 + src/math/RandomDataGenerator.js line 228 @@ -2359,7 +2359,7 @@
Parameters:
Source:
- src/math/RandomDataGenerator.js line 268 + src/math/RandomDataGenerator.js line 268 @@ -2426,9 +2426,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2445,7 +2445,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2474,7 +2474,7 @@
Returns:
- + diff --git a/docs/Phaser.Rectangle.html b/docs/Phaser.Rectangle.html index 6ac490dcb..6a80cae69 100644 --- a/docs/Phaser.Rectangle.html +++ b/docs/Phaser.Rectangle.html @@ -6,7 +6,7 @@ Phaser CE Class: Rectangle - + @@ -303,7 +303,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 18 + src/geom/Rectangle.js line 18 @@ -408,7 +408,7 @@
Type:
Source:
- src/geom/Rectangle.js line 503 + src/geom/Rectangle.js line 503 @@ -485,7 +485,7 @@
Type:
Source:
- src/geom/Rectangle.js line 529 + src/geom/Rectangle.js line 529 @@ -562,7 +562,7 @@
Type:
Source:
- src/geom/Rectangle.js line 549 + src/geom/Rectangle.js line 549 @@ -639,7 +639,7 @@
Type:
Source:
- src/geom/Rectangle.js line 652 + src/geom/Rectangle.js line 652 @@ -716,7 +716,7 @@
Type:
Source:
- src/geom/Rectangle.js line 671 + src/geom/Rectangle.js line 671 @@ -794,7 +794,7 @@
Type:
Source:
- src/geom/Rectangle.js line 788 + src/geom/Rectangle.js line 788 @@ -871,7 +871,7 @@
Type:
Source:
- src/geom/Rectangle.js line 489 + src/geom/Rectangle.js line 489 @@ -948,7 +948,7 @@
Type:
Source:
- src/geom/Rectangle.js line 475 + src/geom/Rectangle.js line 475 @@ -1025,7 +1025,7 @@
Type:
Source:
- src/geom/Rectangle.js line 43 + src/geom/Rectangle.js line 43 @@ -1102,7 +1102,7 @@
Type:
Source:
- src/geom/Rectangle.js line 569 + src/geom/Rectangle.js line 569 @@ -1179,7 +1179,7 @@
Type:
Source:
- src/geom/Rectangle.js line 637 + src/geom/Rectangle.js line 637 @@ -1256,7 +1256,7 @@
Type:
Source:
- src/geom/Rectangle.js line 690 + src/geom/Rectangle.js line 690 @@ -1333,7 +1333,7 @@
Type:
Source:
- src/geom/Rectangle.js line 705 + src/geom/Rectangle.js line 705 @@ -1410,7 +1410,7 @@
Type:
Source:
- src/geom/Rectangle.js line 596 + src/geom/Rectangle.js line 596 @@ -1488,7 +1488,7 @@
Type:
Source:
- src/geom/Rectangle.js line 720 + src/geom/Rectangle.js line 720 @@ -1565,7 +1565,7 @@
Type:
Source:
- src/geom/Rectangle.js line 748 + src/geom/Rectangle.js line 748 @@ -1642,7 +1642,7 @@
Type:
Source:
- src/geom/Rectangle.js line 768 + src/geom/Rectangle.js line 768 @@ -1719,7 +1719,7 @@
Type:
Source:
- src/geom/Rectangle.js line 49 + src/geom/Rectangle.js line 49 @@ -1796,7 +1796,7 @@
Type:
Source:
- src/geom/Rectangle.js line 622 + src/geom/Rectangle.js line 622 @@ -1873,7 +1873,7 @@
Type:
Source:
- src/geom/Rectangle.js line 38 + src/geom/Rectangle.js line 38 @@ -1950,7 +1950,7 @@
Type:
Source:
- src/geom/Rectangle.js line 28 + src/geom/Rectangle.js line 28 @@ -2027,7 +2027,7 @@
Type:
Source:
- src/geom/Rectangle.js line 33 + src/geom/Rectangle.js line 33 @@ -2199,7 +2199,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 1071 + src/geom/Rectangle.js line 1071 @@ -2401,7 +2401,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 864 + src/geom/Rectangle.js line 864 @@ -2603,7 +2603,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 902 + src/geom/Rectangle.js line 902 @@ -2785,7 +2785,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 936 + src/geom/Rectangle.js line 936 @@ -3063,7 +3063,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 920 + src/geom/Rectangle.js line 920 @@ -3246,7 +3246,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 948 + src/geom/Rectangle.js line 948 @@ -3448,7 +3448,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 885 + src/geom/Rectangle.js line 885 @@ -3627,7 +3627,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 967 + src/geom/Rectangle.js line 967 @@ -3833,7 +3833,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 813 + src/geom/Rectangle.js line 813 @@ -4015,7 +4015,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 831 + src/geom/Rectangle.js line 831 @@ -4249,7 +4249,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 992 + src/geom/Rectangle.js line 992 @@ -4432,7 +4432,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 1018 + src/geom/Rectangle.js line 1018 @@ -4686,7 +4686,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 1036 + src/geom/Rectangle.js line 1036 @@ -4868,7 +4868,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 980 + src/geom/Rectangle.js line 980 @@ -5070,7 +5070,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 843 + src/geom/Rectangle.js line 843 @@ -5304,7 +5304,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 1053 + src/geom/Rectangle.js line 1053 @@ -5412,7 +5412,7 @@

Source:
- src/geom/Rectangle.js line 155 + src/geom/Rectangle.js line 155 @@ -5496,7 +5496,7 @@

Source:
- src/geom/Rectangle.js line 165 + src/geom/Rectangle.js line 165 @@ -5654,7 +5654,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 117 + src/geom/Rectangle.js line 117 @@ -5824,7 +5824,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 255 + src/geom/Rectangle.js line 255 @@ -6002,7 +6002,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 266 + src/geom/Rectangle.js line 266 @@ -6161,7 +6161,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 278 + src/geom/Rectangle.js line 278 @@ -6319,7 +6319,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 177 + src/geom/Rectangle.js line 177 @@ -6477,7 +6477,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 188 + src/geom/Rectangle.js line 188 @@ -6635,7 +6635,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 199 + src/geom/Rectangle.js line 199 @@ -6794,7 +6794,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 290 + src/geom/Rectangle.js line 290 @@ -6902,7 +6902,7 @@

Source:
- src/geom/Rectangle.js line 133 + src/geom/Rectangle.js line 133 @@ -6986,7 +6986,7 @@

Source:
- src/geom/Rectangle.js line 143 + src/geom/Rectangle.js line 143 @@ -7172,7 +7172,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 373 + src/geom/Rectangle.js line 373 @@ -7354,7 +7354,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 215 + src/geom/Rectangle.js line 215 @@ -7536,7 +7536,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 302 + src/geom/Rectangle.js line 302 @@ -7695,7 +7695,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 314 + src/geom/Rectangle.js line 314 @@ -7949,7 +7949,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 327 + src/geom/Rectangle.js line 327 @@ -8131,7 +8131,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 54 + src/geom/Rectangle.js line 54 @@ -8289,7 +8289,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 69 + src/geom/Rectangle.js line 69 @@ -8463,7 +8463,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 355 + src/geom/Rectangle.js line 355 @@ -8646,7 +8646,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 238 + src/geom/Rectangle.js line 238 @@ -8848,7 +8848,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 99 + src/geom/Rectangle.js line 99 @@ -9078,7 +9078,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 80 + src/geom/Rectangle.js line 80 @@ -9350,7 +9350,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 425 + src/geom/Rectangle.js line 425 @@ -9520,7 +9520,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 227 + src/geom/Rectangle.js line 227 @@ -9628,7 +9628,7 @@

Source:
- src/geom/Rectangle.js line 463 + src/geom/Rectangle.js line 463 @@ -9830,7 +9830,7 @@
Parameters:
Source:
- src/geom/Rectangle.js line 343 + src/geom/Rectangle.js line 343 @@ -9897,9 +9897,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -9916,7 +9916,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -9945,7 +9945,7 @@
Returns:
- + diff --git a/docs/Phaser.RenderTexture.html b/docs/Phaser.RenderTexture.html index f219a9c82..d873a63d8 100644 --- a/docs/Phaser.RenderTexture.html +++ b/docs/Phaser.RenderTexture.html @@ -6,7 +6,7 @@ Phaser CE Class: RenderTexture - + @@ -447,7 +447,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 21 + src/gameobjects/RenderTexture.js line 21 @@ -568,7 +568,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 66 + src/gameobjects/RenderTexture.js line 66 @@ -660,7 +660,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 134 + src/pixi/textures/Texture.js line 134 @@ -751,7 +751,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 60 + src/pixi/textures/Texture.js line 60 @@ -828,7 +828,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 34 + src/gameobjects/RenderTexture.js line 34 @@ -919,7 +919,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 125 + src/pixi/textures/Texture.js line 125 @@ -1005,7 +1005,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 84 + src/pixi/textures/Texture.js line 84 @@ -1082,7 +1082,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 39 + src/gameobjects/RenderTexture.js line 39 @@ -1168,7 +1168,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 33 + src/pixi/textures/Texture.js line 33 @@ -1248,7 +1248,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 84 + src/gameobjects/RenderTexture.js line 84 @@ -1334,7 +1334,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 100 + src/pixi/textures/Texture.js line 100 @@ -1420,7 +1420,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 92 + src/pixi/textures/Texture.js line 92 @@ -1508,7 +1508,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 144 + src/pixi/textures/Texture.js line 144 @@ -1594,7 +1594,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 68 + src/pixi/textures/Texture.js line 68 @@ -1671,7 +1671,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 44 + src/gameobjects/RenderTexture.js line 44 @@ -1749,7 +1749,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 107 + src/gameobjects/RenderTexture.js line 107 @@ -1840,7 +1840,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 117 + src/pixi/textures/Texture.js line 117 @@ -1918,7 +1918,7 @@

Source:
- src/gameobjects/RenderTexture.js line 253 + src/gameobjects/RenderTexture.js line 253 @@ -2061,7 +2061,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 173 + src/pixi/textures/Texture.js line 173 @@ -2228,7 +2228,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 283 + src/pixi/textures/Texture.js line 283 @@ -2428,7 +2428,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 407 + src/gameobjects/RenderTexture.js line 407 @@ -2543,7 +2543,7 @@

Source:
- src/gameobjects/RenderTexture.js line 422 + src/gameobjects/RenderTexture.js line 422 @@ -2817,7 +2817,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 380 + src/gameobjects/RenderTexture.js line 380 @@ -3089,7 +3089,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 175 + src/gameobjects/RenderTexture.js line 175 @@ -3365,7 +3365,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 148 + src/gameobjects/RenderTexture.js line 148 @@ -3641,7 +3641,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 117 + src/gameobjects/RenderTexture.js line 117 @@ -3823,7 +3823,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 211 + src/gameobjects/RenderTexture.js line 211 @@ -3966,7 +3966,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 186 + src/pixi/textures/Texture.js line 186 @@ -4009,9 +4009,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4028,7 +4028,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4057,7 +4057,7 @@
Parameters:
- + diff --git a/docs/Phaser.RequestAnimationFrame.html b/docs/Phaser.RequestAnimationFrame.html index 6d9b59fab..cd6767e09 100644 --- a/docs/Phaser.RequestAnimationFrame.html +++ b/docs/Phaser.RequestAnimationFrame.html @@ -6,7 +6,7 @@ Phaser CE Class: RequestAnimationFrame - + @@ -286,7 +286,7 @@
Parameters:
Source:
- src/utils/RequestAnimationFrame.js line 15 + src/utils/RequestAnimationFrame.js line 15 @@ -391,7 +391,7 @@
Type:
Source:
- src/utils/RequestAnimationFrame.js line 33 + src/utils/RequestAnimationFrame.js line 33 @@ -468,7 +468,7 @@
Type:
Source:
- src/utils/RequestAnimationFrame.js line 22 + src/utils/RequestAnimationFrame.js line 22 @@ -545,7 +545,7 @@
Type:
Source:
- src/utils/RequestAnimationFrame.js line 28 + src/utils/RequestAnimationFrame.js line 28 @@ -623,7 +623,7 @@

Source:
- src/utils/RequestAnimationFrame.js line 160 + src/utils/RequestAnimationFrame.js line 160 @@ -727,7 +727,7 @@

Source:
- src/utils/RequestAnimationFrame.js line 150 + src/utils/RequestAnimationFrame.js line 150 @@ -831,7 +831,7 @@

Source:
- src/utils/RequestAnimationFrame.js line 69 + src/utils/RequestAnimationFrame.js line 69 @@ -915,7 +915,7 @@

Source:
- src/utils/RequestAnimationFrame.js line 132 + src/utils/RequestAnimationFrame.js line 132 @@ -999,7 +999,7 @@

Source:
- src/utils/RequestAnimationFrame.js line 103 + src/utils/RequestAnimationFrame.js line 103 @@ -1083,7 +1083,7 @@

Source:
- src/utils/RequestAnimationFrame.js line 118 + src/utils/RequestAnimationFrame.js line 118 @@ -1126,9 +1126,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1145,7 +1145,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1174,7 +1174,7 @@

- + diff --git a/docs/Phaser.RetroFont.html b/docs/Phaser.RetroFont.html index 3f259c602..e7a942ee2 100644 --- a/docs/Phaser.RetroFont.html +++ b/docs/Phaser.RetroFont.html @@ -6,7 +6,7 @@ Phaser CE Class: RetroFont - + @@ -589,7 +589,7 @@

Parameters:
Source:
- src/gameobjects/RetroFont.js line 25 + src/gameobjects/RetroFont.js line 25 @@ -705,7 +705,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 195 + src/gameobjects/RetroFont.js line 195 @@ -782,7 +782,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 181 + src/gameobjects/RetroFont.js line 181 @@ -859,7 +859,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 188 + src/gameobjects/RetroFont.js line 188 @@ -936,7 +936,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 202 + src/gameobjects/RetroFont.js line 202 @@ -1013,7 +1013,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 209 + src/gameobjects/RetroFont.js line 209 @@ -1090,7 +1090,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 216 + src/gameobjects/RetroFont.js line 216 @@ -1167,7 +1167,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 223 + src/gameobjects/RetroFont.js line 223 @@ -1244,7 +1244,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 230 + src/gameobjects/RetroFont.js line 230 @@ -1321,7 +1321,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 237 + src/gameobjects/RetroFont.js line 237 @@ -1398,7 +1398,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 244 + src/gameobjects/RetroFont.js line 244 @@ -1475,7 +1475,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 251 + src/gameobjects/RetroFont.js line 251 @@ -1552,7 +1552,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 258 + src/gameobjects/RetroFont.js line 258 @@ -1629,7 +1629,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 265 + src/gameobjects/RetroFont.js line 265 @@ -1706,7 +1706,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 272 + src/gameobjects/RetroFont.js line 272 @@ -1783,7 +1783,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 77 + src/gameobjects/RetroFont.js line 77 @@ -1867,7 +1867,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 89 + src/gameobjects/RetroFont.js line 89 @@ -1953,7 +1953,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 66 + src/gameobjects/RenderTexture.js line 66 @@ -2030,7 +2030,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 45 + src/gameobjects/RetroFont.js line 45 @@ -2107,7 +2107,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 60 + src/gameobjects/RetroFont.js line 60 @@ -2184,7 +2184,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 50 + src/gameobjects/RetroFont.js line 50 @@ -2261,7 +2261,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 55 + src/gameobjects/RetroFont.js line 55 @@ -2338,7 +2338,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 40 + src/gameobjects/RetroFont.js line 40 @@ -2425,7 +2425,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 134 + src/pixi/textures/Texture.js line 134 @@ -2502,7 +2502,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 95 + src/gameobjects/RetroFont.js line 95 @@ -2579,7 +2579,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 101 + src/gameobjects/RetroFont.js line 101 @@ -2657,7 +2657,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 108 + src/gameobjects/RetroFont.js line 108 @@ -2734,7 +2734,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 113 + src/gameobjects/RetroFont.js line 113 @@ -2820,7 +2820,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 60 + src/pixi/textures/Texture.js line 60 @@ -2897,7 +2897,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 130 + src/gameobjects/RetroFont.js line 130 @@ -2983,7 +2983,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 34 + src/gameobjects/RenderTexture.js line 34 @@ -3069,7 +3069,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 125 + src/pixi/textures/Texture.js line 125 @@ -3155,7 +3155,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 84 + src/pixi/textures/Texture.js line 84 @@ -3241,7 +3241,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 39 + src/gameobjects/RenderTexture.js line 39 @@ -3318,7 +3318,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 83 + src/gameobjects/RetroFont.js line 83 @@ -3404,7 +3404,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 33 + src/pixi/textures/Texture.js line 33 @@ -3481,7 +3481,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 66 + src/gameobjects/RetroFont.js line 66 @@ -3558,7 +3558,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 72 + src/gameobjects/RetroFont.js line 72 @@ -3647,7 +3647,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 84 + src/gameobjects/RenderTexture.js line 84 @@ -3738,7 +3738,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 100 + src/pixi/textures/Texture.js line 100 @@ -3824,7 +3824,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 92 + src/pixi/textures/Texture.js line 92 @@ -3912,7 +3912,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 144 + src/pixi/textures/Texture.js line 144 @@ -3989,7 +3989,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 577 + src/gameobjects/RetroFont.js line 577 @@ -4066,7 +4066,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 163 + src/gameobjects/RetroFont.js line 163 @@ -4143,7 +4143,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 541 + src/gameobjects/RetroFont.js line 541 @@ -4229,7 +4229,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 68 + src/pixi/textures/Texture.js line 68 @@ -4311,7 +4311,7 @@
Type:
Source:
- src/gameobjects/RetroFont.js line 170 + src/gameobjects/RetroFont.js line 170 @@ -4393,7 +4393,7 @@
Type:
Source:
- src/gameobjects/RenderTexture.js line 107 + src/gameobjects/RenderTexture.js line 107 @@ -4479,7 +4479,7 @@
Type:
Source:
- src/pixi/textures/Texture.js line 117 + src/pixi/textures/Texture.js line 117 @@ -4557,7 +4557,7 @@

Source:
- src/gameobjects/RetroFont.js line 325 + src/gameobjects/RetroFont.js line 325 @@ -4650,7 +4650,7 @@

Source:
- src/gameobjects/RenderTexture.js line 253 + src/gameobjects/RenderTexture.js line 253 @@ -4793,7 +4793,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 173 + src/pixi/textures/Texture.js line 173 @@ -4960,7 +4960,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 283 + src/pixi/textures/Texture.js line 283 @@ -5169,7 +5169,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 407 + src/gameobjects/RenderTexture.js line 407 @@ -5293,7 +5293,7 @@

Source:
- src/gameobjects/RenderTexture.js line 422 + src/gameobjects/RenderTexture.js line 422 @@ -5576,7 +5576,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 380 + src/gameobjects/RenderTexture.js line 380 @@ -5687,7 +5687,7 @@

Source:
- src/gameobjects/RetroFont.js line 455 + src/gameobjects/RetroFont.js line 455 @@ -5918,7 +5918,7 @@
Parameters:
Source:
- src/gameobjects/RetroFont.js line 416 + src/gameobjects/RetroFont.js line 416 @@ -6072,7 +6072,7 @@
Parameters:
Source:
- src/gameobjects/RetroFont.js line 482 + src/gameobjects/RetroFont.js line 482 @@ -6350,7 +6350,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 175 + src/gameobjects/RenderTexture.js line 175 @@ -6635,7 +6635,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 148 + src/gameobjects/RenderTexture.js line 148 @@ -6920,7 +6920,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 117 + src/gameobjects/RenderTexture.js line 117 @@ -7111,7 +7111,7 @@
Parameters:
Source:
- src/gameobjects/RenderTexture.js line 211 + src/gameobjects/RenderTexture.js line 211 @@ -7302,7 +7302,7 @@
Parameters:
Source:
- src/gameobjects/RetroFont.js line 274 + src/gameobjects/RetroFont.js line 274 @@ -7445,7 +7445,7 @@
Parameters:
Source:
- src/pixi/textures/Texture.js line 186 + src/pixi/textures/Texture.js line 186 @@ -7795,7 +7795,7 @@
Parameters:
Source:
- src/gameobjects/RetroFont.js line 291 + src/gameobjects/RetroFont.js line 291 @@ -7991,7 +7991,7 @@
Parameters:
Source:
- src/gameobjects/RetroFont.js line 509 + src/gameobjects/RetroFont.js line 509 @@ -8034,9 +8034,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -8053,7 +8053,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -8082,7 +8082,7 @@
Parameters:
- + diff --git a/docs/Phaser.Rope.html b/docs/Phaser.Rope.html index f225675f3..5506bd9b1 100644 --- a/docs/Phaser.Rope.html +++ b/docs/Phaser.Rope.html @@ -6,7 +6,7 @@ Phaser CE Class: Rope - + @@ -364,7 +364,7 @@
Parameters:
Source:
- src/gameobjects/Rope.js line 44 + src/gameobjects/Rope.js line 44 @@ -536,7 +536,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -632,7 +632,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -723,7 +723,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -810,7 +810,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -907,7 +907,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1010,7 +1010,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1097,7 +1097,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1190,7 +1190,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1277,7 +1277,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1354,7 +1354,7 @@
Type:
Source:
- src/gameobjects/Rope.js line 101 + src/gameobjects/Rope.js line 101 @@ -1441,7 +1441,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1528,7 +1528,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1620,7 +1620,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -1706,7 +1706,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1792,7 +1792,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1880,7 +1880,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -1976,7 +1976,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2062,7 +2062,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2149,7 +2149,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -2236,7 +2236,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -2322,7 +2322,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -2409,7 +2409,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2486,7 +2486,7 @@
Type:
Source:
- src/gameobjects/Rope.js line 93 + src/gameobjects/Rope.js line 93 @@ -2573,7 +2573,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2671,7 +2671,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 277 + src/gameobjects/components/Core.js line 277 @@ -2757,7 +2757,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2848,7 +2848,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2941,7 +2941,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -3032,7 +3032,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3123,7 +3123,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3210,7 +3210,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3296,7 +3296,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3382,7 +3382,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3478,7 +3478,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3566,7 +3566,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3653,7 +3653,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3739,7 +3739,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -3841,7 +3841,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -3928,7 +3928,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4018,7 +4018,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4107,7 +4107,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4194,7 +4194,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4282,7 +4282,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4370,7 +4370,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4456,7 +4456,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -4543,7 +4543,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -4632,7 +4632,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -4721,7 +4721,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -4808,7 +4808,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4896,7 +4896,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4982,7 +4982,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5068,7 +5068,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5155,7 +5155,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -5242,7 +5242,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -5329,7 +5329,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -5418,7 +5418,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5507,7 +5507,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -5595,7 +5595,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -5683,7 +5683,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -5802,7 +5802,7 @@
Properties:
Source:
- src/gameobjects/Rope.js line 755 + src/gameobjects/Rope.js line 755 @@ -5890,7 +5890,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -5977,7 +5977,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -6063,7 +6063,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -6149,7 +6149,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -6226,7 +6226,7 @@
Type:
Source:
- src/gameobjects/Rope.js line 58 + src/gameobjects/Rope.js line 58 @@ -6303,7 +6303,7 @@
Type:
Source:
- src/gameobjects/Rope.js line 726 + src/gameobjects/Rope.js line 726 @@ -6402,7 +6402,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -6488,7 +6488,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -6576,7 +6576,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -6668,7 +6668,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -6759,7 +6759,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -6850,7 +6850,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -6941,7 +6941,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -7032,7 +7032,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -7118,7 +7118,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -7210,7 +7210,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -7302,7 +7302,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -7391,7 +7391,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -7528,7 +7528,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7719,7 +7719,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -8062,7 +8062,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -8406,7 +8406,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -8526,7 +8526,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -8693,7 +8693,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -8919,7 +8919,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -9019,7 +9019,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -9264,7 +9264,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -9429,7 +9429,7 @@
Parameters:
Source:
- src/gameobjects/Rope.js line 666 + src/gameobjects/Rope.js line 666 @@ -9596,7 +9596,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -9763,7 +9763,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -9880,7 +9880,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -10001,7 +10001,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -10286,7 +10286,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -10382,7 +10382,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -10502,7 +10502,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -10685,7 +10685,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -10991,7 +10991,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -11108,7 +11108,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -11197,7 +11197,7 @@

Source:
- src/gameobjects/Rope.js line 141 + src/gameobjects/Rope.js line 141 @@ -11290,7 +11290,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -11374,7 +11374,7 @@

Source:
- src/gameobjects/Rope.js line 189 + src/gameobjects/Rope.js line 189 @@ -11517,7 +11517,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -11684,7 +11684,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -11875,7 +11875,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -11959,7 +11959,7 @@

Source:
- src/gameobjects/Rope.js line 627 + src/gameobjects/Rope.js line 627 @@ -12124,7 +12124,7 @@
Parameters:
Source:
- src/gameobjects/Rope.js line 171 + src/gameobjects/Rope.js line 171 @@ -12241,7 +12241,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -12434,7 +12434,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -12599,7 +12599,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -12719,7 +12719,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -12910,7 +12910,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -13054,7 +13054,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -13291,7 +13291,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -13425,7 +13425,7 @@
Parameters:
Source:
- src/gameobjects/Rope.js line 302 + src/gameobjects/Rope.js line 302 @@ -13592,7 +13592,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -13735,7 +13735,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -13948,7 +13948,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -14063,7 +14063,7 @@

Source:
- src/gameobjects/Rope.js line 157 + src/gameobjects/Rope.js line 157 @@ -14156,7 +14156,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -14276,7 +14276,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -14365,7 +14365,7 @@

Source:
- src/gameobjects/Rope.js line 237 + src/gameobjects/Rope.js line 237 @@ -14408,9 +14408,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -14427,7 +14427,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -14456,7 +14456,7 @@

- + diff --git a/docs/Phaser.RoundedRectangle.html b/docs/Phaser.RoundedRectangle.html index 007c34178..333463203 100644 --- a/docs/Phaser.RoundedRectangle.html +++ b/docs/Phaser.RoundedRectangle.html @@ -6,7 +6,7 @@ Phaser CE Class: RoundedRectangle - + @@ -411,7 +411,7 @@

Parameters:
Source:
- src/geom/RoundedRectangle.js line 20 + src/geom/RoundedRectangle.js line 20 @@ -516,7 +516,7 @@
Type:
Source:
- src/geom/RoundedRectangle.js line 46 + src/geom/RoundedRectangle.js line 46 @@ -593,7 +593,7 @@
Type:
Source:
- src/geom/RoundedRectangle.js line 51 + src/geom/RoundedRectangle.js line 51 @@ -670,7 +670,7 @@
Type:
Source:
- src/geom/RoundedRectangle.js line 57 + src/geom/RoundedRectangle.js line 57 @@ -747,7 +747,7 @@
Type:
Source:
- src/geom/RoundedRectangle.js line 41 + src/geom/RoundedRectangle.js line 41 @@ -824,7 +824,7 @@
Type:
Source:
- src/geom/RoundedRectangle.js line 31 + src/geom/RoundedRectangle.js line 31 @@ -901,7 +901,7 @@
Type:
Source:
- src/geom/RoundedRectangle.js line 36 + src/geom/RoundedRectangle.js line 36 @@ -980,7 +980,7 @@

Source:
- src/geom/RoundedRectangle.js line 62 + src/geom/RoundedRectangle.js line 62 @@ -1158,7 +1158,7 @@
Parameters:
Source:
- src/geom/RoundedRectangle.js line 74 + src/geom/RoundedRectangle.js line 74 @@ -1225,9 +1225,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1244,7 +1244,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1273,7 +1273,7 @@
Returns:
- + diff --git a/docs/Phaser.ScaleManager.html b/docs/Phaser.ScaleManager.html index aa6d066c3..f712932e0 100644 --- a/docs/Phaser.ScaleManager.html +++ b/docs/Phaser.ScaleManager.html @@ -6,7 +6,7 @@ Phaser CE Class: ScaleManager - + @@ -337,7 +337,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 68 + src/core/ScaleManager.js line 68 @@ -442,7 +442,7 @@
Type:
Source:
- src/core/ScaleManager.js line 634 + src/core/ScaleManager.js line 634 @@ -519,7 +519,7 @@
Type:
Source:
- src/core/ScaleManager.js line 674 + src/core/ScaleManager.js line 674 @@ -596,7 +596,7 @@
Type:
Source:
- src/core/ScaleManager.js line 642 + src/core/ScaleManager.js line 642 @@ -673,7 +673,7 @@
Type:
Source:
- src/core/ScaleManager.js line 658 + src/core/ScaleManager.js line 658 @@ -750,7 +750,7 @@
Type:
Source:
- src/core/ScaleManager.js line 650 + src/core/ScaleManager.js line 650 @@ -827,7 +827,7 @@
Type:
Source:
- src/core/ScaleManager.js line 666 + src/core/ScaleManager.js line 666 @@ -904,7 +904,7 @@
Type:
Source:
- src/core/ScaleManager.js line 371 + src/core/ScaleManager.js line 371 @@ -983,7 +983,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2171 + src/core/ScaleManager.js line 2171 @@ -1060,7 +1060,7 @@
Type:
Source:
- src/core/ScaleManager.js line 364 + src/core/ScaleManager.js line 364 @@ -1433,7 +1433,7 @@
Properties:
Source:
- src/core/ScaleManager.js line 432 + src/core/ScaleManager.js line 432 @@ -1511,7 +1511,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2299 + src/core/ScaleManager.js line 2299 @@ -1588,7 +1588,7 @@
Type:
Source:
- src/core/ScaleManager.js line 84 + src/core/ScaleManager.js line 84 @@ -1666,7 +1666,7 @@
Type:
Source:
- src/core/ScaleManager.js line 233 + src/core/ScaleManager.js line 233 @@ -1744,7 +1744,7 @@
Type:
Source:
- src/core/ScaleManager.js line 162 + src/core/ScaleManager.js line 162 @@ -1822,7 +1822,7 @@
Type:
Source:
- src/core/ScaleManager.js line 172 + src/core/ScaleManager.js line 172 @@ -1900,7 +1900,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2260 + src/core/ScaleManager.js line 2260 @@ -1982,7 +1982,7 @@
Type:
Source:
- src/core/ScaleManager.js line 270 + src/core/ScaleManager.js line 270 @@ -2059,7 +2059,7 @@
Type:
Source:
- src/core/ScaleManager.js line 76 + src/core/ScaleManager.js line 76 @@ -2136,7 +2136,7 @@
Type:
Source:
- src/core/ScaleManager.js line 91 + src/core/ScaleManager.js line 91 @@ -2216,7 +2216,7 @@
Type:
Source:
- src/core/ScaleManager.js line 255 + src/core/ScaleManager.js line 255 @@ -2293,7 +2293,7 @@
Type:
Source:
- src/core/ScaleManager.js line 105 + src/core/ScaleManager.js line 105 @@ -2371,7 +2371,7 @@
Type:
Source:
- src/core/ScaleManager.js line 183 + src/core/ScaleManager.js line 183 @@ -2448,7 +2448,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2385 + src/core/ScaleManager.js line 2385 @@ -2528,7 +2528,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2454 + src/core/ScaleManager.js line 2454 @@ -2608,7 +2608,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2435 + src/core/ScaleManager.js line 2435 @@ -2685,7 +2685,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2419 + src/core/ScaleManager.js line 2419 @@ -2762,7 +2762,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2403 + src/core/ScaleManager.js line 2403 @@ -2840,7 +2840,7 @@
Type:
Source:
- src/core/ScaleManager.js line 243 + src/core/ScaleManager.js line 243 @@ -2917,7 +2917,7 @@
Type:
Source:
- src/core/ScaleManager.js line 357 + src/core/ScaleManager.js line 357 @@ -2996,7 +2996,7 @@
Type:
Source:
- src/core/ScaleManager.js line 143 + src/core/ScaleManager.js line 143 @@ -3075,7 +3075,7 @@
Type:
Source:
- src/core/ScaleManager.js line 124 + src/core/ScaleManager.js line 124 @@ -3153,7 +3153,7 @@
Type:
Source:
- src/core/ScaleManager.js line 133 + src/core/ScaleManager.js line 133 @@ -3231,7 +3231,7 @@
Type:
Source:
- src/core/ScaleManager.js line 114 + src/core/ScaleManager.js line 114 @@ -3309,7 +3309,7 @@
Type:
Source:
- src/core/ScaleManager.js line 152 + src/core/ScaleManager.js line 152 @@ -3388,7 +3388,7 @@
Type:
Source:
- src/core/ScaleManager.js line 312 + src/core/ScaleManager.js line 312 @@ -3467,7 +3467,7 @@
Type:
Source:
- src/core/ScaleManager.js line 323 + src/core/ScaleManager.js line 323 @@ -3556,7 +3556,7 @@
Type:
Source:
- src/core/ScaleManager.js line 301 + src/core/ScaleManager.js line 301 @@ -3649,7 +3649,7 @@
Type:
Source:
- src/core/ScaleManager.js line 223 + src/core/ScaleManager.js line 223 @@ -3733,7 +3733,7 @@
Type:
Source:
- src/core/ScaleManager.js line 513 + src/core/ScaleManager.js line 513 @@ -3820,7 +3820,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2318 + src/core/ScaleManager.js line 2318 @@ -3912,7 +3912,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2348 + src/core/ScaleManager.js line 2348 @@ -3991,7 +3991,7 @@
Type:
Source:
- src/core/ScaleManager.js line 465 + src/core/ScaleManager.js line 465 @@ -4071,7 +4071,7 @@
Type:
Source:
- src/core/ScaleManager.js line 477 + src/core/ScaleManager.js line 477 @@ -4148,7 +4148,7 @@
Type:
Source:
- src/core/ScaleManager.js line 484 + src/core/ScaleManager.js line 484 @@ -4225,7 +4225,7 @@
Type:
Source:
- src/core/ScaleManager.js line 340 + src/core/ScaleManager.js line 340 @@ -4302,7 +4302,7 @@
Type:
Source:
- src/core/ScaleManager.js line 348 + src/core/ScaleManager.js line 348 @@ -4409,7 +4409,7 @@
Type:
Source:
- src/core/ScaleManager.js line 2198 + src/core/ScaleManager.js line 2198 @@ -4487,7 +4487,7 @@
Type:
Source:
- src/core/ScaleManager.js line 333 + src/core/ScaleManager.js line 333 @@ -4564,7 +4564,7 @@
Type:
Source:
- src/core/ScaleManager.js line 378 + src/core/ScaleManager.js line 378 @@ -4649,7 +4649,7 @@
Type:
Source:
- src/core/ScaleManager.js line 495 + src/core/ScaleManager.js line 495 @@ -4733,7 +4733,7 @@
Type:
Source:
- src/core/ScaleManager.js line 98 + src/core/ScaleManager.js line 98 @@ -4889,7 +4889,7 @@
Properties:
Source:
- src/core/ScaleManager.js line 401 + src/core/ScaleManager.js line 401 @@ -5063,7 +5063,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 1521 + src/core/ScaleManager.js line 1521 @@ -5147,7 +5147,7 @@

Source:
- src/core/ScaleManager.js line 684 + src/core/ScaleManager.js line 684 @@ -5233,7 +5233,7 @@

Source:
- src/core/ScaleManager.js line 1794 + src/core/ScaleManager.js line 1794 @@ -5318,7 +5318,7 @@

Source:
- src/core/ScaleManager.js line 2139 + src/core/ScaleManager.js line 2139 @@ -5512,7 +5512,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 1218 + src/core/ScaleManager.js line 1218 @@ -5709,7 +5709,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 1463 + src/core/ScaleManager.js line 1463 @@ -5867,7 +5867,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 790 + src/core/ScaleManager.js line 790 @@ -5951,7 +5951,7 @@

Source:
- src/core/ScaleManager.js line 1087 + src/core/ScaleManager.js line 1087 @@ -6047,7 +6047,7 @@

Source:
- src/core/ScaleManager.js line 1356 + src/core/ScaleManager.js line 1356 @@ -6320,7 +6320,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 2068 + src/core/ScaleManager.js line 2068 @@ -6513,7 +6513,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 928 + src/core/ScaleManager.js line 928 @@ -6762,7 +6762,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 1056 + src/core/ScaleManager.js line 1056 @@ -6942,7 +6942,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 987 + src/core/ScaleManager.js line 987 @@ -7107,7 +7107,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 830 + src/core/ScaleManager.js line 830 @@ -7458,7 +7458,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 955 + src/core/ScaleManager.js line 955 @@ -7700,7 +7700,7 @@
Parameters:
Source:
- src/core/ScaleManager.js line 1814 + src/core/ScaleManager.js line 1814 @@ -7815,7 +7815,7 @@

Source:
- src/core/ScaleManager.js line 1925 + src/core/ScaleManager.js line 1925 @@ -7882,9 +7882,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -7901,7 +7901,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -7930,7 +7930,7 @@
Returns:
- + diff --git a/docs/Phaser.Signal.html b/docs/Phaser.Signal.html index c28edd216..f41269777 100644 --- a/docs/Phaser.Signal.html +++ b/docs/Phaser.Signal.html @@ -6,7 +6,7 @@ Phaser CE Class: Signal - + @@ -210,7 +210,7 @@

Source:
- src/core/Signal.js line 64 + src/core/Signal.js line 64 @@ -323,7 +323,7 @@
Type:
Source:
- src/core/Signal.js line 104 + src/core/Signal.js line 104 @@ -402,7 +402,7 @@
Type:
Source:
- src/core/Signal.js line 88 + src/core/Signal.js line 88 @@ -673,7 +673,7 @@
Parameters:
Source:
- src/core/Signal.js line 232 + src/core/Signal.js line 232 @@ -967,7 +967,7 @@
Parameters:
Source:
- src/core/Signal.js line 275 + src/core/Signal.js line 275 @@ -1138,7 +1138,7 @@
Parameters:
Source:
- src/core/Signal.js line 391 + src/core/Signal.js line 391 @@ -1224,7 +1224,7 @@

Source:
- src/core/Signal.js line 448 + src/core/Signal.js line 448 @@ -1308,7 +1308,7 @@

Source:
- src/core/Signal.js line 435 + src/core/Signal.js line 435 @@ -1392,7 +1392,7 @@

Source:
- src/core/Signal.js line 367 + src/core/Signal.js line 367 @@ -1502,7 +1502,7 @@

Source:
- src/core/Signal.js line 378 + src/core/Signal.js line 378 @@ -1680,7 +1680,7 @@
Parameters:
Source:
- src/core/Signal.js line 219 + src/core/Signal.js line 219 @@ -1894,7 +1894,7 @@
Parameters:
Source:
- src/core/Signal.js line 305 + src/core/Signal.js line 305 @@ -2072,7 +2072,7 @@
Parameters:
Source:
- src/core/Signal.js line 328 + src/core/Signal.js line 328 @@ -2156,7 +2156,7 @@

Source:
- src/core/Signal.js line 467 + src/core/Signal.js line 467 @@ -2223,9 +2223,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2242,7 +2242,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2271,7 +2271,7 @@
Returns:
- + diff --git a/docs/Phaser.SignalBinding.html b/docs/Phaser.SignalBinding.html index 46a050ab6..f2c330cfc 100644 --- a/docs/Phaser.SignalBinding.html +++ b/docs/Phaser.SignalBinding.html @@ -6,7 +6,7 @@ Phaser CE Class: SignalBinding - + @@ -440,7 +440,7 @@
Parameters:
Source:
- src/core/SignalBinding.js line 22 + src/core/SignalBinding.js line 22 @@ -552,7 +552,7 @@
Type:
Source:
- src/core/SignalBinding.js line 92 + src/core/SignalBinding.js line 92 @@ -629,7 +629,7 @@
Type:
Source:
- src/core/SignalBinding.js line 85 + src/core/SignalBinding.js line 85 @@ -706,7 +706,7 @@
Type:
Source:
- src/core/SignalBinding.js line 62 + src/core/SignalBinding.js line 62 @@ -786,7 +786,7 @@
Type:
Source:
- src/core/SignalBinding.js line 99 + src/core/SignalBinding.js line 99 @@ -865,7 +865,7 @@

Source:
- src/core/SignalBinding.js line 134 + src/core/SignalBinding.js line 134 @@ -1039,7 +1039,7 @@
Parameters:
Source:
- src/core/SignalBinding.js line 101 + src/core/SignalBinding.js line 101 @@ -1143,7 +1143,7 @@

Source:
- src/core/SignalBinding.js line 163 + src/core/SignalBinding.js line 163 @@ -1247,7 +1247,7 @@

Source:
- src/core/SignalBinding.js line 172 + src/core/SignalBinding.js line 172 @@ -1351,7 +1351,7 @@

Source:
- src/core/SignalBinding.js line 145 + src/core/SignalBinding.js line 145 @@ -1455,7 +1455,7 @@

Source:
- src/core/SignalBinding.js line 154 + src/core/SignalBinding.js line 154 @@ -1559,7 +1559,7 @@

Source:
- src/core/SignalBinding.js line 193 + src/core/SignalBinding.js line 193 @@ -1626,9 +1626,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1645,7 +1645,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1674,7 +1674,7 @@
Returns:
- + diff --git a/docs/Phaser.SinglePad.html b/docs/Phaser.SinglePad.html index eee821f1b..a6264f2e8 100644 --- a/docs/Phaser.SinglePad.html +++ b/docs/Phaser.SinglePad.html @@ -6,7 +6,7 @@ Phaser CE Class: SinglePad - + @@ -254,7 +254,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 16 + src/input/SinglePad.js line 16 @@ -359,7 +359,7 @@
Type:
Source:
- src/input/SinglePad.js line 38 + src/input/SinglePad.js line 38 @@ -436,7 +436,7 @@
Type:
Source:
- src/input/SinglePad.js line 33 + src/input/SinglePad.js line 33 @@ -513,7 +513,7 @@
Type:
Source:
- src/input/SinglePad.js line 73 + src/input/SinglePad.js line 73 @@ -590,7 +590,7 @@
Type:
Source:
- src/input/SinglePad.js line 21 + src/input/SinglePad.js line 21 @@ -667,7 +667,7 @@
Type:
Source:
- src/input/SinglePad.js line 27 + src/input/SinglePad.js line 27 @@ -744,7 +744,7 @@
Type:
Source:
- src/input/SinglePad.js line 63 + src/input/SinglePad.js line 63 @@ -821,7 +821,7 @@
Type:
Source:
- src/input/SinglePad.js line 43 + src/input/SinglePad.js line 43 @@ -898,7 +898,7 @@
Type:
Source:
- src/input/SinglePad.js line 48 + src/input/SinglePad.js line 48 @@ -975,7 +975,7 @@
Type:
Source:
- src/input/SinglePad.js line 53 + src/input/SinglePad.js line 53 @@ -1052,7 +1052,7 @@
Type:
Source:
- src/input/SinglePad.js line 68 + src/input/SinglePad.js line 68 @@ -1129,7 +1129,7 @@
Type:
Source:
- src/input/SinglePad.js line 58 + src/input/SinglePad.js line 58 @@ -1282,7 +1282,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 120 + src/input/SinglePad.js line 120 @@ -1416,7 +1416,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 422 + src/input/SinglePad.js line 422 @@ -1575,7 +1575,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 505 + src/input/SinglePad.js line 505 @@ -1733,7 +1733,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 213 + src/input/SinglePad.js line 213 @@ -1817,7 +1817,7 @@

Source:
- src/input/SinglePad.js line 293 + src/input/SinglePad.js line 293 @@ -1901,7 +1901,7 @@

Source:
- src/input/SinglePad.js line 256 + src/input/SinglePad.js line 256 @@ -2036,7 +2036,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 143 + src/input/SinglePad.js line 143 @@ -2194,7 +2194,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 439 + src/input/SinglePad.js line 439 @@ -2352,7 +2352,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 456 + src/input/SinglePad.js line 456 @@ -2566,7 +2566,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 489 + src/input/SinglePad.js line 489 @@ -2780,7 +2780,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 473 + src/input/SinglePad.js line 473 @@ -2888,7 +2888,7 @@

Source:
- src/input/SinglePad.js line 163 + src/input/SinglePad.js line 163 @@ -3022,7 +3022,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 321 + src/input/SinglePad.js line 321 @@ -3180,7 +3180,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 347 + src/input/SinglePad.js line 347 @@ -3338,7 +3338,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 397 + src/input/SinglePad.js line 397 @@ -3496,7 +3496,7 @@
Parameters:
Source:
- src/input/SinglePad.js line 372 + src/input/SinglePad.js line 372 @@ -3580,7 +3580,7 @@

Source:
- src/input/SinglePad.js line 523 + src/input/SinglePad.js line 523 @@ -3623,9 +3623,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3642,7 +3642,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3671,7 +3671,7 @@

- + diff --git a/docs/Phaser.Sound.html b/docs/Phaser.Sound.html index 77ed81e40..e81e131de 100644 --- a/docs/Phaser.Sound.html +++ b/docs/Phaser.Sound.html @@ -6,7 +6,7 @@ Phaser CE Class: Sound - + @@ -362,7 +362,7 @@

Parameters:
Source:
- src/sound/Sound.js line 17 + src/sound/Sound.js line 17 @@ -467,7 +467,7 @@
Type:
Source:
- src/sound/Sound.js line 144 + src/sound/Sound.js line 144 @@ -544,7 +544,7 @@
Type:
Source:
- src/sound/Sound.js line 57 + src/sound/Sound.js line 57 @@ -621,7 +621,7 @@
Type:
Source:
- src/sound/Sound.js line 52 + src/sound/Sound.js line 52 @@ -698,7 +698,7 @@
Type:
Source:
- src/sound/Sound.js line 121 + src/sound/Sound.js line 121 @@ -775,7 +775,7 @@
Type:
Source:
- src/sound/Sound.js line 73 + src/sound/Sound.js line 73 @@ -852,7 +852,7 @@
Type:
Source:
- src/sound/Sound.js line 78 + src/sound/Sound.js line 78 @@ -929,7 +929,7 @@
Type:
Source:
- src/sound/Sound.js line 83 + src/sound/Sound.js line 83 @@ -1006,7 +1006,7 @@
Type:
Source:
- src/sound/Sound.js line 167 + src/sound/Sound.js line 167 @@ -1083,7 +1083,7 @@
Type:
Source:
- src/sound/Sound.js line 126 + src/sound/Sound.js line 126 @@ -1160,7 +1160,7 @@
Type:
Source:
- src/sound/Sound.js line 177 + src/sound/Sound.js line 177 @@ -1237,7 +1237,7 @@
Type:
Source:
- src/sound/Sound.js line 27 + src/sound/Sound.js line 27 @@ -1314,7 +1314,7 @@
Type:
Source:
- src/sound/Sound.js line 1165 + src/sound/Sound.js line 1165 @@ -1391,7 +1391,7 @@
Type:
Source:
- src/sound/Sound.js line 1151 + src/sound/Sound.js line 1151 @@ -1468,7 +1468,7 @@
Type:
Source:
- src/sound/Sound.js line 115 + src/sound/Sound.js line 115 @@ -1545,7 +1545,7 @@
Type:
Source:
- src/sound/Sound.js line 37 + src/sound/Sound.js line 37 @@ -1622,7 +1622,7 @@
Type:
Source:
- src/sound/Sound.js line 42 + src/sound/Sound.js line 42 @@ -1699,7 +1699,7 @@
Type:
Source:
- src/sound/Sound.js line 47 + src/sound/Sound.js line 47 @@ -1776,7 +1776,7 @@
Type:
Source:
- src/sound/Sound.js line 172 + src/sound/Sound.js line 172 @@ -1853,7 +1853,7 @@
Type:
Source:
- src/sound/Sound.js line 1179 + src/sound/Sound.js line 1179 @@ -1930,7 +1930,7 @@
Type:
Source:
- src/sound/Sound.js line 32 + src/sound/Sound.js line 32 @@ -2007,7 +2007,7 @@
Type:
Source:
- src/sound/Sound.js line 257 + src/sound/Sound.js line 257 @@ -2084,7 +2084,7 @@
Type:
Source:
- src/sound/Sound.js line 297 + src/sound/Sound.js line 297 @@ -2161,7 +2161,7 @@
Type:
Source:
- src/sound/Sound.js line 277 + src/sound/Sound.js line 277 @@ -2238,7 +2238,7 @@
Type:
Source:
- src/sound/Sound.js line 292 + src/sound/Sound.js line 292 @@ -2315,7 +2315,7 @@
Type:
Source:
- src/sound/Sound.js line 287 + src/sound/Sound.js line 287 @@ -2392,7 +2392,7 @@
Type:
Source:
- src/sound/Sound.js line 267 + src/sound/Sound.js line 267 @@ -2469,7 +2469,7 @@
Type:
Source:
- src/sound/Sound.js line 262 + src/sound/Sound.js line 262 @@ -2546,7 +2546,7 @@
Type:
Source:
- src/sound/Sound.js line 272 + src/sound/Sound.js line 272 @@ -2623,7 +2623,7 @@
Type:
Source:
- src/sound/Sound.js line 282 + src/sound/Sound.js line 282 @@ -2700,7 +2700,7 @@
Type:
Source:
- src/sound/Sound.js line 138 + src/sound/Sound.js line 138 @@ -2777,7 +2777,7 @@
Type:
Source:
- src/sound/Sound.js line 99 + src/sound/Sound.js line 99 @@ -2854,7 +2854,7 @@
Type:
Source:
- src/sound/Sound.js line 104 + src/sound/Sound.js line 104 @@ -2931,7 +2931,7 @@
Type:
Source:
- src/sound/Sound.js line 109 + src/sound/Sound.js line 109 @@ -3008,7 +3008,7 @@
Type:
Source:
- src/sound/Sound.js line 132 + src/sound/Sound.js line 132 @@ -3085,7 +3085,7 @@
Type:
Source:
- src/sound/Sound.js line 150 + src/sound/Sound.js line 150 @@ -3162,7 +3162,7 @@
Type:
Source:
- src/sound/Sound.js line 88 + src/sound/Sound.js line 88 @@ -3239,7 +3239,7 @@
Type:
Source:
- src/sound/Sound.js line 68 + src/sound/Sound.js line 68 @@ -3316,7 +3316,7 @@
Type:
Source:
- src/sound/Sound.js line 93 + src/sound/Sound.js line 93 @@ -3393,7 +3393,7 @@
Type:
Source:
- src/sound/Sound.js line 62 + src/sound/Sound.js line 62 @@ -3470,7 +3470,7 @@
Type:
Source:
- src/sound/Sound.js line 162 + src/sound/Sound.js line 162 @@ -3547,7 +3547,7 @@
Type:
Source:
- src/sound/Sound.js line 156 + src/sound/Sound.js line 156 @@ -3624,7 +3624,7 @@
Type:
Source:
- src/sound/Sound.js line 1232 + src/sound/Sound.js line 1232 @@ -3925,7 +3925,7 @@
Parameters:
Source:
- src/sound/Sound.js line 383 + src/sound/Sound.js line 383 @@ -4079,7 +4079,7 @@
Parameters:
Source:
- src/sound/Sound.js line 1054 + src/sound/Sound.js line 1054 @@ -4316,7 +4316,7 @@
Parameters:
Source:
- src/sound/Sound.js line 947 + src/sound/Sound.js line 947 @@ -4472,7 +4472,7 @@
Parameters:
Source:
- src/sound/Sound.js line 974 + src/sound/Sound.js line 974 @@ -4666,7 +4666,7 @@
Parameters:
Source:
- src/sound/Sound.js line 987 + src/sound/Sound.js line 987 @@ -4820,7 +4820,7 @@
Parameters:
Source:
- src/sound/Sound.js line 580 + src/sound/Sound.js line 580 @@ -4929,7 +4929,7 @@

Source:
- src/sound/Sound.js line 421 + src/sound/Sound.js line 421 @@ -5013,7 +5013,7 @@

Source:
- src/sound/Sound.js line 833 + src/sound/Sound.js line 833 @@ -5367,7 +5367,7 @@
Parameters:
Source:
- src/sound/Sound.js line 592 + src/sound/Sound.js line 592 @@ -5525,7 +5525,7 @@
Parameters:
Source:
- src/sound/Sound.js line 411 + src/sound/Sound.js line 411 @@ -5799,7 +5799,7 @@
Parameters:
Source:
- src/sound/Sound.js line 814 + src/sound/Sound.js line 814 @@ -5883,7 +5883,7 @@

Source:
- src/sound/Sound.js line 851 + src/sound/Sound.js line 851 @@ -6017,7 +6017,7 @@
Parameters:
Source:
- src/sound/Sound.js line 368 + src/sound/Sound.js line 368 @@ -6101,7 +6101,7 @@

Source:
- src/sound/Sound.js line 904 + src/sound/Sound.js line 904 @@ -6185,7 +6185,7 @@

Source:
- src/sound/Sound.js line 475 + src/sound/Sound.js line 475 @@ -6321,7 +6321,7 @@
Parameters:
Source:
- src/sound/Sound.js line 1032 + src/sound/Sound.js line 1032 @@ -6364,9 +6364,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6383,7 +6383,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6412,7 +6412,7 @@
Parameters:
- + diff --git a/docs/Phaser.SoundManager.html b/docs/Phaser.SoundManager.html index 133b838df..1f97feaff 100644 --- a/docs/Phaser.SoundManager.html +++ b/docs/Phaser.SoundManager.html @@ -6,7 +6,7 @@ Phaser CE Class: SoundManager - + @@ -240,7 +240,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 26 + src/sound/SoundManager.js line 26 @@ -347,7 +347,7 @@
Type:
Source:
- src/sound/SoundManager.js line 83 + src/sound/SoundManager.js line 83 @@ -438,7 +438,7 @@
Type:
Source:
- src/sound/SoundManager.js line 119 + src/sound/SoundManager.js line 119 @@ -522,7 +522,7 @@
Type:
Source:
- src/sound/SoundManager.js line 107 + src/sound/SoundManager.js line 107 @@ -599,7 +599,7 @@
Type:
Source:
- src/sound/SoundManager.js line 73 + src/sound/SoundManager.js line 73 @@ -676,7 +676,7 @@
Type:
Source:
- src/sound/SoundManager.js line 31 + src/sound/SoundManager.js line 31 @@ -753,7 +753,7 @@
Type:
Source:
- src/sound/SoundManager.js line 925 + src/sound/SoundManager.js line 925 @@ -839,7 +839,7 @@
Type:
Source:
- src/sound/SoundManager.js line 128 + src/sound/SoundManager.js line 128 @@ -916,7 +916,7 @@
Type:
Source:
- src/sound/SoundManager.js line 101 + src/sound/SoundManager.js line 101 @@ -993,7 +993,7 @@
Type:
Source:
- src/sound/SoundManager.js line 48 + src/sound/SoundManager.js line 48 @@ -1070,7 +1070,7 @@
Type:
Source:
- src/sound/SoundManager.js line 36 + src/sound/SoundManager.js line 36 @@ -1147,7 +1147,7 @@
Type:
Source:
- src/sound/SoundManager.js line 67 + src/sound/SoundManager.js line 67 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/sound/SoundManager.js line 61 + src/sound/SoundManager.js line 61 @@ -1302,7 +1302,7 @@
Type:
Source:
- src/sound/SoundManager.js line 54 + src/sound/SoundManager.js line 54 @@ -1379,7 +1379,7 @@
Type:
Source:
- src/sound/SoundManager.js line 42 + src/sound/SoundManager.js line 42 @@ -1456,7 +1456,7 @@
Type:
Source:
- src/sound/SoundManager.js line 113 + src/sound/SoundManager.js line 113 @@ -1533,7 +1533,7 @@
Type:
Source:
- src/sound/SoundManager.js line 95 + src/sound/SoundManager.js line 95 @@ -1610,7 +1610,7 @@
Type:
Source:
- src/sound/SoundManager.js line 89 + src/sound/SoundManager.js line 89 @@ -1687,7 +1687,7 @@
Type:
Source:
- src/sound/SoundManager.js line 964 + src/sound/SoundManager.js line 964 @@ -1951,7 +1951,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 642 + src/sound/SoundManager.js line 642 @@ -2109,7 +2109,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 665 + src/sound/SoundManager.js line 665 @@ -2217,7 +2217,7 @@

Source:
- src/sound/SoundManager.js line 203 + src/sound/SoundManager.js line 203 @@ -2395,7 +2395,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 504 + src/sound/SoundManager.js line 504 @@ -2479,7 +2479,7 @@

Source:
- src/sound/SoundManager.js line 864 + src/sound/SoundManager.js line 864 @@ -2563,7 +2563,7 @@

Source:
- src/sound/SoundManager.js line 462 + src/sound/SoundManager.js line 462 @@ -2793,7 +2793,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 750 + src/sound/SoundManager.js line 750 @@ -2951,7 +2951,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 679 + src/sound/SoundManager.js line 679 @@ -3060,7 +3060,7 @@

Source:
- src/sound/SoundManager.js line 703 + src/sound/SoundManager.js line 703 @@ -3195,7 +3195,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 724 + src/sound/SoundManager.js line 724 @@ -3303,7 +3303,7 @@

Source:
- src/sound/SoundManager.js line 483 + src/sound/SoundManager.js line 483 @@ -3387,7 +3387,7 @@

Source:
- src/sound/SoundManager.js line 365 + src/sound/SoundManager.js line 365 @@ -3497,7 +3497,7 @@

Source:
- src/sound/SoundManager.js line 378 + src/sound/SoundManager.js line 378 @@ -3711,7 +3711,7 @@
Parameters:
Source:
- src/sound/SoundManager.js line 548 + src/sound/SoundManager.js line 548 @@ -3796,7 +3796,7 @@

Source:
- src/sound/SoundManager.js line 319 + src/sound/SoundManager.js line 319 @@ -3880,7 +3880,7 @@

Source:
- src/sound/SoundManager.js line 441 + src/sound/SoundManager.js line 441 @@ -3964,7 +3964,7 @@

Source:
- src/sound/SoundManager.js line 386 + src/sound/SoundManager.js line 386 @@ -4072,7 +4072,7 @@

Source:
- src/sound/SoundManager.js line 597 + src/sound/SoundManager.js line 597 @@ -4156,7 +4156,7 @@

Source:
- src/sound/SoundManager.js line 355 + src/sound/SoundManager.js line 355 @@ -4219,9 +4219,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4238,7 +4238,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4267,7 +4267,7 @@
Returns:
- + diff --git a/docs/Phaser.Sprite.html b/docs/Phaser.Sprite.html index a4fd4a226..393914f5c 100644 --- a/docs/Phaser.Sprite.html +++ b/docs/Phaser.Sprite.html @@ -6,7 +6,7 @@ Phaser CE Class: Sprite - + @@ -341,7 +341,7 @@
Parameters:
Source:
- src/gameobjects/Sprite.js line 44 + src/gameobjects/Sprite.js line 44 @@ -519,7 +519,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -615,7 +615,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -705,7 +705,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -796,7 +796,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -883,7 +883,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -980,7 +980,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1074,7 +1074,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1177,7 +1177,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1264,7 +1264,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1357,7 +1357,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1444,7 +1444,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1531,7 +1531,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1618,7 +1618,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1710,7 +1710,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -1796,7 +1796,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1882,7 +1882,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1970,7 +1970,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -2066,7 +2066,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2152,7 +2152,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2239,7 +2239,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -2326,7 +2326,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -2412,7 +2412,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -2499,7 +2499,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2586,7 +2586,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2691,7 +2691,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -2777,7 +2777,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2868,7 +2868,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2961,7 +2961,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -3052,7 +3052,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3143,7 +3143,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3230,7 +3230,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3316,7 +3316,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3410,7 +3410,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -3496,7 +3496,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3592,7 +3592,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3680,7 +3680,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3772,7 +3772,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3863,7 +3863,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3956,7 +3956,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -4042,7 +4042,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -4144,7 +4144,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -4231,7 +4231,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4321,7 +4321,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4410,7 +4410,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4504,7 +4504,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -4591,7 +4591,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4679,7 +4679,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4767,7 +4767,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4853,7 +4853,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -4940,7 +4940,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -5029,7 +5029,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -5118,7 +5118,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -5195,7 +5195,7 @@
Type:
Source:
- src/gameobjects/Sprite.js line 61 + src/gameobjects/Sprite.js line 61 @@ -5282,7 +5282,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -5370,7 +5370,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -5456,7 +5456,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5542,7 +5542,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5629,7 +5629,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -5716,7 +5716,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -5803,7 +5803,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -5892,7 +5892,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5981,7 +5981,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -6069,7 +6069,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -6157,7 +6157,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -6251,7 +6251,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -6339,7 +6339,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -6425,7 +6425,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -6518,7 +6518,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -6611,7 +6611,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -6698,7 +6698,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -6784,7 +6784,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -6870,7 +6870,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -6947,7 +6947,7 @@
Type:
Source:
- src/gameobjects/Sprite.js line 55 + src/gameobjects/Sprite.js line 55 @@ -7046,7 +7046,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -7132,7 +7132,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -7220,7 +7220,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -7312,7 +7312,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -7403,7 +7403,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -7494,7 +7494,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -7585,7 +7585,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -7676,7 +7676,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -7762,7 +7762,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -7854,7 +7854,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -7946,7 +7946,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -8035,7 +8035,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -8172,7 +8172,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -8363,7 +8363,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -8706,7 +8706,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -9050,7 +9050,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -9170,7 +9170,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -9337,7 +9337,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -9563,7 +9563,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -9707,7 +9707,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -9831,7 +9831,7 @@

Source:
- src/pixi/display/DisplayObject.js line 254 + src/pixi/display/DisplayObject.js line 254 @@ -10076,7 +10076,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -10251,7 +10251,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -10418,7 +10418,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -10585,7 +10585,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -10702,7 +10702,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -10869,7 +10869,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -10990,7 +10990,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -11275,7 +11275,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -11371,7 +11371,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -11491,7 +11491,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -11674,7 +11674,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -11980,7 +11980,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -12097,7 +12097,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -12186,7 +12186,7 @@

Source:
- src/gameobjects/Sprite.js line 106 + src/gameobjects/Sprite.js line 106 @@ -12303,7 +12303,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -12446,7 +12446,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -12613,7 +12613,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -12804,7 +12804,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -13043,7 +13043,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -13160,7 +13160,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -13353,7 +13353,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -13518,7 +13518,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -13638,7 +13638,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -13829,7 +13829,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -13973,7 +13973,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -14117,7 +14117,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -14378,7 +14378,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -14578,7 +14578,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -14745,7 +14745,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -14888,7 +14888,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -15101,7 +15101,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -15222,7 +15222,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -15315,7 +15315,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -15435,7 +15435,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -15598,7 +15598,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -15667,9 +15667,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -15686,7 +15686,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -15715,7 +15715,7 @@
Returns:
- + diff --git a/docs/Phaser.SpriteBatch.html b/docs/Phaser.SpriteBatch.html index f87ce941d..642143ae0 100644 --- a/docs/Phaser.SpriteBatch.html +++ b/docs/Phaser.SpriteBatch.html @@ -6,7 +6,7 @@ Phaser CE Class: SpriteBatch - + @@ -372,7 +372,7 @@
Parameters:
Source:
- src/gameobjects/SpriteBatch.js line 23 + src/gameobjects/SpriteBatch.js line 23 @@ -504,7 +504,7 @@
Type:
Source:
- src/core/Group.js line 91 + src/core/Group.js line 91 @@ -590,7 +590,7 @@
Type:
Source:
- src/core/Group.js line 3155 + src/core/Group.js line 3155 @@ -679,7 +679,7 @@
Type:
Source:
- src/core/Group.js line 2825 + src/core/Group.js line 2825 @@ -767,7 +767,7 @@
Type:
Source:
- src/core/Group.js line 2980 + src/core/Group.js line 2980 @@ -860,7 +860,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -947,7 +947,7 @@
Type:
Source:
- src/core/Group.js line 277 + src/core/Group.js line 277 @@ -1035,7 +1035,7 @@
Type:
Source:
- src/core/Group.js line 2850 + src/core/Group.js line 2850 @@ -1123,7 +1123,7 @@
Type:
Source:
- src/core/Group.js line 2876 + src/core/Group.js line 2876 @@ -1209,7 +1209,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1303,7 +1303,7 @@
Type:
Source:
- src/core/Group.js line 127 + src/core/Group.js line 127 @@ -1390,7 +1390,7 @@
Type:
Source:
- src/core/Group.js line 135 + src/core/Group.js line 135 @@ -1476,7 +1476,7 @@
Type:
Source:
- src/core/Group.js line 260 + src/core/Group.js line 260 @@ -1564,7 +1564,7 @@
Type:
Source:
- src/core/Group.js line 213 + src/core/Group.js line 213 @@ -1651,7 +1651,7 @@
Type:
Source:
- src/core/Group.js line 222 + src/core/Group.js line 222 @@ -1744,7 +1744,7 @@
Type:
Source:
- src/core/Group.js line 98 + src/core/Group.js line 98 @@ -1830,7 +1830,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -1921,7 +1921,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2009,7 +2009,7 @@
Type:
Source:
- src/core/Group.js line 270 + src/core/Group.js line 270 @@ -2095,7 +2095,7 @@
Type:
Source:
- src/core/Group.js line 38 + src/core/Group.js line 38 @@ -2185,7 +2185,7 @@
Type:
Source:
- src/core/Group.js line 290 + src/core/Group.js line 290 @@ -2271,7 +2271,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -2367,7 +2367,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -2455,7 +2455,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -2541,7 +2541,7 @@
Type:
Source:
- src/core/Group.js line 105 + src/core/Group.js line 105 @@ -2629,7 +2629,7 @@
Type:
Source:
- src/core/Group.js line 146 + src/core/Group.js line 146 @@ -2717,7 +2717,7 @@
Type:
Source:
- src/core/Group.js line 2902 + src/core/Group.js line 2902 @@ -2803,7 +2803,7 @@
Type:
Source:
- src/core/Group.js line 2809 + src/core/Group.js line 2809 @@ -2892,7 +2892,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -2978,7 +2978,7 @@
Type:
Source:
- src/core/Group.js line 49 + src/core/Group.js line 49 @@ -3068,7 +3068,7 @@
Type:
Source:
- src/core/Group.js line 166 + src/core/Group.js line 166 @@ -3158,7 +3158,7 @@
Type:
Source:
- src/core/Group.js line 203 + src/core/Group.js line 203 @@ -3248,7 +3248,7 @@
Type:
Source:
- src/core/Group.js line 191 + src/core/Group.js line 191 @@ -3339,7 +3339,7 @@
Type:
Source:
- src/core/Group.js line 179 + src/core/Group.js line 179 @@ -3425,7 +3425,7 @@
Type:
Source:
- src/core/Group.js line 254 + src/core/Group.js line 254 @@ -3514,7 +3514,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -3604,7 +3604,7 @@
Type:
Source:
- src/core/Group.js line 117 + src/core/Group.js line 117 @@ -3691,7 +3691,7 @@
Type:
Source:
- src/core/Group.js line 230 + src/core/Group.js line 230 @@ -3784,7 +3784,7 @@
Type:
Source:
- src/core/Group.js line 248 + src/core/Group.js line 248 @@ -3870,7 +3870,7 @@
Type:
Source:
- src/core/Group.js line 84 + src/core/Group.js line 84 @@ -3957,7 +3957,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4045,7 +4045,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4132,7 +4132,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4220,7 +4220,7 @@
Type:
Source:
- src/core/Group.js line 2928 + src/core/Group.js line 2928 @@ -4308,7 +4308,7 @@
Type:
Source:
- src/core/Group.js line 3139 + src/core/Group.js line 3139 @@ -4397,7 +4397,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -4485,7 +4485,7 @@
Type:
Source:
- src/core/Group.js line 2954 + src/core/Group.js line 2954 @@ -4571,7 +4571,7 @@
Type:
Source:
- src/core/Group.js line 2793 + src/core/Group.js line 2793 @@ -4653,7 +4653,7 @@
Type:
Source:
- src/gameobjects/SpriteBatch.js line 33 + src/gameobjects/SpriteBatch.js line 33 @@ -4739,7 +4739,7 @@
Type:
Source:
- src/core/Group.js line 154 + src/core/Group.js line 154 @@ -4825,7 +4825,7 @@
Type:
Source:
- src/core/Group.js line 3148 + src/core/Group.js line 3148 @@ -4911,7 +4911,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -5003,7 +5003,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -5094,7 +5094,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -5185,7 +5185,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -5276,7 +5276,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -5367,7 +5367,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -5453,7 +5453,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -5541,7 +5541,7 @@
Type:
Source:
- src/core/Group.js line 3121 + src/core/Group.js line 3121 @@ -5629,7 +5629,7 @@
Type:
Source:
- src/core/Group.js line 3130 + src/core/Group.js line 3130 @@ -5716,7 +5716,7 @@
Type:
Source:
- src/core/Group.js line 57 + src/core/Group.js line 57 @@ -5954,7 +5954,7 @@
Parameters:
Source:
- src/core/Group.js line 345 + src/core/Group.js line 345 @@ -6232,7 +6232,7 @@
Parameters:
Source:
- src/core/Group.js line 1417 + src/core/Group.js line 1417 @@ -6474,7 +6474,7 @@
Parameters:
Source:
- src/core/Group.js line 421 + src/core/Group.js line 421 @@ -6641,7 +6641,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -6832,7 +6832,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7063,7 +7063,7 @@
Parameters:
Source:
- src/core/Group.js line 489 + src/core/Group.js line 489 @@ -7234,7 +7234,7 @@
Parameters:
Source:
- src/core/Group.js line 441 + src/core/Group.js line 441 @@ -7629,7 +7629,7 @@
Parameters:
Source:
- src/core/Group.js line 681 + src/core/Group.js line 681 @@ -7972,7 +7972,7 @@
Parameters:
Source:
- src/core/Group.js line 3006 + src/core/Group.js line 3006 @@ -8316,7 +8316,7 @@
Parameters:
Source:
- src/core/Group.js line 3048 + src/core/Group.js line 3048 @@ -8507,7 +8507,7 @@
Parameters:
Source:
- src/core/Group.js line 2024 + src/core/Group.js line 2024 @@ -8650,7 +8650,7 @@
Parameters:
Source:
- src/core/Group.js line 901 + src/core/Group.js line 901 @@ -8913,7 +8913,7 @@
Parameters:
Source:
- src/core/Group.js line 1624 + src/core/Group.js line 1624 @@ -9133,7 +9133,7 @@
Parameters:
Source:
- src/core/Group.js line 1540 + src/core/Group.js line 1540 @@ -9324,7 +9324,7 @@
Parameters:
Source:
- src/core/Group.js line 1575 + src/core/Group.js line 1575 @@ -9640,7 +9640,7 @@
Parameters:
Source:
- src/core/Group.js line 1349 + src/core/Group.js line 1349 @@ -9942,7 +9942,7 @@
Parameters:
Source:
- src/core/Group.js line 1384 + src/core/Group.js line 1384 @@ -10239,7 +10239,7 @@
Parameters:
Source:
- src/core/Group.js line 1208 + src/core/Group.js line 1208 @@ -10406,7 +10406,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -10593,7 +10593,7 @@
Parameters:
Source:
- src/core/Group.js line 2431 + src/core/Group.js line 2431 @@ -10710,7 +10710,7 @@

Source:
- src/core/Group.js line 2455 + src/core/Group.js line 2455 @@ -10827,7 +10827,7 @@

Source:
- src/core/Group.js line 2444 + src/core/Group.js line 2444 @@ -11221,7 +11221,7 @@
Parameters:
Source:
- src/core/Group.js line 542 + src/core/Group.js line 542 @@ -11628,7 +11628,7 @@
Parameters:
Source:
- src/core/Group.js line 578 + src/core/Group.js line 578 @@ -11841,7 +11841,7 @@
Parameters:
Source:
- src/core/Group.js line 2001 + src/core/Group.js line 2001 @@ -12008,7 +12008,7 @@
Parameters:
Source:
- src/core/Group.js line 2053 + src/core/Group.js line 2053 @@ -12212,7 +12212,7 @@
Parameters:
Source:
- src/core/Group.js line 2757 + src/core/Group.js line 2757 @@ -12428,7 +12428,7 @@
Parameters:
Source:
- src/core/Group.js line 1465 + src/core/Group.js line 1465 @@ -12634,7 +12634,7 @@
Parameters:
Source:
- src/core/Group.js line 1783 + src/core/Group.js line 1783 @@ -12940,7 +12940,7 @@
Parameters:
Source:
- src/core/Group.js line 1822 + src/core/Group.js line 1822 @@ -13178,7 +13178,7 @@
Parameters:
Source:
- src/core/Group.js line 1908 + src/core/Group.js line 1908 @@ -13416,7 +13416,7 @@
Parameters:
Source:
- src/core/Group.js line 1935 + src/core/Group.js line 1935 @@ -13654,7 +13654,7 @@
Parameters:
Source:
- src/core/Group.js line 1881 + src/core/Group.js line 1881 @@ -13899,7 +13899,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -14207,7 +14207,7 @@
Parameters:
Source:
- src/core/Group.js line 2506 + src/core/Group.js line 2506 @@ -14376,7 +14376,7 @@
Parameters:
Source:
- src/core/Group.js line 523 + src/core/Group.js line 523 @@ -14497,7 +14497,7 @@

Source:
- src/core/Group.js line 2329 + src/core/Group.js line 2329 @@ -14679,7 +14679,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -14848,7 +14848,7 @@
Parameters:
Source:
- src/core/Group.js line 1041 + src/core/Group.js line 1041 @@ -15015,7 +15015,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -15182,7 +15182,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -15433,7 +15433,7 @@
Parameters:
Source:
- src/core/Group.js line 2345 + src/core/Group.js line 2345 @@ -15624,7 +15624,7 @@
Parameters:
Source:
- src/core/Group.js line 2171 + src/core/Group.js line 2171 @@ -15983,7 +15983,7 @@
Parameters:
Source:
- src/core/Group.js line 2217 + src/core/Group.js line 2217 @@ -16342,7 +16342,7 @@
Parameters:
Source:
- src/core/Group.js line 2246 + src/core/Group.js line 2246 @@ -16740,7 +16740,7 @@
Parameters:
Source:
- src/core/Group.js line 2184 + src/core/Group.js line 2184 @@ -16991,7 +16991,7 @@
Parameters:
Source:
- src/core/Group.js line 2388 + src/core/Group.js line 2388 @@ -17158,7 +17158,7 @@
Parameters:
Source:
- src/core/Group.js line 1029 + src/core/Group.js line 1029 @@ -17275,7 +17275,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -17502,7 +17502,7 @@
Parameters:
Source:
- src/core/Group.js line 2466 + src/core/Group.js line 2466 @@ -17730,7 +17730,7 @@
Parameters:
Source:
- src/core/Group.js line 2487 + src/core/Group.js line 2487 @@ -17848,7 +17848,7 @@

Source:
- src/core/Group.js line 2313 + src/core/Group.js line 2313 @@ -18040,7 +18040,7 @@
Parameters:
Source:
- src/core/Group.js line 1093 + src/core/Group.js line 1093 @@ -18427,7 +18427,7 @@
Parameters:
Source:
- src/core/Group.js line 2077 + src/core/Group.js line 2077 @@ -18544,7 +18544,7 @@

Source:
- src/core/Group.js line 1481 + src/core/Group.js line 1481 @@ -18637,7 +18637,7 @@

Source:
- src/core/Group.js line 1493 + src/core/Group.js line 1493 @@ -18836,7 +18836,7 @@
Parameters:
Source:
- src/core/Group.js line 2598 + src/core/Group.js line 2598 @@ -19003,7 +19003,7 @@
Parameters:
Source:
- src/core/Group.js line 972 + src/core/Group.js line 972 @@ -19170,7 +19170,7 @@
Parameters:
Source:
- src/core/Group.js line 949 + src/core/Group.js line 949 @@ -19410,7 +19410,7 @@
Parameters:
Source:
- src/core/Group.js line 1449 + src/core/Group.js line 1449 @@ -19504,7 +19504,7 @@

Source:
- src/core/Group.js line 830 + src/core/Group.js line 830 @@ -19621,7 +19621,7 @@

Source:
- src/core/Group.js line 1763 + src/core/Group.js line 1763 @@ -19714,7 +19714,7 @@

Source:
- src/core/Group.js line 1695 + src/core/Group.js line 1695 @@ -19808,7 +19808,7 @@

Source:
- src/core/Group.js line 858 + src/core/Group.js line 858 @@ -20073,7 +20073,7 @@
Parameters:
Source:
- src/core/Group.js line 2551 + src/core/Group.js line 2551 @@ -20343,7 +20343,7 @@
Parameters:
Source:
- src/core/Group.js line 2626 + src/core/Group.js line 2626 @@ -20620,7 +20620,7 @@
Parameters:
Source:
- src/core/Group.js line 2673 + src/core/Group.js line 2673 @@ -20763,7 +20763,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -20930,7 +20930,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -21121,7 +21121,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -21265,7 +21265,7 @@
Parameters:
Source:
- src/core/Group.js line 465 + src/core/Group.js line 465 @@ -21458,7 +21458,7 @@
Parameters:
Source:
- src/core/Group.js line 1055 + src/core/Group.js line 1055 @@ -21812,7 +21812,7 @@
Parameters:
Source:
- src/core/Group.js line 1525 + src/core/Group.js line 1525 @@ -22118,7 +22118,7 @@
Parameters:
Source:
- src/core/Group.js line 2275 + src/core/Group.js line 2275 @@ -22306,7 +22306,7 @@
Parameters:
Source:
- src/core/Group.js line 804 + src/core/Group.js line 804 @@ -22424,7 +22424,7 @@

Source:
- src/core/Group.js line 1016 + src/core/Group.js line 1016 @@ -22517,7 +22517,7 @@

Source:
- src/core/Group.js line 1503 + src/core/Group.js line 1503 @@ -22610,7 +22610,7 @@

Source:
- src/core/Group.js line 1515 + src/core/Group.js line 1515 @@ -22813,7 +22813,7 @@
Parameters:
Source:
- src/core/Group.js line 2727 + src/core/Group.js line 2727 @@ -22956,7 +22956,7 @@
Parameters:
Source:
- src/core/Group.js line 925 + src/core/Group.js line 925 @@ -23372,7 +23372,7 @@
Parameters:
Source:
- src/core/Group.js line 1237 + src/core/Group.js line 1237 @@ -23754,7 +23754,7 @@
Parameters:
Source:
- src/core/Group.js line 1267 + src/core/Group.js line 1267 @@ -24112,7 +24112,7 @@
Parameters:
Source:
- src/core/Group.js line 1305 + src/core/Group.js line 1305 @@ -24279,7 +24279,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -24598,7 +24598,7 @@
Parameters:
Source:
- src/core/Group.js line 1127 + src/core/Group.js line 1127 @@ -24716,7 +24716,7 @@

Source:
- src/core/Group.js line 2744 + src/core/Group.js line 2744 @@ -24923,7 +24923,7 @@
Parameters:
Source:
- src/core/Group.js line 1962 + src/core/Group.js line 1962 @@ -25139,7 +25139,7 @@
Parameters:
Source:
- src/core/Group.js line 1433 + src/core/Group.js line 1433 @@ -25307,7 +25307,7 @@
Parameters:
Source:
- src/core/Group.js line 886 + src/core/Group.js line 886 @@ -25474,7 +25474,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -25617,7 +25617,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -25830,7 +25830,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -25950,7 +25950,7 @@

Source:
- src/core/Group.js line 1735 + src/core/Group.js line 1735 @@ -26043,7 +26043,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -26232,7 +26232,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -26352,7 +26352,7 @@

Source:
- src/core/Group.js line 663 + src/core/Group.js line 663 @@ -26543,7 +26543,7 @@
Parameters:
Source:
- src/core/Group.js line 995 + src/core/Group.js line 995 @@ -26586,9 +26586,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -26605,7 +26605,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -26634,7 +26634,7 @@
Parameters:
- + diff --git a/docs/Phaser.Stage.html b/docs/Phaser.Stage.html index 302109db1..8503b7f30 100644 --- a/docs/Phaser.Stage.html +++ b/docs/Phaser.Stage.html @@ -6,7 +6,7 @@ Phaser CE Class: Stage - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/core/Stage.js line 16 + src/core/Stage.js line 16 @@ -366,7 +366,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -446,7 +446,7 @@
Type:
Source:
- src/core/Stage.js line 442 + src/core/Stage.js line 442 @@ -546,7 +546,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -632,7 +632,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -709,7 +709,7 @@
Type:
Source:
- src/core/Stage.js line 65 + src/core/Stage.js line 65 @@ -790,7 +790,7 @@
Type:
Source:
- src/core/Stage.js line 40 + src/core/Stage.js line 40 @@ -874,7 +874,7 @@
Type:
Source:
- src/core/Stage.js line 46 + src/core/Stage.js line 46 @@ -960,7 +960,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -1051,7 +1051,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -1128,7 +1128,7 @@
Type:
Source:
- src/core/Stage.js line 21 + src/core/Stage.js line 21 @@ -1214,7 +1214,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -1310,7 +1310,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -1398,7 +1398,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -1487,7 +1487,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -1571,7 +1571,7 @@
Type:
Source:
- src/core/Stage.js line 29 + src/core/Stage.js line 29 @@ -1660,7 +1660,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -1747,7 +1747,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -1835,7 +1835,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -1922,7 +1922,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -2011,7 +2011,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -2100,7 +2100,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -2177,7 +2177,7 @@
Type:
Source:
- src/core/Stage.js line 461 + src/core/Stage.js line 461 @@ -2276,7 +2276,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -2362,7 +2362,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -2459,7 +2459,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -2550,7 +2550,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -2641,7 +2641,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -2732,7 +2732,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -2818,7 +2818,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -2905,7 +2905,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -2992,7 +2992,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -3202,7 +3202,7 @@
Parameters:
Source:
- src/core/Stage.js line 403 + src/core/Stage.js line 403 @@ -3369,7 +3369,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -3560,7 +3560,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -3669,7 +3669,7 @@

Source:
- src/core/Stage.js line 223 + src/core/Stage.js line 223 @@ -3812,7 +3812,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -3921,7 +3921,7 @@

Source:
- src/core/Stage.js line 382 + src/core/Stage.js line 382 @@ -4166,7 +4166,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -4350,7 +4350,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -4517,7 +4517,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -4684,7 +4684,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -4801,7 +4801,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -4959,7 +4959,7 @@
Parameters:
Source:
- src/core/Stage.js line 100 + src/core/Stage.js line 100 @@ -5045,7 +5045,7 @@

Source:
- src/core/Stage.js line 177 + src/core/Stage.js line 177 @@ -5135,7 +5135,7 @@

Source:
- src/core/Stage.js line 135 + src/core/Stage.js line 135 @@ -5278,7 +5278,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -5445,7 +5445,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -5636,7 +5636,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -5777,7 +5777,7 @@
Parameters:
Source:
- src/core/Stage.js line 354 + src/core/Stage.js line 354 @@ -5944,7 +5944,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -6111,7 +6111,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -6254,7 +6254,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -6467,7 +6467,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -6577,7 +6577,7 @@

Source:
- src/core/Stage.js line 161 + src/core/Stage.js line 161 @@ -6670,7 +6670,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -6786,7 +6786,7 @@

Source:
- src/core/Stage.js line 207 + src/core/Stage.js line 207 @@ -6926,7 +6926,7 @@
Parameters:
Source:
- src/core/Stage.js line 311 + src/core/Stage.js line 311 @@ -6969,9 +6969,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6988,7 +6988,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -7017,7 +7017,7 @@
Parameters:
- + diff --git a/docs/Phaser.State.html b/docs/Phaser.State.html index b5259eb24..8371e1dc7 100644 --- a/docs/Phaser.State.html +++ b/docs/Phaser.State.html @@ -6,7 +6,7 @@ Phaser CE Class: State - + @@ -253,7 +253,7 @@

Callbacks

Source:
- src/core/State.js line 31 + src/core/State.js line 31 @@ -358,7 +358,7 @@
Type:
Source:
- src/core/State.js line 46 + src/core/State.js line 46 @@ -435,7 +435,7 @@
Type:
Source:
- src/core/State.js line 61 + src/core/State.js line 61 @@ -512,7 +512,7 @@
Type:
Source:
- src/core/State.js line 56 + src/core/State.js line 56 @@ -589,7 +589,7 @@
Type:
Source:
- src/core/State.js line 36 + src/core/State.js line 36 @@ -666,7 +666,7 @@
Type:
Source:
- src/core/State.js line 66 + src/core/State.js line 66 @@ -743,7 +743,7 @@
Type:
Source:
- src/core/State.js line 41 + src/core/State.js line 41 @@ -820,7 +820,7 @@
Type:
Source:
- src/core/State.js line 71 + src/core/State.js line 71 @@ -897,7 +897,7 @@
Type:
Source:
- src/core/State.js line 51 + src/core/State.js line 51 @@ -974,7 +974,7 @@
Type:
Source:
- src/core/State.js line 76 + src/core/State.js line 76 @@ -1051,7 +1051,7 @@
Type:
Source:
- src/core/State.js line 116 + src/core/State.js line 116 @@ -1128,7 +1128,7 @@
Type:
Source:
- src/core/State.js line 121 + src/core/State.js line 121 @@ -1205,7 +1205,7 @@
Type:
Source:
- src/core/State.js line 126 + src/core/State.js line 126 @@ -1282,7 +1282,7 @@
Type:
Source:
- src/core/State.js line 86 + src/core/State.js line 86 @@ -1359,7 +1359,7 @@
Type:
Source:
- src/core/State.js line 81 + src/core/State.js line 81 @@ -1436,7 +1436,7 @@
Type:
Source:
- src/core/State.js line 91 + src/core/State.js line 91 @@ -1513,7 +1513,7 @@
Type:
Source:
- src/core/State.js line 96 + src/core/State.js line 96 @@ -1590,7 +1590,7 @@
Type:
Source:
- src/core/State.js line 101 + src/core/State.js line 101 @@ -1667,7 +1667,7 @@
Type:
Source:
- src/core/State.js line 106 + src/core/State.js line 106 @@ -1744,7 +1744,7 @@
Type:
Source:
- src/core/State.js line 111 + src/core/State.js line 111 @@ -1873,7 +1873,7 @@
Parameters:
Source:
- src/core/State.js line 176 + src/core/State.js line 176 @@ -2021,7 +2021,7 @@
Parameters:
Source:
- src/core/State.js line 131 + src/core/State.js line 131 @@ -2156,7 +2156,7 @@
Parameters:
Source:
- src/core/State.js line 165 + src/core/State.js line 165 @@ -2290,7 +2290,7 @@
Parameters:
Source:
- src/core/State.js line 155 + src/core/State.js line 155 @@ -2424,7 +2424,7 @@
Parameters:
Source:
- src/core/State.js line 245 + src/core/State.js line 245 @@ -2558,7 +2558,7 @@
Parameters:
Source:
- src/core/State.js line 265 + src/core/State.js line 265 @@ -2695,7 +2695,7 @@
Parameters:
Source:
- src/core/State.js line 199 + src/core/State.js line 199 @@ -2831,7 +2831,7 @@
Parameters:
Source:
- src/core/State.js line 143 + src/core/State.js line 143 @@ -2965,7 +2965,7 @@
Parameters:
Source:
- src/core/State.js line 212 + src/core/State.js line 212 @@ -3101,7 +3101,7 @@
Parameters:
Source:
- src/core/State.js line 222 + src/core/State.js line 222 @@ -3259,7 +3259,7 @@
Parameters:
Source:
- src/core/State.js line 234 + src/core/State.js line 234 @@ -3393,7 +3393,7 @@
Parameters:
Source:
- src/core/State.js line 255 + src/core/State.js line 255 @@ -3527,7 +3527,7 @@
Parameters:
Source:
- src/core/State.js line 275 + src/core/State.js line 275 @@ -3663,7 +3663,7 @@
Parameters:
Source:
- src/core/State.js line 187 + src/core/State.js line 187 @@ -3706,9 +3706,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3725,7 +3725,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3754,7 +3754,7 @@
Parameters:
- + diff --git a/docs/Phaser.StateManager.html b/docs/Phaser.StateManager.html index 429a5480e..e41fe8f73 100644 --- a/docs/Phaser.StateManager.html +++ b/docs/Phaser.StateManager.html @@ -6,7 +6,7 @@ Phaser CE Class: StateManager - + @@ -289,7 +289,7 @@
Parameters:
Source:
- src/core/StateManager.js line 15 + src/core/StateManager.js line 15 @@ -394,7 +394,7 @@
Type:
Source:
- src/core/StateManager.js line 780 + src/core/StateManager.js line 780 @@ -471,7 +471,7 @@
Type:
Source:
- src/core/StateManager.js line 66 + src/core/StateManager.js line 66 @@ -548,7 +548,7 @@
Type:
Source:
- src/core/StateManager.js line 20 + src/core/StateManager.js line 20 @@ -625,7 +625,7 @@
Type:
Source:
- src/core/StateManager.js line 98 + src/core/StateManager.js line 98 @@ -702,7 +702,7 @@
Type:
Source:
- src/core/StateManager.js line 86 + src/core/StateManager.js line 86 @@ -779,7 +779,7 @@
Type:
Source:
- src/core/StateManager.js line 134 + src/core/StateManager.js line 134 @@ -856,7 +856,7 @@
Type:
Source:
- src/core/StateManager.js line 128 + src/core/StateManager.js line 128 @@ -933,7 +933,7 @@
Type:
Source:
- src/core/StateManager.js line 140 + src/core/StateManager.js line 140 @@ -1010,7 +1010,7 @@
Type:
Source:
- src/core/StateManager.js line 152 + src/core/StateManager.js line 152 @@ -1087,7 +1087,7 @@
Type:
Source:
- src/core/StateManager.js line 92 + src/core/StateManager.js line 92 @@ -1164,7 +1164,7 @@
Type:
Source:
- src/core/StateManager.js line 122 + src/core/StateManager.js line 122 @@ -1241,7 +1241,7 @@
Type:
Source:
- src/core/StateManager.js line 110 + src/core/StateManager.js line 110 @@ -1318,7 +1318,7 @@
Type:
Source:
- src/core/StateManager.js line 116 + src/core/StateManager.js line 116 @@ -1395,7 +1395,7 @@
Type:
Source:
- src/core/StateManager.js line 146 + src/core/StateManager.js line 146 @@ -1472,7 +1472,7 @@
Type:
Source:
- src/core/StateManager.js line 158 + src/core/StateManager.js line 158 @@ -1554,7 +1554,7 @@
Type:
Source:
- src/core/StateManager.js line 80 + src/core/StateManager.js line 80 @@ -1631,7 +1631,7 @@
Type:
Source:
- src/core/StateManager.js line 104 + src/core/StateManager.js line 104 @@ -1708,7 +1708,7 @@
Type:
Source:
- src/core/StateManager.js line 25 + src/core/StateManager.js line 25 @@ -1942,7 +1942,7 @@
Parameters:
Source:
- src/core/StateManager.js line 179 + src/core/StateManager.js line 179 @@ -2076,7 +2076,7 @@
Parameters:
Source:
- src/core/StateManager.js line 419 + src/core/StateManager.js line 419 @@ -2185,7 +2185,7 @@

Source:
- src/core/StateManager.js line 375 + src/core/StateManager.js line 375 @@ -2270,7 +2270,7 @@

Source:
- src/core/StateManager.js line 742 + src/core/StateManager.js line 742 @@ -2354,7 +2354,7 @@

Source:
- src/core/StateManager.js line 573 + src/core/StateManager.js line 573 @@ -2508,7 +2508,7 @@
Parameters:
Source:
- src/core/StateManager.js line 449 + src/core/StateManager.js line 449 @@ -2588,7 +2588,7 @@

Source:
- src/core/StateManager.js line 585 + src/core/StateManager.js line 585 @@ -2675,7 +2675,7 @@

Source:
- src/core/StateManager.js line 603 + src/core/StateManager.js line 603 @@ -2762,7 +2762,7 @@

Source:
- src/core/StateManager.js line 616 + src/core/StateManager.js line 616 @@ -2842,7 +2842,7 @@

Source:
- src/core/StateManager.js line 668 + src/core/StateManager.js line 668 @@ -2922,7 +2922,7 @@

Source:
- src/core/StateManager.js line 688 + src/core/StateManager.js line 688 @@ -3006,7 +3006,7 @@

Source:
- src/core/StateManager.js line 324 + src/core/StateManager.js line 324 @@ -3140,7 +3140,7 @@
Parameters:
Source:
- src/core/StateManager.js line 233 + src/core/StateManager.js line 233 @@ -3220,7 +3220,7 @@

Source:
- src/core/StateManager.js line 712 + src/core/StateManager.js line 712 @@ -3300,7 +3300,7 @@

Source:
- src/core/StateManager.js line 700 + src/core/StateManager.js line 700 @@ -3532,7 +3532,7 @@
Parameters:
Source:
- src/core/StateManager.js line 291 + src/core/StateManager.js line 291 @@ -3612,7 +3612,7 @@

Source:
- src/core/StateManager.js line 628 + src/core/StateManager.js line 628 @@ -3880,7 +3880,7 @@
Parameters:
Source:
- src/core/StateManager.js line 263 + src/core/StateManager.js line 263 @@ -4014,7 +4014,7 @@
Parameters:
Source:
- src/core/StateManager.js line 481 + src/core/StateManager.js line 481 @@ -4094,7 +4094,7 @@

Source:
- src/core/StateManager.js line 640 + src/core/StateManager.js line 640 @@ -4137,9 +4137,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4156,7 +4156,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4185,7 +4185,7 @@

- + diff --git a/docs/Phaser.Text.html b/docs/Phaser.Text.html index 3ff3a41fa..57b6bc081 100644 --- a/docs/Phaser.Text.html +++ b/docs/Phaser.Text.html @@ -6,7 +6,7 @@ Phaser CE Class: Text - + @@ -1118,7 +1118,7 @@

Properties
Source:
- src/gameobjects/Text.js line 42 + src/gameobjects/Text.js line 42 @@ -1236,7 +1236,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1850 + src/gameobjects/Text.js line 1850 @@ -1333,7 +1333,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -1429,7 +1429,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -1519,7 +1519,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -1610,7 +1610,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -1697,7 +1697,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1794,7 +1794,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1872,7 +1872,7 @@
Type:
Source:
- src/gameobjects/Text.js line 121 + src/gameobjects/Text.js line 121 @@ -1966,7 +1966,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -2069,7 +2069,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -2156,7 +2156,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -2233,7 +2233,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1927 + src/gameobjects/Text.js line 1927 @@ -2310,7 +2310,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1951 + src/gameobjects/Text.js line 1951 @@ -2403,7 +2403,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -2490,7 +2490,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -2567,7 +2567,7 @@
Type:
Source:
- src/gameobjects/Text.js line 59 + src/gameobjects/Text.js line 59 @@ -2654,7 +2654,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -2741,7 +2741,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -2818,7 +2818,7 @@
Type:
Source:
- src/gameobjects/Text.js line 148 + src/gameobjects/Text.js line 148 @@ -2896,7 +2896,7 @@
Type:
Source:
- src/gameobjects/Text.js line 155 + src/gameobjects/Text.js line 155 @@ -2988,7 +2988,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -3074,7 +3074,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -3151,7 +3151,7 @@
Type:
Source:
- src/gameobjects/Text.js line 98 + src/gameobjects/Text.js line 98 @@ -3237,7 +3237,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -3314,7 +3314,7 @@
Type:
Source:
- src/gameobjects/Text.js line 93 + src/gameobjects/Text.js line 93 @@ -3402,7 +3402,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -3482,7 +3482,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1663 + src/gameobjects/Text.js line 1663 @@ -3578,7 +3578,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -3664,7 +3664,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -3751,7 +3751,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -3838,7 +3838,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -3924,7 +3924,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -4011,7 +4011,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -4098,7 +4098,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -4198,7 +4198,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -4275,7 +4275,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1828 + src/gameobjects/Text.js line 1828 @@ -4361,7 +4361,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -4452,7 +4452,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -4545,7 +4545,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -4625,7 +4625,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1690 + src/gameobjects/Text.js line 1690 @@ -4707,7 +4707,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1725 + src/gameobjects/Text.js line 1725 @@ -4784,7 +4784,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1786 + src/gameobjects/Text.js line 1786 @@ -4861,7 +4861,7 @@
Type:
Source:
- src/gameobjects/Text.js line 108 + src/gameobjects/Text.js line 108 @@ -4938,7 +4938,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1807 + src/gameobjects/Text.js line 1807 @@ -5015,7 +5015,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1765 + src/gameobjects/Text.js line 1765 @@ -5092,7 +5092,7 @@
Type:
Source:
- src/gameobjects/Text.js line 113 + src/gameobjects/Text.js line 113 @@ -5183,7 +5183,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -5274,7 +5274,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -5361,7 +5361,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -5447,7 +5447,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -5541,7 +5541,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -5623,7 +5623,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2248 + src/gameobjects/Text.js line 2248 @@ -5719,7 +5719,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -5807,7 +5807,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -5894,7 +5894,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -5985,7 +5985,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -6078,7 +6078,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -6164,7 +6164,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -6266,7 +6266,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -6353,7 +6353,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -6443,7 +6443,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -6520,7 +6520,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2063 + src/gameobjects/Text.js line 2063 @@ -6609,7 +6609,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -6703,7 +6703,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -6790,7 +6790,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -6878,7 +6878,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -6966,7 +6966,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -7052,7 +7052,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -7139,7 +7139,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -7217,7 +7217,7 @@
Type:
Source:
- src/gameobjects/Text.js line 80 + src/gameobjects/Text.js line 80 @@ -7306,7 +7306,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -7395,7 +7395,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -7477,7 +7477,7 @@
Type:
Source:
- src/gameobjects/Text.js line 73 + src/gameobjects/Text.js line 73 @@ -7564,7 +7564,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -7652,7 +7652,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -7738,7 +7738,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -7824,7 +7824,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -7916,7 +7916,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -8003,7 +8003,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -8081,7 +8081,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1876 + src/gameobjects/Text.js line 1876 @@ -8168,7 +8168,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -8257,7 +8257,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -8346,7 +8346,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -8434,7 +8434,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -8522,7 +8522,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -8616,7 +8616,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -8693,7 +8693,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2156 + src/gameobjects/Text.js line 2156 @@ -8770,7 +8770,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2134 + src/gameobjects/Text.js line 2134 @@ -8847,7 +8847,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2200 + src/gameobjects/Text.js line 2200 @@ -8924,7 +8924,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2090 + src/gameobjects/Text.js line 2090 @@ -9001,7 +9001,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2112 + src/gameobjects/Text.js line 2112 @@ -9078,7 +9078,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2178 + src/gameobjects/Text.js line 2178 @@ -9166,7 +9166,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -9245,7 +9245,7 @@
Type:
Source:
- src/gameobjects/Text.js line 142 + src/gameobjects/Text.js line 142 @@ -9322,7 +9322,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1975 + src/gameobjects/Text.js line 1975 @@ -9399,7 +9399,7 @@
Type:
Source:
- src/gameobjects/Text.js line 103 + src/gameobjects/Text.js line 103 @@ -9476,7 +9476,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1997 + src/gameobjects/Text.js line 1997 @@ -9559,7 +9559,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1900 + src/gameobjects/Text.js line 1900 @@ -9632,7 +9632,7 @@

Source:
- src/gameobjects/Text.js line 2274 + src/gameobjects/Text.js line 2274 @@ -9711,7 +9711,7 @@
Type:
Source:
- src/gameobjects/Text.js line 1632 + src/gameobjects/Text.js line 1632 @@ -9789,7 +9789,7 @@
Type:
Source:
- src/gameobjects/Text.js line 88 + src/gameobjects/Text.js line 88 @@ -9875,7 +9875,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -9968,7 +9968,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -10061,7 +10061,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -10148,7 +10148,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -10234,7 +10234,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -10320,7 +10320,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -10402,7 +10402,7 @@
Type:
Source:
- src/gameobjects/Text.js line 67 + src/gameobjects/Text.js line 67 @@ -10483,7 +10483,7 @@
Type:
Source:
- src/gameobjects/Text.js line 134 + src/gameobjects/Text.js line 134 @@ -10582,7 +10582,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -10664,7 +10664,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2222 + src/gameobjects/Text.js line 2222 @@ -10741,7 +10741,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2019 + src/gameobjects/Text.js line 2019 @@ -10818,7 +10818,7 @@
Type:
Source:
- src/gameobjects/Text.js line 2041 + src/gameobjects/Text.js line 2041 @@ -10906,7 +10906,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -10998,7 +10998,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -11089,7 +11089,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -11180,7 +11180,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -11271,7 +11271,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -11362,7 +11362,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -11448,7 +11448,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -11535,7 +11535,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -11622,7 +11622,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -11711,7 +11711,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -11848,7 +11848,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -12039,7 +12039,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -12226,7 +12226,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 866 + src/gameobjects/Text.js line 866 @@ -12413,7 +12413,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 914 + src/gameobjects/Text.js line 914 @@ -12600,7 +12600,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 937 + src/gameobjects/Text.js line 937 @@ -12788,7 +12788,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 889 + src/gameobjects/Text.js line 889 @@ -13131,7 +13131,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -13475,7 +13475,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -13595,7 +13595,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -13703,7 +13703,7 @@

Source:
- src/gameobjects/Text.js line 836 + src/gameobjects/Text.js line 836 @@ -13811,7 +13811,7 @@

Source:
- src/gameobjects/Text.js line 851 + src/gameobjects/Text.js line 851 @@ -13978,7 +13978,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -14204,7 +14204,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -14348,7 +14348,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -14531,7 +14531,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 250 + src/gameobjects/Text.js line 250 @@ -14776,7 +14776,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -14942,7 +14942,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 1597 + src/gameobjects/Text.js line 1597 @@ -15109,7 +15109,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -15276,7 +15276,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -15393,7 +15393,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -15560,7 +15560,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -15681,7 +15681,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -15966,7 +15966,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -16062,7 +16062,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -16182,7 +16182,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -16365,7 +16365,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -16529,7 +16529,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 1325 + src/gameobjects/Text.js line 1325 @@ -16835,7 +16835,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -16952,7 +16952,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -17089,7 +17089,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 960 + src/gameobjects/Text.js line 960 @@ -17202,7 +17202,7 @@

Source:
- src/gameobjects/Text.js line 223 + src/gameobjects/Text.js line 223 @@ -17295,7 +17295,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -17438,7 +17438,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -17605,7 +17605,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -17796,7 +17796,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -18035,7 +18035,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -18152,7 +18152,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -18345,7 +18345,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -18510,7 +18510,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -18630,7 +18630,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -18835,7 +18835,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 1616 + src/gameobjects/Text.js line 1616 @@ -19002,7 +19002,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -19146,7 +19146,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -19290,7 +19290,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -19551,7 +19551,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -19908,7 +19908,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 263 + src/gameobjects/Text.js line 263 @@ -20872,7 +20872,7 @@
Properties
Source:
- src/gameobjects/Text.js line 298 + src/gameobjects/Text.js line 298 @@ -21093,7 +21093,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 1285 + src/gameobjects/Text.js line 1285 @@ -21380,7 +21380,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 1385 + src/gameobjects/Text.js line 1385 @@ -21604,7 +21604,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -21771,7 +21771,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -21914,7 +21914,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -22127,7 +22127,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -22242,7 +22242,7 @@

Source:
- src/gameobjects/Text.js line 239 + src/gameobjects/Text.js line 239 @@ -22335,7 +22335,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -22455,7 +22455,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -22590,7 +22590,7 @@
Parameters:
Source:
- src/gameobjects/Text.js line 693 + src/gameobjects/Text.js line 693 @@ -22753,7 +22753,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -22822,9 +22822,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -22841,7 +22841,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -22870,7 +22870,7 @@
Returns:
- + diff --git a/docs/Phaser.Tile.html b/docs/Phaser.Tile.html index cecf4c9ff..32d2703f8 100644 --- a/docs/Phaser.Tile.html +++ b/docs/Phaser.Tile.html @@ -6,7 +6,7 @@ Phaser CE Class: Tile - + @@ -350,7 +350,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 19 + src/tilemap/Tile.js line 19 @@ -455,7 +455,7 @@
Type:
Source:
- src/tilemap/Tile.js line 84 + src/tilemap/Tile.js line 84 @@ -532,7 +532,7 @@
Type:
Source:
- src/tilemap/Tile.js line 398 + src/tilemap/Tile.js line 398 @@ -609,7 +609,7 @@
Type:
Source:
- src/tilemap/Tile.js line 342 + src/tilemap/Tile.js line 342 @@ -724,7 +724,7 @@
Properties:
Source:
- src/tilemap/Tile.js line 74 + src/tilemap/Tile.js line 74 @@ -839,7 +839,7 @@
Properties:
Source:
- src/tilemap/Tile.js line 79 + src/tilemap/Tile.js line 79 @@ -916,7 +916,7 @@
Type:
Source:
- src/tilemap/Tile.js line 138 + src/tilemap/Tile.js line 138 @@ -993,7 +993,7 @@
Type:
Source:
- src/tilemap/Tile.js line 120 + src/tilemap/Tile.js line 120 @@ -1070,7 +1070,7 @@
Type:
Source:
- src/tilemap/Tile.js line 126 + src/tilemap/Tile.js line 126 @@ -1147,7 +1147,7 @@
Type:
Source:
- src/tilemap/Tile.js line 328 + src/tilemap/Tile.js line 328 @@ -1224,7 +1224,7 @@
Type:
Source:
- src/tilemap/Tile.js line 132 + src/tilemap/Tile.js line 132 @@ -1301,7 +1301,7 @@
Type:
Source:
- src/tilemap/Tile.js line 144 + src/tilemap/Tile.js line 144 @@ -1378,7 +1378,7 @@
Type:
Source:
- src/tilemap/Tile.js line 150 + src/tilemap/Tile.js line 150 @@ -1451,7 +1451,7 @@
Type:
Source:
- src/tilemap/Tile.js line 156 + src/tilemap/Tile.js line 156 @@ -1528,7 +1528,7 @@
Type:
Source:
- src/tilemap/Tile.js line 104 + src/tilemap/Tile.js line 104 @@ -1605,7 +1605,7 @@
Type:
Source:
- src/tilemap/Tile.js line 109 + src/tilemap/Tile.js line 109 @@ -1682,7 +1682,7 @@
Type:
Source:
- src/tilemap/Tile.js line 114 + src/tilemap/Tile.js line 114 @@ -1759,7 +1759,7 @@
Type:
Source:
- src/tilemap/Tile.js line 99 + src/tilemap/Tile.js line 99 @@ -1836,7 +1836,7 @@
Type:
Source:
- src/tilemap/Tile.js line 49 + src/tilemap/Tile.js line 49 @@ -1913,7 +1913,7 @@
Type:
Source:
- src/tilemap/Tile.js line 69 + src/tilemap/Tile.js line 69 @@ -1990,7 +1990,7 @@
Type:
Source:
- src/tilemap/Tile.js line 29 + src/tilemap/Tile.js line 29 @@ -2067,7 +2067,7 @@
Type:
Source:
- src/tilemap/Tile.js line 24 + src/tilemap/Tile.js line 24 @@ -2144,7 +2144,7 @@
Type:
Source:
- src/tilemap/Tile.js line 356 + src/tilemap/Tile.js line 356 @@ -2221,7 +2221,7 @@
Type:
Source:
- src/tilemap/Tile.js line 89 + src/tilemap/Tile.js line 89 @@ -2298,7 +2298,7 @@
Type:
Source:
- src/tilemap/Tile.js line 370 + src/tilemap/Tile.js line 370 @@ -2375,7 +2375,7 @@
Type:
Source:
- src/tilemap/Tile.js line 44 + src/tilemap/Tile.js line 44 @@ -2452,7 +2452,7 @@
Type:
Source:
- src/tilemap/Tile.js line 94 + src/tilemap/Tile.js line 94 @@ -2529,7 +2529,7 @@
Type:
Source:
- src/tilemap/Tile.js line 384 + src/tilemap/Tile.js line 384 @@ -2606,7 +2606,7 @@
Type:
Source:
- src/tilemap/Tile.js line 64 + src/tilemap/Tile.js line 64 @@ -2721,7 +2721,7 @@
Properties:
Source:
- src/tilemap/Tile.js line 54 + src/tilemap/Tile.js line 54 @@ -2836,7 +2836,7 @@
Properties:
Source:
- src/tilemap/Tile.js line 59 + src/tilemap/Tile.js line 59 @@ -2913,7 +2913,7 @@
Type:
Source:
- src/tilemap/Tile.js line 34 + src/tilemap/Tile.js line 34 @@ -2990,7 +2990,7 @@
Type:
Source:
- src/tilemap/Tile.js line 39 + src/tilemap/Tile.js line 39 @@ -3142,7 +3142,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 161 + src/tilemap/Tile.js line 161 @@ -3300,7 +3300,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 303 + src/tilemap/Tile.js line 303 @@ -3384,7 +3384,7 @@

Source:
- src/tilemap/Tile.js line 222 + src/tilemap/Tile.js line 222 @@ -3590,7 +3590,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 174 + src/tilemap/Tile.js line 174 @@ -3748,7 +3748,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 274 + src/tilemap/Tile.js line 274 @@ -3856,7 +3856,7 @@

Source:
- src/tilemap/Tile.js line 256 + src/tilemap/Tile.js line 256 @@ -4062,7 +4062,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 234 + src/tilemap/Tile.js line 234 @@ -4221,7 +4221,7 @@
Parameters:
Source:
- src/tilemap/Tile.js line 208 + src/tilemap/Tile.js line 208 @@ -4264,9 +4264,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -4283,7 +4283,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -4312,7 +4312,7 @@
Parameters:
- + diff --git a/docs/Phaser.TileSprite.html b/docs/Phaser.TileSprite.html index 6c1e9210c..42c05d5dd 100644 --- a/docs/Phaser.TileSprite.html +++ b/docs/Phaser.TileSprite.html @@ -6,7 +6,7 @@ Phaser CE Class: TileSprite - + @@ -502,7 +502,7 @@
Parameters:
Source:
- src/gameobjects/TileSprite.js line 59 + src/gameobjects/TileSprite.js line 59 @@ -674,7 +674,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -770,7 +770,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -860,7 +860,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -951,7 +951,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -1038,7 +1038,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -1135,7 +1135,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1229,7 +1229,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1332,7 +1332,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1419,7 +1419,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1512,7 +1512,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1599,7 +1599,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1676,7 +1676,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 116 + src/gameobjects/TileSprite.js line 116 @@ -1763,7 +1763,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1850,7 +1850,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1942,7 +1942,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -2028,7 +2028,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -2114,7 +2114,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -2210,7 +2210,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2296,7 +2296,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 211 + src/gameobjects/components/Core.js line 211 @@ -2383,7 +2383,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2470,7 +2470,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -2575,7 +2575,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 112 + src/pixi/display/Sprite.js line 112 @@ -2661,7 +2661,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2752,7 +2752,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2845,7 +2845,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -2936,7 +2936,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3027,7 +3027,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3114,7 +3114,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3200,7 +3200,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3294,7 +3294,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -3380,7 +3380,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3476,7 +3476,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -3564,7 +3564,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -3656,7 +3656,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -3747,7 +3747,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -3840,7 +3840,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -3926,7 +3926,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -4028,7 +4028,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -4115,7 +4115,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4205,7 +4205,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4294,7 +4294,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -4388,7 +4388,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -4475,7 +4475,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -4563,7 +4563,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -4651,7 +4651,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -4737,7 +4737,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -4824,7 +4824,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -4913,7 +4913,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -5002,7 +5002,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -5079,7 +5079,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 80 + src/gameobjects/TileSprite.js line 80 @@ -5166,7 +5166,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -5254,7 +5254,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -5340,7 +5340,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -5426,7 +5426,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -5504,7 +5504,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 138 + src/gameobjects/TileSprite.js line 138 @@ -5591,7 +5591,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -5678,7 +5678,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -5765,7 +5765,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -5854,7 +5854,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -5943,7 +5943,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -6037,7 +6037,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -6125,7 +6125,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -6216,7 +6216,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -6294,7 +6294,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 109 + src/gameobjects/TileSprite.js line 109 @@ -6371,7 +6371,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 130 + src/gameobjects/TileSprite.js line 130 @@ -6448,7 +6448,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 101 + src/gameobjects/TileSprite.js line 101 @@ -6525,7 +6525,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 91 + src/gameobjects/TileSprite.js line 91 @@ -6602,7 +6602,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 96 + src/gameobjects/TileSprite.js line 96 @@ -6679,7 +6679,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 123 + src/gameobjects/TileSprite.js line 123 @@ -6772,7 +6772,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -6870,7 +6870,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -6957,7 +6957,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -7034,7 +7034,7 @@
Type:
Source:
- src/gameobjects/TileSprite.js line 74 + src/gameobjects/TileSprite.js line 74 @@ -7133,7 +7133,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -7219,7 +7219,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -7307,7 +7307,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -7399,7 +7399,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -7490,7 +7490,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -7581,7 +7581,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -7672,7 +7672,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -7763,7 +7763,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -7849,7 +7849,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -7941,7 +7941,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -8033,7 +8033,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -8122,7 +8122,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -8259,7 +8259,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -8450,7 +8450,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -8793,7 +8793,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -9137,7 +9137,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -9322,7 +9322,7 @@
Parameters:
Source:
- src/gameobjects/TileSprite.js line 204 + src/gameobjects/TileSprite.js line 204 @@ -9442,7 +9442,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -9609,7 +9609,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -9773,7 +9773,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -9957,7 +9957,7 @@
Parameters:
Source:
- src/gameobjects/TileSprite.js line 237 + src/gameobjects/TileSprite.js line 237 @@ -10202,7 +10202,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -10362,7 +10362,7 @@
Parameters:
Source:
- src/gameobjects/TileSprite.js line 517 + src/gameobjects/TileSprite.js line 517 @@ -10451,7 +10451,7 @@

Source:
- src/gameobjects/TileSprite.js line 605 + src/gameobjects/TileSprite.js line 605 @@ -10618,7 +10618,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -10785,7 +10785,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -10902,7 +10902,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -11069,7 +11069,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -11190,7 +11190,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -11475,7 +11475,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -11571,7 +11571,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -11691,7 +11691,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -11874,7 +11874,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -12180,7 +12180,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -12297,7 +12297,7 @@

Source:
- src/gameobjects/components/Core.js line 354 + src/gameobjects/components/Core.js line 354 @@ -12386,7 +12386,7 @@

Source:
- src/gameobjects/TileSprite.js line 177 + src/gameobjects/TileSprite.js line 177 @@ -12499,7 +12499,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -12642,7 +12642,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -12809,7 +12809,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -13000,7 +13000,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -13165,7 +13165,7 @@
Parameters:
Source:
- src/gameobjects/TileSprite.js line 268 + src/gameobjects/TileSprite.js line 268 @@ -13282,7 +13282,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -13475,7 +13475,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -13640,7 +13640,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -13760,7 +13760,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -13951,7 +13951,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -14095,7 +14095,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -14239,7 +14239,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -14403,7 +14403,7 @@
Parameters:
Source:
- src/gameobjects/TileSprite.js line 289 + src/gameobjects/TileSprite.js line 289 @@ -14511,7 +14511,7 @@

Source:
- src/gameobjects/TileSprite.js line 223 + src/gameobjects/TileSprite.js line 223 @@ -14702,7 +14702,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -14845,7 +14845,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -15058,7 +15058,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -15179,7 +15179,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -15272,7 +15272,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -15461,7 +15461,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -15530,9 +15530,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -15549,7 +15549,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -15578,7 +15578,7 @@
Returns:
- + diff --git a/docs/Phaser.Tilemap.html b/docs/Phaser.Tilemap.html index 27736d6d2..38a03be05 100644 --- a/docs/Phaser.Tilemap.html +++ b/docs/Phaser.Tilemap.html @@ -6,7 +6,7 @@ Phaser CE Class: Tilemap - + @@ -451,7 +451,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 28 + src/tilemap/Tilemap.js line 28 @@ -552,7 +552,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 180 + src/tilemap/Tilemap.js line 180 @@ -625,7 +625,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 198 + src/tilemap/Tilemap.js line 198 @@ -698,7 +698,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 192 + src/tilemap/Tilemap.js line 192 @@ -771,7 +771,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 204 + src/tilemap/Tilemap.js line 204 @@ -844,7 +844,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 186 + src/tilemap/Tilemap.js line 186 @@ -917,7 +917,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 210 + src/tilemap/Tilemap.js line 210 @@ -994,7 +994,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 130 + src/tilemap/Tilemap.js line 130 @@ -1071,7 +1071,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 135 + src/tilemap/Tilemap.js line 135 @@ -1148,7 +1148,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 150 + src/tilemap/Tilemap.js line 150 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 155 + src/tilemap/Tilemap.js line 155 @@ -1302,7 +1302,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 145 + src/tilemap/Tilemap.js line 145 @@ -1379,7 +1379,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 75 + src/tilemap/Tilemap.js line 75 @@ -1456,7 +1456,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 33 + src/tilemap/Tilemap.js line 33 @@ -1533,7 +1533,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 55 + src/tilemap/Tilemap.js line 55 @@ -1610,7 +1610,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 95 + src/tilemap/Tilemap.js line 95 @@ -1687,7 +1687,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 110 + src/tilemap/Tilemap.js line 110 @@ -1764,7 +1764,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 140 + src/tilemap/Tilemap.js line 140 @@ -1841,7 +1841,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 38 + src/tilemap/Tilemap.js line 38 @@ -1924,7 +1924,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 2056 + src/tilemap/Tilemap.js line 2056 @@ -2001,7 +2001,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 100 + src/tilemap/Tilemap.js line 100 @@ -2078,7 +2078,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 120 + src/tilemap/Tilemap.js line 120 @@ -2155,7 +2155,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 125 + src/tilemap/Tilemap.js line 125 @@ -2232,7 +2232,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 70 + src/tilemap/Tilemap.js line 70 @@ -2309,7 +2309,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 85 + src/tilemap/Tilemap.js line 85 @@ -2386,7 +2386,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 65 + src/tilemap/Tilemap.js line 65 @@ -2463,7 +2463,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 115 + src/tilemap/Tilemap.js line 115 @@ -2540,7 +2540,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 105 + src/tilemap/Tilemap.js line 105 @@ -2617,7 +2617,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 60 + src/tilemap/Tilemap.js line 60 @@ -2694,7 +2694,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 80 + src/tilemap/Tilemap.js line 80 @@ -2771,7 +2771,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 50 + src/tilemap/Tilemap.js line 50 @@ -2848,7 +2848,7 @@
Type:
Source:
- src/tilemap/Tilemap.js line 90 + src/tilemap/Tilemap.js line 90 @@ -3236,7 +3236,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 255 + src/tilemap/Tilemap.js line 255 @@ -3394,7 +3394,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1168 + src/tilemap/Tilemap.js line 1168 @@ -3708,7 +3708,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1659 + src/tilemap/Tilemap.js line 1659 @@ -4038,7 +4038,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 214 + src/tilemap/Tilemap.js line 214 @@ -4368,7 +4368,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 667 + src/tilemap/Tilemap.js line 667 @@ -4920,7 +4920,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 377 + src/tilemap/Tilemap.js line 377 @@ -5299,7 +5299,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 502 + src/tilemap/Tilemap.js line 502 @@ -5575,7 +5575,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 594 + src/tilemap/Tilemap.js line 594 @@ -5684,7 +5684,7 @@

Source:
- src/tilemap/Tilemap.js line 2039 + src/tilemap/Tilemap.js line 2039 @@ -5768,7 +5768,7 @@

Source:
- src/tilemap/Tilemap.js line 1999 + src/tilemap/Tilemap.js line 1999 @@ -6081,7 +6081,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1957 + src/tilemap/Tilemap.js line 1957 @@ -6425,7 +6425,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1807 + src/tilemap/Tilemap.js line 1807 @@ -6559,7 +6559,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 839 + src/tilemap/Tilemap.js line 839 @@ -6741,7 +6741,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 748 + src/tilemap/Tilemap.js line 748 @@ -6905,7 +6905,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1107 + src/tilemap/Tilemap.js line 1107 @@ -7063,7 +7063,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 770 + src/tilemap/Tilemap.js line 770 @@ -7221,7 +7221,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 789 + src/tilemap/Tilemap.js line 789 @@ -7487,7 +7487,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 804 + src/tilemap/Tilemap.js line 804 @@ -7783,7 +7783,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1594 + src/tilemap/Tilemap.js line 1594 @@ -7990,7 +7990,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1237 + src/tilemap/Tilemap.js line 1237 @@ -8173,7 +8173,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1256 + src/tilemap/Tilemap.js line 1256 @@ -8356,7 +8356,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1275 + src/tilemap/Tilemap.js line 1275 @@ -8539,7 +8539,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1294 + src/tilemap/Tilemap.js line 1294 @@ -8673,7 +8673,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 827 + src/tilemap/Tilemap.js line 827 @@ -9043,7 +9043,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1634 + src/tilemap/Tilemap.js line 1634 @@ -9255,7 +9255,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1329 + src/tilemap/Tilemap.js line 1329 @@ -9527,7 +9527,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1720 + src/tilemap/Tilemap.js line 1720 @@ -9782,7 +9782,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1401 + src/tilemap/Tilemap.js line 1401 @@ -10121,7 +10121,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1471 + src/tilemap/Tilemap.js line 1471 @@ -10426,7 +10426,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1870 + src/tilemap/Tilemap.js line 1870 @@ -10510,7 +10510,7 @@

Source:
- src/tilemap/Tilemap.js line 1988 + src/tilemap/Tilemap.js line 1988 @@ -10726,7 +10726,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1350 + src/tilemap/Tilemap.js line 1350 @@ -11030,7 +11030,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1380 + src/tilemap/Tilemap.js line 1380 @@ -11441,7 +11441,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1835 + src/tilemap/Tilemap.js line 1835 @@ -11759,7 +11759,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1493 + src/tilemap/Tilemap.js line 1493 @@ -12066,7 +12066,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 932 + src/tilemap/Tilemap.js line 932 @@ -12378,7 +12378,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 973 + src/tilemap/Tilemap.js line 973 @@ -12653,7 +12653,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1009 + src/tilemap/Tilemap.js line 1009 @@ -12922,7 +12922,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1042 + src/tilemap/Tilemap.js line 1042 @@ -13062,7 +13062,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1313 + src/tilemap/Tilemap.js line 1313 @@ -13197,7 +13197,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1140 + src/tilemap/Tilemap.js line 1140 @@ -13451,7 +13451,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 851 + src/tilemap/Tilemap.js line 851 @@ -13798,7 +13798,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 899 + src/tilemap/Tilemap.js line 899 @@ -13956,7 +13956,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 240 + src/tilemap/Tilemap.js line 240 @@ -14237,7 +14237,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1915 + src/tilemap/Tilemap.js line 1915 @@ -14582,7 +14582,7 @@
Parameters:
Source:
- src/tilemap/Tilemap.js line 1754 + src/tilemap/Tilemap.js line 1754 @@ -14625,9 +14625,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -14644,7 +14644,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -14673,7 +14673,7 @@
Parameters:
- + diff --git a/docs/Phaser.TilemapLayer.html b/docs/Phaser.TilemapLayer.html index 26329c890..9f41fb0da 100644 --- a/docs/Phaser.TilemapLayer.html +++ b/docs/Phaser.TilemapLayer.html @@ -6,7 +6,7 @@ Phaser CE Class: TilemapLayer - + @@ -328,7 +328,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 23 + src/tilemap/TilemapLayer.js line 23 @@ -464,7 +464,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 55 + src/gameobjects/components/LifeSpan.js line 55 @@ -560,7 +560,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 73 + src/pixi/display/DisplayObject.js line 73 @@ -650,7 +650,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 28 + src/pixi/display/Sprite.js line 28 @@ -741,7 +741,7 @@
Type:
Source:
- src/gameobjects/components/Angle.js line 29 + src/gameobjects/components/Angle.js line 29 @@ -828,7 +828,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 186 + src/gameobjects/components/Core.js line 186 @@ -925,7 +925,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 28 + src/gameobjects/components/AutoCull.js line 28 @@ -1019,7 +1019,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 93 + src/pixi/display/Sprite.js line 93 @@ -1122,7 +1122,7 @@
Type:
Source:
- src/gameobjects/components/PhysicsBody.js line 97 + src/gameobjects/components/PhysicsBody.js line 97 @@ -1209,7 +1209,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 156 + src/gameobjects/components/Bounds.js line 156 @@ -1302,7 +1302,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1389,7 +1389,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 82 + src/gameobjects/components/FixedToCamera.js line 82 @@ -1466,7 +1466,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 59 + src/tilemap/TilemapLayer.js line 59 @@ -1553,7 +1553,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 56 + src/gameobjects/components/Bounds.js line 56 @@ -1640,7 +1640,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 76 + src/gameobjects/components/Bounds.js line 76 @@ -1732,7 +1732,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 103 + src/gameobjects/components/InWorld.js line 103 @@ -1818,7 +1818,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1904,7 +1904,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 160 + src/gameobjects/components/Core.js line 160 @@ -1992,7 +1992,7 @@
Type:
Source:
- src/gameobjects/components/Crop.js line 24 + src/gameobjects/components/Crop.js line 24 @@ -2088,7 +2088,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 153 + src/gameobjects/components/Core.js line 153 @@ -2170,7 +2170,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 110 + src/tilemap/TilemapLayer.js line 110 @@ -2455,7 +2455,7 @@
Properties:
Source:
- src/tilemap/TilemapLayer.js line 133 + src/tilemap/TilemapLayer.js line 133 @@ -2542,7 +2542,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 24 + src/gameobjects/components/Delta.js line 24 @@ -2629,7 +2629,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 41 + src/gameobjects/components/Delta.js line 41 @@ -2715,7 +2715,7 @@
Type:
Source:
- src/gameobjects/components/Delta.js line 56 + src/gameobjects/components/Delta.js line 56 @@ -2802,7 +2802,7 @@
Type:
Source:
- src/gameobjects/components/Destroy.js line 22 + src/gameobjects/components/Destroy.js line 22 @@ -2879,7 +2879,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 167 + src/tilemap/TilemapLayer.js line 167 @@ -2966,7 +2966,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 178 + src/gameobjects/components/Core.js line 178 @@ -3055,7 +3055,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 115 + src/tilemap/TilemapLayer.js line 115 @@ -3141,7 +3141,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -3232,7 +3232,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -3330,7 +3330,7 @@
Type:
Source:
- src/gameobjects/components/FixedToCamera.js line 54 + src/gameobjects/components/FixedToCamera.js line 54 @@ -3421,7 +3421,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 257 + src/gameobjects/components/LoadTexture.js line 257 @@ -3512,7 +3512,7 @@
Type:
Source:
- src/gameobjects/components/LoadTexture.js line 284 + src/gameobjects/components/LoadTexture.js line 284 @@ -3599,7 +3599,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 241 + src/gameobjects/components/Core.js line 241 @@ -3685,7 +3685,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 135 + src/gameobjects/components/Core.js line 135 @@ -3779,7 +3779,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 26 + src/gameobjects/components/Health.js line 26 @@ -3865,7 +3865,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 606 + src/pixi/display/DisplayObjectContainer.js line 606 @@ -3961,7 +3961,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -4049,7 +4049,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -4136,7 +4136,7 @@
Type:
Source:
- src/gameobjects/components/AutoCull.js line 37 + src/gameobjects/components/AutoCull.js line 37 @@ -4213,7 +4213,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 44 + src/tilemap/TilemapLayer.js line 44 @@ -4304,7 +4304,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 24 + src/gameobjects/components/InputEnabled.js line 24 @@ -4397,7 +4397,7 @@
Type:
Source:
- src/gameobjects/components/InputEnabled.js line 42 + src/gameobjects/components/InputEnabled.js line 42 @@ -4483,7 +4483,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 134 + src/gameobjects/components/InWorld.js line 134 @@ -4585,7 +4585,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 196 + src/gameobjects/components/Core.js line 196 @@ -4662,7 +4662,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 52 + src/tilemap/TilemapLayer.js line 52 @@ -4749,7 +4749,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 96 + src/gameobjects/components/Bounds.js line 96 @@ -4839,7 +4839,7 @@
Type:
Source:
- src/gameobjects/components/LifeSpan.js line 70 + src/gameobjects/components/LifeSpan.js line 70 @@ -4916,7 +4916,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 36 + src/tilemap/TilemapLayer.js line 36 @@ -5005,7 +5005,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -5099,7 +5099,7 @@
Type:
Source:
- src/gameobjects/components/Health.js line 35 + src/gameobjects/components/Health.js line 35 @@ -5186,7 +5186,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 143 + src/gameobjects/components/Core.js line 143 @@ -5274,7 +5274,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 24 + src/gameobjects/components/Bounds.js line 24 @@ -5362,7 +5362,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 41 + src/gameobjects/components/Bounds.js line 41 @@ -5448,7 +5448,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 111 + src/gameobjects/components/InWorld.js line 111 @@ -5535,7 +5535,7 @@
Type:
Source:
- src/gameobjects/components/InWorld.js line 120 + src/gameobjects/components/InWorld.js line 120 @@ -5624,7 +5624,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -5713,7 +5713,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 252 + src/gameobjects/components/Core.js line 252 @@ -5795,7 +5795,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 83 + src/tilemap/TilemapLayer.js line 83 @@ -5882,7 +5882,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -5970,7 +5970,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -6056,7 +6056,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 218 + src/gameobjects/components/Core.js line 218 @@ -6142,7 +6142,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 225 + src/gameobjects/components/Core.js line 225 @@ -6226,7 +6226,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 174 + src/tilemap/TilemapLayer.js line 174 @@ -6313,7 +6313,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -6400,7 +6400,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 233 + src/gameobjects/components/Core.js line 233 @@ -6588,7 +6588,7 @@
Properties:
Source:
- src/tilemap/TilemapLayer.js line 98 + src/tilemap/TilemapLayer.js line 98 @@ -6675,7 +6675,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 116 + src/gameobjects/components/Bounds.js line 116 @@ -6764,7 +6764,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 61 + src/pixi/display/DisplayObject.js line 61 @@ -6853,7 +6853,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -6941,7 +6941,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 46 + src/gameobjects/components/ScaleMinMax.js line 46 @@ -7029,7 +7029,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 36 + src/gameobjects/components/ScaleMinMax.js line 36 @@ -7113,7 +7113,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 152 + src/tilemap/TilemapLayer.js line 152 @@ -7197,7 +7197,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 160 + src/tilemap/TilemapLayer.js line 160 @@ -7291,7 +7291,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 103 + src/pixi/display/Sprite.js line 103 @@ -7379,7 +7379,7 @@
Type:
Source:
- src/gameobjects/components/Smoothed.js line 25 + src/gameobjects/components/Smoothed.js line 25 @@ -7465,7 +7465,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 36 + src/pixi/display/Sprite.js line 36 @@ -7580,7 +7580,7 @@
Properties:
Source:
- src/tilemap/TilemapLayer.js line 230 + src/tilemap/TilemapLayer.js line 230 @@ -7673,7 +7673,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 63 + src/pixi/display/Sprite.js line 63 @@ -7766,7 +7766,7 @@
Type:
Source:
- src/pixi/display/Sprite.js line 82 + src/pixi/display/Sprite.js line 82 @@ -7853,7 +7853,7 @@
Type:
Source:
- src/gameobjects/components/Bounds.js line 136 + src/gameobjects/components/Bounds.js line 136 @@ -7939,7 +7939,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 20 + src/gameobjects/components/ScaleMinMax.js line 20 @@ -8025,7 +8025,7 @@
Type:
Source:
- src/gameobjects/components/ScaleMinMax.js line 26 + src/gameobjects/components/ScaleMinMax.js line 26 @@ -8114,7 +8114,7 @@
Type:
Source:
- src/tilemap/TilemapLayer.js line 77 + src/tilemap/TilemapLayer.js line 77 @@ -8213,7 +8213,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 90 + src/pixi/display/DisplayObject.js line 90 @@ -8299,7 +8299,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 576 + src/pixi/display/DisplayObjectContainer.js line 576 @@ -8387,7 +8387,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 204 + src/gameobjects/components/Core.js line 204 @@ -8479,7 +8479,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -8570,7 +8570,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -8661,7 +8661,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -8752,7 +8752,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -8843,7 +8843,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -8929,7 +8929,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -9016,7 +9016,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 626 + src/pixi/display/DisplayObject.js line 626 @@ -9103,7 +9103,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 646 + src/pixi/display/DisplayObject.js line 646 @@ -9192,7 +9192,7 @@
Type:
Source:
- src/gameobjects/components/Core.js line 170 + src/gameobjects/components/Core.js line 170 @@ -9329,7 +9329,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -9520,7 +9520,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -9863,7 +9863,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 209 + src/gameobjects/components/Bounds.js line 209 @@ -10207,7 +10207,7 @@
Parameters:
Source:
- src/gameobjects/components/Bounds.js line 306 + src/gameobjects/components/Bounds.js line 306 @@ -10327,7 +10327,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 24 + src/gameobjects/components/BringToTop.js line 24 @@ -10494,7 +10494,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -10720,7 +10720,7 @@
Parameters:
Source:
- src/gameobjects/components/Crop.js line 49 + src/gameobjects/components/Crop.js line 49 @@ -10864,7 +10864,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 46 + src/gameobjects/components/Health.js line 46 @@ -10977,7 +10977,7 @@

Source:
- src/tilemap/TilemapLayer.js line 353 + src/tilemap/TilemapLayer.js line 353 @@ -11062,7 +11062,7 @@

Source:
- src/tilemap/TilemapLayer.js line 260 + src/tilemap/TilemapLayer.js line 260 @@ -11307,7 +11307,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -11482,7 +11482,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 211 + src/pixi/display/Sprite.js line 211 @@ -11649,7 +11649,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -11816,7 +11816,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -11924,7 +11924,7 @@

Source:
- src/tilemap/TilemapLayer.js line 413 + src/tilemap/TilemapLayer.js line 413 @@ -12037,7 +12037,7 @@

Source:
- src/pixi/display/Sprite.js line 328 + src/pixi/display/Sprite.js line 328 @@ -12331,7 +12331,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 567 + src/tilemap/TilemapLayer.js line 567 @@ -12439,7 +12439,7 @@

Source:
- src/tilemap/TilemapLayer.js line 425 + src/tilemap/TilemapLayer.js line 425 @@ -12797,7 +12797,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 616 + src/tilemap/TilemapLayer.js line 616 @@ -12955,7 +12955,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 521 + src/tilemap/TilemapLayer.js line 521 @@ -13164,7 +13164,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 549 + src/tilemap/TilemapLayer.js line 549 @@ -13325,7 +13325,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 535 + src/tilemap/TilemapLayer.js line 535 @@ -13492,7 +13492,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 88 + src/gameobjects/components/Health.js line 88 @@ -13613,7 +13613,7 @@

Source:
- src/gameobjects/components/LifeSpan.js line 117 + src/gameobjects/components/LifeSpan.js line 117 @@ -13898,7 +13898,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 51 + src/gameobjects/components/LoadTexture.js line 51 @@ -13994,7 +13994,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 84 + src/gameobjects/components/BringToTop.js line 84 @@ -14114,7 +14114,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 64 + src/gameobjects/components/BringToTop.js line 64 @@ -14297,7 +14297,7 @@
Parameters:
Source:
- src/gameobjects/components/Overlap.js line 29 + src/gameobjects/components/Overlap.js line 29 @@ -14603,7 +14603,7 @@
Parameters:
Source:
- src/gameobjects/components/Animation.js line 31 + src/gameobjects/components/Animation.js line 31 @@ -14716,7 +14716,7 @@

Source:
- src/tilemap/TilemapLayer.js line 289 + src/tilemap/TilemapLayer.js line 289 @@ -14805,7 +14805,7 @@

Source:
- src/tilemap/TilemapLayer.js line 279 + src/tilemap/TilemapLayer.js line 279 @@ -14898,7 +14898,7 @@

Source:
- src/gameobjects/components/Core.js line 318 + src/gameobjects/components/Core.js line 318 @@ -15041,7 +15041,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -15208,7 +15208,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -15399,7 +15399,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -15483,7 +15483,7 @@

Source:
- src/tilemap/TilemapLayer.js line 1061 + src/tilemap/TilemapLayer.js line 1061 @@ -15722,7 +15722,7 @@
Parameters:
Source:
- src/gameobjects/components/Reset.js line 30 + src/gameobjects/components/Reset.js line 30 @@ -15839,7 +15839,7 @@

Source:
- src/gameobjects/components/LoadTexture.js line 236 + src/gameobjects/components/LoadTexture.js line 236 @@ -15924,7 +15924,7 @@

Source:
- src/tilemap/TilemapLayer.js line 710 + src/tilemap/TilemapLayer.js line 710 @@ -16086,7 +16086,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 365 + src/tilemap/TilemapLayer.js line 365 @@ -16279,7 +16279,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 225 + src/gameobjects/components/LoadTexture.js line 225 @@ -16363,7 +16363,7 @@

Source:
- src/tilemap/TilemapLayer.js line 402 + src/tilemap/TilemapLayer.js line 402 @@ -16528,7 +16528,7 @@
Parameters:
Source:
- src/gameobjects/components/LifeSpan.js line 83 + src/gameobjects/components/LifeSpan.js line 83 @@ -16648,7 +16648,7 @@

Source:
- src/gameobjects/components/BringToTop.js line 44 + src/gameobjects/components/BringToTop.js line 44 @@ -16839,7 +16839,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -16983,7 +16983,7 @@
Parameters:
Source:
- src/gameobjects/components/LoadTexture.js line 156 + src/gameobjects/components/LoadTexture.js line 156 @@ -17127,7 +17127,7 @@
Parameters:
Source:
- src/gameobjects/components/Health.js line 69 + src/gameobjects/components/Health.js line 69 @@ -17343,7 +17343,7 @@
Parameters:
Source:
- src/tilemap/TilemapLayer.js line 728 + src/tilemap/TilemapLayer.js line 728 @@ -17580,7 +17580,7 @@
Parameters:
Source:
- src/gameobjects/components/ScaleMinMax.js line 109 + src/gameobjects/components/ScaleMinMax.js line 109 @@ -17780,7 +17780,7 @@
Parameters:
Source:
- src/pixi/display/Sprite.js line 175 + src/pixi/display/Sprite.js line 175 @@ -17947,7 +17947,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -18090,7 +18090,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -18303,7 +18303,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -18424,7 +18424,7 @@

Source:
- src/gameobjects/components/Core.js line 343 + src/gameobjects/components/Core.js line 343 @@ -18517,7 +18517,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -18637,7 +18637,7 @@

Source:
- src/gameobjects/components/Crop.js line 85 + src/gameobjects/components/Crop.js line 85 @@ -18800,7 +18800,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -18869,9 +18869,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -18888,7 +18888,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -18917,7 +18917,7 @@
Returns:
- + diff --git a/docs/Phaser.TilemapParser.html b/docs/Phaser.TilemapParser.html index 643fdd1cf..ad656fe9f 100644 --- a/docs/Phaser.TilemapParser.html +++ b/docs/Phaser.TilemapParser.html @@ -6,7 +6,7 @@ Phaser CE Class: TilemapParser - + @@ -180,7 +180,7 @@

Source:
- src/tilemap/TilemapParser.js line 13 + src/tilemap/TilemapParser.js line 13 @@ -290,7 +290,7 @@
Type:
Source:
- src/tilemap/TilemapParser.js line 26 + src/tilemap/TilemapParser.js line 26 @@ -368,7 +368,7 @@

Source:
- src/tilemap/TilemapParser.js line 133 + src/tilemap/TilemapParser.js line 133 @@ -738,7 +738,7 @@
Parameters:
Source:
- src/tilemap/TilemapParser.js line 28 + src/tilemap/TilemapParser.js line 28 @@ -1028,7 +1028,7 @@
Parameters:
Source:
- src/tilemap/TilemapParser.js line 76 + src/tilemap/TilemapParser.js line 76 @@ -1354,7 +1354,7 @@
Parameters:
Source:
- src/tilemap/TilemapParser.js line 233 + src/tilemap/TilemapParser.js line 233 @@ -1512,7 +1512,7 @@
Parameters:
Source:
- src/tilemap/TilemapParser.js line 312 + src/tilemap/TilemapParser.js line 312 @@ -1579,9 +1579,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1598,7 +1598,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1627,7 +1627,7 @@
Returns:
- + diff --git a/docs/Phaser.Tileset.html b/docs/Phaser.Tileset.html index d81999ea7..02bb21bbd 100644 --- a/docs/Phaser.Tileset.html +++ b/docs/Phaser.Tileset.html @@ -6,7 +6,7 @@ Phaser CE Class: Tileset - + @@ -483,7 +483,7 @@
Parameters:
Source:
- src/tilemap/Tileset.js line 22 + src/tilemap/Tileset.js line 22 @@ -588,7 +588,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 101 + src/tilemap/Tileset.js line 101 @@ -666,7 +666,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 40 + src/tilemap/Tileset.js line 40 @@ -743,7 +743,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 85 + src/tilemap/Tileset.js line 85 @@ -820,7 +820,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 33 + src/tilemap/Tileset.js line 33 @@ -897,7 +897,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 77 + src/tilemap/Tileset.js line 77 @@ -1012,7 +1012,7 @@
Properties:
Source:
- src/tilemap/Tileset.js line 93 + src/tilemap/Tileset.js line 93 @@ -1089,7 +1089,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 54 + src/tilemap/Tileset.js line 54 @@ -1209,7 +1209,7 @@
Properties:
Source:
- src/tilemap/Tileset.js line 63 + src/tilemap/Tileset.js line 63 @@ -1287,7 +1287,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 71 + src/tilemap/Tileset.js line 71 @@ -1364,7 +1364,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 47 + src/tilemap/Tileset.js line 47 @@ -1441,7 +1441,7 @@
Type:
Source:
- src/tilemap/Tileset.js line 109 + src/tilemap/Tileset.js line 109 @@ -1569,7 +1569,7 @@
Parameters:
Source:
- src/tilemap/Tileset.js line 153 + src/tilemap/Tileset.js line 153 @@ -1799,7 +1799,7 @@
Parameters:
Source:
- src/tilemap/Tileset.js line 122 + src/tilemap/Tileset.js line 122 @@ -1933,7 +1933,7 @@
Parameters:
Source:
- src/tilemap/Tileset.js line 169 + src/tilemap/Tileset.js line 169 @@ -2127,7 +2127,7 @@
Parameters:
Source:
- src/tilemap/Tileset.js line 182 + src/tilemap/Tileset.js line 182 @@ -2170,9 +2170,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2189,7 +2189,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2218,7 +2218,7 @@
Parameters:
- + diff --git a/docs/Phaser.Time.html b/docs/Phaser.Time.html index f751bdb68..405263c57 100644 --- a/docs/Phaser.Time.html +++ b/docs/Phaser.Time.html @@ -6,7 +6,7 @@ Phaser CE Class: Time - + @@ -237,7 +237,7 @@
Parameters:
Source:
- src/time/Time.js line 26 + src/time/Time.js line 26 @@ -342,7 +342,7 @@
Type:
Source:
- src/time/Time.js line 152 + src/time/Time.js line 152 @@ -419,7 +419,7 @@
Type:
Source:
- src/time/Time.js line 93 + src/time/Time.js line 93 @@ -496,7 +496,7 @@
Type:
Source:
- src/time/Time.js line 105 + src/time/Time.js line 105 @@ -573,7 +573,7 @@
Type:
Source:
- src/time/Time.js line 99 + src/time/Time.js line 99 @@ -659,7 +659,7 @@
Type:
Source:
- src/time/Time.js line 606 + src/time/Time.js line 606 @@ -736,7 +736,7 @@
Type:
Source:
- src/time/Time.js line 112 + src/time/Time.js line 112 @@ -822,7 +822,7 @@
Type:
Source:
- src/time/Time.js line 632 + src/time/Time.js line 632 @@ -903,7 +903,7 @@
Type:
Source:
- src/time/Time.js line 72 + src/time/Time.js line 72 @@ -991,7 +991,7 @@
Type:
Source:
- src/time/Time.js line 87 + src/time/Time.js line 87 @@ -1068,7 +1068,7 @@
Type:
Source:
- src/time/Time.js line 268 + src/time/Time.js line 268 @@ -1146,7 +1146,7 @@
Type:
Source:
- src/time/Time.js line 188 + src/time/Time.js line 188 @@ -1225,7 +1225,7 @@
Type:
Source:
- src/time/Time.js line 224 + src/time/Time.js line 224 @@ -1304,7 +1304,7 @@
Type:
Source:
- src/time/Time.js line 215 + src/time/Time.js line 215 @@ -1382,7 +1382,7 @@
Type:
Source:
- src/time/Time.js line 161 + src/time/Time.js line 161 @@ -1459,7 +1459,7 @@
Type:
Source:
- src/time/Time.js line 32 + src/time/Time.js line 32 @@ -1538,7 +1538,7 @@
Type:
Source:
- src/time/Time.js line 243 + src/time/Time.js line 243 @@ -1624,7 +1624,7 @@
Type:
Source:
- src/time/Time.js line 234 + src/time/Time.js line 234 @@ -1706,7 +1706,7 @@
Type:
Source:
- src/time/Time.js line 55 + src/time/Time.js line 55 @@ -1784,7 +1784,7 @@
Type:
Source:
- src/time/Time.js line 250 + src/time/Time.js line 250 @@ -1862,7 +1862,7 @@
Type:
Source:
- src/time/Time.js line 179 + src/time/Time.js line 179 @@ -1940,7 +1940,7 @@
Type:
Source:
- src/time/Time.js line 206 + src/time/Time.js line 206 @@ -2029,7 +2029,7 @@
Type:
Source:
- src/time/Time.js line 145 + src/time/Time.js line 145 @@ -2109,7 +2109,7 @@
Type:
Source:
- src/time/Time.js line 133 + src/time/Time.js line 133 @@ -2186,7 +2186,7 @@
Type:
Source:
- src/time/Time.js line 39 + src/time/Time.js line 39 @@ -2263,7 +2263,7 @@
Type:
Source:
- src/time/Time.js line 262 + src/time/Time.js line 262 @@ -2340,7 +2340,7 @@
Type:
Source:
- src/time/Time.js line 256 + src/time/Time.js line 256 @@ -2418,7 +2418,7 @@
Type:
Source:
- src/time/Time.js line 170 + src/time/Time.js line 170 @@ -2496,7 +2496,7 @@
Type:
Source:
- src/time/Time.js line 197 + src/time/Time.js line 197 @@ -2624,7 +2624,7 @@
Parameters:
Source:
- src/time/Time.js line 323 + src/time/Time.js line 323 @@ -2732,7 +2732,7 @@

Source:
- src/time/Time.js line 309 + src/time/Time.js line 309 @@ -2886,7 +2886,7 @@
Parameters:
Source:
- src/time/Time.js line 337 + src/time/Time.js line 337 @@ -3044,7 +3044,7 @@
Parameters:
Source:
- src/time/Time.js line 581 + src/time/Time.js line 581 @@ -3202,7 +3202,7 @@
Parameters:
Source:
- src/time/Time.js line 569 + src/time/Time.js line 569 @@ -3310,7 +3310,7 @@

Source:
- src/time/Time.js line 372 + src/time/Time.js line 372 @@ -3394,7 +3394,7 @@

Source:
- src/time/Time.js line 355 + src/time/Time.js line 355 @@ -3478,7 +3478,7 @@

Source:
- src/time/Time.js line 593 + src/time/Time.js line 593 @@ -3562,7 +3562,7 @@

Source:
- src/time/Time.js line 558 + src/time/Time.js line 558 @@ -3721,7 +3721,7 @@
Parameters:
Source:
- src/time/Time.js line 385 + src/time/Time.js line 385 @@ -3764,9 +3764,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3783,7 +3783,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3812,7 +3812,7 @@
Parameters:
- + diff --git a/docs/Phaser.Timer.html b/docs/Phaser.Timer.html index b1040e3f1..d375c32dc 100644 --- a/docs/Phaser.Timer.html +++ b/docs/Phaser.Timer.html @@ -6,7 +6,7 @@ Phaser CE Class: Timer - + @@ -289,7 +289,7 @@
Parameters:
Source:
- src/time/Timer.js line 20 + src/time/Timer.js line 20 @@ -394,7 +394,7 @@
Type:
Source:
- src/time/Timer.js line 168 + src/time/Timer.js line 168 @@ -471,7 +471,7 @@
Type:
Source:
- src/time/Timer.js line 154 + src/time/Timer.js line 154 @@ -548,7 +548,7 @@
Type:
Source:
- src/time/Timer.js line 175 + src/time/Timer.js line 175 @@ -625,7 +625,7 @@
Type:
Source:
- src/time/Timer.js line 161 + src/time/Timer.js line 161 @@ -702,7 +702,7 @@
Type:
Source:
- src/time/Timer.js line 44 + src/time/Timer.js line 44 @@ -779,7 +779,7 @@
Type:
Source:
- src/time/Timer.js line 636 + src/time/Timer.js line 636 @@ -856,7 +856,7 @@
Type:
Source:
- src/time/Timer.js line 57 + src/time/Timer.js line 57 @@ -933,7 +933,7 @@
Type:
Source:
- src/time/Timer.js line 62 + src/time/Timer.js line 62 @@ -1010,7 +1010,7 @@
Type:
Source:
- src/time/Timer.js line 51 + src/time/Timer.js line 51 @@ -1087,7 +1087,7 @@
Type:
Source:
- src/time/Timer.js line 28 + src/time/Timer.js line 28 @@ -1164,7 +1164,7 @@
Type:
Source:
- src/time/Timer.js line 657 + src/time/Timer.js line 657 @@ -1241,7 +1241,7 @@
Type:
Source:
- src/time/Timer.js line 671 + src/time/Timer.js line 671 @@ -1318,7 +1318,7 @@
Type:
Source:
- src/time/Timer.js line 622 + src/time/Timer.js line 622 @@ -1395,7 +1395,7 @@
Type:
Source:
- src/time/Timer.js line 78 + src/time/Timer.js line 78 @@ -1473,7 +1473,7 @@
Type:
Source:
- src/time/Timer.js line 71 + src/time/Timer.js line 71 @@ -1550,7 +1550,7 @@
Type:
Source:
- src/time/Timer.js line 85 + src/time/Timer.js line 85 @@ -1628,7 +1628,7 @@
Type:
Source:
- src/time/Timer.js line 38 + src/time/Timer.js line 38 @@ -1705,7 +1705,7 @@
Type:
Source:
- src/time/Timer.js line 692 + src/time/Timer.js line 692 @@ -1944,7 +1944,7 @@
Parameters:
Source:
- src/time/Timer.js line 210 + src/time/Timer.js line 210 @@ -2052,7 +2052,7 @@

Source:
- src/time/Timer.js line 514 + src/time/Timer.js line 514 @@ -2136,7 +2136,7 @@

Source:
- src/time/Timer.js line 366 + src/time/Timer.js line 366 @@ -2221,7 +2221,7 @@

Source:
- src/time/Timer.js line 604 + src/time/Timer.js line 604 @@ -2466,7 +2466,7 @@
Parameters:
Source:
- src/time/Timer.js line 252 + src/time/Timer.js line 252 @@ -2575,7 +2575,7 @@

Source:
- src/time/Timer.js line 330 + src/time/Timer.js line 330 @@ -2659,7 +2659,7 @@

Source:
- src/time/Timer.js line 474 + src/time/Timer.js line 474 @@ -2793,7 +2793,7 @@
Parameters:
Source:
- src/time/Timer.js line 311 + src/time/Timer.js line 311 @@ -2878,7 +2878,7 @@

Source:
- src/time/Timer.js line 590 + src/time/Timer.js line 590 @@ -3156,7 +3156,7 @@
Parameters:
Source:
- src/time/Timer.js line 230 + src/time/Timer.js line 230 @@ -3264,7 +3264,7 @@

Source:
- src/time/Timer.js line 551 + src/time/Timer.js line 551 @@ -3418,7 +3418,7 @@
Parameters:
Source:
- src/time/Timer.js line 272 + src/time/Timer.js line 272 @@ -3572,7 +3572,7 @@
Parameters:
Source:
- src/time/Timer.js line 294 + src/time/Timer.js line 294 @@ -3706,7 +3706,7 @@
Parameters:
Source:
- src/time/Timer.js line 388 + src/time/Timer.js line 388 @@ -3773,9 +3773,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3792,7 +3792,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3821,7 +3821,7 @@
Returns:
- + diff --git a/docs/Phaser.TimerEvent.html b/docs/Phaser.TimerEvent.html index d03c07967..6c3b7d636 100644 --- a/docs/Phaser.TimerEvent.html +++ b/docs/Phaser.TimerEvent.html @@ -6,7 +6,7 @@ Phaser CE Class: TimerEvent - + @@ -402,7 +402,7 @@
Parameters:
Source:
- src/time/TimerEvent.js line 28 + src/time/TimerEvent.js line 28 @@ -545,7 +545,7 @@
Properties:
Source:
- src/time/TimerEvent.js line 70 + src/time/TimerEvent.js line 70 @@ -622,7 +622,7 @@
Type:
Source:
- src/time/TimerEvent.js line 60 + src/time/TimerEvent.js line 60 @@ -699,7 +699,7 @@
Type:
Source:
- src/time/TimerEvent.js line 65 + src/time/TimerEvent.js line 65 @@ -776,7 +776,7 @@
Type:
Source:
- src/time/TimerEvent.js line 40 + src/time/TimerEvent.js line 40 @@ -853,7 +853,7 @@
Type:
Source:
- src/time/TimerEvent.js line 55 + src/time/TimerEvent.js line 55 @@ -930,7 +930,7 @@
Type:
Source:
- src/time/TimerEvent.js line 76 + src/time/TimerEvent.js line 76 @@ -1007,7 +1007,7 @@
Type:
Source:
- src/time/TimerEvent.js line 50 + src/time/TimerEvent.js line 50 @@ -1084,7 +1084,7 @@
Type:
Source:
- src/time/TimerEvent.js line 45 + src/time/TimerEvent.js line 45 @@ -1161,7 +1161,7 @@
Type:
Source:
- src/time/TimerEvent.js line 35 + src/time/TimerEvent.js line 35 @@ -1194,9 +1194,9 @@
Type:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1213,7 +1213,7 @@
Type:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1242,7 +1242,7 @@
Type:
- + diff --git a/docs/Phaser.Touch.html b/docs/Phaser.Touch.html index ea4cac864..882737e0d 100644 --- a/docs/Phaser.Touch.html +++ b/docs/Phaser.Touch.html @@ -6,7 +6,7 @@ Phaser CE Class: Touch - + @@ -231,7 +231,7 @@
Parameters:
Source:
- src/input/Touch.js line 16 + src/input/Touch.js line 16 @@ -336,7 +336,7 @@
Type:
Source:
- src/input/Touch.js line 28 + src/input/Touch.js line 28 @@ -413,7 +413,7 @@
Type:
Source:
- src/input/Touch.js line 40 + src/input/Touch.js line 40 @@ -497,7 +497,7 @@
Type:
Source:
- src/input/Touch.js line 35 + src/input/Touch.js line 35 @@ -574,7 +574,7 @@
Type:
Source:
- src/input/Touch.js line 82 + src/input/Touch.js line 82 @@ -651,7 +651,7 @@
Type:
Source:
- src/input/Touch.js line 21 + src/input/Touch.js line 21 @@ -735,7 +735,7 @@
Type:
Source:
- src/input/Touch.js line 76 + src/input/Touch.js line 76 @@ -812,7 +812,7 @@
Type:
Source:
- src/input/Touch.js line 70 + src/input/Touch.js line 70 @@ -889,7 +889,7 @@
Type:
Source:
- src/input/Touch.js line 55 + src/input/Touch.js line 55 @@ -966,7 +966,7 @@
Type:
Source:
- src/input/Touch.js line 60 + src/input/Touch.js line 60 @@ -1043,7 +1043,7 @@
Type:
Source:
- src/input/Touch.js line 65 + src/input/Touch.js line 65 @@ -1120,7 +1120,7 @@
Type:
Source:
- src/input/Touch.js line 50 + src/input/Touch.js line 50 @@ -1197,7 +1197,7 @@
Type:
Source:
- src/input/Touch.js line 45 + src/input/Touch.js line 45 @@ -1275,7 +1275,7 @@

Source:
- src/input/Touch.js line 194 + src/input/Touch.js line 194 @@ -1410,7 +1410,7 @@
Parameters:
Source:
- src/input/Touch.js line 245 + src/input/Touch.js line 245 @@ -1544,7 +1544,7 @@
Parameters:
Source:
- src/input/Touch.js line 352 + src/input/Touch.js line 352 @@ -1679,7 +1679,7 @@
Parameters:
Source:
- src/input/Touch.js line 280 + src/input/Touch.js line 280 @@ -1814,7 +1814,7 @@
Parameters:
Source:
- src/input/Touch.js line 306 + src/input/Touch.js line 306 @@ -1948,7 +1948,7 @@
Parameters:
Source:
- src/input/Touch.js line 327 + src/input/Touch.js line 327 @@ -2082,7 +2082,7 @@
Parameters:
Source:
- src/input/Touch.js line 208 + src/input/Touch.js line 208 @@ -2166,7 +2166,7 @@

Source:
- src/input/Touch.js line 129 + src/input/Touch.js line 129 @@ -2250,7 +2250,7 @@

Source:
- src/input/Touch.js line 384 + src/input/Touch.js line 384 @@ -2293,9 +2293,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2312,7 +2312,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2341,7 +2341,7 @@

- + diff --git a/docs/Phaser.Tween.html b/docs/Phaser.Tween.html index 6e0cedbc4..61ad25373 100644 --- a/docs/Phaser.Tween.html +++ b/docs/Phaser.Tween.html @@ -6,7 +6,7 @@ Phaser CE Class: Tween - + @@ -282,7 +282,7 @@

Parameters:
Source:
- src/tween/Tween.js line 20 + src/tween/Tween.js line 20 @@ -387,7 +387,7 @@
Type:
Source:
- src/tween/Tween.js line 130 + src/tween/Tween.js line 130 @@ -464,7 +464,7 @@
Type:
Source:
- src/tween/Tween.js line 120 + src/tween/Tween.js line 120 @@ -541,7 +541,7 @@
Type:
Source:
- src/tween/Tween.js line 25 + src/tween/Tween.js line 25 @@ -618,7 +618,7 @@
Type:
Source:
- src/tween/Tween.js line 136 + src/tween/Tween.js line 136 @@ -695,7 +695,7 @@
Type:
Source:
- src/tween/Tween.js line 113 + src/tween/Tween.js line 113 @@ -772,7 +772,7 @@
Type:
Source:
- src/tween/Tween.js line 35 + src/tween/Tween.js line 35 @@ -851,7 +851,7 @@
Type:
Source:
- src/tween/Tween.js line 100 + src/tween/Tween.js line 100 @@ -929,7 +929,7 @@
Type:
Source:
- src/tween/Tween.js line 107 + src/tween/Tween.js line 107 @@ -1007,7 +1007,7 @@
Type:
Source:
- src/tween/Tween.js line 85 + src/tween/Tween.js line 85 @@ -1085,7 +1085,7 @@
Type:
Source:
- src/tween/Tween.js line 92 + src/tween/Tween.js line 92 @@ -1163,7 +1163,7 @@
Type:
Source:
- src/tween/Tween.js line 77 + src/tween/Tween.js line 77 @@ -1240,7 +1240,7 @@
Type:
Source:
- src/tween/Tween.js line 70 + src/tween/Tween.js line 70 @@ -1317,7 +1317,7 @@
Type:
Source:
- src/tween/Tween.js line 125 + src/tween/Tween.js line 125 @@ -1394,7 +1394,7 @@
Type:
Source:
- src/tween/Tween.js line 63 + src/tween/Tween.js line 63 @@ -1473,7 +1473,7 @@
Type:
Source:
- src/tween/Tween.js line 49 + src/tween/Tween.js line 49 @@ -1550,7 +1550,7 @@
Type:
Source:
- src/tween/Tween.js line 30 + src/tween/Tween.js line 30 @@ -1627,7 +1627,7 @@
Type:
Source:
- src/tween/Tween.js line 40 + src/tween/Tween.js line 40 @@ -1712,7 +1712,7 @@
Type:
Source:
- src/tween/Tween.js line 58 + src/tween/Tween.js line 58 @@ -1789,7 +1789,7 @@
Type:
Source:
- src/tween/Tween.js line 899 + src/tween/Tween.js line 899 @@ -1928,7 +1928,7 @@
Parameters:
Source:
- src/tween/Tween.js line 172 + src/tween/Tween.js line 172 @@ -2080,7 +2080,7 @@
Parameters:
Source:
- src/tween/Tween.js line 573 + src/tween/Tween.js line 573 @@ -2297,7 +2297,7 @@
Parameters:
Source:
- src/tween/Tween.js line 422 + src/tween/Tween.js line 422 @@ -2517,7 +2517,7 @@
Parameters:
Source:
- src/tween/Tween.js line 514 + src/tween/Tween.js line 514 @@ -2937,7 +2937,7 @@
Parameters:
Source:
- src/tween/Tween.js line 246 + src/tween/Tween.js line 246 @@ -3156,7 +3156,7 @@
Parameters:
Source:
- src/tween/Tween.js line 847 + src/tween/Tween.js line 847 @@ -3411,7 +3411,7 @@
Parameters:
Source:
- src/tween/Tween.js line 535 + src/tween/Tween.js line 535 @@ -3597,7 +3597,7 @@
Parameters:
Source:
- src/tween/Tween.js line 606 + src/tween/Tween.js line 606 @@ -3784,7 +3784,7 @@
Parameters:
Source:
- src/tween/Tween.js line 631 + src/tween/Tween.js line 631 @@ -3892,7 +3892,7 @@

Source:
- src/tween/Tween.js line 655 + src/tween/Tween.js line 655 @@ -4125,7 +4125,7 @@
Parameters:
Source:
- src/tween/Tween.js line 438 + src/tween/Tween.js line 438 @@ -4304,7 +4304,7 @@
Parameters:
Source:
- src/tween/Tween.js line 556 + src/tween/Tween.js line 556 @@ -4521,7 +4521,7 @@
Parameters:
Source:
- src/tween/Tween.js line 460 + src/tween/Tween.js line 460 @@ -4629,7 +4629,7 @@

Source:
- src/tween/Tween.js line 685 + src/tween/Tween.js line 685 @@ -4787,7 +4787,7 @@
Parameters:
Source:
- src/tween/Tween.js line 292 + src/tween/Tween.js line 292 @@ -4968,7 +4968,7 @@
Parameters:
Source:
- src/tween/Tween.js line 355 + src/tween/Tween.js line 355 @@ -5388,7 +5388,7 @@
Parameters:
Source:
- src/tween/Tween.js line 200 + src/tween/Tween.js line 200 @@ -5546,7 +5546,7 @@
Parameters:
Source:
- src/tween/Tween.js line 725 + src/tween/Tween.js line 725 @@ -5801,7 +5801,7 @@
Parameters:
Source:
- src/tween/Tween.js line 390 + src/tween/Tween.js line 390 @@ -6059,7 +6059,7 @@
Parameters:
Source:
- src/tween/Tween.js line 476 + src/tween/Tween.js line 476 @@ -6276,7 +6276,7 @@
Parameters:
Source:
- src/tween/Tween.js line 498 + src/tween/Tween.js line 498 @@ -6343,9 +6343,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6362,7 +6362,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6391,7 +6391,7 @@
Returns:
- + diff --git a/docs/Phaser.TweenData.html b/docs/Phaser.TweenData.html index 800ecb35b..76b2e23de 100644 --- a/docs/Phaser.TweenData.html +++ b/docs/Phaser.TweenData.html @@ -6,7 +6,7 @@ Phaser CE Class: TweenData - + @@ -232,7 +232,7 @@
Parameters:
Source:
- src/tween/TweenData.js line 16 + src/tween/TweenData.js line 16 @@ -333,7 +333,7 @@
Type:
Source:
- src/tween/TweenData.js line 179 + src/tween/TweenData.js line 179 @@ -406,7 +406,7 @@
Type:
Source:
- src/tween/TweenData.js line 173 + src/tween/TweenData.js line 173 @@ -479,7 +479,7 @@
Type:
Source:
- src/tween/TweenData.js line 161 + src/tween/TweenData.js line 161 @@ -552,7 +552,7 @@
Type:
Source:
- src/tween/TweenData.js line 167 + src/tween/TweenData.js line 167 @@ -629,7 +629,7 @@
Type:
Source:
- src/tween/TweenData.js line 114 + src/tween/TweenData.js line 114 @@ -706,7 +706,7 @@
Type:
Source:
- src/tween/TweenData.js line 119 + src/tween/TweenData.js line 119 @@ -790,7 +790,7 @@
Type:
Source:
- src/tween/TweenData.js line 56 + src/tween/TweenData.js line 56 @@ -874,7 +874,7 @@
Type:
Source:
- src/tween/TweenData.js line 130 + src/tween/TweenData.js line 130 @@ -951,7 +951,7 @@
Type:
Source:
- src/tween/TweenData.js line 26 + src/tween/TweenData.js line 26 @@ -1028,7 +1028,7 @@
Type:
Source:
- src/tween/TweenData.js line 108 + src/tween/TweenData.js line 108 @@ -1105,7 +1105,7 @@
Type:
Source:
- src/tween/TweenData.js line 91 + src/tween/TweenData.js line 91 @@ -1196,7 +1196,7 @@
Type:
Source:
- src/tween/TweenData.js line 142 + src/tween/TweenData.js line 142 @@ -1280,7 +1280,7 @@
Type:
Source:
- src/tween/TweenData.js line 136 + src/tween/TweenData.js line 136 @@ -1357,7 +1357,7 @@
Type:
Source:
- src/tween/TweenData.js line 154 + src/tween/TweenData.js line 154 @@ -1434,7 +1434,7 @@
Type:
Source:
- src/tween/TweenData.js line 148 + src/tween/TweenData.js line 148 @@ -1511,7 +1511,7 @@
Type:
Source:
- src/tween/TweenData.js line 21 + src/tween/TweenData.js line 21 @@ -1588,7 +1588,7 @@
Type:
Source:
- src/tween/TweenData.js line 62 + src/tween/TweenData.js line 62 @@ -1665,7 +1665,7 @@
Type:
Source:
- src/tween/TweenData.js line 73 + src/tween/TweenData.js line 73 @@ -1742,7 +1742,7 @@
Type:
Source:
- src/tween/TweenData.js line 78 + src/tween/TweenData.js line 78 @@ -1819,7 +1819,7 @@
Type:
Source:
- src/tween/TweenData.js line 84 + src/tween/TweenData.js line 84 @@ -1896,7 +1896,7 @@
Type:
Source:
- src/tween/TweenData.js line 124 + src/tween/TweenData.js line 124 @@ -1973,7 +1973,7 @@
Type:
Source:
- src/tween/TweenData.js line 68 + src/tween/TweenData.js line 68 @@ -2050,7 +2050,7 @@
Type:
Source:
- src/tween/TweenData.js line 97 + src/tween/TweenData.js line 97 @@ -2127,7 +2127,7 @@
Type:
Source:
- src/tween/TweenData.js line 102 + src/tween/TweenData.js line 102 @@ -2472,7 +2472,7 @@
Parameters:
Source:
- src/tween/TweenData.js line 210 + src/tween/TweenData.js line 210 @@ -2652,7 +2652,7 @@
Parameters:
Source:
- src/tween/TweenData.js line 407 + src/tween/TweenData.js line 407 @@ -2760,7 +2760,7 @@

Source:
- src/tween/TweenData.js line 237 + src/tween/TweenData.js line 237 @@ -3135,7 +3135,7 @@
Parameters:
Source:
- src/tween/TweenData.js line 183 + src/tween/TweenData.js line 183 @@ -3293,7 +3293,7 @@
Parameters:
Source:
- src/tween/TweenData.js line 337 + src/tween/TweenData.js line 337 @@ -3360,9 +3360,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3379,7 +3379,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3408,7 +3408,7 @@
Returns:
- + diff --git a/docs/Phaser.TweenManager.html b/docs/Phaser.TweenManager.html index 489214dca..ae13f20bc 100644 --- a/docs/Phaser.TweenManager.html +++ b/docs/Phaser.TweenManager.html @@ -6,7 +6,7 @@ Phaser CE Class: TweenManager - + @@ -235,7 +235,7 @@
Parameters:
Source:
- src/tween/TweenManager.js line 20 + src/tween/TweenManager.js line 20 @@ -340,7 +340,7 @@
Type:
Source:
- src/tween/TweenManager.js line 25 + src/tween/TweenManager.js line 25 @@ -468,7 +468,7 @@
Parameters:
Source:
- src/tween/TweenManager.js line 172 + src/tween/TweenManager.js line 172 @@ -626,7 +626,7 @@
Parameters:
Source:
- src/tween/TweenManager.js line 185 + src/tween/TweenManager.js line 185 @@ -734,7 +734,7 @@

Source:
- src/tween/TweenManager.js line 338 + src/tween/TweenManager.js line 338 @@ -818,7 +818,7 @@

Source:
- src/tween/TweenManager.js line 100 + src/tween/TweenManager.js line 100 @@ -1033,7 +1033,7 @@
Parameters:
Source:
- src/tween/TweenManager.js line 264 + src/tween/TweenManager.js line 264 @@ -1141,7 +1141,7 @@

Source:
- src/tween/TweenManager.js line 312 + src/tween/TweenManager.js line 312 @@ -1275,7 +1275,7 @@
Parameters:
Source:
- src/tween/TweenManager.js line 197 + src/tween/TweenManager.js line 197 @@ -1359,7 +1359,7 @@

Source:
- src/tween/TweenManager.js line 110 + src/tween/TweenManager.js line 110 @@ -1555,7 +1555,7 @@
Parameters:
Source:
- src/tween/TweenManager.js line 124 + src/tween/TweenManager.js line 124 @@ -1639,7 +1639,7 @@

Source:
- src/tween/TweenManager.js line 325 + src/tween/TweenManager.js line 325 @@ -1723,7 +1723,7 @@

Source:
- src/tween/TweenManager.js line 222 + src/tween/TweenManager.js line 222 @@ -1790,9 +1790,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1809,7 +1809,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1838,7 +1838,7 @@
Returns:
- + diff --git a/docs/Phaser.Utils.Debug.html b/docs/Phaser.Utils.Debug.html index 26ca33620..70f429848 100644 --- a/docs/Phaser.Utils.Debug.html +++ b/docs/Phaser.Utils.Debug.html @@ -6,7 +6,7 @@ Phaser CE Class: Debug - + @@ -237,7 +237,7 @@
Parameters:
Source:
- src/utils/Debug.js line 23 + src/utils/Debug.js line 23 @@ -338,7 +338,7 @@
Type:
Source:
- src/utils/Debug.js line 135 + src/utils/Debug.js line 135 @@ -411,7 +411,7 @@
Type:
Source:
- src/utils/Debug.js line 147 + src/utils/Debug.js line 147 @@ -484,7 +484,7 @@
Type:
Source:
- src/utils/Debug.js line 165 + src/utils/Debug.js line 165 @@ -557,7 +557,7 @@
Type:
Source:
- src/utils/Debug.js line 159 + src/utils/Debug.js line 159 @@ -630,7 +630,7 @@
Type:
Source:
- src/utils/Debug.js line 153 + src/utils/Debug.js line 153 @@ -703,7 +703,7 @@
Type:
Source:
- src/utils/Debug.js line 141 + src/utils/Debug.js line 141 @@ -780,7 +780,7 @@
Type:
Source:
- src/utils/Debug.js line 38 + src/utils/Debug.js line 38 @@ -857,7 +857,7 @@
Type:
Source:
- src/utils/Debug.js line 43 + src/utils/Debug.js line 43 @@ -941,7 +941,7 @@
Type:
Source:
- src/utils/Debug.js line 60 + src/utils/Debug.js line 60 @@ -1018,7 +1018,7 @@
Type:
Source:
- src/utils/Debug.js line 48 + src/utils/Debug.js line 48 @@ -1102,7 +1102,7 @@
Type:
Source:
- src/utils/Debug.js line 103 + src/utils/Debug.js line 103 @@ -1179,7 +1179,7 @@
Type:
Source:
- src/utils/Debug.js line 85 + src/utils/Debug.js line 85 @@ -1256,7 +1256,7 @@
Type:
Source:
- src/utils/Debug.js line 91 + src/utils/Debug.js line 91 @@ -1333,7 +1333,7 @@
Type:
Source:
- src/utils/Debug.js line 97 + src/utils/Debug.js line 97 @@ -1410,7 +1410,7 @@
Type:
Source:
- src/utils/Debug.js line 109 + src/utils/Debug.js line 109 @@ -1494,7 +1494,7 @@
Type:
Source:
- src/utils/Debug.js line 54 + src/utils/Debug.js line 54 @@ -1571,7 +1571,7 @@
Type:
Source:
- src/utils/Debug.js line 28 + src/utils/Debug.js line 28 @@ -1648,7 +1648,7 @@
Type:
Source:
- src/utils/Debug.js line 116 + src/utils/Debug.js line 116 @@ -1732,7 +1732,7 @@
Type:
Source:
- src/utils/Debug.js line 66 + src/utils/Debug.js line 66 @@ -1816,7 +1816,7 @@
Type:
Source:
- src/utils/Debug.js line 72 + src/utils/Debug.js line 72 @@ -1900,7 +1900,7 @@
Type:
Source:
- src/utils/Debug.js line 78 + src/utils/Debug.js line 78 @@ -1977,7 +1977,7 @@
Type:
Source:
- src/utils/Debug.js line 33 + src/utils/Debug.js line 33 @@ -2203,7 +2203,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1100 + src/utils/Debug.js line 1100 @@ -2465,7 +2465,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1133 + src/utils/Debug.js line 1133 @@ -2549,7 +2549,7 @@

Source:
- src/utils/Debug.js line 169 + src/utils/Debug.js line 169 @@ -2740,7 +2740,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1178 + src/utils/Debug.js line 1178 @@ -2826,7 +2826,7 @@

Source:
- src/utils/Debug.js line 1161 + src/utils/Debug.js line 1161 @@ -3054,7 +3054,7 @@
Parameters:
Source:
- src/utils/Debug.js line 457 + src/utils/Debug.js line 457 @@ -3316,7 +3316,7 @@
Parameters:
Source:
- src/utils/Debug.js line 485 + src/utils/Debug.js line 485 @@ -3400,7 +3400,7 @@

Source:
- src/utils/Debug.js line 1414 + src/utils/Debug.js line 1414 @@ -3610,7 +3610,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1391 + src/utils/Debug.js line 1391 @@ -3758,7 +3758,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1193 + src/utils/Debug.js line 1193 @@ -3984,7 +3984,7 @@
Parameters:
Source:
- src/utils/Debug.js line 319 + src/utils/Debug.js line 319 @@ -4264,7 +4264,7 @@
Parameters:
Source:
- src/utils/Debug.js line 919 + src/utils/Debug.js line 919 @@ -4506,7 +4506,7 @@
Parameters:
Source:
- src/utils/Debug.js line 727 + src/utils/Debug.js line 727 @@ -4772,7 +4772,7 @@
Parameters:
Source:
- src/utils/Debug.js line 665 + src/utils/Debug.js line 665 @@ -5034,7 +5034,7 @@
Parameters:
Source:
- src/utils/Debug.js line 645 + src/utils/Debug.js line 645 @@ -5118,7 +5118,7 @@

Source:
- src/utils/Debug.js line 292 + src/utils/Debug.js line 292 @@ -5380,7 +5380,7 @@
Parameters:
Source:
- src/utils/Debug.js line 882 + src/utils/Debug.js line 882 @@ -5645,7 +5645,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1346 + src/utils/Debug.js line 1346 @@ -5871,7 +5871,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1297 + src/utils/Debug.js line 1297 @@ -6141,7 +6141,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1283 + src/utils/Debug.js line 1283 @@ -6405,7 +6405,7 @@
Parameters:
Source:
- src/utils/Debug.js line 900 + src/utils/Debug.js line 900 @@ -6755,7 +6755,7 @@
Parameters:
Source:
- src/utils/Debug.js line 532 + src/utils/Debug.js line 532 @@ -6839,7 +6839,7 @@

Source:
- src/utils/Debug.js line 213 + src/utils/Debug.js line 213 @@ -6997,7 +6997,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1061 + src/utils/Debug.js line 1061 @@ -7228,7 +7228,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1000 + src/utils/Debug.js line 1000 @@ -7462,7 +7462,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1225 + src/utils/Debug.js line 1225 @@ -7546,7 +7546,7 @@

Source:
- src/utils/Debug.js line 231 + src/utils/Debug.js line 231 @@ -7631,7 +7631,7 @@

Source:
- src/utils/Debug.js line 198 + src/utils/Debug.js line 198 @@ -7859,7 +7859,7 @@
Parameters:
Source:
- src/utils/Debug.js line 814 + src/utils/Debug.js line 814 @@ -8085,7 +8085,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1313 + src/utils/Debug.js line 1313 @@ -8311,7 +8311,7 @@
Parameters:
Source:
- src/utils/Debug.js line 379 + src/utils/Debug.js line 379 @@ -8573,7 +8573,7 @@
Parameters:
Source:
- src/utils/Debug.js line 409 + src/utils/Debug.js line 409 @@ -8804,7 +8804,7 @@
Parameters:
Source:
- src/utils/Debug.js line 796 + src/utils/Debug.js line 796 @@ -9069,7 +9069,7 @@
Parameters:
Source:
- src/utils/Debug.js line 857 + src/utils/Debug.js line 857 @@ -9331,7 +9331,7 @@
Parameters:
Source:
- src/utils/Debug.js line 834 + src/utils/Debug.js line 834 @@ -9596,7 +9596,7 @@
Parameters:
Source:
- src/utils/Debug.js line 625 + src/utils/Debug.js line 625 @@ -9870,7 +9870,7 @@
Parameters:
Source:
- src/utils/Debug.js line 249 + src/utils/Debug.js line 249 @@ -10097,7 +10097,7 @@
Parameters:
Source:
- src/utils/Debug.js line 341 + src/utils/Debug.js line 341 @@ -10181,7 +10181,7 @@

Source:
- src/utils/Debug.js line 281 + src/utils/Debug.js line 281 @@ -10457,7 +10457,7 @@
Parameters:
Source:
- src/utils/Debug.js line 1031 + src/utils/Debug.js line 1031 @@ -10719,7 +10719,7 @@
Parameters:
Source:
- src/utils/Debug.js line 514 + src/utils/Debug.js line 514 @@ -10762,9 +10762,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -10781,7 +10781,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -10810,7 +10810,7 @@
Parameters:
- + diff --git a/docs/Phaser.Utils.html b/docs/Phaser.Utils.html index df4f905ec..de52bf913 100644 --- a/docs/Phaser.Utils.html +++ b/docs/Phaser.Utils.html @@ -6,7 +6,7 @@ Phaser CE Class: Utils - + @@ -176,7 +176,7 @@

Source:
- src/utils/Utils.js line 11 + src/utils/Utils.js line 11 @@ -359,7 +359,7 @@
Parameters:
Source:
- src/utils/Utils.js line 380 + src/utils/Utils.js line 380 @@ -541,7 +541,7 @@
Parameters:
Source:
- src/utils/Utils.js line 43 + src/utils/Utils.js line 43 @@ -702,7 +702,7 @@
Parameters:
Source:
- src/utils/Utils.js line 335 + src/utils/Utils.js line 335 @@ -887,7 +887,7 @@
Parameters:
Source:
- src/utils/Utils.js line 509 + src/utils/Utils.js line 509 @@ -1140,7 +1140,7 @@
Parameters:
Source:
- src/utils/Utils.js line 460 + src/utils/Utils.js line 460 @@ -1419,7 +1419,7 @@
Parameters:
Source:
- src/utils/Utils.js line 275 + src/utils/Utils.js line 275 @@ -1604,7 +1604,7 @@
Parameters:
Source:
- src/utils/Utils.js line 233 + src/utils/Utils.js line 233 @@ -1763,7 +1763,7 @@
Parameters:
Source:
- src/utils/Utils.js line 30 + src/utils/Utils.js line 30 @@ -1951,7 +1951,7 @@
Parameters:
Source:
- src/utils/Utils.js line 70 + src/utils/Utils.js line 70 @@ -2159,7 +2159,7 @@
Parameters:
Source:
- src/utils/Utils.js line 96 + src/utils/Utils.js line 96 @@ -2319,7 +2319,7 @@
Parameters:
Source:
- src/utils/Utils.js line 204 + src/utils/Utils.js line 204 @@ -2501,7 +2501,7 @@
Parameters:
Source:
- src/utils/Utils.js line 220 + src/utils/Utils.js line 220 @@ -2568,9 +2568,9 @@
Returns:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -2587,7 +2587,7 @@
Returns:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -2616,7 +2616,7 @@
Returns:
- + diff --git a/docs/Phaser.Video.html b/docs/Phaser.Video.html index 72594bace..902e84015 100644 --- a/docs/Phaser.Video.html +++ b/docs/Phaser.Video.html @@ -6,7 +6,7 @@ Phaser CE Class: Video - + @@ -347,7 +347,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 38 + src/gameobjects/Video.js line 38 @@ -452,7 +452,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1200 + src/gameobjects/Video.js line 1200 @@ -529,7 +529,7 @@
Type:
Source:
- src/gameobjects/Video.js line 75 + src/gameobjects/Video.js line 75 @@ -606,7 +606,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1218 + src/gameobjects/Video.js line 1218 @@ -683,7 +683,7 @@
Type:
Source:
- src/gameobjects/Video.js line 46 + src/gameobjects/Video.js line 46 @@ -760,7 +760,7 @@
Type:
Source:
- src/gameobjects/Video.js line 64 + src/gameobjects/Video.js line 64 @@ -837,7 +837,7 @@
Type:
Source:
- src/gameobjects/Video.js line 153 + src/gameobjects/Video.js line 153 @@ -921,7 +921,7 @@
Type:
Source:
- src/gameobjects/Video.js line 52 + src/gameobjects/Video.js line 52 @@ -1000,7 +1000,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1383 + src/gameobjects/Video.js line 1383 @@ -1077,7 +1077,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1246 + src/gameobjects/Video.js line 1246 @@ -1154,7 +1154,7 @@
Type:
Source:
- src/gameobjects/Video.js line 101 + src/gameobjects/Video.js line 101 @@ -1231,7 +1231,7 @@
Type:
Source:
- src/gameobjects/Video.js line 91 + src/gameobjects/Video.js line 91 @@ -1308,7 +1308,7 @@
Type:
Source:
- src/gameobjects/Video.js line 96 + src/gameobjects/Video.js line 96 @@ -1385,7 +1385,7 @@
Type:
Source:
- src/gameobjects/Video.js line 106 + src/gameobjects/Video.js line 106 @@ -1462,7 +1462,7 @@
Type:
Source:
- src/gameobjects/Video.js line 86 + src/gameobjects/Video.js line 86 @@ -1540,7 +1540,7 @@
Type:
Source:
- src/gameobjects/Video.js line 113 + src/gameobjects/Video.js line 113 @@ -1617,7 +1617,7 @@
Type:
Source:
- src/gameobjects/Video.js line 119 + src/gameobjects/Video.js line 119 @@ -1695,7 +1695,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1285 + src/gameobjects/Video.js line 1285 @@ -1772,7 +1772,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1362 + src/gameobjects/Video.js line 1362 @@ -1849,7 +1849,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1412 + src/gameobjects/Video.js line 1412 @@ -1933,7 +1933,7 @@
Type:
Source:
- src/gameobjects/Video.js line 126 + src/gameobjects/Video.js line 126 @@ -2010,7 +2010,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1232 + src/gameobjects/Video.js line 1232 @@ -2087,7 +2087,7 @@
Type:
Source:
- src/gameobjects/Video.js line 168 + src/gameobjects/Video.js line 168 @@ -2171,7 +2171,7 @@
Type:
Source:
- src/gameobjects/Video.js line 174 + src/gameobjects/Video.js line 174 @@ -2257,7 +2257,7 @@
Type:
Source:
- src/gameobjects/Video.js line 162 + src/gameobjects/Video.js line 162 @@ -2336,7 +2336,7 @@
Type:
Source:
- src/gameobjects/Video.js line 308 + src/gameobjects/Video.js line 308 @@ -2413,7 +2413,7 @@
Type:
Source:
- src/gameobjects/Video.js line 283 + src/gameobjects/Video.js line 283 @@ -2490,7 +2490,7 @@
Type:
Source:
- src/gameobjects/Video.js line 289 + src/gameobjects/Video.js line 289 @@ -2574,7 +2574,7 @@
Type:
Source:
- src/gameobjects/Video.js line 132 + src/gameobjects/Video.js line 132 @@ -2651,7 +2651,7 @@
Type:
Source:
- src/gameobjects/Video.js line 81 + src/gameobjects/Video.js line 81 @@ -2728,7 +2728,7 @@
Type:
Source:
- src/gameobjects/Video.js line 70 + src/gameobjects/Video.js line 70 @@ -2805,7 +2805,7 @@
Type:
Source:
- src/gameobjects/Video.js line 143 + src/gameobjects/Video.js line 143 @@ -2882,7 +2882,7 @@
Type:
Source:
- src/gameobjects/Video.js line 148 + src/gameobjects/Video.js line 148 @@ -2959,7 +2959,7 @@
Type:
Source:
- src/gameobjects/Video.js line 1332 + src/gameobjects/Video.js line 1332 @@ -3036,7 +3036,7 @@
Type:
Source:
- src/gameobjects/Video.js line 58 + src/gameobjects/Video.js line 58 @@ -3174,7 +3174,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 842 + src/gameobjects/Video.js line 842 @@ -3552,7 +3552,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 870 + src/gameobjects/Video.js line 870 @@ -3776,7 +3776,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 985 + src/gameobjects/Video.js line 985 @@ -3885,7 +3885,7 @@

Source:
- src/gameobjects/Video.js line 655 + src/gameobjects/Video.js line 655 @@ -4043,7 +4043,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 328 + src/gameobjects/Video.js line 328 @@ -4202,7 +4202,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 533 + src/gameobjects/Video.js line 533 @@ -4452,7 +4452,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 556 + src/gameobjects/Video.js line 556 @@ -4561,7 +4561,7 @@

Source:
- src/gameobjects/Video.js line 1175 + src/gameobjects/Video.js line 1175 @@ -4797,7 +4797,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 1111 + src/gameobjects/Video.js line 1111 @@ -5016,7 +5016,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 666 + src/gameobjects/Video.js line 666 @@ -5125,7 +5125,7 @@

Source:
- src/gameobjects/Video.js line 1146 + src/gameobjects/Video.js line 1146 @@ -5211,7 +5211,7 @@

Source:
- src/gameobjects/Video.js line 895 + src/gameobjects/Video.js line 895 @@ -5296,7 +5296,7 @@

Source:
- src/gameobjects/Video.js line 1066 + src/gameobjects/Video.js line 1066 @@ -5577,7 +5577,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 353 + src/gameobjects/Video.js line 353 @@ -5690,7 +5690,7 @@

Source:
- src/gameobjects/Video.js line 759 + src/gameobjects/Video.js line 759 @@ -5800,7 +5800,7 @@

Source:
- src/gameobjects/Video.js line 1078 + src/gameobjects/Video.js line 1078 @@ -6015,7 +6015,7 @@
Parameters:
Source:
- src/gameobjects/Video.js line 605 + src/gameobjects/Video.js line 605 @@ -6058,9 +6058,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6077,7 +6077,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6106,7 +6106,7 @@
Parameters:
- + diff --git a/docs/Phaser.Weapon.html b/docs/Phaser.Weapon.html index 471402b67..af96fe47c 100644 --- a/docs/Phaser.Weapon.html +++ b/docs/Phaser.Weapon.html @@ -6,7 +6,7 @@ Phaser CE Class: Weapon - + @@ -271,7 +271,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 41 + src/plugins/weapon/WeaponPlugin.js line 41 @@ -376,7 +376,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 477 + src/plugins/weapon/WeaponPlugin.js line 477 @@ -454,7 +454,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 463 + src/plugins/weapon/WeaponPlugin.js line 463 @@ -531,7 +531,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 455 + src/plugins/weapon/WeaponPlugin.js line 455 @@ -608,7 +608,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 448 + src/plugins/weapon/WeaponPlugin.js line 448 @@ -685,7 +685,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 491 + src/plugins/weapon/WeaponPlugin.js line 491 @@ -762,7 +762,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 470 + src/plugins/weapon/WeaponPlugin.js line 470 @@ -839,7 +839,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 484 + src/plugins/weapon/WeaponPlugin.js line 484 @@ -916,7 +916,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 392 + src/plugins/weapon/WeaponPlugin.js line 392 @@ -994,7 +994,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 58 + src/plugins/weapon/WeaponPlugin.js line 58 @@ -1072,7 +1072,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 66 + src/plugins/weapon/WeaponPlugin.js line 66 @@ -1152,7 +1152,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 298 + src/plugins/weapon/WeaponPlugin.js line 298 @@ -1232,7 +1232,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 178 + src/plugins/weapon/WeaponPlugin.js line 178 @@ -1312,7 +1312,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 188 + src/plugins/weapon/WeaponPlugin.js line 188 @@ -1390,7 +1390,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 132 + src/plugins/weapon/WeaponPlugin.js line 132 @@ -1469,7 +1469,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1333 + src/plugins/weapon/WeaponPlugin.js line 1333 @@ -1546,7 +1546,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1430 + src/plugins/weapon/WeaponPlugin.js line 1430 @@ -1627,7 +1627,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 253 + src/plugins/weapon/WeaponPlugin.js line 253 @@ -1708,7 +1708,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 151 + src/plugins/weapon/WeaponPlugin.js line 151 @@ -1786,7 +1786,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 140 + src/plugins/weapon/WeaponPlugin.js line 140 @@ -1863,7 +1863,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 314 + src/plugins/weapon/WeaponPlugin.js line 314 @@ -1941,7 +1941,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 228 + src/plugins/weapon/WeaponPlugin.js line 228 @@ -2018,7 +2018,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 124 + src/plugins/weapon/WeaponPlugin.js line 124 @@ -2096,7 +2096,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 245 + src/plugins/weapon/WeaponPlugin.js line 245 @@ -2174,7 +2174,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 221 + src/plugins/weapon/WeaponPlugin.js line 221 @@ -2284,7 +2284,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1365 + src/plugins/weapon/WeaponPlugin.js line 1365 @@ -2363,7 +2363,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 213 + src/plugins/weapon/WeaponPlugin.js line 213 @@ -2442,7 +2442,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 237 + src/plugins/weapon/WeaponPlugin.js line 237 @@ -2519,7 +2519,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 50 + src/plugins/weapon/WeaponPlugin.js line 50 @@ -2603,7 +2603,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 195 + src/plugins/weapon/WeaponPlugin.js line 195 @@ -2682,7 +2682,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 204 + src/plugins/weapon/WeaponPlugin.js line 204 @@ -2760,7 +2760,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 159 + src/plugins/weapon/WeaponPlugin.js line 159 @@ -2839,7 +2839,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 168 + src/plugins/weapon/WeaponPlugin.js line 168 @@ -2917,7 +2917,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 117 + src/plugins/weapon/WeaponPlugin.js line 117 @@ -2996,7 +2996,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 109 + src/plugins/weapon/WeaponPlugin.js line 109 @@ -3075,7 +3075,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 84 + src/plugins/weapon/WeaponPlugin.js line 84 @@ -3159,7 +3159,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 91 + src/plugins/weapon/WeaponPlugin.js line 91 @@ -3239,7 +3239,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 101 + src/plugins/weapon/WeaponPlugin.js line 101 @@ -3320,7 +3320,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 385 + src/plugins/weapon/WeaponPlugin.js line 385 @@ -3399,7 +3399,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 338 + src/plugins/weapon/WeaponPlugin.js line 338 @@ -3479,7 +3479,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 357 + src/plugins/weapon/WeaponPlugin.js line 357 @@ -3558,7 +3558,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 347 + src/plugins/weapon/WeaponPlugin.js line 347 @@ -3637,7 +3637,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 75 + src/plugins/weapon/WeaponPlugin.js line 75 @@ -3715,7 +3715,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 373 + src/plugins/weapon/WeaponPlugin.js line 373 @@ -3796,7 +3796,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 365 + src/plugins/weapon/WeaponPlugin.js line 365 @@ -3876,7 +3876,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 412 + src/plugins/weapon/WeaponPlugin.js line 412 @@ -3955,7 +3955,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 402 + src/plugins/weapon/WeaponPlugin.js line 402 @@ -4033,7 +4033,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1457 + src/plugins/weapon/WeaponPlugin.js line 1457 @@ -4111,7 +4111,7 @@
Type:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1481 + src/plugins/weapon/WeaponPlugin.js line 1481 @@ -4421,7 +4421,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1268 + src/plugins/weapon/WeaponPlugin.js line 1268 @@ -4728,7 +4728,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 493 + src/plugins/weapon/WeaponPlugin.js line 493 @@ -4987,7 +4987,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1307 + src/plugins/weapon/WeaponPlugin.js line 1307 @@ -5072,7 +5072,7 @@

Source:
- src/plugins/weapon/WeaponPlugin.js line 650 + src/plugins/weapon/WeaponPlugin.js line 650 @@ -5400,7 +5400,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 871 + src/plugins/weapon/WeaponPlugin.js line 871 @@ -5571,7 +5571,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1143 + src/plugins/weapon/WeaponPlugin.js line 1143 @@ -5742,7 +5742,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1160 + src/plugins/weapon/WeaponPlugin.js line 1160 @@ -5947,7 +5947,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1175 + src/plugins/weapon/WeaponPlugin.js line 1175 @@ -6167,7 +6167,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 786 + src/plugins/weapon/WeaponPlugin.js line 786 @@ -6394,7 +6394,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 840 + src/plugins/weapon/WeaponPlugin.js line 840 @@ -6647,7 +6647,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 556 + src/plugins/weapon/WeaponPlugin.js line 556 @@ -6756,7 +6756,7 @@

Source:
- src/plugins/weapon/WeaponPlugin.js line 610 + src/plugins/weapon/WeaponPlugin.js line 610 @@ -6866,7 +6866,7 @@

Source:
- src/plugins/weapon/WeaponPlugin.js line 576 + src/plugins/weapon/WeaponPlugin.js line 576 @@ -6974,7 +6974,7 @@

Source:
- src/plugins/weapon/WeaponPlugin.js line 699 + src/plugins/weapon/WeaponPlugin.js line 699 @@ -7121,7 +7121,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 628 + src/plugins/weapon/WeaponPlugin.js line 628 @@ -7231,7 +7231,7 @@

Source:
- src/plugins/weapon/WeaponPlugin.js line 593 + src/plugins/weapon/WeaponPlugin.js line 593 @@ -7508,7 +7508,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1191 + src/plugins/weapon/WeaponPlugin.js line 1191 @@ -7803,7 +7803,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 1233 + src/plugins/weapon/WeaponPlugin.js line 1233 @@ -8064,7 +8064,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 753 + src/plugins/weapon/WeaponPlugin.js line 753 @@ -8366,7 +8366,7 @@
Parameters:
Source:
- src/plugins/weapon/WeaponPlugin.js line 719 + src/plugins/weapon/WeaponPlugin.js line 719 @@ -8474,7 +8474,7 @@

Source:
- src/plugins/weapon/WeaponPlugin.js line 670 + src/plugins/weapon/WeaponPlugin.js line 670 @@ -8517,9 +8517,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -8536,7 +8536,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -8565,7 +8565,7 @@

- + diff --git a/docs/Phaser.World.html b/docs/Phaser.World.html index 3d3923f91..b26d8f094 100644 --- a/docs/Phaser.World.html +++ b/docs/Phaser.World.html @@ -6,7 +6,7 @@ Phaser CE Class: World - + @@ -233,7 +233,7 @@

Parameters:
Source:
- src/core/World.js line 19 + src/core/World.js line 19 @@ -349,7 +349,7 @@
Type:
Source:
- src/core/World.js line 41 + src/core/World.js line 41 @@ -464,7 +464,7 @@
Properties:
Source:
- src/core/World.js line 51 + src/core/World.js line 51 @@ -579,7 +579,7 @@
Properties:
Source:
- src/core/World.js line 46 + src/core/World.js line 46 @@ -672,7 +672,7 @@
Type:
Source:
- src/core/Group.js line 91 + src/core/Group.js line 91 @@ -758,7 +758,7 @@
Type:
Source:
- src/core/Group.js line 3155 + src/core/Group.js line 3155 @@ -847,7 +847,7 @@
Type:
Source:
- src/core/Group.js line 2825 + src/core/Group.js line 2825 @@ -935,7 +935,7 @@
Type:
Source:
- src/core/Group.js line 2980 + src/core/Group.js line 2980 @@ -1015,7 +1015,7 @@
Type:
Source:
- src/core/World.js line 30 + src/core/World.js line 30 @@ -1108,7 +1108,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 791 + src/pixi/display/DisplayObject.js line 791 @@ -1185,7 +1185,7 @@
Type:
Source:
- src/core/World.js line 35 + src/core/World.js line 35 @@ -1272,7 +1272,7 @@
Type:
Source:
- src/core/Group.js line 277 + src/core/Group.js line 277 @@ -1354,7 +1354,7 @@
Type:
Source:
- src/core/World.js line 303 + src/core/World.js line 303 @@ -1436,7 +1436,7 @@
Type:
Source:
- src/core/World.js line 317 + src/core/World.js line 317 @@ -1522,7 +1522,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 24 + src/pixi/display/DisplayObjectContainer.js line 24 @@ -1616,7 +1616,7 @@
Type:
Source:
- src/core/Group.js line 127 + src/core/Group.js line 127 @@ -1703,7 +1703,7 @@
Type:
Source:
- src/core/Group.js line 135 + src/core/Group.js line 135 @@ -1789,7 +1789,7 @@
Type:
Source:
- src/core/Group.js line 260 + src/core/Group.js line 260 @@ -1877,7 +1877,7 @@
Type:
Source:
- src/core/Group.js line 213 + src/core/Group.js line 213 @@ -1964,7 +1964,7 @@
Type:
Source:
- src/core/Group.js line 222 + src/core/Group.js line 222 @@ -2057,7 +2057,7 @@
Type:
Source:
- src/core/Group.js line 98 + src/core/Group.js line 98 @@ -2143,7 +2143,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 205 + src/pixi/display/DisplayObject.js line 205 @@ -2234,7 +2234,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 740 + src/pixi/display/DisplayObject.js line 740 @@ -2322,7 +2322,7 @@
Type:
Source:
- src/core/Group.js line 270 + src/core/Group.js line 270 @@ -2408,7 +2408,7 @@
Type:
Source:
- src/core/Group.js line 38 + src/core/Group.js line 38 @@ -2498,7 +2498,7 @@
Type:
Source:
- src/core/Group.js line 290 + src/core/Group.js line 290 @@ -2580,7 +2580,7 @@
Type:
Source:
- src/core/World.js line 278 + src/core/World.js line 278 @@ -2676,7 +2676,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 99 + src/pixi/display/DisplayObject.js line 99 @@ -2764,7 +2764,7 @@
Type:
Source:
- src/pixi/display/DisplayObjectContainer.js line 35 + src/pixi/display/DisplayObjectContainer.js line 35 @@ -2850,7 +2850,7 @@
Type:
Source:
- src/core/Group.js line 105 + src/core/Group.js line 105 @@ -2938,7 +2938,7 @@
Type:
Source:
- src/core/Group.js line 146 + src/core/Group.js line 146 @@ -3026,7 +3026,7 @@
Type:
Source:
- src/core/Group.js line 2902 + src/core/Group.js line 2902 @@ -3112,7 +3112,7 @@
Type:
Source:
- src/core/Group.js line 2809 + src/core/Group.js line 2809 @@ -3201,7 +3201,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 707 + src/pixi/display/DisplayObject.js line 707 @@ -3287,7 +3287,7 @@
Type:
Source:
- src/core/Group.js line 49 + src/core/Group.js line 49 @@ -3377,7 +3377,7 @@
Type:
Source:
- src/core/Group.js line 166 + src/core/Group.js line 166 @@ -3467,7 +3467,7 @@
Type:
Source:
- src/core/Group.js line 203 + src/core/Group.js line 203 @@ -3557,7 +3557,7 @@
Type:
Source:
- src/core/Group.js line 191 + src/core/Group.js line 191 @@ -3648,7 +3648,7 @@
Type:
Source:
- src/core/Group.js line 179 + src/core/Group.js line 179 @@ -3734,7 +3734,7 @@
Type:
Source:
- src/core/Group.js line 254 + src/core/Group.js line 254 @@ -3823,7 +3823,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 120 + src/pixi/display/DisplayObject.js line 120 @@ -3913,7 +3913,7 @@
Type:
Source:
- src/core/Group.js line 117 + src/core/Group.js line 117 @@ -4000,7 +4000,7 @@
Type:
Source:
- src/core/Group.js line 230 + src/core/Group.js line 230 @@ -4093,7 +4093,7 @@
Type:
Source:
- src/core/Group.js line 248 + src/core/Group.js line 248 @@ -4179,7 +4179,7 @@
Type:
Source:
- src/core/Group.js line 84 + src/core/Group.js line 84 @@ -4266,7 +4266,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 49 + src/pixi/display/DisplayObject.js line 49 @@ -4354,7 +4354,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 29 + src/pixi/display/DisplayObject.js line 29 @@ -4431,7 +4431,7 @@
Type:
Source:
- src/core/World.js line 331 + src/core/World.js line 331 @@ -4508,7 +4508,7 @@
Type:
Source:
- src/core/World.js line 352 + src/core/World.js line 352 @@ -4595,7 +4595,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 108 + src/pixi/display/DisplayObject.js line 108 @@ -4683,7 +4683,7 @@
Type:
Source:
- src/core/Group.js line 2928 + src/core/Group.js line 2928 @@ -4771,7 +4771,7 @@
Type:
Source:
- src/core/Group.js line 3139 + src/core/Group.js line 3139 @@ -4860,7 +4860,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 41 + src/pixi/display/DisplayObject.js line 41 @@ -4948,7 +4948,7 @@
Type:
Source:
- src/core/Group.js line 2954 + src/core/Group.js line 2954 @@ -5034,7 +5034,7 @@
Type:
Source:
- src/core/Group.js line 2793 + src/core/Group.js line 2793 @@ -5120,7 +5120,7 @@
Type:
Source:
- src/core/Group.js line 78 + src/core/Group.js line 78 @@ -5206,7 +5206,7 @@
Type:
Source:
- src/core/Group.js line 154 + src/core/Group.js line 154 @@ -5292,7 +5292,7 @@
Type:
Source:
- src/core/Group.js line 3148 + src/core/Group.js line 3148 @@ -5374,7 +5374,7 @@
Type:
Source:
- src/core/World.js line 253 + src/core/World.js line 253 @@ -5466,7 +5466,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 136 + src/pixi/display/DisplayObject.js line 136 @@ -5557,7 +5557,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 166 + src/pixi/display/DisplayObject.js line 166 @@ -5648,7 +5648,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 196 + src/pixi/display/DisplayObject.js line 196 @@ -5739,7 +5739,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 181 + src/pixi/display/DisplayObject.js line 181 @@ -5830,7 +5830,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 151 + src/pixi/display/DisplayObject.js line 151 @@ -5916,7 +5916,7 @@
Type:
Source:
- src/pixi/display/DisplayObject.js line 666 + src/pixi/display/DisplayObject.js line 666 @@ -6009,7 +6009,7 @@
Type:
Source:
- src/core/Group.js line 3121 + src/core/Group.js line 3121 @@ -6102,7 +6102,7 @@
Type:
Source:
- src/core/Group.js line 3130 + src/core/Group.js line 3130 @@ -6189,7 +6189,7 @@
Type:
Source:
- src/core/Group.js line 57 + src/core/Group.js line 57 @@ -6427,7 +6427,7 @@
Parameters:
Source:
- src/core/Group.js line 345 + src/core/Group.js line 345 @@ -6705,7 +6705,7 @@
Parameters:
Source:
- src/core/Group.js line 1417 + src/core/Group.js line 1417 @@ -6947,7 +6947,7 @@
Parameters:
Source:
- src/core/Group.js line 421 + src/core/Group.js line 421 @@ -7114,7 +7114,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 41 + src/pixi/display/DisplayObjectContainer.js line 41 @@ -7305,7 +7305,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 53 + src/pixi/display/DisplayObjectContainer.js line 53 @@ -7536,7 +7536,7 @@
Parameters:
Source:
- src/core/Group.js line 489 + src/core/Group.js line 489 @@ -7707,7 +7707,7 @@
Parameters:
Source:
- src/core/Group.js line 441 + src/core/Group.js line 441 @@ -8102,7 +8102,7 @@
Parameters:
Source:
- src/core/Group.js line 681 + src/core/Group.js line 681 @@ -8445,7 +8445,7 @@
Parameters:
Source:
- src/core/Group.js line 3006 + src/core/Group.js line 3006 @@ -8789,7 +8789,7 @@
Parameters:
Source:
- src/core/Group.js line 3048 + src/core/Group.js line 3048 @@ -8980,7 +8980,7 @@
Parameters:
Source:
- src/core/Group.js line 2024 + src/core/Group.js line 2024 @@ -9064,7 +9064,7 @@

Source:
- src/core/World.js line 59 + src/core/World.js line 59 @@ -9207,7 +9207,7 @@
Parameters:
Source:
- src/core/Group.js line 901 + src/core/Group.js line 901 @@ -9470,7 +9470,7 @@
Parameters:
Source:
- src/core/Group.js line 1624 + src/core/Group.js line 1624 @@ -9690,7 +9690,7 @@
Parameters:
Source:
- src/core/Group.js line 1540 + src/core/Group.js line 1540 @@ -9881,7 +9881,7 @@
Parameters:
Source:
- src/core/Group.js line 1575 + src/core/Group.js line 1575 @@ -10197,7 +10197,7 @@
Parameters:
Source:
- src/core/Group.js line 1349 + src/core/Group.js line 1349 @@ -10499,7 +10499,7 @@
Parameters:
Source:
- src/core/Group.js line 1384 + src/core/Group.js line 1384 @@ -10796,7 +10796,7 @@
Parameters:
Source:
- src/core/Group.js line 1208 + src/core/Group.js line 1208 @@ -10963,7 +10963,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 456 + src/pixi/display/DisplayObjectContainer.js line 456 @@ -11150,7 +11150,7 @@
Parameters:
Source:
- src/core/Group.js line 2431 + src/core/Group.js line 2431 @@ -11267,7 +11267,7 @@

Source:
- src/core/Group.js line 2455 + src/core/Group.js line 2455 @@ -11384,7 +11384,7 @@

Source:
- src/core/Group.js line 2444 + src/core/Group.js line 2444 @@ -11778,7 +11778,7 @@
Parameters:
Source:
- src/core/Group.js line 542 + src/core/Group.js line 542 @@ -12185,7 +12185,7 @@
Parameters:
Source:
- src/core/Group.js line 578 + src/core/Group.js line 578 @@ -12398,7 +12398,7 @@
Parameters:
Source:
- src/core/Group.js line 2001 + src/core/Group.js line 2001 @@ -12565,7 +12565,7 @@
Parameters:
Source:
- src/core/Group.js line 2053 + src/core/Group.js line 2053 @@ -12769,7 +12769,7 @@
Parameters:
Source:
- src/core/Group.js line 2757 + src/core/Group.js line 2757 @@ -12985,7 +12985,7 @@
Parameters:
Source:
- src/core/Group.js line 1465 + src/core/Group.js line 1465 @@ -13191,7 +13191,7 @@
Parameters:
Source:
- src/core/Group.js line 1783 + src/core/Group.js line 1783 @@ -13497,7 +13497,7 @@
Parameters:
Source:
- src/core/Group.js line 1822 + src/core/Group.js line 1822 @@ -13735,7 +13735,7 @@
Parameters:
Source:
- src/core/Group.js line 1908 + src/core/Group.js line 1908 @@ -13973,7 +13973,7 @@
Parameters:
Source:
- src/core/Group.js line 1935 + src/core/Group.js line 1935 @@ -14211,7 +14211,7 @@
Parameters:
Source:
- src/core/Group.js line 1881 + src/core/Group.js line 1881 @@ -14456,7 +14456,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 443 + src/pixi/display/DisplayObject.js line 443 @@ -14764,7 +14764,7 @@
Parameters:
Source:
- src/core/Group.js line 2506 + src/core/Group.js line 2506 @@ -14933,7 +14933,7 @@
Parameters:
Source:
- src/core/Group.js line 523 + src/core/Group.js line 523 @@ -15054,7 +15054,7 @@

Source:
- src/core/Group.js line 2329 + src/core/Group.js line 2329 @@ -15236,7 +15236,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 289 + src/pixi/display/DisplayObjectContainer.js line 289 @@ -15405,7 +15405,7 @@
Parameters:
Source:
- src/core/Group.js line 1041 + src/core/Group.js line 1041 @@ -15572,7 +15572,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 147 + src/pixi/display/DisplayObjectContainer.js line 147 @@ -15739,7 +15739,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 108 + src/pixi/display/DisplayObjectContainer.js line 108 @@ -15990,7 +15990,7 @@
Parameters:
Source:
- src/core/Group.js line 2345 + src/core/Group.js line 2345 @@ -16181,7 +16181,7 @@
Parameters:
Source:
- src/core/Group.js line 2171 + src/core/Group.js line 2171 @@ -16540,7 +16540,7 @@
Parameters:
Source:
- src/core/Group.js line 2217 + src/core/Group.js line 2217 @@ -16899,7 +16899,7 @@
Parameters:
Source:
- src/core/Group.js line 2246 + src/core/Group.js line 2246 @@ -17297,7 +17297,7 @@
Parameters:
Source:
- src/core/Group.js line 2184 + src/core/Group.js line 2184 @@ -17548,7 +17548,7 @@
Parameters:
Source:
- src/core/Group.js line 2388 + src/core/Group.js line 2388 @@ -17715,7 +17715,7 @@
Parameters:
Source:
- src/core/Group.js line 1029 + src/core/Group.js line 1029 @@ -17832,7 +17832,7 @@

Source:
- src/pixi/display/DisplayObjectContainer.js line 445 + src/pixi/display/DisplayObjectContainer.js line 445 @@ -18059,7 +18059,7 @@
Parameters:
Source:
- src/core/Group.js line 2466 + src/core/Group.js line 2466 @@ -18287,7 +18287,7 @@
Parameters:
Source:
- src/core/Group.js line 2487 + src/core/Group.js line 2487 @@ -18405,7 +18405,7 @@

Source:
- src/core/Group.js line 2313 + src/core/Group.js line 2313 @@ -18597,7 +18597,7 @@
Parameters:
Source:
- src/core/Group.js line 1093 + src/core/Group.js line 1093 @@ -18984,7 +18984,7 @@
Parameters:
Source:
- src/core/Group.js line 2077 + src/core/Group.js line 2077 @@ -19101,7 +19101,7 @@

Source:
- src/core/Group.js line 1481 + src/core/Group.js line 1481 @@ -19194,7 +19194,7 @@

Source:
- src/core/Group.js line 1493 + src/core/Group.js line 1493 @@ -19393,7 +19393,7 @@
Parameters:
Source:
- src/core/Group.js line 2598 + src/core/Group.js line 2598 @@ -19560,7 +19560,7 @@
Parameters:
Source:
- src/core/Group.js line 972 + src/core/Group.js line 972 @@ -19727,7 +19727,7 @@
Parameters:
Source:
- src/core/Group.js line 949 + src/core/Group.js line 949 @@ -19967,7 +19967,7 @@
Parameters:
Source:
- src/core/Group.js line 1449 + src/core/Group.js line 1449 @@ -20061,7 +20061,7 @@

Source:
- src/core/Group.js line 830 + src/core/Group.js line 830 @@ -20178,7 +20178,7 @@

Source:
- src/core/Group.js line 1763 + src/core/Group.js line 1763 @@ -20271,7 +20271,7 @@

Source:
- src/core/Group.js line 1695 + src/core/Group.js line 1695 @@ -20365,7 +20365,7 @@

Source:
- src/core/Group.js line 858 + src/core/Group.js line 858 @@ -20630,7 +20630,7 @@
Parameters:
Source:
- src/core/Group.js line 2551 + src/core/Group.js line 2551 @@ -20900,7 +20900,7 @@
Parameters:
Source:
- src/core/Group.js line 2626 + src/core/Group.js line 2626 @@ -21177,7 +21177,7 @@
Parameters:
Source:
- src/core/Group.js line 2673 + src/core/Group.js line 2673 @@ -21320,7 +21320,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 164 + src/pixi/display/DisplayObjectContainer.js line 164 @@ -21487,7 +21487,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 183 + src/pixi/display/DisplayObjectContainer.js line 183 @@ -21678,7 +21678,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 224 + src/pixi/display/DisplayObjectContainer.js line 224 @@ -21822,7 +21822,7 @@
Parameters:
Source:
- src/core/Group.js line 465 + src/core/Group.js line 465 @@ -22015,7 +22015,7 @@
Parameters:
Source:
- src/core/Group.js line 1055 + src/core/Group.js line 1055 @@ -22369,7 +22369,7 @@
Parameters:
Source:
- src/core/Group.js line 1525 + src/core/Group.js line 1525 @@ -22675,7 +22675,7 @@
Parameters:
Source:
- src/core/Group.js line 2275 + src/core/Group.js line 2275 @@ -22863,7 +22863,7 @@
Parameters:
Source:
- src/core/Group.js line 804 + src/core/Group.js line 804 @@ -23047,7 +23047,7 @@
Parameters:
Source:
- src/core/World.js line 121 + src/core/World.js line 121 @@ -23141,7 +23141,7 @@

Source:
- src/core/Group.js line 1016 + src/core/Group.js line 1016 @@ -23234,7 +23234,7 @@

Source:
- src/core/Group.js line 1503 + src/core/Group.js line 1503 @@ -23327,7 +23327,7 @@

Source:
- src/core/Group.js line 1515 + src/core/Group.js line 1515 @@ -23530,7 +23530,7 @@
Parameters:
Source:
- src/core/Group.js line 2727 + src/core/Group.js line 2727 @@ -23673,7 +23673,7 @@
Parameters:
Source:
- src/core/Group.js line 925 + src/core/Group.js line 925 @@ -24089,7 +24089,7 @@
Parameters:
Source:
- src/core/Group.js line 1237 + src/core/Group.js line 1237 @@ -24471,7 +24471,7 @@
Parameters:
Source:
- src/core/Group.js line 1267 + src/core/Group.js line 1267 @@ -24829,7 +24829,7 @@
Parameters:
Source:
- src/core/Group.js line 1305 + src/core/Group.js line 1305 @@ -25036,7 +25036,7 @@
Parameters:
Source:
- src/core/World.js line 91 + src/core/World.js line 91 @@ -25203,7 +25203,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 127 + src/pixi/display/DisplayObjectContainer.js line 127 @@ -25522,7 +25522,7 @@
Parameters:
Source:
- src/core/Group.js line 1127 + src/core/Group.js line 1127 @@ -25640,7 +25640,7 @@

Source:
- src/core/Group.js line 2744 + src/core/Group.js line 2744 @@ -25724,7 +25724,7 @@

Source:
- src/core/World.js line 156 + src/core/World.js line 156 @@ -25931,7 +25931,7 @@
Parameters:
Source:
- src/core/Group.js line 1962 + src/core/Group.js line 1962 @@ -26017,7 +26017,7 @@

Source:
- src/core/World.js line 74 + src/core/World.js line 74 @@ -26233,7 +26233,7 @@
Parameters:
Source:
- src/core/Group.js line 1433 + src/core/Group.js line 1433 @@ -26401,7 +26401,7 @@
Parameters:
Source:
- src/core/Group.js line 886 + src/core/Group.js line 886 @@ -26568,7 +26568,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObjectContainer.js line 82 + src/pixi/display/DisplayObjectContainer.js line 82 @@ -26711,7 +26711,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 483 + src/pixi/display/DisplayObject.js line 483 @@ -26924,7 +26924,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 497 + src/pixi/display/DisplayObject.js line 497 @@ -27044,7 +27044,7 @@

Source:
- src/core/Group.js line 1735 + src/core/Group.js line 1735 @@ -27137,7 +27137,7 @@

Source:
- src/pixi/display/DisplayObject.js line 470 + src/pixi/display/DisplayObject.js line 470 @@ -27326,7 +27326,7 @@
Parameters:
Source:
- src/pixi/display/DisplayObject.js line 291 + src/pixi/display/DisplayObject.js line 291 @@ -27446,7 +27446,7 @@

Source:
- src/core/Group.js line 663 + src/core/Group.js line 663 @@ -27769,7 +27769,7 @@
Parameters:
Source:
- src/core/World.js line 167 + src/core/World.js line 167 @@ -28115,7 +28115,7 @@
Parameters:
Source:
- src/core/World.js line 239 + src/core/World.js line 239 @@ -28306,7 +28306,7 @@
Parameters:
Source:
- src/core/Group.js line 995 + src/core/Group.js line 995 @@ -28349,9 +28349,9 @@
Parameters:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -28368,7 +28368,7 @@
Parameters:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -28397,7 +28397,7 @@
Parameters:
- + diff --git a/docs/Phaser.html b/docs/Phaser.html index fdbcbdcd3..07b8dae1b 100644 --- a/docs/Phaser.html +++ b/docs/Phaser.html @@ -6,7 +6,7 @@ Phaser CE Namespace: Phaser - + @@ -157,7 +157,7 @@

Source:
- src/Phaser.js line 7 + src/Phaser.js line 7 @@ -561,7 +561,7 @@
Type:
Source:
- src/Phaser.js line 341 + src/Phaser.js line 341 @@ -638,7 +638,7 @@
Type:
Source:
- src/Phaser.js line 348 + src/Phaser.js line 348 @@ -715,7 +715,7 @@
Type:
Source:
- src/Phaser.js line 362 + src/Phaser.js line 362 @@ -792,7 +792,7 @@
Type:
Source:
- src/Phaser.js line 369 + src/Phaser.js line 369 @@ -869,7 +869,7 @@
Type:
Source:
- src/Phaser.js line 355 + src/Phaser.js line 355 @@ -946,7 +946,7 @@
Type:
Source:
- src/Phaser.js line 376 + src/Phaser.js line 376 @@ -1023,7 +1023,7 @@
Type:
Source:
- src/Phaser.js line 383 + src/Phaser.js line 383 @@ -1100,7 +1100,7 @@
Type:
Source:
- src/Phaser.js line 334 + src/Phaser.js line 334 @@ -1177,7 +1177,7 @@
Type:
Source:
- src/Phaser.js line 26 + src/Phaser.js line 26 @@ -1254,7 +1254,7 @@
Type:
Source:
- src/Phaser.js line 187 + src/Phaser.js line 187 @@ -1331,7 +1331,7 @@
Type:
Source:
- src/Phaser.js line 138 + src/Phaser.js line 138 @@ -1846,7 +1846,7 @@
Properties:
Source:
- src/Phaser.js line 481 + src/Phaser.js line 481 @@ -1923,7 +1923,7 @@
Type:
Source:
- src/Phaser.js line 467 + src/Phaser.js line 467 @@ -2000,7 +2000,7 @@
Type:
Source:
- src/Phaser.js line 460 + src/Phaser.js line 460 @@ -2077,7 +2077,7 @@
Type:
Source:
- src/Phaser.js line 474 + src/Phaser.js line 474 @@ -2154,7 +2154,7 @@
Type:
Source:
- src/Phaser.js line 103 + src/Phaser.js line 103 @@ -2231,7 +2231,7 @@
Type:
Source:
- src/Phaser.js line 33 + src/Phaser.js line 33 @@ -2308,7 +2308,7 @@
Type:
Source:
- src/Phaser.js line 194 + src/Phaser.js line 194 @@ -2385,7 +2385,7 @@
Type:
Source:
- src/Phaser.js line 432 + src/Phaser.js line 432 @@ -2462,7 +2462,7 @@
Type:
Source:
- src/Phaser.js line 243 + src/Phaser.js line 243 @@ -2539,7 +2539,7 @@
Type:
Source:
- src/Phaser.js line 285 + src/Phaser.js line 285 @@ -2616,7 +2616,7 @@
Type:
Source:
- src/Phaser.js line 89 + src/Phaser.js line 89 @@ -2693,7 +2693,7 @@
Type:
Source:
- src/Phaser.js line 208 + src/Phaser.js line 208 @@ -2770,7 +2770,7 @@
Type:
Source:
- src/Phaser.js line 173 + src/Phaser.js line 173 @@ -2847,7 +2847,7 @@
Type:
Source:
- src/geom/Rectangle.js line 1120 + src/geom/Rectangle.js line 1120 @@ -2924,7 +2924,7 @@
Type:
Source:
- src/Phaser.js line 19 + src/Phaser.js line 19 @@ -3001,7 +3001,7 @@
Type:
Source:
- src/Phaser.js line 117 + src/Phaser.js line 117 @@ -3078,7 +3078,7 @@
Type:
Source:
- src/Phaser.js line 145 + src/Phaser.js line 145 @@ -3155,7 +3155,7 @@
Type:
Source:
- src/Phaser.js line 47 + src/Phaser.js line 47 @@ -3232,7 +3232,7 @@
Type:
Source:
- src/Phaser.js line 306 + src/Phaser.js line 306 @@ -3309,7 +3309,7 @@
Type:
Source:
- src/Phaser.js line 110 + src/Phaser.js line 110 @@ -3386,7 +3386,7 @@
Type:
Source:
- src/Phaser.js line 320 + src/Phaser.js line 320 @@ -3463,7 +3463,7 @@
Type:
Source:
- src/Phaser.js line 68 + src/Phaser.js line 68 @@ -3540,7 +3540,7 @@
Type:
Source:
- src/Phaser.js line 425 + src/Phaser.js line 425 @@ -3617,7 +3617,7 @@
Type:
Source:
- src/Phaser.js line 418 + src/Phaser.js line 418 @@ -3694,7 +3694,7 @@
Type:
Source:
- src/Phaser.js line 411 + src/Phaser.js line 411 @@ -3771,7 +3771,7 @@
Type:
Source:
- src/Phaser.js line 257 + src/Phaser.js line 257 @@ -3848,7 +3848,7 @@
Type:
Source:
- src/Phaser.js line 264 + src/Phaser.js line 264 @@ -3925,7 +3925,7 @@
Type:
Source:
- src/Phaser.js line 61 + src/Phaser.js line 61 @@ -4002,7 +4002,7 @@
Type:
Source:
- src/Phaser.js line 299 + src/Phaser.js line 299 @@ -4079,7 +4079,7 @@
Type:
Source:
- src/Phaser.js line 271 + src/Phaser.js line 271 @@ -4156,7 +4156,7 @@
Type:
Source:
- src/Phaser.js line 229 + src/Phaser.js line 229 @@ -4233,7 +4233,7 @@
Type:
Source:
- src/Phaser.js line 180 + src/Phaser.js line 180 @@ -4310,7 +4310,7 @@
Type:
Source:
- src/Phaser.js line 327 + src/Phaser.js line 327 @@ -4387,7 +4387,7 @@
Type:
Source:
- src/Phaser.js line 250 + src/Phaser.js line 250 @@ -4464,7 +4464,7 @@
Type:
Source:
- src/Phaser.js line 152 + src/Phaser.js line 152 @@ -4541,7 +4541,7 @@
Type:
Source:
- src/Phaser.js line 222 + src/Phaser.js line 222 @@ -4618,7 +4618,7 @@
Type:
Source:
- src/Phaser.js line 75 + src/Phaser.js line 75 @@ -4695,7 +4695,7 @@
Type:
Source:
- src/Phaser.js line 453 + src/Phaser.js line 453 @@ -4772,7 +4772,7 @@
Type:
Source:
- src/Phaser.js line 446 + src/Phaser.js line 446 @@ -4849,7 +4849,7 @@
Type:
Source:
- src/Phaser.js line 439 + src/Phaser.js line 439 @@ -4926,7 +4926,7 @@
Type:
Source:
- src/Phaser.js line 236 + src/Phaser.js line 236 @@ -5003,7 +5003,7 @@
Type:
Source:
- src/Phaser.js line 278 + src/Phaser.js line 278 @@ -5199,7 +5199,7 @@
Properties:
Source:
- src/Phaser.js line 526 + src/Phaser.js line 526 @@ -5276,7 +5276,7 @@
Type:
Source:
- src/Phaser.js line 96 + src/Phaser.js line 96 @@ -5353,7 +5353,7 @@
Type:
Source:
- src/Phaser.js line 215 + src/Phaser.js line 215 @@ -5430,7 +5430,7 @@
Type:
Source:
- src/Phaser.js line 124 + src/Phaser.js line 124 @@ -5507,7 +5507,7 @@
Type:
Source:
- src/Phaser.js line 159 + src/Phaser.js line 159 @@ -5584,7 +5584,7 @@
Type:
Source:
- src/Phaser.js line 166 + src/Phaser.js line 166 @@ -5661,7 +5661,7 @@
Type:
Source:
- src/Phaser.js line 131 + src/Phaser.js line 131 @@ -5738,7 +5738,7 @@
Type:
Source:
- src/Phaser.js line 397 + src/Phaser.js line 397 @@ -5815,7 +5815,7 @@
Type:
Source:
- src/Phaser.js line 390 + src/Phaser.js line 390 @@ -5892,7 +5892,7 @@
Type:
Source:
- src/Phaser.js line 404 + src/Phaser.js line 404 @@ -5969,7 +5969,7 @@
Type:
Source:
- src/Phaser.js line 82 + src/Phaser.js line 82 @@ -6046,7 +6046,7 @@
Type:
Source:
- src/Phaser.js line 12 + src/Phaser.js line 12 @@ -6123,7 +6123,7 @@
Type:
Source:
- src/Phaser.js line 313 + src/Phaser.js line 313 @@ -6200,7 +6200,7 @@
Type:
Source:
- src/Phaser.js line 292 + src/Phaser.js line 292 @@ -6277,7 +6277,7 @@
Type:
Source:
- src/Phaser.js line 40 + src/Phaser.js line 40 @@ -6354,7 +6354,7 @@
Type:
Source:
- src/Phaser.js line 201 + src/Phaser.js line 201 @@ -6431,7 +6431,7 @@
Type:
Source:
- src/Phaser.js line 54 + src/Phaser.js line 54 @@ -6526,7 +6526,7 @@

Source:
- src/gameobjects/components/Component.js line 7 + src/gameobjects/components/Component.js line 7 @@ -6569,9 +6569,9 @@

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -6588,7 +6588,7 @@

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -6617,7 +6617,7 @@

- + diff --git a/docs/PhaserGlobal.html b/docs/PhaserGlobal.html index 8365416c0..b049773e9 100644 --- a/docs/PhaserGlobal.html +++ b/docs/PhaserGlobal.html @@ -6,7 +6,7 @@ Phaser CE Namespace: PhaserGlobal - + @@ -389,7 +389,7 @@

Properties:
Source:
- src/PhaserGlobal.js line 1 + src/PhaserGlobal.js line 1 @@ -432,9 +432,9 @@
Properties:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -451,7 +451,7 @@
Properties:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -480,7 +480,7 @@
Properties:
- + diff --git a/docs/classes.list.html b/docs/classes.list.html index b92e61a5f..3ca28357f 100644 --- a/docs/classes.list.html +++ b/docs/classes.list.html @@ -6,7 +6,7 @@ Phaser CE Classes - + @@ -773,9 +773,9 @@

Namespaces

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -792,7 +792,7 @@

Namespaces

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -821,7 +821,7 @@

Namespaces

- + diff --git a/docs/global.html b/docs/global.html index 8a940cdce..0b627c2b3 100644 --- a/docs/global.html +++ b/docs/global.html @@ -6,7 +6,7 @@ Phaser CE Global - + @@ -289,7 +289,7 @@
Type:
Source:
- src/core/Group.js line 3091 + src/core/Group.js line 3091 @@ -1950,7 +1950,7 @@
Properties:
Source:
- src/core/Game.js line 543 + src/core/Game.js line 543 @@ -2322,7 +2322,7 @@
Properties:
Source:
- src/input/Input.js line 415 + src/input/Input.js line 415 @@ -2982,7 +2982,7 @@
Properties:
Source:
- src/tilemap/Tilemap.js line 2077 + src/tilemap/Tilemap.js line 2077 @@ -3011,9 +3011,9 @@
Properties:

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -3030,7 +3030,7 @@
Properties:

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -3059,7 +3059,7 @@
Properties:
- + diff --git a/docs/index.html b/docs/index.html index 4573758da..f67250d8d 100644 --- a/docs/index.html +++ b/docs/index.html @@ -6,7 +6,7 @@ Phaser CE API Documentation - + @@ -1002,9 +1002,9 @@

Utils

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -1021,7 +1021,7 @@

Utils

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -1050,7 +1050,7 @@

Utils

- + diff --git a/docs/namespaces.list.html b/docs/namespaces.list.html index 1c4715d06..3c13feb46 100644 --- a/docs/namespaces.list.html +++ b/docs/namespaces.list.html @@ -6,7 +6,7 @@ Phaser CE Namespaces - + @@ -773,9 +773,9 @@

Namespaces

- phaser-ce@2.19.1 + phaser-ce@2.19.2 is on - GitHub + GitHub and NPM

@@ -792,7 +792,7 @@

Namespaces

Documentation generated by JSDoc 3.6.7 - on 2021-10-19 + on 2021-10-24 using Tomorrow.

@@ -821,7 +821,7 @@

Namespaces

- +