var e;!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.OptimalSelect=t():e.OptimalSelect=t()}(this,function(){return function(r){var i={};function n(e){if(i[e])return i[e].exports;var t=i[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,n),t.l=!0,t.exports}return n.m=r,n.c=i,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=6)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.convertNodeList=function(e){for(var t=e.length,r=new Array(t),i=0;i@~]/g,"\\$&").replace(/\n/g,"A")}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCommonAncestor=function(e){var t=(1 /g,">").split(/\s+(?=(?:(?:[^"]*"){2})*[^"]*$)/);if(i.length<2)return f("",e,"",t);var n=[i.pop()];for(;1/g,"> ").trim()};var i,n=r(3),c=(i=n)&&i.__esModule?i:{default:i},h=r(0);function f(r,i,n,a){if(r.length&&(r+=" "),n.length&&(n=" "+n),/\[*\]/.test(i)){var e=i.replace(/=.*$/,"]"),o=""+r+e+n;if(g(document.querySelectorAll(o),a))i=e;else for(var s=document.querySelectorAll(""+r+e),t=function(){var t=s[u];if(a.some(function(e){return t.contains(e)})){var e=t.tagName.toLowerCase();return o=""+r+e+n,g(document.querySelectorAll(o),a)&&(i=e),"break"}},u=0,l=s.length;u/.test(i)){var c=i.replace(/>/,"");o=""+r+c+n;g(document.querySelectorAll(o),a)&&(i=c)}if(/:nth-child/.test(i)){var h=i.replace(/nth-child/g,"nth-of-type");o=""+r+h+n;g(document.querySelectorAll(o),a)&&(i=h)}if(/\.\S+\.\S+/.test(i)){for(var f=i.trim().split(".").slice(1).map(function(e){return"."+e}).sort(function(e,t){return e.length-t.length});f.length;){var d=i.replace(f.shift(),"").trim();if(!(o=(""+r+d+n).trim()).length||">"===o.charAt(0)||">"===o.charAt(o.length-1))break;g(document.querySelectorAll(o),a)&&(i=d)}if((f=i&&i.match(/\./g))&&2/.test(s):l=function(t){return function(e){return e(t.parent)&&t.parent}};break;case/^\./.test(s):var r=s.substr(1).split(".");u=function(e){var t=e.attribs.class;return t&&r.every(function(e){return-1)(\S)/g,"$1 $2").trim()),t=i.shift(),n=i.length;return t(this).filter(function(e){for(var t=0;t\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",r=a.console&&(a.console.warn||a.console.log);return r&&r.call(a.console,n,t),i.apply(this,arguments)}}o="function"!=typeof Object.assign?function(e){if(e===h||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),r=1;rt[r]}):i.sort()),i}function C(e,t){for(var r,i,n=t[0].toUpperCase()+t.slice(1),a=0;af(l.y)?l.x:l.y,t.scale=o?function(e,t){return ie(t[0],t[1],K)/ie(e[0],e[1],K)}(o.pointers,i):1,t.rotation=o?function(e,t){return ne(t[1],t[0],K)+ne(e[1],e[0],K)}(o.pointers,i):0,t.maxPointers=r.prevInput?t.pointers.length>r.prevInput.maxPointers?t.pointers.length:r.prevInput.maxPointers:t.pointers.length,function(e,t){var r,i,n,a,o=e.lastInterval||t,s=t.timeStamp-o.timeStamp;if(t.eventType!=N&&(zf(c.y)?c.x:c.y,a=re(u,l),e.lastInterval=t}else r=o.velocity,i=o.velocityX,n=o.velocityY,a=o.direction;t.velocity=r,t.velocityX=i,t.velocityY=n,t.direction=a}(r,t);var c=e.element;k(t.srcEvent.target,c)&&(c=t.srcEvent.target);t.target=c}(e,r),e.emit("hammer.input",r),e.recognize(r),e.session.prevInput=r}function $(e){for(var t=[],r=0;r=f(t)?e<0?X:q:t<0?H:W}function ie(e,t,r){r||(r=J);var i=t[r[0]]-e[r[0]],n=t[r[1]]-e[r[1]];return Math.sqrt(i*i+n*n)}function ne(e,t,r){r||(r=J);var i=t[r[0]]-e[r[0]],n=t[r[1]]-e[r[1]];return 180*Math.atan2(n,i)/Math.PI}Z.prototype={handler:function(){},init:function(){this.evEl&&w(this.element,this.evEl,this.domHandler),this.evTarget&&w(this.target,this.evTarget,this.domHandler),this.evWin&&w(O(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&x(this.element,this.evEl,this.domHandler),this.evTarget&&x(this.target,this.evTarget,this.domHandler),this.evWin&&x(O(this.element),this.evWin,this.domHandler)}};var ae={mousedown:F,mousemove:2,mouseup:B},oe="mousedown",se="mousemove mouseup";function ue(){this.evEl=oe,this.evWin=se,this.pressed=!1,Z.apply(this,arguments)}v(ue,Z,{handler:function(e){var t=ae[e.type];t&F&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=B),this.pressed&&(t&B&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:L,srcEvent:e}))}});var le={pointerdown:F,pointermove:2,pointerup:B,pointercancel:N,pointerout:N},ce={2:j,3:"pen",4:L,5:"kinect"},he="pointerdown",fe="pointermove pointerup pointercancel";function de(){this.evEl=he,this.evWin=fe,Z.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}a.MSPointerEvent&&!a.PointerEvent&&(he="MSPointerDown",fe="MSPointerMove MSPointerUp MSPointerCancel"),v(de,Z,{handler:function(e){var t=this.store,r=!1,i=e.type.toLowerCase().replace("ms",""),n=le[i],a=ce[e.pointerType]||e.pointerType,o=a==j,s=E(t,e.pointerId,"pointerId");n&F&&(0===e.button||o)?s<0&&(t.push(e),s=t.length-1):n&(B|N)&&(r=!0),s<0||(t[s]=e,this.callback(this.manager,n,{pointers:t,changedPointers:[e],pointerType:a,srcEvent:e}),r&&t.splice(s,1))}});var pe={touchstart:F,touchmove:2,touchend:B,touchcancel:N};function me(){this.evTarget="touchstart",this.evWin="touchstart touchmove touchend touchcancel",this.started=!1,Z.apply(this,arguments)}v(me,Z,{handler:function(e){var t=pe[e.type];if(t===F&&(this.started=!0),this.started){var r=function(e,t){var r=M(e.touches),i=M(e.changedTouches);t&(B|N)&&(r=P(r.concat(i),"identifier",!0));return[r,i]}.call(this,e,t);t&(B|N)&&r[0].length-r[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:r[0],changedPointers:r[1],pointerType:j,srcEvent:e})}}});var ge={touchstart:F,touchmove:2,touchend:B,touchcancel:N},ve="touchstart touchmove touchend touchcancel";function be(){this.evTarget=ve,this.targetIds={},Z.apply(this,arguments)}v(be,Z,{handler:function(e){var t=ge[e.type],r=function(e,t){var r=M(e.touches),i=this.targetIds;if(t&(2|F)&&1===r.length)return i[r[0].identifier]=!0,[r,r];var n,a,o=M(e.changedTouches),s=[],u=this.target;if(a=r.filter(function(e){return k(e.target,u)}),t===F)for(n=0;nt.threshold&&n&t.direction},attrTest:function(e){return Le.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=De(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),v(Fe,Le,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[Ee]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},emit:function(e){if(1!==e.scale){var t=e.scale<1?"in":"out";e.additionalEvent=this.options.event+t}this._super.emit.call(this,e)}}),v(Be,Ie,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(e){var t=this.options,r=e.pointers.length===t.pointers,i=e.distancet.time;if(this._input=e,!i||!r||e.eventType&(B|N)&&!n)this.reset();else if(e.eventType&F)this.reset(),this._timer=l(function(){this.state=8,this.tryEmit()},t.time,this);else if(e.eventType&B)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&e.eventType&B?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=d(),this.manager.emit(this.options.event,this._input)))}}),v(Ne,Le,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[Ee]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),v(Ue,Le,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:G|V,pointers:1},getTouchAction:function(){return ze.prototype.getTouchAction.call(this)},attrTest:function(e){var t,r=this.options.direction;return r&(G|V)?t=e.overallVelocity:r&G?t=e.overallVelocityX:r&V&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&r&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&f(t)>this.options.velocity&&e.eventType&B},emit:function(e){var t=De(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),v(Xe,Ie,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Se]},process:function(e){var t=this.options,r=e.pointers.length===t.pointers,i=e.distance>31;return(e^t)-t},r.min=function(e,t){return t^(e^t)&-(e>>=t))<<3,t|=r=(15<(e>>>=r))<<2,(t|=r=(3<(e>>>=r))<<1)|(e>>>=r)>>1},r.log10=function(e){return 1e9<=e?9:1e8<=e?8:1e7<=e?7:1e6<=e?6:1e5<=e?5:1e4<=e?4:1e3<=e?3:100<=e?2:10<=e?1:0},r.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},r.countTrailingZeros=i,r.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)+1},r.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},r.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,i=t,n=7;for(r>>>=1;r;r>>>=1)i<<=1,i|=1&r,--n;e[t]=i<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},r.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},r.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},r.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},r.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},r.nextCombination=function(e){var t=e|e-1;return 1+t|(~t&-~t)-1>>>i(e)+1}},{}],2:[function(e,t,r){"use strict";function i(e,t,r){r=r||2;var i,n,a,o,s,u,l,c=t&&t.length,h=c?t[0]*r:e.length,f=m(e,0,h,r,!0),d=[];if(!f||f.next===f.prev)return d;if(c&&(f=function(e,t,r,i){var n,a,o,s,u,l=[];for(n=0,a=t.length;n80*r){i=a=e[0],n=o=e[1];for(var p=r;pa.x?n.x>o.x?n.x:o.x:a.x>o.x?a.x:o.x,c=n.y>a.y?n.y>o.y?n.y:o.y:a.y>o.y?a.y:o.y,h=_(s,u,t,r,i),f=_(l,c,t,r,i),d=e.prevZ,p=e.nextZ;d&&d.z>=h&&p&&p.z<=f;){if(d!==e.prev&&d!==e.next&&x(n.x,n.y,a.x,a.y,o.x,o.y,d.x,d.y)&&0<=k(d.prev,d,d.next))return!1;if(d=d.prevZ,p!==e.prev&&p!==e.next&&x(n.x,n.y,a.x,a.y,o.x,o.y,p.x,p.y)&&0<=k(p.prev,p,p.next))return!1;p=p.nextZ}for(;d&&d.z>=h;){if(d!==e.prev&&d!==e.next&&x(n.x,n.y,a.x,a.y,o.x,o.y,d.x,d.y)&&0<=k(d.prev,d,d.next))return!1;d=d.prevZ}for(;p&&p.z<=f;){if(p!==e.prev&&p!==e.next&&x(n.x,n.y,a.x,a.y,o.x,o.y,p.x,p.y)&&0<=k(p.prev,p,p.next))return!1;p=p.nextZ}return!0}function f(e,t,r){var i=e;do{var n=i.prev,a=i.next.next;!s(n,a)&&p(n,i,i.next,a)&&T(n,a)&&T(a,n)&&(t.push(n.i/r),t.push(i.i/r),t.push(a.i/r),E(i),E(i.next),i=e=a),i=i.next}while(i!==e);return i}function d(e,t,r,i,n,a){var o,s,u=e;do{for(var l=u.next.next;l!==u.prev;){if(u.i!==l.i&&(s=l,(o=u).next.i!==s.i&&o.prev.i!==s.i&&!function(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&p(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}(o,s)&&T(o,s)&&T(s,o)&&function(e,t){var r=e,i=!1,n=(e.x+t.x)/2,a=(e.y+t.y)/2;for(;r.y>a!=r.next.y>a&&r.next.y!==r.y&&n<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(i=!i),r=r.next,r!==e;);return i}(o,s))){var c=S(u,l);return u=g(u,u.next),c=g(c,c.next),v(u,t,r,i,n,a),void v(c,t,r,i,n,a)}l=l.next}u=u.next}while(u!==e)}function b(e,t){return e.x-t.x}function y(e,t){if(t=function(e,t){var r,i=t,n=e.x,a=e.y,o=-1/0;do{if(a<=i.y&&a>=i.next.y&&i.next.y!==i.y){var s=i.x+(a-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(s<=n&&o=i.x&&i.x>=c&&n!==i.x&&x(ar.x)&&T(i,e)&&(r=i,f=u),i=i.next;return r}(e,t)){var r=S(t,e);g(r,r.next)}}function _(e,t,r,i,n){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*n)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-i)*n)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function w(e){for(var t=e,r=e;t.x=e.byteLength?i.bufferSubData(this.type,t,e):i.bufferData(this.type,e,this.drawType),this.data=e},a.prototype.bind=function(){this.gl.bindBuffer(this.type,this.buffer)},a.createVertexBuffer=function(e,t,r){return new a(e,e.ARRAY_BUFFER,t,r)},a.createIndexBuffer=function(e,t,r){return new a(e,e.ELEMENT_ARRAY_BUFFER,t,r)},a.create=function(e,t,r,i){return new a(e,t,r,i)},a.prototype.destroy=function(){this.gl.deleteBuffer(this.buffer)},t.exports=a},{}],10:[function(e,t,r){var o=e("./GLTexture"),s=function(e,t,r){this.gl=e,this.framebuffer=e.createFramebuffer(),this.stencil=null,this.texture=null,this.width=t||100,this.height=r||100};s.prototype.enableTexture=function(e){var t=this.gl;this.texture=e||new o(t),this.texture.bind(),this.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,this.texture.texture,0)},s.prototype.enableStencil=function(){if(!this.stencil){var e=this.gl;this.stencil=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,this.stencil),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.RENDERBUFFER,this.stencil),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_STENCIL,this.width,this.height)}},s.prototype.clear=function(e,t,r,i){this.bind();var n=this.gl;n.clearColor(e,t,r,i),n.clear(n.COLOR_BUFFER_BIT|n.DEPTH_BUFFER_BIT)},s.prototype.bind=function(){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,this.framebuffer)},s.prototype.unbind=function(){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,null)},s.prototype.resize=function(e,t){var r=this.gl;this.width=e,this.height=t,this.texture&&this.texture.uploadData(null,e,t),this.stencil&&(r.bindRenderbuffer(r.RENDERBUFFER,this.stencil),r.renderbufferStorage(r.RENDERBUFFER,r.DEPTH_STENCIL,e,t))},s.prototype.destroy=function(){var e=this.gl;this.texture&&this.texture.destroy(),e.deleteFramebuffer(this.framebuffer),this.gl=null,this.stencil=null,this.texture=null},s.createRGBA=function(e,t,r,i){var n=o.fromData(e,null,t,r);n.enableNearestScaling(),n.enableWrapClamp();var a=new s(e,t,r);return a.enableTexture(n),a.unbind(),a},s.createFloat32=function(e,t,r,i){var n=new o.fromData(e,i,t,r);n.enableNearestScaling(),n.enableWrapClamp();var a=new s(e,t,r);return a.enableTexture(n),a.unbind(),a},t.exports=s},{"./GLTexture":12}],11:[function(e,t,r){var a=e("./shader/compileProgram"),o=e("./shader/extractAttributes"),s=e("./shader/extractUniforms"),u=e("./shader/setPrecision"),l=e("./shader/generateUniformAccessObject"),i=function(e,t,r,i,n){this.gl=e,i&&(t=u(t,i),r=u(r,i)),this.program=a(e,t,r,n),this.attributes=o(e,this.program),this.uniformData=s(e,this.program),this.uniforms=l(e,this.uniformData)};i.prototype.bind=function(){return this.gl.useProgram(this.program),this},i.prototype.destroy=function(){this.attributes=null,this.uniformData=null,this.uniforms=null,this.gl.deleteProgram(this.program)},t.exports=i},{"./shader/compileProgram":17,"./shader/extractAttributes":19,"./shader/extractUniforms":20,"./shader/generateUniformAccessObject":21,"./shader/setPrecision":25}],12:[function(e,t,r){var a=function(e,t,r,i,n){this.gl=e,this.texture=e.createTexture(),this.mipmap=!1,this.premultiplyAlpha=!1,this.width=t||-1,this.height=r||-1,this.format=i||e.RGBA,this.type=n||e.UNSIGNED_BYTE},n=!(a.prototype.upload=function(e){this.bind();var t=this.gl;t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha);var r=e.videoWidth||e.width,i=e.videoHeight||e.height;i!==this.height||r!==this.width?t.texImage2D(t.TEXTURE_2D,0,this.format,this.format,this.type,e):t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.format,this.type,e),this.width=r,this.height=i});a.prototype.uploadData=function(e,t,r){this.bind();var i=this.gl;if(e instanceof Float32Array){if(!n){if(!i.getExtension("OES_texture_float"))throw new Error("floating point textures not available");n=!0}this.type=i.FLOAT}else this.type=this.type||i.UNSIGNED_BYTE;i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),t!==this.width||r!==this.height?i.texImage2D(i.TEXTURE_2D,0,this.format,t,r,0,this.format,this.type,e||null):i.texSubImage2D(i.TEXTURE_2D,0,0,0,t,r,this.format,this.type,e||null),this.width=t,this.height=r},a.prototype.bind=function(e){var t=this.gl;void 0!==e&&t.activeTexture(t.TEXTURE0+e),t.bindTexture(t.TEXTURE_2D,this.texture)},a.prototype.unbind=function(){var e=this.gl;e.bindTexture(e.TEXTURE_2D,null)},a.prototype.minFilter=function(e){var t=this.gl;this.bind(),this.mipmap?t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,e?t.LINEAR_MIPMAP_LINEAR:t.NEAREST_MIPMAP_NEAREST):t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,e?t.LINEAR:t.NEAREST)},a.prototype.magFilter=function(e){var t=this.gl;this.bind(),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,e?t.LINEAR:t.NEAREST)},a.prototype.enableMipmap=function(){var e=this.gl;this.bind(),this.mipmap=!0,e.generateMipmap(e.TEXTURE_2D)},a.prototype.enableLinearScaling=function(){this.minFilter(!0),this.magFilter(!0)},a.prototype.enableNearestScaling=function(){this.minFilter(!1),this.magFilter(!1)},a.prototype.enableWrapClamp=function(){var e=this.gl;this.bind(),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)},a.prototype.enableWrapRepeat=function(){var e=this.gl;this.bind(),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.REPEAT)},a.prototype.enableWrapMirrorRepeat=function(){var e=this.gl;this.bind(),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.MIRRORED_REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.MIRRORED_REPEAT)},a.prototype.destroy=function(){this.gl.deleteTexture(this.texture)},a.fromSource=function(e,t,r){var i=new a(e);return i.premultiplyAlpha=r||!1,i.upload(t),i},a.fromData=function(e,t,r,i){var n=new a(e);return n.uploadData(t,r,i),n},t.exports=a},{}],13:[function(e,t,r){var n=e("./setVertexAttribArrays");function i(e,t){if(this.nativeVaoExtension=null,i.FORCE_NATIVE||(this.nativeVaoExtension=e.getExtension("OES_vertex_array_object")||e.getExtension("MOZ_OES_vertex_array_object")||e.getExtension("WEBKIT_OES_vertex_array_object")),this.nativeState=t,this.nativeVaoExtension){this.nativeVao=this.nativeVaoExtension.createVertexArrayOES();var r=e.getParameter(e.MAX_VERTEX_ATTRIBS);this.nativeState={tempAttribState:new Array(r),attribState:new Array(r)}}this.gl=e,this.attributes=[],this.indexBuffer=null,this.dirty=!1}i.prototype.constructor=i,(t.exports=i).FORCE_NATIVE=!1,i.prototype.bind=function(){if(this.nativeVao){if(this.nativeVaoExtension.bindVertexArrayOES(this.nativeVao),this.dirty)return this.dirty=!1,this.activate(),this;this.indexBuffer&&this.indexBuffer.bind()}else this.activate();return this},i.prototype.unbind=function(){return this.nativeVao&&this.nativeVaoExtension.bindVertexArrayOES(null),this},i.prototype.activate=function(){for(var e=this.gl,t=null,r=0;r= 0x80 (not a basic code point)","invalid-input":"Invalid input"},f=b-y,T=Math.floor,S=String.fromCharCode;function E(e){throw new RangeError(h[e])}function d(e,t){for(var r=e.length,i=[];r--;)i[r]=t(e[r]);return i}function p(e,t){var r=e.split("@"),i="";return 1>>10&1023|55296),e=56320|1023&e),t+=S(e)}).join("")}function C(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function A(e,t,r){var i=0;for(e=r?T(e/s):e>>1,e+=T(e/t);f*_>>1T((v-p)/o))&&E("overflow"),p+=u*o,!(u<(l=s<=g?y:g+_<=s?_:s-g));s+=b)o>T(v/(c=b-l))&&E("overflow"),o*=c;g=A(p-a,t=f.length+1,0==a),T(p/t)>v-m&&E("overflow"),m+=T(p/t),p%=t,f.splice(p++,0,m)}return P(f)}function g(e){var t,r,i,n,a,o,s,u,l,c,h,f,d,p,m,g=[];for(f=(e=M(e)).length,t=x,a=w,o=r=0;oT((v-r)/(d=i+1))&&E("overflow"),r+=(s-t)*d,t=s,o=0;ov&&E("overflow"),h==t){for(u=r,l=b;!(u<(c=l<=a?y:a+_<=l?_:l-a));l+=b)m=u-c,p=b-c,g.push(S(C(c+m%p,0))),u=T(m/p);g.push(S(C(u,0))),a=A(r,d,i==n),r=0,++i}++r,++t}return g.join("")}if(n={version:"1.4.1",ucs2:{decode:M,encode:P},decode:m,encode:g,toASCII:function(e){return p(e,function(e){return l.test(e)?"xn--"+g(e):e})},toUnicode:function(e){return p(e,function(e){return u.test(e)?m(e.slice(4).toLowerCase()):e})}},t&&r)if(I.exports==t)r.exports=n;else for(a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);else e.punycode=n}(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],28:[function(e,t,r){"use strict";t.exports=function(e,t,r,i){t=t||"&",r=r||"=";var n={};if("string"!=typeof e||0===e.length)return n;var a=/\+/g;e=e.split(t);var o=1e3;i&&"number"==typeof i.maxKeys&&(o=i.maxKeys);var s,u,l=e.length;0>2,n[1]=(3&i[0])<<4|i[1]>>4,n[2]=(15&i[1])<<2|i[2]>>6,n[3]=63&i[2],r-(e.length-1)){case 2:n[3]=64,n[2]=64;break;case 1:n[3]=64}for(var o=0;o",'"',"`"," ","\r","\n","\t"]),z=["'"].concat(n),F=["%","/","?",";","#"].concat(z),B=["/","?","#"],N=/^[+a-z0-9A-Z_-]{0,63}$/,U=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,X={javascript:!0,"javascript:":!0},q={javascript:!0,"javascript:":!0},H={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},W=e("querystring");function a(e,t,r){if(e&&D.isObject(e)&&e instanceof M)return e;var i=new M;return i.parse(e,t,r),i}M.prototype.parse=function(e,t,r){if(!D.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var i=e.indexOf("?"),n=-1!==i&&ithis.renderer.width&&(e.width=this.renderer.width-e.x),e.y+e.height>this.renderer.height&&(e.height=this.renderer.height-e.y)},r.prototype.addChild=function(e){var t=this.pool.pop();t||((t=document.createElement("button")).style.width="100px",t.style.height="100px",t.style.backgroundColor=this.debug?"rgba(255,0,0,0.5)":"transparent",t.style.position="absolute",t.style.zIndex=2,t.style.borderStyle="none",-1]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^>]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^>]*>/i,r.SHAPES={POLY:0,RECT:1,CIRC:2,ELIP:3,RREC:4},r.PRECISION={LOW:"lowp",MEDIUM:"mediump",HIGH:"highp"},r.TRANSFORM_MODE={STATIC:0,DYNAMIC:1},r.TEXT_GRADIENT={LINEAR_VERTICAL:0,LINEAR_HORIZONTAL:1},r.UPDATE_PRIORITY={INTERACTION:50,HIGH:25,NORMAL:0,LOW:-25,UTILITY:-50}},{}],47:[function(e,t,r){"use strict";r.__esModule=!0;var i=e("../math");var n=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,this.rect=null}return e.prototype.isEmpty=function(){return this.minX>this.maxX||this.minY>this.maxY},e.prototype.clear=function(){this.updateID++,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0},e.prototype.getRectangle=function(e){return this.minX>this.maxX||this.minY>this.maxY?i.Rectangle.EMPTY:((e=e||new i.Rectangle(0,0,1,1)).x=this.minX,e.y=this.minY,e.width=this.maxX-this.minX,e.height=this.maxY-this.minY,e)},e.prototype.addPoint=function(e){this.minX=Math.min(this.minX,e.x),this.maxX=Math.max(this.maxX,e.x),this.minY=Math.min(this.minY,e.y),this.maxY=Math.max(this.maxY,e.y)},e.prototype.addQuad=function(e){var t=this.minX,r=this.minY,i=this.maxX,n=this.maxY,a=e[0],o=e[1];t=ai?e.maxX:i,this.maxY=e.maxY>n?e.maxY:n},e.prototype.addBoundsMask=function(e,t){var r=e.minX>t.minX?e.minX:t.minX,i=e.minY>t.minY?e.minY:t.minY,n=e.maxXt.x?e.minX:t.x,i=e.minY>t.y?e.minY:t.y,n=e.maxXthis.children.length)throw new Error(e+"addChildAt: The index "+t+" supplied is out of bounds "+this.children.length);return e.parent&&e.parent.removeChild(e),e.parent=this,e.transform._parentID=-1,this.children.splice(t,0,e),this._boundsID++,this.onChildrenChange(t),e.emit("added",this),e},t.prototype.swapChildren=function(e,t){if(e!==t){var r=this.getChildIndex(e),i=this.getChildIndex(t);this.children[r]=t,this.children[i]=e,this.onChildrenChange(r=this.children.length)throw new Error("The index "+t+" supplied is out of bounds "+this.children.length);var r=this.getChildIndex(e);(0,o.removeItems)(this.children,r,1),this.children.splice(t,0,e),this.onChildrenChange(t)},t.prototype.getChildAt=function(e){if(e<0||e>=this.children.length)throw new Error("getChildAt: Index ("+e+") does not exist.");return this.children[e]},t.prototype.removeChild=function(e){var t=arguments.length;if(1k.CURVES.maxSegments&&(t=k.CURVES.maxSegments),t},k.prototype.lineStyle=function(){var e=0>16&255)/255,r=(e.tint>>8&255)/255,i=(255&e.tint)/255,n=0;n>16&255)/255*t*255<<16)+((o>>8&255)/255*r*255<<8)+(255&o)/255*i*255,a._lineTint=((s>>16&255)/255*t*255<<16)+((s>>8&255)/255*r*255<<8)+(255&s)/255*i*255}},t.prototype.renderPolygon=function(e,t,r){r.moveTo(e[0],e[1]);for(var i=1;i=this.x&&e=this.y&&t=this.x&&e<=this.x+this.width&&t>=this.y&&t<=this.y+this.height){if(t>=this.y+this.radius&&t<=this.y+this.height-this.radius||e>=this.x+this.radius&&e<=this.x+this.width-this.radius)return!0;var r=e-(this.x+this.radius),i=t-(this.y+this.radius),n=this.radius*this.radius;if(r*r+i*i<=n)return!0;if((r=e-(this.x+this.width-this.radius))*r+i*i<=n)return!0;if(r*r+(i=t-(this.y+this.height-this.radius))*i<=n)return!0;if((r=e-(this.x+this.radius))*r+i*i<=n)return!0}return!1},a}();r.default=i},{"../../const":46}],76:[function(e,t,r){"use strict";r.__esModule=!0;var i=function(){function i(e,t){for(var r=0;rthis.checkCountMax&&(this.checkCount=0,this.run()))},t.prototype.run=function(){for(var e=this.renderer.textureManager,t=e._managedTextures,r=!1,i=0;ithis.maxIdle&&(e.destroyTexture(n,!0),r=!(t[i]=null))}if(r){for(var a=0,o=0;o 0.5)"," {"," color = vec4(1.0, 0.0, 0.0, 1.0);"," }"," else"," {"," color = vec4(0.0, 1.0, 0.0, 1.0);"," }"," gl_FragColor = mix(sample, masky, 0.5);"," gl_FragColor *= sample.a;","}"].join("\n")}}]),n}();r.default=c},{"../../../const":46,"../../../settings":101,"../../../utils":125,"./extractUniformsFromSrc":87}],87:[function(e,t,r){"use strict";r.__esModule=!0,r.default=function(e,t,r){var i=a(e),n=a(t);return Object.assign(i,n)};var i,n=e("pixi-gl-core");var h=((i=n)&&i.__esModule?i:{default:i}).default.shader.defaultValue;function a(e){for(var t=new RegExp("^(projectionMatrix|uSampler|filterArea|filterClamp)$"),r={},i=void 0,n=e.replace(/\s+/g," ").split(/\s*;\s*/),a=0;a=i&&c.x=n&&c.y>16)+(65280&e)+((255&e)<<16)}},{key:"texture",get:function(){return this._texture},set:function(e){this._texture!==e&&(this._texture=e||u.default.EMPTY,this.cachedTint=16777215,this._textureID=-1,this._textureTrimmedID=-1,e&&(e.baseTexture.hasLoaded?this._onTextureUpdate():e.once("update",this._onTextureUpdate,this)))}}]),i}(i.default);r.default=h},{"../const":46,"../display/Container":48,"../math":70,"../textures/Texture":115,"../utils":125}],103:[function(e,t,r){"use strict";r.__esModule=!0;var i=n(e("../../renderers/canvas/CanvasRenderer")),c=e("../../const"),h=e("../../math"),f=n(e("./CanvasTinter"));function n(e){return e&&e.__esModule?e:{default:e}}var d=new h.Matrix,a=function(){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),this.renderer=e}return t.prototype.render=function(e){var t=e._texture,r=this.renderer,i=t._frame.width,n=t._frame.height,a=e.transform.worldTransform,o=0,s=0;if(!(t.orig.width<=0||t.orig.height<=0)&&t.baseTexture.source&&(r.setBlendMode(e.blendMode),t.valid)){r.context.globalAlpha=e.worldAlpha;var u=t.baseTexture.scaleMode===c.SCALE_MODES.LINEAR;r.smoothProperty&&r.context[r.smoothProperty]!==u&&(r.context[r.smoothProperty]=u),s=t.trim?(o=t.trim.width/2+t.trim.x-e.anchor.x*t.orig.width,t.trim.height/2+t.trim.y-e.anchor.y*t.orig.height):(o=(.5-e.anchor.x)*t.orig.width,(.5-e.anchor.y)*t.orig.height),t.rotate&&(a.copy(d),a=d,h.GroupD8.matrixAppendRotationInv(a,t.rotate,o,s),s=o=0),o-=i/2,s-=n/2,r.roundPixels?(r.context.setTransform(a.a,a.b,a.c,a.d,a.tx*r.resolution|0,a.ty*r.resolution|0),o|=0,s|=0):r.context.setTransform(a.a,a.b,a.c,a.d,a.tx*r.resolution,a.ty*r.resolution);var l=t.baseTexture.resolution;16777215!==e.tint?(e.cachedTint===e.tint&&e.tintedTexture.tintId===e._texture._updateID||(e.cachedTint=e.tint,e.tintedTexture=f.default.getTintedTexture(e,e.tint)),r.context.drawImage(e.tintedTexture,0,0,i*l,n*l,o*r.resolution,s*r.resolution,i*r.resolution,n*r.resolution)):r.context.drawImage(t.baseTexture.source,t._frame.x*l,t._frame.y*l,i*l,n*l,o*r.resolution,s*r.resolution,i*r.resolution,n*r.resolution)}},t.prototype.destroy=function(){this.renderer=null},t}();r.default=a,i.default.registerPlugin("sprite",a)},{"../../const":46,"../../math":70,"../../renderers/canvas/CanvasRenderer":77,"./CanvasTinter":104}],104:[function(e,t,r){"use strict";r.__esModule=!0;var i,d=e("../../utils"),n=e("../../renderers/canvas/utils/canUseNewCanvasBlendModes");var s={getTintedTexture:function(e,t){var r=e._texture,i="#"+("00000"+(0|(t=s.roundColor(t))).toString(16)).substr(-6);r.tintCache=r.tintCache||{};var n=r.tintCache[i],a=void 0;if(n){if(n.tintId===r._updateID)return r.tintCache[i];a=r.tintCache[i]}else a=s.canvas||document.createElement("canvas");if(s.tintMethod(r,t,a),a.tintId=r._updateID,s.convertTintToImage){var o=new Image;o.src=a.toDataURL(),r.tintCache[i]=o}else r.tintCache[i]=a,s.canvas=null;return a},tintWithMultiply:function(e,t,r){var i=r.getContext("2d"),n=e._frame.clone(),a=e.baseTexture.resolution;n.x*=a,n.y*=a,n.width*=a,n.height*=a,r.width=Math.ceil(n.width),r.height=Math.ceil(n.height),i.save(),i.fillStyle="#"+("00000"+(0|t).toString(16)).substr(-6),i.fillRect(0,0,n.width,n.height),i.globalCompositeOperation="multiply",i.drawImage(e.baseTexture.source,n.x,n.y,n.width,n.height,0,0,n.width,n.height),i.globalCompositeOperation="destination-atop",i.drawImage(e.baseTexture.source,n.x,n.y,n.width,n.height,0,0,n.width,n.height),i.restore()},tintWithOverlay:function(e,t,r){var i=r.getContext("2d"),n=e._frame.clone(),a=e.baseTexture.resolution;n.x*=a,n.y*=a,n.width*=a,n.height*=a,r.width=Math.ceil(n.width),r.height=Math.ceil(n.height),i.save(),i.globalCompositeOperation="copy",i.fillStyle="#"+("00000"+(0|t).toString(16)).substr(-6),i.fillRect(0,0,n.width,n.height),i.globalCompositeOperation="destination-atop",i.drawImage(e.baseTexture.source,n.x,n.y,n.width,n.height,0,0,n.width,n.height),i.restore()},tintWithPerPixel:function(e,t,r){var i=r.getContext("2d"),n=e._frame.clone(),a=e.baseTexture.resolution;n.x*=a,n.y*=a,n.width*=a,n.height*=a,r.width=Math.ceil(n.width),r.height=Math.ceil(n.height),i.save(),i.globalCompositeOperation="copy",i.drawImage(e.baseTexture.source,n.x,n.y,n.width,n.height,0,0,n.width,n.height),i.restore();for(var o=(0,d.hex2rgb)(t),s=o[0],u=o[1],l=o[2],c=i.getImageData(0,0,n.width,n.height),h=c.data,f=0;f=this.size&&this.flush(),e._texture._uvs&&(this.sprites[this.currentIndex++]=e)},a.prototype.flush=function(){if(0!==this.currentIndex){var e=this.renderer.gl,t=this.MAX_TEXTURES,r=N.default.nextPow2(this.currentIndex),i=N.default.log2(r),n=this.buffers[i],a=this.sprites,o=this.groups,s=n.float32View,u=n.uint32View,l=this.boundTextures,c=this.renderer.boundTextures,h=this.renderer.textureGC.count,f=0,d=void 0,p=void 0,m=1,g=0,v=o[0],b=void 0,y=void 0,_=F.premultiplyBlendMode[a[0]._texture.baseTexture.premultipliedAlpha?1:0][a[0].blendMode];v.textureCount=0,v.start=0,v.blend=_,U++;var w=void 0;for(w=0;w=r.length)break;a=r[n++]}else{if((n=r.next()).done)break;a=n.value}var o=a;this.animations[t].push(this.textures[o])}}},h.prototype._parseComplete=function(){var e=this._callback;this._callback=null,this._batchIndex=0,e.call(this,this.textures)},h.prototype._nextBatch=function(){var e=this;this._processFrames(this._batchIndex*h.BATCH_SIZE),this._batchIndex++,setTimeout(function(){e._batchIndex*h.BATCH_SIZEthis.baseTexture.width,o=r+n>this.baseTexture.height;if(a||o){var s=a&&o?"and":"or",u="X: "+t+" + "+i+" = "+(t+i)+" > "+this.baseTexture.width,l="Y: "+r+" + "+n+" = "+(r+n)+" > "+this.baseTexture.height;throw new Error("Texture Error: frame does not fit inside the base Texture dimensions: "+u+" "+s+" "+l)}this.valid=i&&n&&this.baseTexture.hasLoaded,this.trim||this.rotate||(this.orig=e),this.valid&&this._updateUvs()}},{key:"rotate",get:function(){return this._rotate},set:function(e){this._rotate=e,this.valid&&this._updateUvs()}},{key:"width",get:function(){return this.orig.width}},{key:"height",get:function(){return this.orig.height}}]),u}(s.default);function d(e){e.destroy=function(){},e.on=function(){},e.once=function(){},e.emit=function(){}}(r.default=f).EMPTY=new f(new a.default),d(f.EMPTY),d(f.EMPTY.baseTexture),f.WHITE=function(){var e=document.createElement("canvas");e.width=10,e.height=10;var t=e.getContext("2d");return t.fillStyle="white",t.fillRect(0,0,10,10),new f(new a.default(e))}(),d(f.WHITE),d(f.WHITE.baseTexture)},{"../math":70,"../settings":101,"../utils":125,"./BaseTexture":112,"./TextureUvs":117,"./VideoBaseTexture":118,eventemitter3:3}],116:[function(e,t,r){"use strict";r.__esModule=!0;var i,n=function(){function i(e,t){for(var r=0;rt.priority){e.connect(r);break}t=(r=t).next}e.previous||e.connect(r)}else e.connect(r);return this._startIfPossible(),this},e.prototype.remove=function(e,t){for(var r=this._head.next;r;)r=r.match(e,t)?r.destroy():r.next;return this._head.next||this._cancelIfNeeded(),this},e.prototype.start=function(){this.started||(this.started=!0,this._requestIfNeeded())},e.prototype.stop=function(){this.started&&(this.started=!1,this._cancelIfNeeded())},e.prototype.destroy=function(){this.stop();for(var e=this._head.next;e;)e=e.destroy(!0);this._head.destroy(),this._head=null},e.prototype.update=function(){var e=0this.lastTime){(t=this.elapsedMS=e-this.lastTime)>this._maxElapsedMS&&(t=this._maxElapsedMS),this.deltaTime=t*n.default.TARGET_FPMS*this.speed;for(var r=this._head,i=r.next;i;)i=i.emit(this.deltaTime);r.next||this._cancelIfNeeded()}else this.deltaTime=this.elapsedMS=0;this.lastTime=e},i(e,[{key:"FPS",get:function(){return 1e3/this.elapsedMS}},{key:"minFPS",get:function(){return 1e3/this._maxElapsedMS},set:function(e){var t=Math.min(Math.max(0,e)/1e3,n.default.TARGET_FPMS);this._maxElapsedMS=1/t}}]),e}();r.default=u},{"../const":46,"../settings":101,"./TickerListener":120}],120:[function(e,t,r){"use strict";r.__esModule=!0;var i=function(){function n(e){var t=1>16&255)/255,t[1]=(e>>8&255)/255,t[2]=(255&e)/255,t},r.hex2string=function(e){return e=e.toString(16),"#"+(e="000000".substr(0,6-e.length)+e)},r.rgb2hex=function(e){return(255*e[0]<<16)+(255*e[1]<<8)+(255*e[2]|0)},r.getResolutionOfUrl=function(e,t){var r=n.default.RETINA_PREFIX.exec(e);if(r)return parseFloat(r[1]);return void 0!==t?t:1},r.decomposeDataUri=function(e){var t=i.DATA_URI.exec(e);if(t)return{mediaType:t[1]?t[1].toLowerCase():void 0,subType:t[2]?t[2].toLowerCase():void 0,charset:t[3]?t[3].toLowerCase():void 0,encoding:t[4]?t[4].toLowerCase():void 0,data:t[5]};return},r.getUrlFileExtension=function(e){var t=i.URL_FILE_EXTENSION.exec(e);if(t)return t[1].toLowerCase();return},r.getSvgSize=function(e){var t=i.SVG_SIZE.exec(e),r={};t&&(r[t[1]]=Math.round(parseFloat(t[3])),r[t[5]]=Math.round(parseFloat(t[7])));return r},r.skipHello=function(){m=!0},r.sayHello=function(e){if(m)return;if(-1>16&255,i=e>>8&255,n=255&e;return(255*t<<24)+((r=r*t+.5|0)<<16)+((i=i*t+.5|0)<<8)+(n=n*t+.5|0)},r.premultiplyRgba=function(e,t,r,i){r=r||new Float32Array(4),i||void 0===i?(r[0]=e[0]*t,r[1]=e[1]*t,r[2]=e[2]*t):(r[0]=e[0],r[1]=e[1],r[2]=e[2]);return r[3]=t,r},r.premultiplyTintToRgba=function(e,t,r,i){(r=r||new Float32Array(4))[0]=(e>>16&255)/255,r[1]=(e>>8&255)/255,r[2]=(255&e)/255,(i||void 0===i)&&(r[0]*=t,r[1]*=t,r[2]*=t);return r[3]=t,r};var i=e("../const"),n=d(e("../settings")),a=d(e("eventemitter3")),o=d(e("./pluginTarget")),s=f(e("./mixin")),u=f(e("ismobilejs")),l=d(e("remove-array-items")),c=d(e("./mapPremultipliedBlendModes")),h=d(e("earcut"));function f(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function d(e){return e&&e.__esModule?e:{default:e}}var p=0,m=!1;r.isMobile=u,r.removeItems=l.default,r.EventEmitter=a.default,r.pluginTarget=o.default,r.mixins=s,r.earcut=h.default;var g=r.TextureCache=Object.create(null),v=r.BaseTextureCache=Object.create(null);var b=r.premultiplyBlendMode=(0,c.default)()},{"../const":46,"../settings":101,"./mapPremultipliedBlendModes":126,"./mixin":128,"./pluginTarget":129,earcut:2,eventemitter3:3,ismobilejs:4,"remove-array-items":31}],126:[function(e,t,r){"use strict";r.__esModule=!0,r.default=function(){for(var e=[],t=[],r=0;r<32;r++)e[r]=r,t[r]=r;e[n.BLEND_MODES.NORMAL_NPM]=n.BLEND_MODES.NORMAL,e[n.BLEND_MODES.ADD_NPM]=n.BLEND_MODES.ADD,e[n.BLEND_MODES.SCREEN_NPM]=n.BLEND_MODES.SCREEN,t[n.BLEND_MODES.NORMAL]=n.BLEND_MODES.NORMAL_NPM,t[n.BLEND_MODES.ADD]=n.BLEND_MODES.ADD_NPM,t[n.BLEND_MODES.SCREEN]=n.BLEND_MODES.SCREEN_NPM;var i=[];return i.push(t),i.push(e),i};var n=e("../const")},{"../const":46}],127:[function(e,t,r){"use strict";r.__esModule=!0,r.default=function(e){if(a.default.tablet||a.default.phone)return 4;return e};var i,n=e("ismobilejs"),a=(i=n)&&i.__esModule?i:{default:i}},{ismobilejs:4}],128:[function(e,t,r){"use strict";function i(e,t){if(e&&t)for(var r=Object.keys(t),i=0;i=this._durations[this.currentFrame];)i-=this._durations[this.currentFrame]*n,this._currentTime+=n;this._currentTime+=i/this._durations[this.currentFrame]}else this._currentTime+=t;this._currentTime<0&&!this.loop?(this.gotoAndStop(0),this.onComplete&&this.onComplete()):this._currentTime>=this._textures.length&&!this.loop?(this.gotoAndStop(this._textures.length-1),this.onComplete&&this.onComplete()):r!==this.currentFrame&&(this.loop&&this.onLoop&&(0r&&this.onLoop()),this.updateTexture())},n.prototype.updateTexture=function(){this._texture=this._textures[this.currentFrame],this._textureID=-1,this.cachedTint=16777215,this.updateAnchor&&this._anchor.copy(this._texture.defaultAnchor),this.onFrameChange&&this.onFrameChange(this.currentFrame)},n.prototype.destroy=function(e){this.stop(),i.prototype.destroy.call(this,e)},n.fromFrames=function(e){for(var t=[],r=0;rs&&(++p,O.utils.removeItems(i,1+f-p,1+g-f),g=f,f=-1,n.push(d),c=Math.max(c,d),h++,r.x=0,r.y+=e.lineHeight,u=null))}else n.push(l),c=Math.max(c,l),++h,++p,r.x=0,r.y+=e.lineHeight,u=null}var _=a.charAt(a.length-1);"\r"!==_&&"\n"!==_&&(/(?:\s)/.test(_)&&(l=d),n.push(l),c=Math.max(c,l));for(var w=[],x=0;x<=h;x++){var k=0;"right"===this._font.align?k=c-n[x]:"center"===this._font.align&&(k=(c-n[x])/2),w.push(k)}for(var T=i.length,S=this.tint,E=0;E=i&&s.x=n&&s.y 0.0) {\n c.rgb /= c.a;\n }\n\n vec4 result;\n\n result.r = (m[0] * c.r);\n result.r += (m[1] * c.g);\n result.r += (m[2] * c.b);\n result.r += (m[3] * c.a);\n result.r += m[4];\n\n result.g = (m[5] * c.r);\n result.g += (m[6] * c.g);\n result.g += (m[7] * c.b);\n result.g += (m[8] * c.a);\n result.g += m[9];\n\n result.b = (m[10] * c.r);\n result.b += (m[11] * c.g);\n result.b += (m[12] * c.b);\n result.b += (m[13] * c.a);\n result.b += m[14];\n\n result.a = (m[15] * c.r);\n result.a += (m[16] * c.g);\n result.a += (m[17] * c.b);\n result.a += (m[18] * c.a);\n result.a += m[19];\n\n vec3 rgb = mix(c.rgb, result.rgb, uAlpha);\n\n // Premultiply alpha again.\n rgb *= result.a;\n\n gl_FragColor = vec4(rgb, result.a);\n}\n"));return e.uniforms.m=[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],e.alpha=1,e}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(r,t),r.prototype._loadMatrix=function(e){var t=e;1>16&255)/255,o=(r>>8&255)/255,s=(255&r)/255,u=((i=i||3375104)>>16&255)/255,l=(i>>8&255)/255,c=(255&i)/255,h=[.3,.59,.11,0,0,a,o,s,e=e||.2,0,u,l,c,t=t||.15,0,a-u,o-l,s-c,0,0];this._loadMatrix(h,n)},r.prototype.night=function(e,t){var r=[-2*(e=e||.1),-e,0,0,0,-e,0,e,0,0,0,e,2*e,0,0,0,0,0,1,0];this._loadMatrix(r,t)},r.prototype.predator=function(e,t){var r=[11.224130630493164*e,-4.794486999511719*e,-2.8746118545532227*e,0*e,.40342438220977783*e,-3.6330697536468506*e,9.193157196044922*e,-2.951810836791992*e,0*e,-1.316135048866272*e,-3.2184197902679443*e,-4.2375030517578125*e,7.476448059082031*e,0*e,.8044459223747253*e,0,0,0,1,0];this._loadMatrix(r,t)},r.prototype.lsd=function(e){this._loadMatrix([2,-.4,.5,0,0,-.5,2,-.4,0,0,-.4,-.5,3,0,0,0,0,0,1,0],e)},r.prototype.reset=function(){this._loadMatrix([1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],!1)},i(r,[{key:"matrix",get:function(){return this.uniforms.m},set:function(e){this.uniforms.m=e}},{key:"alpha",get:function(){return this.uniforms.uAlpha},set:function(e){this.uniforms.uAlpha=e}}]),r}(n.Filter);(r.default=a).prototype.grayscale=a.prototype.greyscale},{"../../core":65,path:8}],151:[function(e,t,r){"use strict";r.__esModule=!0;var i=function(){function i(e,t){for(var r=0;r lumaMax))\n color = vec4(rgbA, texColor.a);\n else\n color = vec4(rgbB, texColor.a);\n return color;\n}\n\nvoid main() {\n\n vec2 fragCoord = vTextureCoord * filterArea.xy;\n\n vec4 color;\n\n color = fxaa(uSampler, fragCoord, filterArea.xy, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\n\n gl_FragColor = color;\n}\n'))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t}(i.Filter);r.default=n},{"../../core":65,path:8}],153:[function(e,t,r){"use strict";r.__esModule=!0;var i=e("./fxaa/FXAAFilter");Object.defineProperty(r,"FXAAFilter",{enumerable:!0,get:function(){return h(i).default}});var n=e("./noise/NoiseFilter");Object.defineProperty(r,"NoiseFilter",{enumerable:!0,get:function(){return h(n).default}});var a=e("./displacement/DisplacementFilter");Object.defineProperty(r,"DisplacementFilter",{enumerable:!0,get:function(){return h(a).default}});var o=e("./blur/BlurFilter");Object.defineProperty(r,"BlurFilter",{enumerable:!0,get:function(){return h(o).default}});var s=e("./blur/BlurXFilter");Object.defineProperty(r,"BlurXFilter",{enumerable:!0,get:function(){return h(s).default}});var u=e("./blur/BlurYFilter");Object.defineProperty(r,"BlurYFilter",{enumerable:!0,get:function(){return h(u).default}});var l=e("./colormatrix/ColorMatrixFilter");Object.defineProperty(r,"ColorMatrixFilter",{enumerable:!0,get:function(){return h(l).default}});var c=e("./alpha/AlphaFilter");function h(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(r,"AlphaFilter",{enumerable:!0,get:function(){return h(c).default}})},{"./alpha/AlphaFilter":143,"./blur/BlurFilter":144,"./blur/BlurXFilter":145,"./blur/BlurYFilter":146,"./colormatrix/ColorMatrixFilter":150,"./displacement/DisplacementFilter":151,"./fxaa/FXAAFilter":152,"./noise/NoiseFilter":154}],154:[function(e,t,r){"use strict";r.__esModule=!0;var a=function(){function i(e,t){for(var r=0;r 0.0) {\n color.rgb /= color.a;\n }\n\n color.r += diff;\n color.g += diff;\n color.b += diff;\n\n // Premultiply alpha again.\n color.rgb *= color.a;\n\n gl_FragColor = color;\n}\n"));return r.noise=e,r.seed=t,r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(n,i),a(n,[{key:"noise",get:function(){return this.uniforms.uNoise},set:function(e){this.uniforms.uNoise=e}},{key:"seed",get:function(){return this.uniforms.uSeed},set:function(e){this.uniforms.uSeed=e}}]),n}(i.Filter);r.default=n},{"../../core":65,path:8}],155:[function(e,t,r){"use strict";r.__esModule=!0;var i=function(){function i(e,t){for(var r=0;rt?1:this._height/t;e[9]=e[11]=e[13]=e[15]=this._topHeight*r,e[17]=e[19]=e[21]=e[23]=this._height-this._bottomHeight*r,e[25]=e[27]=e[29]=e[31]=this._height},s.prototype.updateVerticalVertices=function(){var e=this.vertices,t=this._leftWidth+this._rightWidth,r=this._width>t?1:this._width/t;e[2]=e[10]=e[18]=e[26]=this._leftWidth*r,e[4]=e[12]=e[20]=e[28]=this._width-this._rightWidth*r,e[6]=e[14]=e[22]=e[30]=this._width},s.prototype._renderCanvas=function(e){var t=e.context,r=this.worldTransform,i=e.resolution,n=16777215!==this.tint,a=this._texture;n&&this._cachedTint!==this.tint&&(this._cachedTint=this.tint,this._tintedTexture=w.default.getTintedTexture(this,this.tint));var o=n?this._tintedTexture:a.baseTexture.source;this._canvasUvs||(this._canvasUvs=[0,0,0,0,0,0,0,0]);var s=this.vertices,u=this._canvasUvs,l=n?0:a.frame.x,c=n?0:a.frame.y,h=l+a.frame.width,f=c+a.frame.height;u[0]=l,u[1]=l+this._leftWidth,u[2]=h-this._rightWidth,u[3]=h,u[4]=c,u[5]=c+this._topHeight,u[6]=f-this._bottomHeight,u[7]=f;for(var d=0;d<8;d++)u[d]*=a.baseTexture.resolution;t.globalAlpha=this.worldAlpha,e.setBlendMode(this.blendMode),e.roundPixels?t.setTransform(r.a*i,r.b*i,r.c*i,r.d*i,r.tx*i|0,r.ty*i|0):t.setTransform(r.a*i,r.b*i,r.c*i,r.d*i,r.tx*i,r.ty*i);for(var p=0;p<3;p++)for(var m=0;m<3;m++){var g=2*m+8*p,v=Math.max(1,u[m+1]-u[m]),b=Math.max(1,u[p+5]-u[p+4]),y=Math.max(1,s[10+g]-s[g]),_=Math.max(1,s[11+g]-s[1+g]);t.drawImage(o,u[m],u[p+4],v,b,s[g],s[1+g],y,_)}},s.prototype._refresh=function(){o.prototype._refresh.call(this);var e=this.uvs,t=this._texture;this._origWidth=t.orig.width,this._origHeight=t.orig.height;var r=1/this._origWidth,i=1/this._origHeight;e[0]=e[8]=e[16]=e[24]=0,e[1]=e[3]=e[5]=e[7]=0,e[6]=e[14]=e[22]=e[30]=1,e[25]=e[27]=e[29]=e[31]=1,e[2]=e[10]=e[18]=e[26]=r*this._leftWidth,e[4]=e[12]=e[20]=e[28]=1-r*this._rightWidth,e[9]=e[11]=e[13]=e[15]=i*this._topHeight,e[17]=e[19]=e[21]=e[23]=1-i*this._bottomHeight,this.updateHorizontalVertices(),this.updateVerticalVertices(),this.dirty++,this.multiplyUvs()},i(s,[{key:"width",get:function(){return this._width},set:function(e){this._width=e,this._refresh()}},{key:"height",get:function(){return this._height},set:function(e){this._height=e,this._refresh()}},{key:"leftWidth",get:function(){return this._leftWidth},set:function(e){this._leftWidth=e,this._refresh()}},{key:"rightWidth",get:function(){return this._rightWidth},set:function(e){this._rightWidth=e,this._refresh()}},{key:"topHeight",get:function(){return this._topHeight},set:function(e){this._topHeight=e,this._refresh()}},{key:"bottomHeight",get:function(){return this._bottomHeight},set:function(e){this._bottomHeight=e,this._refresh()}}]),s}(n.default);r.default=o},{"../core/sprites/canvas/CanvasTinter":104,"./Plane":168}],168:[function(e,t,r){"use strict";r.__esModule=!0;var i,n=e("./Mesh"),o=(i=n)&&i.__esModule?i:{default:i};var a=function(n){function a(e,t,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a);var i=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,n.call(this,e));return i._ready=!0,i.verticesX=t||10,i.verticesY=r||10,i.drawMode=o.default.DRAW_MODES.TRIANGLES,i.refresh(),i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(a,n),a.prototype._refresh=function(){for(var e=this._texture,t=this.verticesX*this.verticesY,r=[],i=[],n=[],a=this.verticesX-1,o=this.verticesY-1,s=e.width/a,u=e.height/o,l=0;l=o.length){if(!e.autoResize)break;o.push(this._generateOneMoreBuffer(e))}var p=o[f];p.uploadDynamic(t,h,d);var m=e._bufferUpdateIDs[f]||0;(c=c||p._updateID 0) var gc = undefined");else{if(!ba&&!ca)throw"Unknown runtime environment. Where are we?";e.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},"undefined"!=typeof arguments&&(e.arguments=arguments),"undefined"!=typeof console?(e.print||(e.print=function(e){console.log(e)}),e.printErr||(e.printErr=function(e){console.log(e)})):e.print||(e.print=function(){}),ca&&(e.load=importScripts),void 0===e.setWindowTitle&&(e.setWindowTitle=function(e){document.title=e})}function ha(e){eval.call(null,e)}for(k in!e.load&&e.read&&(e.load=function(t){ha(e.read(t))}),e.print||(e.print=function(){}),e.printErr||(e.printErr=e.print),e.arguments||(e.arguments=[]),e.thisProgram||(e.thisProgram="./this.program"),e.print=e.print,e.W=e.printErr,e.preRun=[],e.postRun=[],aa)aa.hasOwnProperty(k)&&(e[k]=aa[k]);var n={rb:function(e){ka=e},fb:function(){return ka},ua:function(){return m},ba:function(e){m=e},Ka:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:return"*"===e[e.length-1]?n.J:"i"===e[0]?(assert(0==(e=parseInt(e.substr(1)))%8),e/8):0}},eb:function(e){return Math.max(n.Ka(e),n.J)},ud:16,Qd:function(e,t){return"double"===t||"i64"===t?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},Ed:function(e,t,r){return r||"i64"!=e&&"double"!=e?e?Math.min(t||(e?n.eb(e):0),n.J):Math.min(t,8):8},L:function(t,r,i){return i&&i.length?(i.splice||(i=Array.prototype.slice.call(i)),i.splice(0,0,r),e["dynCall_"+t].apply(null,i)):e["dynCall_"+t].call(null,r)},Z:[],Xa:function(e){for(var t=0;t>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},Ua:8,J:4,vd:0};e.Runtime=n,n.addFunction=n.Xa,n.removeFunction=n.nb;var na=!1,oa,pa,ka,ra,sa;function assert(e,t){e||x("Assertion failed: "+t)}function qa(a){var b=e["_"+a];if(!b)try{b=eval("_"+a)}catch(e){}return assert(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)"),b}function wa(e,t,r){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":y[e>>0]=t;break;case"i16":z[e>>1]=t;break;case"i32":C[e>>2]=t;break;case"i64":pa=[t>>>0,(oa=t,1<=+xa(oa)?0>>0:~~+Aa((oa-+(~~oa>>>0))/4294967296)>>>0:0)],C[e>>2]=pa[0],C[e+4>>2]=pa[1];break;case"float":Ba[e>>2]=t;break;case"double":Ca[e>>3]=t;break;default:x("invalid type for setValue: "+r)}}function Da(e,t){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return y[e>>0];case"i16":return z[e>>1];case"i32":case"i64":return C[e>>2];case"float":return Ba[e>>2];case"double":return Ca[e>>3];default:x("invalid type for setValue: "+t)}return null}function D(e,t,r,i){var a,o;o="number"==typeof e?(a=!0,e):(a=!1,e.length);var s,u,l="string"==typeof t?t:null;if(r=4==r?i:[Ea,n.aa,n.Ra,n.R][void 0===r?2:r](Math.max(o,l?1:t.length)),a){for(assert(0==(3&(i=r))),e=r+(-4&o);i>2]=0;for(e=r+o;i>0]=0;return r}if("i8"===l)return e.subarray||e.slice?E.set(e,r):E.set(new Uint8Array(e),r),r;for(i=0;i>0],0!=i||r)&&(a++,!r||a!=r););if(r||(r=a),i="",n<128){for(;0>10,56320|1023&r)))):s+=String.fromCharCode(r)}}function Ka(e,t,r,i){if(!(0>6}else{if(o<=65535){if(i<=r+2)break;t[r++]=224|o>>12}else{if(o<=2097151){if(i<=r+3)break;t[r++]=240|o>>18}else{if(o<=67108863){if(i<=r+4)break;t[r++]=248|o>>24}else{if(i<=r+5)break;t[r++]=252|o>>30,t[r++]=128|o>>24&63}t[r++]=128|o>>18&63}t[r++]=128|o>>12&63}t[r++]=128|o>>6&63}t[r++]=128|63&o}}return t[r]=0,r-n}function La(e){for(var t=0,r=0;r"):a=n;e:for(;h>0];if(!r)return t;t+=String.fromCharCode(r)}},e.stringToAscii=function(e,t){return Ia(e,t,!1)},e.UTF8ArrayToString=Ja,e.UTF8ToString=function(e){return Ja(E,e)},e.stringToUTF8Array=Ka,e.stringToUTF8=function(e,t,r){return Ka(e,E,t,r)},e.lengthBytesUTF8=La,e.UTF16ToString=function(e){for(var t=0,r="";;){var i=z[e+2*t>>1];if(0==i)return r;++t,r+=String.fromCharCode(i)}},e.stringToUTF16=function(e,t,r){if(void 0===r&&(r=2147483647),r<2)return 0;var i=t;r=(r-=2)<2*e.length?r/2:e.length;for(var n=0;n>1]=e.charCodeAt(n),t+=2;return z[t>>1]=0,t-i},e.lengthBytesUTF16=function(e){return 2*e.length},e.UTF32ToString=function(e){for(var t=0,r="";;){var i=C[e+4*t>>2];if(0==i)return r;++t,65536<=i?(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i)):r+=String.fromCharCode(i)}},e.stringToUTF32=function(e,t,r){if(void 0===r&&(r=2147483647),r<4)return 0;var i=t;r=i+r-4;for(var n=0;n>2]=a,r<(t+=4)+4)break}return C[t>>2]=0,t-i},e.lengthBytesUTF32=function(e){for(var t=0,r=0;r>0]=e[r],r+=1}function ta(e,t){for(var r=0;r>0]=e[r]}function Ia(e,t,r){for(var i=0;i>0]=e.charCodeAt(i);r||(y[t>>0]=0)}e.addOnPreRun=fb,e.addOnInit=function(e){cb.unshift(e)},e.addOnPreMain=function(e){db.unshift(e)},e.addOnExit=function(e){H.unshift(e)},e.addOnPostRun=gb,e.intArrayFromString=hb,e.intArrayToString=function(e){for(var t=[],r=0;r>>16)*i+r*(t>>>16)<<16)|0}),Math.Jd=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.Ad=Math.clz32;var xa=Math.abs,Aa=Math.ceil,za=Math.floor,ya=Math.min,I=0,ib=null,jb=null;function kb(){I++,e.monitorRunDependencies&&e.monitorRunDependencies(I)}function lb(){if(I--,e.monitorRunDependencies&&e.monitorRunDependencies(I),0==I&&(null!==ib&&(clearInterval(ib),ib=null),jb)){var t=jb;jb=null,t()}}e.addRunDependency=kb,e.removeRunDependency=lb,e.preloadedImages={},e.preloadedAudios={},Ta=8,la=Ta+5888,cb.push(),D([124,0,0,0,98,7,0,0,124,0,0,0,111,7,0,0,164,0,0,0,124,7,0,0,16,0,0,0,0,0,0,0,164,0,0,0,157,7,0,0,24,0,0,0,0,0,0,0,164,0,0,0,227,7,0,0,24,0,0,0,0,0,0,0,164,0,0,0,191,7,0,0,56,0,0,0,0,0,0,0,164,0,0,0,5,8,0,0,40,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,40,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,88,0,0,0,1,0,0,0,5,0,0,0,3,0,0,0,4,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,114,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,1,0,0,236,1,0,0,236,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,239,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,231,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,115,40,37,117,41,58,32,65,115,115,101,114,116,105,111,110,32,102,97,105,108,117,114,101,58,32,34,37,115,34,10,0,109,95,115,105,122,101,32,60,61,32,109,95,99,97,112,97,99,105,116,121,0,46,47,99,114,110,95,100,101,99,111,109,112,46,104,0,109,105,110,95,110,101,119,95,99,97,112,97,99,105,116,121,32,60,32,40,48,120,55,70,70,70,48,48,48,48,85,32,47,32,101,108,101,109,101,110,116,95,115,105,122,101,41,0,110,101,119,95,99,97,112,97,99,105,116,121,32,38,38,32,40,110,101,119,95,99,97,112,97,99,105,116,121,32,62,32,109,95,99,97,112,97,99,105,116,121,41,0,110,117,109,95,99,111,100,101,115,91,99,93,0,115,111,114,116,101,100,95,112,111,115,32,60,32,116,111,116,97,108,95,117,115,101,100,95,115,121,109,115,0,112,67,111,100,101,115,105,122,101,115,91,115,121,109,95,105,110,100,101,120,93,32,61,61,32,99,111,100,101,115,105,122,101,0,116,32,60,32,40,49,85,32,60,60,32,116,97,98,108,101,95,98,105,116,115,41,0,109,95,108,111,111,107,117,112,91,116,93,32,61,61,32,99,85,73,78,84,51,50,95,77,65,88,0,99,114,110,100,95,109,97,108,108,111,99,58,32,115,105,122,101,32,116,111,111,32,98,105,103,0,99,114,110,100,95,109,97,108,108,111,99,58,32,111,117,116,32,111,102,32,109,101,109,111,114,121,0,40,40,117,105,110,116,51,50,41,112,95,110,101,119,32,38,32,40,67,82,78,68,95,77,73,78,95,65,76,76,79,67,95,65,76,73,71,78,77,69,78,84,32,45,32,49,41,41,32,61,61,32,48,0,99,114,110,100,95,114,101,97,108,108,111,99,58,32,98,97,100,32,112,116,114,0,99,114,110,100,95,102,114,101,101,58,32,98,97,100,32,112,116,114,0,102,97,108,115,101,0,40,116,111,116,97,108,95,115,121,109,115,32,62,61,32,49,41,32,38,38,32,40,116,111,116,97,108,95,115,121,109,115,32,60,61,32,112,114,101,102,105,120,95,99,111,100,105,110,103,58,58,99,77,97,120,83,117,112,112,111,114,116,101,100,83,121,109,115,41,0,17,18,19,20,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15,16,48,0,110,117,109,95,98,105,116,115,32,60,61,32,51,50,85,0,109,95,98,105,116,95,99,111,117,110,116,32,60,61,32,99,66,105,116,66,117,102,83,105,122,101,0,116,32,33,61,32,99,85,73,78,84,51,50,95,77,65,88,0,109,111,100,101,108,46,109,95,99,111,100,101,95,115,105,122,101,115,91,115,121,109,93,32,61,61,32,108,101,110,0,0,2,3,1,0,2,3,4,5,6,7,1,40,108,101,110,32,62,61,32,49,41,32,38,38,32,40,108,101,110,32,60,61,32,99,77,97,120,69,120,112,101,99,116,101,100,67,111,100,101,83,105,122,101,41,0,105,32,60,32,109,95,115,105,122,101,0,110,101,120,116,95,108,101,118,101,108,95,111,102,115,32,62,32,99,117,114,95,108,101,118,101,108,95,111,102,115,0,1,2,2,3,3,3,3,4,0,0,0,0,0,0,1,1,0,1,0,1,0,0,1,2,1,2,0,0,0,1,0,2,1,0,2,0,0,1,2,3,110,117,109,32,38,38,32,40,110,117,109,32,61,61,32,126,110,117,109,95,99,104,101,99,107,41,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",4,n.Ua);var mb=n.ja(D(12,"i8",2),8);function ob(t){return e.___errno_location&&(C[e.___errno_location()>>2]=t),t}assert(0==mb%8),e._i64Subtract=nb;var J={I:1,F:2,ed:3,bc:4,H:5,Aa:6,vb:7,zc:8,ea:9,Jb:10,va:11,qd:11,Ta:12,da:13,Vb:14,Lc:15,fa:16,wa:17,rd:18,ha:19,ya:20,P:21,q:22,uc:23,Sa:24,Q:25,nd:26,Wb:27,Hc:28,ia:29,bd:30,nc:31,Vc:32,Sb:33,Zc:34,Dc:42,Zb:43,Kb:44,ec:45,fc:46,gc:47,mc:48,od:49,xc:50,dc:51,Pb:35,Ac:37,Bb:52,Eb:53,sd:54,vc:55,Fb:56,Gb:57,Qb:35,Hb:59,Jc:60,yc:61,kd:62,Ic:63,Ec:64,Fc:65,ad:66,Bc:67,yb:68,gd:69,Lb:70,Wc:71,pc:72,Tb:73,Db:74,Qc:76,Cb:77,$c:78,hc:79,ic:80,lc:81,kc:82,jc:83,Kc:38,za:39,qc:36,ga:40,Rc:95,Uc:96,Ob:104,wc:105,zb:97,Yc:91,Oc:88,Gc:92,cd:108,Nb:111,wb:98,Mb:103,tc:101,rc:100,ld:110,Xb:112,Yb:113,ac:115,Ab:114,Rb:89,oc:90,Xc:93,dd:94,xb:99,sc:102,cc:106,Mc:107,md:109,pd:87,Ub:122,hd:116,Pc:95,Cc:123,$b:84,Sc:75,Ib:125,Nc:131,Tc:130,jd:86};function pb(e,t){H.push(function(){n.L("vi",e,[t])}),pb.level=H.length}function tb(){return!!tb.p}e._memset=qb,e._bitshift64Lshr=rb,e._bitshift64Shl=sb;var ub=[],vb={};function wb(e,t){wb.p||(wb.p={}),e in wb.p||(n.L("v",t),wb.p[e]=1)}var xb={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function yb(e,t){for(var r=0,i=e.length-1;0<=i;i--){var n=e[i];"."===n?e.splice(i,1):".."===n?(e.splice(i,1),r++):r&&(e.splice(i,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}function zb(e){var t="/"===e.charAt(0),r="/"===e.substr(-1);return(e=yb(e.split("/").filter(function(e){return!!e}),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e}function Ab(e){var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1);return e=t[0],t=t[1],e||t?(t&&(t=t.substr(0,t.length-1)),e+t):"."}function Bb(e){if("/"===e)return"/";var t=e.lastIndexOf("/");return-1===t?e:e.substr(t+1)}function Cb(){return zb(Array.prototype.slice.call(arguments,0).join("/"))}function K(e,t){return zb(e+"/"+t)}function Db(){for(var e="",t=!1,r=arguments.length-1;-1<=r&&!t;r--){if("string"!=typeof(t=0<=r?arguments[r]:"/"))throw new TypeError("Arguments to path.resolve must be strings");if(!t)return"";e=t+"/"+e,t="/"===t.charAt(0)}return(t?"/":"")+(e=yb(e.split("/").filter(function(e){return!!e}),!t).join("/"))||"."}var Eb=[];function Fb(e,t){Eb[e]={input:[],output:[],N:t},Gb(e,Hb)}var Hb={open:function(e){var t=Eb[e.g.rdev];if(!t)throw new L(J.ha);e.tty=t,e.seekable=!1},close:function(e){e.tty.N.flush(e.tty)},flush:function(e){e.tty.N.flush(e.tty)},read:function(e,t,r,i){if(!e.tty||!e.tty.N.La)throw new L(J.Aa);for(var n=0,a=0;ae.e.length&&(e.e=M.cb(e),e.o=e.e.length),!e.e||e.e.subarray){var r=e.e?e.e.buffer.byteLength:0;t<=r||(t=Math.max(t,r*(r<1048576?2:1.125)|0),0!=r&&(t=Math.max(t,256)),r=e.e,e.e=new Uint8Array(t),0t)e.e.length=t;else for(;e.e.length=e.g.o)return 0;if(assert(0<=(e=Math.min(e.g.o-n,i))),8>1)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}return t.mode},B:function(e){for(var t=[];e.parent!==e;)t.push(e.name),e=e.parent;return t.push(e.A.pa.root),t.reverse(),Cb.apply(null,t)},Ha:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},$a:function(e){if((e&=-32769)in P.Ha)return P.Ha[e];throw new L(J.q)},k:{D:function(e){var t;e=P.B(e);try{t=fs.lstatSync(e)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}return P.$&&!t.K&&(t.K=4096),P.$&&!t.blocks&&(t.blocks=(t.size+t.K-1)/t.K|0),{dev:t.dev,ino:t.ino,mode:t.mode,nlink:t.nlink,uid:t.uid,gid:t.gid,rdev:t.rdev,size:t.size,atime:t.atime,mtime:t.mtime,ctime:t.ctime,K:t.K,blocks:t.blocks}},u:function(e,t){var r=P.B(e);try{void 0!==t.mode&&(fs.chmodSync(r,t.mode),e.mode=t.mode),void 0!==t.size&&fs.truncateSync(r,t.size)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},lookup:function(e,t){var r=K(P.B(e),t);r=P.Ja(r);return P.createNode(e,t,r)},T:function(e,t,r,i){e=P.createNode(e,t,r,i),t=P.B(e);try{N(e.mode)?fs.mkdirSync(t,e.mode):fs.writeFileSync(t,"",{mode:e.mode})}catch(e){if(!e.code)throw e;throw new L(J[e.code])}return e},rename:function(e,t,r){e=P.B(e),t=K(P.B(t),r);try{fs.renameSync(e,t)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},unlink:function(e,t){var r=K(P.B(e),t);try{fs.unlinkSync(r)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},rmdir:function(e,t){var r=K(P.B(e),t);try{fs.rmdirSync(r)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},readdir:function(e){e=P.B(e);try{return fs.readdirSync(e)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},symlink:function(e,t,r){e=K(P.B(e),t);try{fs.symlinkSync(r,e)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},readlink:function(e){var t=P.B(e);try{return t=fs.readlinkSync(t),t=Ob.relative(Ob.resolve(e.A.pa.root),t)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}}},n:{open:function(e){var t=P.B(e.g);try{32768==(61440&e.g.mode)&&(e.V=fs.openSync(t,P.$a(e.flags)))}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},close:function(e){try{32768==(61440&e.g.mode)&&e.V&&fs.closeSync(e.V)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},read:function(e,t,r,i,n){if(0===i)return 0;var a,o=new Buffer(i);try{a=fs.readSync(e.V,o,0,i,n)}catch(e){throw new L(J[e.code])}if(0>>0)%Q.length}function Xb(e){var t=Wb(e.parent.id,e.name);e.M=Q[t],Q[t]=e}function Nb(e,t){var r;if(r=(r=Yb(e,"x"))?r:e.k.lookup?0:J.da)throw new L(r,e);for(r=Q[Wb(e.id,t)];r;r=r.M){var i=r.name;if(r.parent.id===e.id&&i===t)return r}return e.k.lookup(e,t)}function Lb(e,t,r,i){return Zb||((Zb=function(e,t,r,i){e||(e=this),this.parent=e,this.A=e.A,this.U=null,this.id=Sb++,this.name=t,this.mode=r,this.k={},this.n={},this.rdev=i}).prototype={},Object.defineProperties(Zb.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}},kb:{get:function(){return N(this.mode)}},jb:{get:function(){return 8192==(61440&this.mode)}}})),Xb(e=new Zb(e,t,r,i)),e}function N(e){return 16384==(61440&e)}var $b={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function Yb(e,t){return Tb?0:(-1===t.indexOf("r")||292&e.mode)&&(-1===t.indexOf("w")||146&e.mode)&&(-1===t.indexOf("x")||73&e.mode)?0:J.da}function ac(e,t){try{return Nb(e,t),J.wa}catch(e){}return Yb(e,"wx")}function bc(){for(var e=0;e<=4096;e++)if(!Rb[e])return e;throw new L(J.Sa)}function cc(e){dc||((dc=function(){}).prototype={},Object.defineProperties(dc.prototype,{object:{get:function(){return this.g},set:function(e){this.g=e}},Ld:{get:function(){return 1!=(2097155&this.flags)}},Md:{get:function(){return 0!=(2097155&this.flags)}},Kd:{get:function(){return 1024&this.flags}}}));var t,r=new dc;for(t in e)r[t]=e[t];return e=r,r=bc(),e.fd=r,Rb[r]=e}var Kb={open:function(e){e.n=Qb[e.g.rdev].n,e.n.open&&e.n.open(e)},G:function(){throw new L(J.ia)}},qc;function Gb(e,t){Qb[e]={n:t}}function ec(e,t){var r,i="/"===t,n=!t;if(i&&Pb)throw new L(J.fa);if(!i&&!n){if(t=(r=S(t,{Ia:!1})).path,(r=r.g).U)throw new L(J.fa);if(!N(r.mode))throw new L(J.ya)}n={type:e,pa:{},Oa:t,lb:[]};var a=e.A(n);(a.A=n).root=a,i?Pb=a:r&&(r.U=n,r.A&&r.A.lb.push(n))}function fc(e,t,r){var i=S(e,{parent:!0}).g;if(!(e=Bb(e))||"."===e||".."===e)throw new L(J.q);var n=ac(i,e);if(n)throw new L(n);if(!i.k.T)throw new L(J.I);return i.k.T(i,e,t,r)}function gc(e,t){return t=4095&(void 0!==t?t:438),fc(e,t|=32768,0)}function V(e,t){return t=1023&(void 0!==t?t:511),fc(e,t|=16384,0)}function hc(e,t,r){return void 0===r&&(r=t,t=438),fc(e,8192|t,r)}function ic(e,t){if(!Db(e))throw new L(J.F);var r=S(t,{parent:!0}).g;if(!r)throw new L(J.F);var i=Bb(t),n=ac(r,i);if(n)throw new L(n);if(!r.k.symlink)throw new L(J.I);return r.k.symlink(r,i,e)}function Vb(e){if(!(e=S(e).g))throw new L(J.F);if(!e.k.readlink)throw new L(J.q);return Db(T(e.parent),e.k.readlink(e))}function jc(e,t){var r;if(!(r="string"==typeof e?S(e,{la:!0}).g:e).k.u)throw new L(J.I);r.k.u(r,{mode:4095&t|-4096&r.mode,timestamp:Date.now()})}function kc(t,r){var i,n,a;if(""===t)throw new L(J.F);if("string"==typeof r){if(void 0===(n=$b[r]))throw Error("Unknown file open mode: "+r)}else n=r;if(i=64&(r=n)?4095&(void 0===i?438:i)|32768:0,"object"==typeof t)a=t;else{t=zb(t);try{a=S(t,{la:!(131072&r)}).g}catch(e){}}if(n=!1,64&r)if(a){if(128&r)throw new L(J.wa)}else a=fc(t,i,0),n=!0;if(!a)throw new L(J.F);if(8192==(61440&a.mode)&&(r&=-513),65536&r&&!N(a.mode))throw new L(J.ya);if(!n&&(i=a?40960==(61440&a.mode)?J.ga:N(a.mode)&&(0!=(2097155&r)||512&r)?J.P:(i=["r","w","rw"][3&r],512&r&&(i+="w"),Yb(a,i)):J.F))throw new L(i);if(512&r){var o;if(!(o="string"==typeof(i=a)?S(i,{la:!0}).g:i).k.u)throw new L(J.I);if(N(o.mode))throw new L(J.P);if(32768!=(61440&o.mode))throw new L(J.q);if(i=Yb(o,"w"))throw new L(i);o.k.u(o,{size:0,timestamp:Date.now()})}r&=-641,(a=cc({g:a,path:T(a),flags:r,seekable:!0,position:0,n:a.n,tb:[],error:!1})).n.open&&a.n.open(a),!e.logReadFiles||1&r||(lc||(lc={}),t in lc||(lc[t]=1,e.printErr("read file: "+t)));try{R.onOpenFile&&(o=0,1!=(2097155&r)&&(o|=1),0!=(2097155&r)&&(o|=2),R.onOpenFile(t,o))}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+t+"', flags) threw an exception: "+e.message)}return a}function mc(e){e.na&&(e.na=null);try{e.n.close&&e.n.close(e)}catch(e){throw e}finally{Rb[e.fd]=null}}function nc(e,t,r){if(!e.seekable||!e.n.G)throw new L(J.ia);e.position=e.n.G(e,t,r),e.tb=[]}function oc(e,t,r,i,n,a){if(i<0||n<0)throw new L(J.q);if(0==(2097155&e.flags))throw new L(J.ea);if(N(e.g.mode))throw new L(J.P);if(!e.n.write)throw new L(J.q);1024&e.flags&&nc(e,0,2);var o=!0;if(void 0===n)n=e.position,o=!1;else if(!e.seekable)throw new L(J.ia);t=e.n.write(e,t,r,i,n,a),o||(e.position+=t);try{e.path&&R.onWriteToFile&&R.onWriteToFile(e.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return t}function pc(){L||((L=function(e,t){this.g=t,this.qb=function(e){for(var t in this.S=e,J)if(J[t]===e){this.code=t;break}},this.qb(e),this.message=xb[e]}).prototype=Error(),L.prototype.constructor=L,[J.F].forEach(function(e){Mb[e]=new L(e),Mb[e].stack=""}))}function rc(e,t){var r=0;return e&&(r|=365),t&&(r|=146),r}function sc(e,t,r,i){return gc(e=K("string"==typeof e?e:T(e),t),rc(r,i))}function tc(e,t,r,i,n,a){if(n=gc(e=t?K("string"==typeof e?e:T(e),t):e,i=rc(i,n)),r){if("string"==typeof r){e=Array(r.length),t=0;for(var o=r.length;t>2]}function xc(){var e;if(e=X(),!(e=Rb[e]))throw new L(J.ea);return e}var yc={};function Ga(e){Ga.p||(r=Qa(r),Ga.p=!0,assert(n.R),Ga.bb=n.R,n.R=function(){x("cannot dynamically allocate, sbrk now has control")});var t=r;return 0==e||Ga.bb(e)?t:4294967295}e._i64Add=zc;var Ac=1;function Cc(e,t){if(Dc=e,Ec=t,!Fc)return 1;if(0==e)Y=function(){setTimeout(Gc,t)},Hc="timeout";else if(1==e)Y=function(){Ic(Gc)},Hc="rAF";else if(2==e){if(!window.setImmediate){var r=[];window.addEventListener("message",function(e){e.source===window&&"__emcc"===e.data&&(e.stopPropagation(),r.shift()())},!0),window.setImmediate=function(e){r.push(e),window.postMessage("__emcc","*")}}Y=function(){window.setImmediate(Gc)},Hc="immediate"}return 0}function Jc(o,t,r,s,i){e.noExitRuntime=!0,assert(!Fc,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Fc=o,Kc=s;var u=Lc;if(Gc=function(){if(!na)if(0>r-6&63;r=r-6,e=e+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[n]}2==r?(e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(3&t)<<4],e+="=="):4==r&&(e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(15&t)<<2],e+="="),l.src="data:audio/x-"+o.substr(-3)+";base64,"+e,s(l)}},l.src=n,ad(function(){s(l)})}});var r=e.canvas;r&&(r.sa=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.Fa=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.Fa=r.Fa.bind(document),document.addEventListener("pointerlockchange",t,!1),document.addEventListener("mozpointerlockchange",t,!1),document.addEventListener("webkitpointerlockchange",t,!1),document.addEventListener("mspointerlockchange",t,!1),e.elementPointerLock&&r.addEventListener("click",function(e){!Tc&&r.sa&&(r.sa(),e.preventDefault())},!1))}}function bd(t,r,i,n){if(r&&e.ka&&t==e.canvas)return e.ka;var a,o;if(r){if(o={antialias:!1,alpha:!1},n)for(var s in n)o[s]=n[s];(o=GL.createContext(t,o))&&(a=GL.getContext(o).td),t.style.backgroundColor="black"}else a=t.getContext("2d");return a?(i&&(r||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),e.ka=a,r&&GL.Od(o),e.Td=r,Uc.forEach(function(e){e()}),Vc()),a):null}var cd=!1,dd=void 0,ed=void 0;function fd(t,r,i){function n(){Sc=!1;var t=a.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===t?(a.Da=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},a.Da=a.Da.bind(document),dd&&a.sa(),Sc=!0,ed&&gd()):(t.parentNode.insertBefore(a,t),t.parentNode.removeChild(t),ed&&hd()),e.onFullScreen&&e.onFullScreen(Sc),id(a)}void 0===(dd=t)&&(dd=!0),void 0===(ed=r)&&(ed=!1),void 0===(jd=i)&&(jd=null);var a=e.canvas;cd||(cd=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var o=document.createElement("div");a.parentNode.insertBefore(o,a),o.appendChild(a),o.p=o.requestFullScreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),i?o.p({Ud:i}):o.p()}var kd=0;function ld(e){var t=Date.now();if(0===kd)kd=t+1e3/60;else for(;kd<=t+2;)kd+=1e3/60;t=Math.max(kd-t,0),setTimeout(e,t)}function Ic(e){"undefined"==typeof window?ld(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||ld),window.requestAnimationFrame(e))}function ad(t){e.noExitRuntime=!0,setTimeout(function(){na||t()},1e4)}function $c(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]}function md(e,t,r){var i=new XMLHttpRequest;i.open("GET",e,!0),i.responseType="arraybuffer",i.onload=function(){200==i.status||0==i.status&&i.response?t(i.response):r()},i.onerror=r,i.send(null)}function nd(t,r,e){md(t,function(e){assert(e,'Loading data file "'+t+'" failed (no arrayBuffer).'),r(new Uint8Array(e)),lb()},function(){if(!e)throw'Loading data file "'+t+'" failed.';e()}),kb()}var od=[],Wc,Xc,Yc,Zc,jd;function pd(){var t=e.canvas;od.forEach(function(e){e(t.width,t.height)})}function gd(){if("undefined"!=typeof SDL){var e=Sa[SDL.screen+0*n.J>>2];C[SDL.screen+0*n.J>>2]=8388608|e}pd()}function hd(){if("undefined"!=typeof SDL){var e=Sa[SDL.screen+0*n.J>>2];C[SDL.screen+0*n.J>>2]=-8388609&e}pd()}function id(t,r,i){r&&i?(t.ub=r,t.hb=i):(r=t.ub,i=t.hb);var n=r,a=i;if(e.forcedAspectRatio&&0this.length-1||e<0)){var t=e%this.chunkSize;return this.gb(e/this.chunkSize|0)[t]}},o.prototype.pb=function(e){this.gb=e},o.prototype.Ca=function(){var e=new XMLHttpRequest;if(e.open("HEAD",u,!1),e.send(null),!(200<=e.status&&e.status<300||304===e.status))throw Error("Couldn't load "+u+". Status: "+e.status);var t,a=Number(e.getResponseHeader("Content-length")),o=1048576;(t=e.getResponseHeader("Accept-Ranges"))&&"bytes"===t||(o=a);var s=this;s.pb(function(e){var t=e*o,r=(e+1)*o-1;r=Math.min(r,a-1);if(void 0===s.Y[e]){var i=s.Y;if(r=(e=e.g.e).length)return 0;if(assert(0<=(i=Math.min(e.length-n,i))),e.slice)for(var a=0;a>2]=0;case 21520:return r.tty?-J.q:-J.Q;case 21531:if(n=X(),!r.n.ib)throw new L(J.Q);return r.n.ib(r,i,n);default:x("bad ioctl syscall "+i)}}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},___syscall6:function(e,t){wc=t;try{return mc(xc()),0}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},_emscripten_set_main_loop_timing:Cc,__ZSt18uncaught_exceptionv:tb,___setErrNo:ob,_sbrk:Ga,___cxa_begin_catch:function(e){var t;tb.p--,ub.push(e);e:{if(e&&!vb[e])for(t in vb)if(vb[t].wd===e)break e;t=e}return t&&vb[t].Sd++,e},_emscripten_memcpy_big:function(e,t,r){return E.set(E.subarray(t,t+r),e),e},_sysconf:function(e){switch(e){case 30:return 4096;case 85:return F/4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ob(J.q),-1},_pthread_getspecific:function(e){return yc[e]||0},_pthread_self:function(){return 0},_pthread_once:wb,_pthread_key_create:function(e){return 0==e?J.q:(C[e>>2]=Ac,yc[Ac]=0,Ac++,0)},___unlock:function(){},_emscripten_set_main_loop:Jc,_pthread_setspecific:function(e,t){return e in yc?(yc[e]=t,0):J.q},___lock:function(){},_abort:function(){e.abort()},_pthread_cleanup_push:pb,_time:function(e){var t=Date.now()/1e3|0;return e&&(C[e>>2]=t),t},___syscall140:function(e,t){wc=t;try{var r=xc(),i=X(),n=X(),a=X(),o=X();return assert(0===i),nc(r,n,o),C[a>>2]=r.position,r.na&&0===n&&0===o&&(r.na=null),0}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},___syscall146:function(e,t){wc=t;try{var r,i=xc(),n=X();e:{for(var a=X(),o=0,s=0;s>2],C[n+(8*s+4)>>2],void 0);if(u<0){r=-1;break e}o+=u}r=o}return r}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},STACKTOP:m,STACK_MAX:Va,tempDoublePtr:mb,ABORT:na,cttz_i8:qd};var Z=function(e,t,r){"use asm";var i=e.Int8Array;var n=e.Int16Array;var a=e.Int32Array;var o=e.Uint8Array;var s=e.Uint16Array;var u=e.Uint32Array;var l=e.Float32Array;var c=e.Float64Array;var de=new i(r);var $=new n(r);var pe=new a(r);var me=new o(r);var ge=new s(r);var h=new u(r);var f=new l(r);var ee=new c(r);var d=e.byteLength;var ve=t.STACKTOP|0;var p=t.STACK_MAX|0;var te=t.tempDoublePtr|0;var m=t.ABORT|0;var g=t.cttz_i8|0;var v=0;var b=0;var y=0;var _=0;var w=e.NaN,x=e.Infinity;var k=0,T=0,S=0,E=0,M=0.0,P=0,C=0,A=0,O=0.0;var re=0;var I=0;var R=0;var D=0;var j=0;var L=0;var z=0;var F=0;var B=0;var N=0;var U=e.Math.floor;var X=e.Math.abs;var q=e.Math.sqrt;var H=e.Math.pow;var W=e.Math.cos;var G=e.Math.sin;var V=e.Math.tan;var Y=e.Math.acos;var J=e.Math.asin;var K=e.Math.atan;var Z=e.Math.atan2;var Q=e.Math.exp;var ie=e.Math.log;var ne=e.Math.ceil;var be=e.Math.imul;var ae=e.Math.min;var oe=e.Math.clz32;var se=t.abort;var ue=t.assert;var le=t.invoke_iiii;var ce=t.invoke_viiiii;var he=t.invoke_vi;var fe=t.invoke_ii;var ye=t.invoke_viii;var _e=t.invoke_v;var we=t.invoke_viiiiii;var xe=t.invoke_iiiiii;var ke=t.invoke_viiii;var Te=t._pthread_cleanup_pop;var Se=t.___syscall54;var Ee=t.___syscall6;var Me=t._emscripten_set_main_loop_timing;var Pe=t.__ZSt18uncaught_exceptionv;var Ce=t.___setErrNo;var Ae=t._sbrk;var Oe=t.___cxa_begin_catch;var Ie=t._emscripten_memcpy_big;var Re=t._sysconf;var De=t._pthread_getspecific;var je=t._pthread_self;var Le=t._pthread_once;var ze=t._pthread_key_create;var Fe=t.___unlock;var Be=t._emscripten_set_main_loop;var Ne=t._pthread_setspecific;var Ue=t.___lock;var Xe=t._abort;var qe=t._pthread_cleanup_push;var He=t._time;var We=t.___syscall140;var Ge=t.___syscall146;var Ve=0.0;function Ye(e){if(d(e)&16777215||d(e)<=16777215||d(e)>2147483648)return false;de=new i(e);$=new n(e);pe=new a(e);me=new o(e);ge=new s(e);h=new u(e);f=new l(e);ee=new c(e);r=e;return true}function Je(e){e=e|0;var t=0;t=ve;ve=ve+e|0;ve=ve+15&-16;return t|0}function Ke(){return ve|0}function Ze(e){e=e|0;ve=e}function Qe(e,t){e=e|0;t=t|0;ve=e;p=t}function $e(e,t){e=e|0;t=t|0;if(!v){v=e;b=t}}function et(e){e=e|0;de[te>>0]=de[e>>0];de[te+1>>0]=de[e+1>>0];de[te+2>>0]=de[e+2>>0];de[te+3>>0]=de[e+3>>0]}function tt(e){e=e|0;de[te>>0]=de[e>>0];de[te+1>>0]=de[e+1>>0];de[te+2>>0]=de[e+2>>0];de[te+3>>0]=de[e+3>>0];de[te+4>>0]=de[e+4>>0];de[te+5>>0]=de[e+5>>0];de[te+6>>0]=de[e+6>>0];de[te+7>>0]=de[e+7>>0]}function rt(e){e=e|0;re=e}function it(){return re|0}function nt(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0;m=ve;ve=ve+608|0;f=m+88|0;h=m+72|0;u=m+64|0;s=m+48|0;o=m+24|0;a=m;c=m+96|0;d=m+92|0;l=e+4|0;p=e+8|0;if((pe[l>>2]|0)>>>0>(pe[p>>2]|0)>>>0){pe[a>>2]=1154;pe[a+4>>2]=2120;pe[a+8>>2]=1133;_r(c,1100,a)|0;yr(c,m+16|0)|0}if((2147418112/(i>>>0)|0)>>>0<=t>>>0){pe[o>>2]=1154;pe[o+4>>2]=2121;pe[o+8>>2]=1169;_r(c,1100,o)|0;yr(c,m+40|0)|0}o=pe[p>>2]|0;if(o>>>0>=t>>>0){p=1;ve=m;return p|0}do{if(r){if(t){a=t+-1|0;if(!(a&t)){a=11;break}else t=a}else t=-1;t=t>>>16|t;t=t>>>8|t;t=t>>>4|t;t=t>>>2|t;t=(t>>>1|t)+1|0;a=10}else a=10}while(0);if((a|0)==10)if(!t){t=0;a=12}else a=11;if((a|0)==11)if(t>>>0<=o>>>0)a=12;if((a|0)==12){pe[s>>2]=1154;pe[s+4>>2]=2130;pe[s+8>>2]=1217;_r(c,1100,s)|0;yr(c,u)|0}r=be(t,i)|0;do{if(!n){a=at(pe[e>>2]|0,r,d,1)|0;if(!a){p=0;ve=m;return p|0}else{pe[e>>2]=a;break}}else{o=ot(r,d)|0;if(!o){p=0;ve=m;return p|0}Ai[n&0](o,pe[e>>2]|0,pe[l>>2]|0);a=pe[e>>2]|0;do{if(a)if(!(a&7)){Ri[pe[104>>2]&1](a,0,0,1,pe[27]|0)|0;break}else{pe[h>>2]=1154;pe[h+4>>2]=2499;pe[h+8>>2]=1516;_r(c,1100,h)|0;yr(c,f)|0;break}}while(0);pe[e>>2]=o}}while(0);a=pe[d>>2]|0;if(a>>>0>r>>>0)t=(a>>>0)/(i>>>0)|0;pe[p>>2]=t;p=1;ve=m;return p|0}function at(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0;l=ve;ve=ve+592|0;u=l+48|0;a=l+24|0;n=l;s=l+72|0;o=l+68|0;if(e&7){pe[n>>2]=1154;pe[n+4>>2]=2499;pe[n+8>>2]=1494;_r(s,1100,n)|0;yr(s,l+16|0)|0;u=0;ve=l;return u|0}if(t>>>0>2147418112){pe[a>>2]=1154;pe[a+4>>2]=2499;pe[a+8>>2]=1387;_r(s,1100,a)|0;yr(s,l+40|0)|0;u=0;ve=l;return u|0}pe[o>>2]=t;i=Ri[pe[104>>2]&1](e,t,o,i,pe[27]|0)|0;if(r)pe[r>>2]=pe[o>>2];if(!(i&7)){u=i;ve=l;return u|0}pe[u>>2]=1154;pe[u+4>>2]=2551;pe[u+8>>2]=1440;_r(s,1100,u)|0;yr(s,l+64|0)|0;u=i;ve=l;return u|0}function ot(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0;u=ve;ve=ve+592|0;o=u+48|0;s=u+24|0;r=u;a=u+72|0;n=u+68|0;i=e+3&-4;i=(i|0)!=0?i:4;if(i>>>0>2147418112){pe[r>>2]=1154;pe[r+4>>2]=2499;pe[r+8>>2]=1387;_r(a,1100,r)|0;yr(a,u+16|0)|0;s=0;ve=u;return s|0}pe[n>>2]=i;r=Ri[pe[104>>2]&1](0,i,n,1,pe[27]|0)|0;e=pe[n>>2]|0;if(t)pe[t>>2]=e;if((r|0)==0|e>>>0>>0){pe[s>>2]=1154;pe[s+4>>2]=2499;pe[s+8>>2]=1413;_r(a,1100,s)|0;yr(a,u+40|0)|0;s=0;ve=u;return s|0}if(!(r&7)){s=r;ve=u;return s|0}pe[o>>2]=1154;pe[o+4>>2]=2526;pe[o+8>>2]=1440;_r(a,1100,o)|0;yr(a,u+64|0)|0;s=r;ve=u;return s|0}function st(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0;F=ve;ve=ve+960|0;j=F+232|0;D=F+216|0;R=F+208|0;I=F+192|0;O=F+184|0;A=F+168|0;C=F+160|0;P=F+144|0;S=F+136|0;T=F+120|0;k=F+112|0;x=F+96|0;y=F+88|0;b=F+72|0;v=F+64|0;g=F+48|0;h=F+40|0;d=F+24|0;f=F+16|0;c=F;M=F+440|0;L=F+376|0;z=F+304|0;m=F+236|0;if((t|0)==0|i>>>0>11){e=0;ve=F;return e|0}pe[e>>2]=t;n=z;a=n+68|0;do{pe[n>>2]=0;n=n+4|0}while((n|0)<(a|0));a=0;do{n=de[r+a>>0]|0;if(n<<24>>24){E=z+((n&255)<<2)|0;pe[E>>2]=(pe[E>>2]|0)+1}a=a+1|0}while((a|0)!=(t|0));a=0;l=1;o=0;s=-1;u=0;while(1){n=pe[z+(l<<2)>>2]|0;if(!n)pe[e+28+(l+-1<<2)>>2]=0;else{E=l+-1|0;pe[L+(E<<2)>>2]=a;a=n+a|0;w=16-l|0;pe[e+28+(E<<2)>>2]=(a+-1<>2]=u;pe[m+(l<<2)>>2]=u;o=o>>>0>l>>>0?o:l;s=s>>>0>>0?s:l;u=n+u|0}l=l+1|0;if((l|0)==17){E=o;break}else a=a<<1}pe[e+4>>2]=u;a=e+172|0;do{if(u>>>0>(pe[a>>2]|0)>>>0){pe[a>>2]=u;if(u){n=u+-1|0;if(n&u)p=14}else{n=-1;p=14}if((p|0)==14){w=n>>>16|n;w=w>>>8|w;w=w>>>4|w;w=w>>>2|w;w=(w>>>1|w)+1|0;pe[a>>2]=w>>>0>t>>>0?t:w}o=e+176|0;n=pe[o>>2]|0;do{if(n){w=pe[n+-4>>2]|0;n=n+-8|0;if(!((w|0)!=0?(w|0)==(~pe[n>>2]|0):0)){pe[c>>2]=1154;pe[c+4>>2]=644;pe[c+8>>2]=1863;_r(M,1100,c)|0;yr(M,f)|0}if(!(n&7)){Ri[pe[104>>2]&1](n,0,0,1,pe[27]|0)|0;break}else{pe[d>>2]=1154;pe[d+4>>2]=2499;pe[d+8>>2]=1516;_r(M,1100,d)|0;yr(M,h)|0;break}}}while(0);a=pe[a>>2]|0;a=(a|0)!=0?a:1;n=ot((a<<1)+8|0,0)|0;if(!n){pe[o>>2]=0;n=0;break}else{pe[n+4>>2]=a;pe[n>>2]=~a;pe[o>>2]=n+8;p=25;break}}else p=25}while(0);e:do{if((p|0)==25){w=e+24|0;de[w>>0]=s;de[e+25>>0]=E;a=e+176|0;o=0;do{_=de[r+o>>0]|0;n=_&255;if(_<<24>>24){if(!(pe[z+(n<<2)>>2]|0)){pe[g>>2]=1154;pe[g+4>>2]=2273;pe[g+8>>2]=1261;_r(M,1100,g)|0;yr(M,v)|0}_=m+(n<<2)|0;n=pe[_>>2]|0;pe[_>>2]=n+1;if(n>>>0>=u>>>0){pe[b>>2]=1154;pe[b+4>>2]=2277;pe[b+8>>2]=1274;_r(M,1100,b)|0;yr(M,y)|0}$[(pe[a>>2]|0)+(n<<1)>>1]=o}o=o+1|0}while((o|0)!=(t|0));n=de[w>>0]|0;y=(n&255)>>>0>>0?i:0;_=e+8|0;pe[_>>2]=y;b=(y|0)!=0;if(b){v=1<>>0>(pe[n>>2]|0)>>>0){pe[n>>2]=v;o=e+168|0;n=pe[o>>2]|0;do{if(n){g=pe[n+-4>>2]|0;n=n+-8|0;if(!((g|0)!=0?(g|0)==(~pe[n>>2]|0):0)){pe[x>>2]=1154;pe[x+4>>2]=644;pe[x+8>>2]=1863;_r(M,1100,x)|0;yr(M,k)|0}if(!(n&7)){Ri[pe[104>>2]&1](n,0,0,1,pe[27]|0)|0;break}else{pe[T>>2]=1154;pe[T+4>>2]=2499;pe[T+8>>2]=1516;_r(M,1100,T)|0;yr(M,S)|0;break}}}while(0);n=v<<2;a=ot(n+8|0,0)|0;if(!a){pe[o>>2]=0;n=0;break e}else{S=a+8|0;pe[a+4>>2]=v;pe[a>>2]=~v;pe[o>>2]=S;a=S;break}}else{a=e+168|0;n=v<<2;o=a;a=pe[a>>2]|0}}while(0);Yr(a|0,-1,n|0)|0;p=e+176|0;g=1;do{if(pe[z+(g<<2)>>2]|0){t=y-g|0;m=1<>2]|0;if(a>>>0>=16){pe[P>>2]=1154;pe[P+4>>2]=1953;pe[P+8>>2]=1737;_r(M,1100,P)|0;yr(M,C)|0}n=pe[e+28+(a<<2)>>2]|0;if(!n)d=-1;else d=(n+-1|0)>>>(16-g|0);if(s>>>0<=d>>>0){h=(pe[e+96+(a<<2)>>2]|0)-s|0;f=g<<16;do{n=ge[(pe[p>>2]|0)+(h+s<<1)>>1]|0;if((me[r+n>>0]|0|0)!=(g|0)){pe[A>>2]=1154;pe[A+4>>2]=2319;pe[A+8>>2]=1303;_r(M,1100,A)|0;yr(M,O)|0}c=s<>>0>=v>>>0){pe[I>>2]=1154;pe[I+4>>2]=2325;pe[I+8>>2]=1337;_r(M,1100,I)|0;yr(M,R)|0}n=pe[o>>2]|0;if((pe[n+(u<<2)>>2]|0)!=-1){pe[D>>2]=1154;pe[D+4>>2]=2327;pe[D+8>>2]=1360;_r(M,1100,D)|0;yr(M,j)|0;n=pe[o>>2]|0}pe[n+(u<<2)>>2]=a;l=l+1|0}while(l>>>0>>0);s=s+1|0}while(s>>>0<=d>>>0)}}g=g+1|0}while(y>>>0>=g>>>0);n=de[w>>0]|0}a=e+96|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L>>2]|0);a=e+100|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+4>>2]|0);a=e+104|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+8>>2]|0);a=e+108|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+12>>2]|0);a=e+112|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+16>>2]|0);a=e+116|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+20>>2]|0);a=e+120|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+24>>2]|0);a=e+124|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+28>>2]|0);a=e+128|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+32>>2]|0);a=e+132|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+36>>2]|0);a=e+136|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+40>>2]|0);a=e+140|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+44>>2]|0);a=e+144|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+48>>2]|0);a=e+148|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+52>>2]|0);a=e+152|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+56>>2]|0);a=e+156|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+60>>2]|0);a=e+16|0;pe[a>>2]=0;o=e+20|0;pe[o>>2]=n&255;t:do{if(b){while(1){if(!i)break t;n=i+-1|0;if(!(pe[z+(i<<2)>>2]|0))i=n;else break}pe[a>>2]=pe[e+28+(n<<2)>>2];n=y+1|0;pe[o>>2]=n;if(n>>>0<=E>>>0){while(1){if(pe[z+(n<<2)>>2]|0)break;n=n+1|0;if(n>>>0>E>>>0)break t}pe[o>>2]=n}}}while(0);pe[e+92>>2]=-1;pe[e+160>>2]=1048575;pe[e+12>>2]=32-(pe[_>>2]|0);n=1}}while(0);e=n;ve=F;return e|0}function ut(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0;if(!e){n=Nr(t)|0;if(!r){r=n;return r|0}if(!n)a=0;else a=qr(n)|0;pe[r>>2]=a;r=n;return r|0}if(!t){Ur(e);if(!r){r=0;return r|0}pe[r>>2]=0;r=0;return r|0}n=Xr(e,t)|0;a=(n|0)!=0;if(a|i^1)a=a?n:e;else{n=Xr(e,t)|0;a=(n|0)==0?e:n}if(!r){r=n;return r|0}t=qr(a)|0;pe[r>>2]=t;r=n;return r|0}function lt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if(!((e|0)!=0&t>>>0>73&(r|0)!=0)){r=0;return r|0}if((pe[r>>2]|0)!=40|t>>>0<74){r=0;return r|0}if(((me[e>>0]|0)<<8|(me[e+1>>0]|0)|0)!=18552){r=0;return r|0}if(((me[e+2>>0]|0)<<8|(me[e+3>>0]|0))>>>0<74){r=0;return r|0}if(((me[e+7>>0]|0)<<16|(me[e+6>>0]|0)<<24|(me[e+8>>0]|0)<<8|(me[e+9>>0]|0))>>>0>t>>>0){r=0;return r|0}pe[r+4>>2]=(me[e+12>>0]|0)<<8|(me[e+13>>0]|0);pe[r+8>>2]=(me[e+14>>0]|0)<<8|(me[e+15>>0]|0);pe[r+12>>2]=me[e+16>>0];pe[r+16>>2]=me[e+17>>0];t=e+18|0;i=r+32|0;pe[i>>2]=me[t>>0];pe[i+4>>2]=0;t=de[t>>0]|0;pe[r+20>>2]=t<<24>>24==0|t<<24>>24==9?8:16;pe[r+24>>2]=(me[e+26>>0]|0)<<16|(me[e+25>>0]|0)<<24|(me[e+27>>0]|0)<<8|(me[e+28>>0]|0);pe[r+28>>2]=(me[e+30>>0]|0)<<16|(me[e+29>>0]|0)<<24|(me[e+31>>0]|0)<<8|(me[e+32>>0]|0);r=1;return r|0}function ct(e){e=e|0;Oe(e|0)|0;Ut()}function ht(e){e=e|0;var t=0,r=0,i=0,n=0,a=0;a=ve;ve=ve+544|0;n=a;i=a+24|0;t=pe[e+20>>2]|0;if(t)ft(t);t=e+4|0;r=pe[t>>2]|0;if(!r){n=e+16|0;de[n>>0]=0;ve=a;return}if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[n>>2]=1154;pe[n+4>>2]=2499;pe[n+8>>2]=1516;_r(i,1100,n)|0;yr(i,a+16|0)|0}pe[t>>2]=0;pe[e+8>>2]=0;pe[e+12>>2]=0;n=e+16|0;de[n>>0]=0;ve=a;return}function ft(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;d=ve;ve=ve+640|0;f=d+112|0;h=d+96|0;c=d+88|0;l=d+72|0;u=d+64|0;s=d+48|0;i=d+40|0;a=d+24|0;n=d+16|0;r=d;o=d+120|0;if(!e){ve=d;return}t=pe[e+168>>2]|0;do{if(t){p=pe[t+-4>>2]|0;t=t+-8|0;if(!((p|0)!=0?(p|0)==(~pe[t>>2]|0):0)){pe[r>>2]=1154;pe[r+4>>2]=644;pe[r+8>>2]=1863;_r(o,1100,r)|0;yr(o,n)|0}if(!(t&7)){Ri[pe[104>>2]&1](t,0,0,1,pe[27]|0)|0;break}else{pe[a>>2]=1154;pe[a+4>>2]=2499;pe[a+8>>2]=1516;_r(o,1100,a)|0;yr(o,i)|0;break}}}while(0);t=pe[e+176>>2]|0;do{if(t){p=pe[t+-4>>2]|0;t=t+-8|0;if(!((p|0)!=0?(p|0)==(~pe[t>>2]|0):0)){pe[s>>2]=1154;pe[s+4>>2]=644;pe[s+8>>2]=1863;_r(o,1100,s)|0;yr(o,u)|0}if(!(t&7)){Ri[pe[104>>2]&1](t,0,0,1,pe[27]|0)|0;break}else{pe[l>>2]=1154;pe[l+4>>2]=2499;pe[l+8>>2]=1516;_r(o,1100,l)|0;yr(o,c)|0;break}}}while(0);if(!(e&7)){Ri[pe[104>>2]&1](e,0,0,1,pe[27]|0)|0;ve=d;return}else{pe[h>>2]=1154;pe[h+4>>2]=2499;pe[h+8>>2]=1516;_r(o,1100,h)|0;yr(o,f)|0;ve=d;return}}function dt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+560|0;o=c+40|0;s=c+24|0;t=c;a=c+48|0;n=e+8|0;r=pe[n>>2]|0;if((r+-1|0)>>>0>=8192){pe[t>>2]=1154;pe[t+4>>2]=2997;pe[t+8>>2]=1541;_r(a,1100,t)|0;yr(a,c+16|0)|0}pe[e>>2]=r;i=e+20|0;t=pe[i>>2]|0;if(!t){t=ot(180,0)|0;if(!t)t=0;else{l=t+164|0;pe[l>>2]=0;pe[l+4>>2]=0;pe[l+8>>2]=0;pe[l+12>>2]=0}pe[i>>2]=t;l=t;u=pe[e>>2]|0}else{l=t;u=r}if(!(pe[n>>2]|0)){pe[s>>2]=1154;pe[s+4>>2]=903;pe[s+8>>2]=1781;_r(a,1100,s)|0;yr(a,o)|0;a=pe[e>>2]|0}else a=u;n=pe[e+4>>2]|0;if(a>>>0>16){r=a;t=0}else{e=0;l=st(l,u,n,e)|0;ve=c;return l|0}while(1){i=t+1|0;if(r>>>0>3){r=r>>>1;t=i}else{r=i;break}}e=t+2+((r|0)!=32&1<>>0>>0&1)|0;e=e>>>0<11?e&255:11;l=st(l,u,n,e)|0;ve=c;return l|0}function pt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0;j=ve;ve=ve+800|0;A=j+256|0;C=j+240|0;P=j+232|0;M=j+216|0;E=j+208|0;S=j+192|0;T=j+184|0;k=j+168|0;x=j+160|0;w=j+144|0;_=j+136|0;y=j+120|0;b=j+112|0;v=j+96|0;g=j+88|0;m=j+72|0;h=j+64|0;c=j+48|0;s=j+40|0;u=j+24|0;a=j+16|0;n=j;R=j+288|0;D=j+264|0;O=mt(e,14)|0;if(!O){pe[t>>2]=0;r=t+4|0;i=pe[r>>2]|0;if(i){if(!(i&7))Ri[pe[104>>2]&1](i,0,0,1,pe[27]|0)|0;else{pe[n>>2]=1154;pe[n+4>>2]=2499;pe[n+8>>2]=1516;_r(R,1100,n)|0;yr(R,a)|0}pe[r>>2]=0;pe[t+8>>2]=0;pe[t+12>>2]=0}de[t+16>>0]=0;r=t+20|0;i=pe[r>>2]|0;if(!i){t=1;ve=j;return t|0}ft(i);pe[r>>2]=0;t=1;ve=j;return t|0}d=t+4|0;p=t+8|0;r=pe[p>>2]|0;if((r|0)!=(O|0)){if(r>>>0<=O>>>0){do{if((pe[t+12>>2]|0)>>>0>>0){if(nt(d,O,(r+1|0)==(O|0),1,0)|0){r=pe[p>>2]|0;break}de[t+16>>0]=1;t=0;ve=j;return t|0}}while(0);Yr((pe[d>>2]|0)+r|0,0,O-r|0)|0}pe[p>>2]=O}Yr(pe[d>>2]|0,0,O|0)|0;f=e+20|0;r=pe[f>>2]|0;if((r|0)<5){a=e+4|0;o=e+8|0;n=e+16|0;do{i=pe[a>>2]|0;if((i|0)==(pe[o>>2]|0))i=0;else{pe[a>>2]=i+1;i=me[i>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[u>>2]=1154;pe[u+4>>2]=3199;pe[u+8>>2]=1650;_r(R,1100,u)|0;yr(R,s)|0;r=pe[f>>2]|0}i=i<<32-r|pe[n>>2];pe[n>>2]=i}while((r|0)<5)}else{i=e+16|0;n=i;i=pe[i>>2]|0}l=i>>>27;pe[n>>2]=i<<5;pe[f>>2]=r+-5;if((l+-1|0)>>>0>20){t=0;ve=j;return t|0}pe[D+20>>2]=0;pe[D>>2]=0;pe[D+4>>2]=0;pe[D+8>>2]=0;pe[D+12>>2]=0;de[D+16>>0]=0;r=D+4|0;i=D+8|0;e:do{if(nt(r,21,0,1,0)|0){s=pe[i>>2]|0;u=pe[r>>2]|0;Yr(u+s|0,0,21-s|0)|0;pe[i>>2]=21;if(l){n=e+4|0;a=e+8|0;o=e+16|0;s=0;do{r=pe[f>>2]|0;if((r|0)<3)do{i=pe[n>>2]|0;if((i|0)==(pe[a>>2]|0))i=0;else{pe[n>>2]=i+1;i=me[i>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[c>>2]=1154;pe[c+4>>2]=3199;pe[c+8>>2]=1650;_r(R,1100,c)|0;yr(R,h)|0;r=pe[f>>2]|0}i=i<<32-r|pe[o>>2];pe[o>>2]=i}while((r|0)<3);else i=pe[o>>2]|0;pe[o>>2]=i<<3;pe[f>>2]=r+-3;de[u+(me[1611+s>>0]|0)>>0]=i>>>29;s=s+1|0}while((s|0)!=(l|0))}if(dt(D)|0){s=e+4|0;u=e+8|0;l=e+16|0;i=0;t:while(1){o=O-i|0;r=gt(e,D)|0;r:do{if(r>>>0<17){if((pe[p>>2]|0)>>>0<=i>>>0){pe[m>>2]=1154;pe[m+4>>2]=903;pe[m+8>>2]=1781;_r(R,1100,m)|0;yr(R,g)|0}de[(pe[d>>2]|0)+i>>0]=r;r=i+1|0}else switch(r|0){case 17:{r=pe[f>>2]|0;if((r|0)<3)do{n=pe[s>>2]|0;if((n|0)==(pe[u>>2]|0))n=0;else{pe[s>>2]=n+1;n=me[n>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[v>>2]=1154;pe[v+4>>2]=3199;pe[v+8>>2]=1650;_r(R,1100,v)|0;yr(R,b)|0;r=pe[f>>2]|0}n=n<<32-r|pe[l>>2];pe[l>>2]=n}while((r|0)<3);else n=pe[l>>2]|0;pe[l>>2]=n<<3;pe[f>>2]=r+-3;r=(n>>>29)+3|0;if(r>>>0>o>>>0){r=0;break e}r=r+i|0;break r}case 18:{r=pe[f>>2]|0;if((r|0)<7)do{n=pe[s>>2]|0;if((n|0)==(pe[u>>2]|0))n=0;else{pe[s>>2]=n+1;n=me[n>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[y>>2]=1154;pe[y+4>>2]=3199;pe[y+8>>2]=1650;_r(R,1100,y)|0;yr(R,_)|0;r=pe[f>>2]|0}n=n<<32-r|pe[l>>2];pe[l>>2]=n}while((r|0)<7);else n=pe[l>>2]|0;pe[l>>2]=n<<7;pe[f>>2]=r+-7;r=(n>>>25)+11|0;if(r>>>0>o>>>0){r=0;break e}r=r+i|0;break r}default:{if((r+-19|0)>>>0>=2){I=90;break t}a=pe[f>>2]|0;if((r|0)==19){if((a|0)<2){n=a;while(1){r=pe[s>>2]|0;if((r|0)==(pe[u>>2]|0))a=0;else{pe[s>>2]=r+1;a=me[r>>0]|0}r=n+8|0;pe[f>>2]=r;if((r|0)>=33){pe[w>>2]=1154;pe[w+4>>2]=3199;pe[w+8>>2]=1650;_r(R,1100,w)|0;yr(R,x)|0;r=pe[f>>2]|0}n=a<<32-r|pe[l>>2];pe[l>>2]=n;if((r|0)<2)n=r;else break}}else{n=pe[l>>2]|0;r=a}pe[l>>2]=n<<2;pe[f>>2]=r+-2;a=(n>>>30)+3|0}else{if((a|0)<6){n=a;while(1){r=pe[s>>2]|0;if((r|0)==(pe[u>>2]|0))a=0;else{pe[s>>2]=r+1;a=me[r>>0]|0}r=n+8|0;pe[f>>2]=r;if((r|0)>=33){pe[k>>2]=1154;pe[k+4>>2]=3199;pe[k+8>>2]=1650;_r(R,1100,k)|0;yr(R,T)|0;r=pe[f>>2]|0}n=a<<32-r|pe[l>>2];pe[l>>2]=n;if((r|0)<6)n=r;else break}}else{n=pe[l>>2]|0;r=a}pe[l>>2]=n<<6;pe[f>>2]=r+-6;a=(n>>>26)+7|0}if((i|0)==0|a>>>0>o>>>0){r=0;break e}r=i+-1|0;if((pe[p>>2]|0)>>>0<=r>>>0){pe[S>>2]=1154;pe[S+4>>2]=903;pe[S+8>>2]=1781;_r(R,1100,S)|0;yr(R,E)|0}n=de[(pe[d>>2]|0)+r>>0]|0;if(!(n<<24>>24)){r=0;break e}r=a+i|0;if(i>>>0>=r>>>0){r=i;break r}do{if((pe[p>>2]|0)>>>0<=i>>>0){pe[M>>2]=1154;pe[M+4>>2]=903;pe[M+8>>2]=1781;_r(R,1100,M)|0;yr(R,P)|0}de[(pe[d>>2]|0)+i>>0]=n;i=i+1|0}while((i|0)!=(r|0))}}}while(0);if(O>>>0>r>>>0)i=r;else break}if((I|0)==90){pe[C>>2]=1154;pe[C+4>>2]=3140;pe[C+8>>2]=1632;_r(R,1100,C)|0;yr(R,A)|0;r=0;break}if((O|0)==(r|0))r=dt(t)|0;else r=0}else r=0}else{de[D+16>>0]=1;r=0}}while(0);ht(D);t=r;ve=j;return t|0}function mt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+544|0;s=c+16|0;o=c;a=c+24|0;if(!t){l=0;ve=c;return l|0}if(t>>>0<=16){l=vt(e,t)|0;ve=c;return l|0}u=vt(e,t+-16|0)|0;l=e+20|0;t=pe[l>>2]|0;if((t|0)<16){i=e+4|0;n=e+8|0;r=e+16|0;do{e=pe[i>>2]|0;if((e|0)==(pe[n>>2]|0))e=0;else{pe[i>>2]=e+1;e=me[e>>0]|0}t=t+8|0;pe[l>>2]=t;if((t|0)>=33){pe[o>>2]=1154;pe[o+4>>2]=3199;pe[o+8>>2]=1650;_r(a,1100,o)|0;yr(a,s)|0;t=pe[l>>2]|0}e=e<<32-t|pe[r>>2];pe[r>>2]=e}while((t|0)<16)}else{e=e+16|0;r=e;e=pe[e>>2]|0}pe[r>>2]=e<<16;pe[l>>2]=t+-16;l=e>>>16|u<<16;ve=c;return l|0}function gt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0;y=ve;ve=ve+608|0;m=y+88|0;p=y+72|0;f=y+64|0;h=y+48|0;c=y+40|0;d=y+24|0;l=y+16|0;u=y;v=y+96|0;g=pe[t+20>>2]|0;b=e+20|0;s=pe[b>>2]|0;do{if((s|0)<24){o=e+4|0;i=pe[o>>2]|0;n=pe[e+8>>2]|0;r=i>>>0>>0;if((s|0)>=16){if(r){pe[o>>2]=i+1;r=me[i>>0]|0}else r=0;pe[b>>2]=s+8;o=e+16|0;a=r<<24-s|pe[o>>2];pe[o>>2]=a;break}if(r){a=(me[i>>0]|0)<<8;r=i+1|0}else{a=0;r=i}if(r>>>0>>0){i=me[r>>0]|0;r=r+1|0}else i=0;pe[o>>2]=r;pe[b>>2]=s+16;o=e+16|0;a=(i|a)<<16-s|pe[o>>2];pe[o>>2]=a}else{a=e+16|0;o=a;a=pe[a>>2]|0}}while(0);n=(a>>>16)+1|0;do{if(n>>>0<=(pe[g+16>>2]|0)>>>0){i=pe[(pe[g+168>>2]|0)+(a>>>(32-(pe[g+8>>2]|0)|0)<<2)>>2]|0;if((i|0)==-1){pe[u>>2]=1154;pe[u+4>>2]=3244;pe[u+8>>2]=1677;_r(v,1100,u)|0;yr(v,l)|0}r=i&65535;i=i>>>16;if((pe[t+8>>2]|0)>>>0<=r>>>0){pe[d>>2]=1154;pe[d+4>>2]=902;pe[d+8>>2]=1781;_r(v,1100,d)|0;yr(v,c)|0}if((me[(pe[t+4>>2]|0)+r>>0]|0|0)!=(i|0)){pe[h>>2]=1154;pe[h+4>>2]=3248;pe[h+8>>2]=1694;_r(v,1100,h)|0;yr(v,f)|0}}else{i=pe[g+20>>2]|0;while(1){r=i+-1|0;if(n>>>0>(pe[g+28+(r<<2)>>2]|0)>>>0)i=i+1|0;else break}r=(a>>>(32-i|0))+(pe[g+96+(r<<2)>>2]|0)|0;if(r>>>0<(pe[t>>2]|0)>>>0){r=ge[(pe[g+176>>2]|0)+(r<<1)>>1]|0;break}pe[p>>2]=1154;pe[p+4>>2]=3266;pe[p+8>>2]=1632;_r(v,1100,p)|0;yr(v,m)|0;b=0;ve=y;return b|0}}while(0);pe[o>>2]=pe[o>>2]<>2]=(pe[b>>2]|0)-i;b=r;ve=y;return b|0}function vt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+560|0;s=c+40|0;u=c+24|0;r=c;o=c+48|0;if(t>>>0>=33){pe[r>>2]=1154;pe[r+4>>2]=3190;pe[r+8>>2]=1634;_r(o,1100,r)|0;yr(o,c+16|0)|0}l=e+20|0;r=pe[l>>2]|0;if((r|0)>=(t|0)){a=e+16|0;o=a;a=pe[a>>2]|0;s=r;u=32-t|0;u=a>>>u;a=a<>2]=a;t=s-t|0;pe[l>>2]=t;ve=c;return u|0}n=e+4|0;a=e+8|0;i=e+16|0;do{e=pe[n>>2]|0;if((e|0)==(pe[a>>2]|0))e=0;else{pe[n>>2]=e+1;e=me[e>>0]|0}r=r+8|0;pe[l>>2]=r;if((r|0)>=33){pe[u>>2]=1154;pe[u+4>>2]=3199;pe[u+8>>2]=1650;_r(o,1100,u)|0;yr(o,s)|0;r=pe[l>>2]|0}e=e<<32-r|pe[i>>2];pe[i>>2]=e}while((r|0)<(t|0));u=32-t|0;u=e>>>u;s=e<>2]=s;t=r-t|0;pe[l>>2]=t;ve=c;return u|0}function bt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0;p=ve;ve=ve+544|0;f=p+16|0;h=p;c=p+24|0;if((e|0)==0|t>>>0<62){d=0;ve=p;return d|0}l=ot(300,0)|0;if(!l){d=0;ve=p;return d|0}pe[l>>2]=519686845;r=l+4|0;pe[r>>2]=0;i=l+8|0;pe[i>>2]=0;u=l+88|0;n=l+136|0;a=l+160|0;o=u;s=o+44|0;do{pe[o>>2]=0;o=o+4|0}while((o|0)<(s|0));de[u+44>>0]=0;m=l+184|0;o=l+208|0;s=l+232|0;g=l+252|0;pe[g>>2]=0;pe[g+4>>2]=0;pe[g+8>>2]=0;de[g+12>>0]=0;g=l+268|0;pe[g>>2]=0;pe[g+4>>2]=0;pe[g+8>>2]=0;de[g+12>>0]=0;g=l+284|0;pe[g>>2]=0;pe[g+4>>2]=0;pe[g+8>>2]=0;de[g+12>>0]=0;pe[n>>2]=0;pe[n+4>>2]=0;pe[n+8>>2]=0;pe[n+12>>2]=0;pe[n+16>>2]=0;de[n+20>>0]=0;pe[a>>2]=0;pe[a+4>>2]=0;pe[a+8>>2]=0;pe[a+12>>2]=0;pe[a+16>>2]=0;de[a+20>>0]=0;pe[m>>2]=0;pe[m+4>>2]=0;pe[m+8>>2]=0;pe[m+12>>2]=0;pe[m+16>>2]=0;de[m+20>>0]=0;pe[o>>2]=0;pe[o+4>>2]=0;pe[o+8>>2]=0;pe[o+12>>2]=0;pe[o+16>>2]=0;de[o+20>>0]=0;pe[s>>2]=0;pe[s+4>>2]=0;pe[s+8>>2]=0;pe[s+12>>2]=0;de[s+16>>0]=0;do{if(((t>>>0>=74?((me[e>>0]|0)<<8|(me[e+1>>0]|0)|0)==18552:0)?((me[e+2>>0]|0)<<8|(me[e+3>>0]|0))>>>0>=74:0)?((me[e+7>>0]|0)<<16|(me[e+6>>0]|0)<<24|(me[e+8>>0]|0)<<8|(me[e+9>>0]|0))>>>0<=t>>>0:0){pe[u>>2]=e;pe[r>>2]=e;pe[i>>2]=t;if(Mt(l)|0){r=pe[u>>2]|0;if((me[r+39>>0]|0)<<8|(me[r+40>>0]|0)){if(!(Pt(l)|0))break;if(!(Ct(l)|0))break;r=pe[u>>2]|0}if(!((me[r+55>>0]|0)<<8|(me[r+56>>0]|0))){g=l;ve=p;return g|0}if(At(l)|0?Ot(l)|0:0){g=l;ve=p;return g|0}}}else d=7}while(0);if((d|0)==7)pe[u>>2]=0;Lt(l);if(!(l&7)){Ri[pe[104>>2]&1](l,0,0,1,pe[27]|0)|0;g=0;ve=p;return g|0}else{pe[h>>2]=1154;pe[h+4>>2]=2499;pe[h+8>>2]=1516;_r(c,1100,h)|0;yr(c,f)|0;g=0;ve=p;return g|0}return 0}function yt(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+544|0;l=c;u=c+24|0;a=pe[e+88>>2]|0;s=(me[a+70+(n<<2)+1>>0]|0)<<16|(me[a+70+(n<<2)>>0]|0)<<24|(me[a+70+(n<<2)+2>>0]|0)<<8|(me[a+70+(n<<2)+3>>0]|0);o=n+1|0;if(o>>>0<(me[a+16>>0]|0)>>>0)a=(me[a+70+(o<<2)+1>>0]|0)<<16|(me[a+70+(o<<2)>>0]|0)<<24|(me[a+70+(o<<2)+2>>0]|0)<<8|(me[a+70+(o<<2)+3>>0]|0);else a=pe[e+8>>2]|0;if(a>>>0>s>>>0){u=e+4|0;u=pe[u>>2]|0;u=u+s|0;l=a-s|0;l=_t(e,u,l,t,r,i,n)|0;ve=c;return l|0}pe[l>>2]=1154;pe[l+4>>2]=3704;pe[l+8>>2]=1792;_r(u,1100,l)|0;yr(u,c+16|0)|0;u=e+4|0;u=pe[u>>2]|0;u=u+s|0;l=a-s|0;l=_t(e,u,l,t,r,i,n)|0;ve=c;return l|0}function _t(e,t,r,i,n,a,o){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;var s=0,u=0,l=0,c=0;c=pe[e+88>>2]|0;u=((me[c+12>>0]|0)<<8|(me[c+13>>0]|0))>>>o;l=((me[c+14>>0]|0)<<8|(me[c+15>>0]|0))>>>o;u=u>>>0>1?(u+3|0)>>>2:1;l=l>>>0>1?(l+3|0)>>>2:1;c=c+18|0;o=de[c>>0]|0;o=be(o<<24>>24==0|o<<24>>24==9?8:16,u)|0;if(a)if((a&3|0)==0&o>>>0<=a>>>0)o=a;else{e=0;return e|0}if((be(o,l)|0)>>>0>n>>>0){e=0;return e|0}a=(u+1|0)>>>1;s=(l+1|0)>>>1;if(!r){e=0;return e|0}pe[e+92>>2]=t;pe[e+96>>2]=t;pe[e+104>>2]=r;pe[e+100>>2]=t+r;pe[e+108>>2]=0;pe[e+112>>2]=0;switch(me[c>>0]|0|0){case 0:{It(e,i,n,o,u,l,a,s)|0;e=1;return e|0}case 4:case 6:case 5:case 3:case 2:{Rt(e,i,n,o,u,l,a,s)|0;e=1;return e|0}case 9:{Dt(e,i,n,o,u,l,a,s)|0;e=1;return e|0}case 8:case 7:{jt(e,i,n,o,u,l,a,s)|0;e=1;return e|0}default:{e=0;return e|0}}return 0}function wt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+4>>2]|0}function xt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+8>>2]|0}function kt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+12>>2]|0}function Tt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+32>>2]|0}function St(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0,s=0,u=0,l=0;u=ve;ve=ve+576|0;o=u+56|0;a=u+40|0;n=u+64|0;l=u;pe[l>>2]=40;lt(e,t,l)|0;i=(((pe[l+4>>2]|0)>>>r)+3|0)>>>2;t=(((pe[l+8>>2]|0)>>>r)+3|0)>>>2;r=l+32|0;e=pe[r+4>>2]|0;do{switch(pe[r>>2]|0){case 0:{if(!e)e=8;else s=13;break}case 1:{if(!e)s=12;else s=13;break}case 2:{if(!e)s=12;else s=13;break}case 3:{if(!e)s=12;else s=13;break}case 4:{if(!e)s=12;else s=13;break}case 5:{if(!e)s=12;else s=13;break}case 6:{if(!e)s=12;else s=13;break}case 7:{if(!e)s=12;else s=13;break}case 8:{if(!e)s=12;else s=13;break}case 9:{if(!e)e=8;else s=13;break}default:s=13}}while(0);if((s|0)==12)e=16;else if((s|0)==13){pe[a>>2]=1154;pe[a+4>>2]=2663;pe[a+8>>2]=1535;_r(n,1100,a)|0;yr(n,o)|0;e=0}l=be(be(t,i)|0,e)|0;ve=u;return l|0}function Et(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0;p=ve;ve=ve+608|0;f=p+80|0;d=p+64|0;s=p+56|0;o=p+40|0;c=p+88|0;m=p;h=p+84|0;pe[m>>2]=40;lt(e,t,m)|0;u=(((pe[m+4>>2]|0)>>>n)+3|0)>>>2;m=m+32|0;a=pe[m+4>>2]|0;do{switch(pe[m>>2]|0){case 0:{if(!a)a=8;else l=13;break}case 1:{if(!a)l=12;else l=13;break}case 2:{if(!a)l=12;else l=13;break}case 3:{if(!a)l=12;else l=13;break}case 4:{if(!a)l=12;else l=13;break}case 5:{if(!a)l=12;else l=13;break}case 6:{if(!a)l=12;else l=13;break}case 7:{if(!a)l=12;else l=13;break}case 8:{if(!a)l=12;else l=13;break}case 9:{if(!a)a=8;else l=13;break}default:l=13}}while(0);if((l|0)==12)a=16;else if((l|0)==13){pe[o>>2]=1154;pe[o+4>>2]=2663;pe[o+8>>2]=1535;_r(c,1100,o)|0;yr(c,s)|0;a=0}s=be(a,u)|0;o=bt(e,t)|0;pe[h>>2]=r;a=(o|0)==0;if(!(n>>>0>15|(i>>>0<8|a))?(pe[o>>2]|0)==519686845:0)yt(o,h,i,s,n)|0;if(a){ve=p;return}if((pe[o>>2]|0)!=519686845){ve=p;return}Lt(o);if(!(o&7)){Ri[pe[104>>2]&1](o,0,0,1,pe[27]|0)|0;ve=p;return}else{pe[d>>2]=1154;pe[d+4>>2]=2499;pe[d+8>>2]=1516;_r(c,1100,d)|0;yr(c,f)|0;ve=p;return}}function Mt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0;o=e+92|0;i=pe[e+4>>2]|0;a=e+88|0;n=pe[a>>2]|0;t=(me[n+68>>0]|0)<<8|(me[n+67>>0]|0)<<16|(me[n+69>>0]|0);r=i+t|0;n=(me[n+65>>0]|0)<<8|(me[n+66>>0]|0);if(!n){e=0;return e|0}pe[o>>2]=r;pe[e+96>>2]=r;pe[e+104>>2]=n;pe[e+100>>2]=i+(n+t);pe[e+108>>2]=0;pe[e+112>>2]=0;if(!(pt(o,e+116|0)|0)){e=0;return e|0}t=pe[a>>2]|0;do{if(!((me[t+39>>0]|0)<<8|(me[t+40>>0]|0))){if(!((me[t+55>>0]|0)<<8|(me[t+56>>0]|0))){e=0;return e|0}}else{if(!(pt(o,e+140|0)|0)){e=0;return e|0}if(pt(o,e+188|0)|0){t=pe[a>>2]|0;break}else{e=0;return e|0}}}while(0);if((me[t+55>>0]|0)<<8|(me[t+56>>0]|0)){if(!(pt(o,e+164|0)|0)){e=0;return e|0}if(!(pt(o,e+212|0)|0)){e=0;return e|0}}e=1;return e|0}function Pt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;p=ve;ve=ve+592|0;u=p+16|0;s=p;o=p+72|0;d=p+24|0;i=e+88|0;t=pe[i>>2]|0;f=(me[t+39>>0]|0)<<8|(me[t+40>>0]|0);c=e+236|0;a=e+240|0;r=pe[a>>2]|0;if((r|0)!=(f|0)){if(r>>>0<=f>>>0){do{if((pe[e+244>>2]|0)>>>0>>0){if(nt(c,f,(r+1|0)==(f|0),4,0)|0){t=pe[a>>2]|0;break}de[e+248>>0]=1;d=0;ve=p;return d|0}else t=r}while(0);Yr((pe[c>>2]|0)+(t<<2)|0,0,f-t<<2|0)|0;t=pe[i>>2]|0}pe[a>>2]=f}l=e+92|0;r=pe[e+4>>2]|0;i=(me[t+34>>0]|0)<<8|(me[t+33>>0]|0)<<16|(me[t+35>>0]|0);n=r+i|0;t=(me[t+37>>0]|0)<<8|(me[t+36>>0]|0)<<16|(me[t+38>>0]|0);if(!t){d=0;ve=p;return d|0}pe[l>>2]=n;pe[e+96>>2]=n;pe[e+104>>2]=t;pe[e+100>>2]=r+(t+i);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[d+20>>2]=0;pe[d>>2]=0;pe[d+4>>2]=0;pe[d+8>>2]=0;pe[d+12>>2]=0;de[d+16>>0]=0;e=d+24|0;pe[d+44>>2]=0;pe[e>>2]=0;pe[e+4>>2]=0;pe[e+8>>2]=0;pe[e+12>>2]=0;de[e+16>>0]=0;if(pt(l,d)|0?(h=d+24|0,pt(l,h)|0):0){if(!(pe[a>>2]|0)){pe[s>>2]=1154;pe[s+4>>2]=903;pe[s+8>>2]=1781;_r(o,1100,s)|0;yr(o,u)|0}if(!f)t=1;else{i=0;n=0;a=0;t=0;o=0;e=0;s=0;r=pe[c>>2]|0;while(1){i=(gt(l,d)|0)+i&31;n=(gt(l,h)|0)+n&63;a=(gt(l,d)|0)+a&31;t=(gt(l,d)|0)+t|0;o=(gt(l,h)|0)+o&63;e=(gt(l,d)|0)+e&31;pe[r>>2]=n<<5|i<<11|a|t<<27|o<<21|e<<16;s=s+1|0;if((s|0)==(f|0)){t=1;break}else{t=t&31;r=r+4|0}}}}else t=0;ht(d+24|0);ht(d);d=t;ve=p;return d|0}function Ct(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0;S=ve;ve=ve+1024|0;s=S+16|0;o=S;a=S+504|0;T=S+480|0;x=S+284|0;k=S+88|0;w=S+24|0;n=pe[e+88>>2]|0;_=(me[n+47>>0]|0)<<8|(me[n+48>>0]|0);y=e+92|0;t=pe[e+4>>2]|0;r=(me[n+42>>0]|0)<<8|(me[n+41>>0]|0)<<16|(me[n+43>>0]|0);i=t+r|0;n=(me[n+45>>0]|0)<<8|(me[n+44>>0]|0)<<16|(me[n+46>>0]|0);if(!n){T=0;ve=S;return T|0}pe[y>>2]=i;pe[e+96>>2]=i;pe[e+104>>2]=n;pe[e+100>>2]=t+(n+r);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[T+20>>2]=0;pe[T>>2]=0;pe[T+4>>2]=0;pe[T+8>>2]=0;pe[T+12>>2]=0;de[T+16>>0]=0;if(pt(y,T)|0){r=0;i=-3;n=-3;while(1){pe[x+(r<<2)>>2]=i;pe[k+(r<<2)>>2]=n;t=(i|0)>2;r=r+1|0;if((r|0)==49)break;else{i=t?-3:i+1|0;n=(t&1)+n|0}}t=w;r=t+64|0;do{pe[t>>2]=0;t=t+4|0}while((t|0)<(r|0));b=e+252|0;r=e+256|0;t=pe[r>>2]|0;e:do{if((t|0)==(_|0))u=13;else{if(t>>>0<=_>>>0){do{if((pe[e+260>>2]|0)>>>0<_>>>0)if(nt(b,_,(t+1|0)==(_|0),4,0)|0){t=pe[r>>2]|0;break}else{de[e+264>>0]=1;t=0;break e}}while(0);Yr((pe[b>>2]|0)+(t<<2)|0,0,_-t<<2|0)|0}pe[r>>2]=_;u=13}}while(0);do{if((u|0)==13){if(!_){pe[o>>2]=1154;pe[o+4>>2]=903;pe[o+8>>2]=1781;_r(a,1100,o)|0;yr(a,s)|0;t=1;break}i=w+4|0;n=w+8|0;e=w+12|0;a=w+16|0;o=w+20|0;s=w+24|0;u=w+28|0;l=w+32|0;c=w+36|0;h=w+40|0;f=w+44|0;d=w+48|0;p=w+52|0;m=w+56|0;g=w+60|0;v=0;r=pe[b>>2]|0;while(1){t=0;do{E=gt(y,T)|0;b=t<<1;M=w+(b<<2)|0;pe[M>>2]=(pe[M>>2]|0)+(pe[x+(E<<2)>>2]|0)&3;b=w+((b|1)<<2)|0;pe[b>>2]=(pe[b>>2]|0)+(pe[k+(E<<2)>>2]|0)&3;t=t+1|0}while((t|0)!=8);pe[r>>2]=(me[1725+(pe[i>>2]|0)>>0]|0)<<2|(me[1725+(pe[w>>2]|0)>>0]|0)|(me[1725+(pe[n>>2]|0)>>0]|0)<<4|(me[1725+(pe[e>>2]|0)>>0]|0)<<6|(me[1725+(pe[a>>2]|0)>>0]|0)<<8|(me[1725+(pe[o>>2]|0)>>0]|0)<<10|(me[1725+(pe[s>>2]|0)>>0]|0)<<12|(me[1725+(pe[u>>2]|0)>>0]|0)<<14|(me[1725+(pe[l>>2]|0)>>0]|0)<<16|(me[1725+(pe[c>>2]|0)>>0]|0)<<18|(me[1725+(pe[h>>2]|0)>>0]|0)<<20|(me[1725+(pe[f>>2]|0)>>0]|0)<<22|(me[1725+(pe[d>>2]|0)>>0]|0)<<24|(me[1725+(pe[p>>2]|0)>>0]|0)<<26|(me[1725+(pe[m>>2]|0)>>0]|0)<<28|(me[1725+(pe[g>>2]|0)>>0]|0)<<30;v=v+1|0;if((v|0)==(_|0)){t=1;break}else r=r+4|0}}}while(0)}else t=0;ht(T);M=t;ve=S;return M|0}function At(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0;f=ve;ve=ve+560|0;u=f+16|0;s=f;o=f+48|0;h=f+24|0;n=pe[e+88>>2]|0;c=(me[n+55>>0]|0)<<8|(me[n+56>>0]|0);l=e+92|0;t=pe[e+4>>2]|0;r=(me[n+50>>0]|0)<<8|(me[n+49>>0]|0)<<16|(me[n+51>>0]|0);i=t+r|0;n=(me[n+53>>0]|0)<<8|(me[n+52>>0]|0)<<16|(me[n+54>>0]|0);if(!n){h=0;ve=f;return h|0}pe[l>>2]=i;pe[e+96>>2]=i;pe[e+104>>2]=n;pe[e+100>>2]=t+(n+r);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[h+20>>2]=0;pe[h>>2]=0;pe[h+4>>2]=0;pe[h+8>>2]=0;pe[h+12>>2]=0;de[h+16>>0]=0;e:do{if(pt(l,h)|0){a=e+268|0;r=e+272|0;t=pe[r>>2]|0;if((t|0)!=(c|0)){if(t>>>0<=c>>>0){do{if((pe[e+276>>2]|0)>>>0>>0)if(nt(a,c,(t+1|0)==(c|0),2,0)|0){t=pe[r>>2]|0;break}else{de[e+280>>0]=1;t=0;break e}}while(0);Yr((pe[a>>2]|0)+(t<<1)|0,0,c-t<<1|0)|0}pe[r>>2]=c}if(!c){pe[s>>2]=1154;pe[s+4>>2]=903;pe[s+8>>2]=1781;_r(o,1100,s)|0;yr(o,u)|0;t=1;break}r=0;i=0;n=0;t=pe[a>>2]|0;while(1){u=gt(l,h)|0;r=u+r&255;i=(gt(l,h)|0)+i&255;$[t>>1]=i<<8|r;n=n+1|0;if((n|0)==(c|0)){t=1;break}else t=t+2|0}}else t=0}while(0);ht(h);h=t;ve=f;return h|0}function Ot(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0;S=ve;ve=ve+2432|0;s=S+16|0;o=S;a=S+1912|0;T=S+1888|0;x=S+988|0;k=S+88|0;w=S+24|0;n=pe[e+88>>2]|0;_=(me[n+63>>0]|0)<<8|(me[n+64>>0]|0);y=e+92|0;t=pe[e+4>>2]|0;r=(me[n+58>>0]|0)<<8|(me[n+57>>0]|0)<<16|(me[n+59>>0]|0);i=t+r|0;n=(me[n+61>>0]|0)<<8|(me[n+60>>0]|0)<<16|(me[n+62>>0]|0);if(!n){T=0;ve=S;return T|0}pe[y>>2]=i;pe[e+96>>2]=i;pe[e+104>>2]=n;pe[e+100>>2]=t+(n+r);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[T+20>>2]=0;pe[T>>2]=0;pe[T+4>>2]=0;pe[T+8>>2]=0;pe[T+12>>2]=0;de[T+16>>0]=0;if(pt(y,T)|0){r=0;i=-7;n=-7;while(1){pe[x+(r<<2)>>2]=i;pe[k+(r<<2)>>2]=n;t=(i|0)>6;r=r+1|0;if((r|0)==225)break;else{i=t?-7:i+1|0;n=(t&1)+n|0}}t=w;r=t+64|0;do{pe[t>>2]=0;t=t+4|0}while((t|0)<(r|0));b=e+284|0;r=_*3|0;i=e+288|0;t=pe[i>>2]|0;e:do{if((t|0)==(r|0))u=13;else{if(t>>>0<=r>>>0){do{if((pe[e+292>>2]|0)>>>0>>0)if(nt(b,r,(t+1|0)==(r|0),2,0)|0){t=pe[i>>2]|0;break}else{de[e+296>>0]=1;t=0;break e}}while(0);Yr((pe[b>>2]|0)+(t<<1)|0,0,r-t<<1|0)|0}pe[i>>2]=r;u=13}}while(0);do{if((u|0)==13){if(!_){pe[o>>2]=1154;pe[o+4>>2]=903;pe[o+8>>2]=1781;_r(a,1100,o)|0;yr(a,s)|0;t=1;break}i=w+4|0;n=w+8|0;e=w+12|0;a=w+16|0;o=w+20|0;s=w+24|0;u=w+28|0;l=w+32|0;c=w+36|0;h=w+40|0;f=w+44|0;d=w+48|0;p=w+52|0;m=w+56|0;g=w+60|0;v=0;r=pe[b>>2]|0;while(1){t=0;do{E=gt(y,T)|0;b=t<<1;M=w+(b<<2)|0;pe[M>>2]=(pe[M>>2]|0)+(pe[x+(E<<2)>>2]|0)&7;b=w+((b|1)<<2)|0;pe[b>>2]=(pe[b>>2]|0)+(pe[k+(E<<2)>>2]|0)&7;t=t+1|0}while((t|0)!=8);E=me[1729+(pe[o>>2]|0)>>0]|0;$[r>>1]=(me[1729+(pe[i>>2]|0)>>0]|0)<<3|(me[1729+(pe[w>>2]|0)>>0]|0)|(me[1729+(pe[n>>2]|0)>>0]|0)<<6|(me[1729+(pe[e>>2]|0)>>0]|0)<<9|(me[1729+(pe[a>>2]|0)>>0]|0)<<12|E<<15;M=me[1729+(pe[h>>2]|0)>>0]|0;$[r+2>>1]=(me[1729+(pe[s>>2]|0)>>0]|0)<<2|E>>>1|(me[1729+(pe[u>>2]|0)>>0]|0)<<5|(me[1729+(pe[l>>2]|0)>>0]|0)<<8|(me[1729+(pe[c>>2]|0)>>0]|0)<<11|M<<14;$[r+4>>1]=(me[1729+(pe[f>>2]|0)>>0]|0)<<1|M>>>2|(me[1729+(pe[d>>2]|0)>>0]|0)<<4|(me[1729+(pe[p>>2]|0)>>0]|0)<<7|(me[1729+(pe[m>>2]|0)>>0]|0)<<10|(me[1729+(pe[g>>2]|0)>>0]|0)<<13;v=v+1|0;if((v|0)==(_|0)){t=1;break}else r=r+6|0}}}while(0)}else t=0;ht(T);M=t;ve=S;return M|0}function It(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0,$=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0,se=0,ue=0,le=0,ce=0,he=0,fe=0;ce=ve;ve=ve+720|0;le=ce+184|0;se=ce+168|0;oe=ce+160|0;ae=ce+144|0;ne=ce+136|0;ie=ce+120|0;re=ce+112|0;ee=ce+96|0;$=ce+88|0;Q=ce+72|0;Z=ce+64|0;K=ce+48|0;J=ce+40|0;ue=ce+24|0;te=ce+16|0;Y=ce;G=ce+208|0;V=ce+192|0;B=e+240|0;N=pe[B>>2]|0;q=e+256|0;H=pe[q>>2]|0;r=de[(pe[e+88>>2]|0)+17>>0]|0;W=i>>>2;if(!(r<<24>>24)){ve=ce;return 1}U=(s|0)==0;X=s+-1|0;I=(a&1|0)!=0;R=i<<1;D=e+92|0;j=e+116|0;L=e+140|0;z=e+236|0;F=o+-1|0;O=(n&1|0)!=0;A=e+188|0;S=e+252|0;E=W+1|0;M=W+2|0;P=W+3|0;C=F<<4;k=r&255;r=0;a=0;n=1;T=0;do{if(!U){w=pe[t+(T<<2)>>2]|0;x=0;while(1){b=x&1;u=(b|0)==0;v=(b<<5^32)+-16|0;b=(b<<1^2)+-1|0;_=u?o:-1;l=u?0:F;e=(x|0)==(X|0);y=I&e;if((l|0)!=(_|0)){g=I&e^1;m=u?w:w+C|0;while(1){if((n|0)==1)n=gt(D,j)|0|512;p=n&7;n=n>>>3;u=me[1823+p>>0]|0;e=0;do{f=(gt(D,L)|0)+a|0;d=f-N|0;a=d>>31;a=a&f|d&~a;if((pe[B>>2]|0)>>>0<=a>>>0){pe[Y>>2]=1154;pe[Y+4>>2]=903;pe[Y+8>>2]=1781;_r(G,1100,Y)|0;yr(G,te)|0}pe[V+(e<<2)>>2]=pe[(pe[z>>2]|0)+(a<<2)>>2];e=e+1|0}while(e>>>0>>0);d=O&(l|0)==(F|0);if(y|d){f=0;do{c=be(f,i)|0;e=m+c|0;u=(f|0)==0|g;h=f<<1;fe=(gt(D,A)|0)+r|0;he=fe-H|0;r=he>>31;r=r&fe|he&~r;do{if(d){if(!u){he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;break}pe[e>>2]=pe[V+((me[1831+(p<<2)+h>>0]|0)<<2)>>2];if((pe[q>>2]|0)>>>0<=r>>>0){pe[ae>>2]=1154;pe[ae+4>>2]=903;pe[ae+8>>2]=1781;_r(G,1100,ae)|0;yr(G,oe)|0}pe[m+(c+4)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r}else{if(!u){he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;break}pe[e>>2]=pe[V+((me[1831+(p<<2)+h>>0]|0)<<2)>>2];if((pe[q>>2]|0)>>>0<=r>>>0){pe[ie>>2]=1154;pe[ie+4>>2]=903;pe[ie+8>>2]=1781;_r(G,1100,ie)|0;yr(G,ne)|0}pe[m+(c+4)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;pe[m+(c+8)>>2]=pe[V+((me[(h|1)+(1831+(p<<2))>>0]|0)<<2)>>2];if((pe[q>>2]|0)>>>0<=r>>>0){pe[se>>2]=1154;pe[se+4>>2]=903;pe[se+8>>2]=1781;_r(G,1100,se)|0;yr(G,le)|0}pe[m+(c+12)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2]}}while(0);f=f+1|0}while((f|0)!=2)}else{pe[m>>2]=pe[V+((me[1831+(p<<2)>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[ue>>2]=1154;pe[ue+4>>2]=903;pe[ue+8>>2]=1781;_r(G,1100,ue)|0;yr(G,J)|0}pe[m+4>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];pe[m+8>>2]=pe[V+((me[1831+(p<<2)+1>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[K>>2]=1154;pe[K+4>>2]=903;pe[K+8>>2]=1781;_r(G,1100,K)|0;yr(G,Z)|0}pe[m+12>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];pe[m+(W<<2)>>2]=pe[V+((me[1831+(p<<2)+2>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[Q>>2]=1154;pe[Q+4>>2]=903;pe[Q+8>>2]=1781;_r(G,1100,Q)|0;yr(G,$)|0}pe[m+(E<<2)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];pe[m+(M<<2)>>2]=pe[V+((me[1831+(p<<2)+3>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[ee>>2]=1154;pe[ee+4>>2]=903;pe[ee+8>>2]=1781;_r(G,1100,ee)|0;yr(G,re)|0}pe[m+(P<<2)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2]}l=l+b|0;if((l|0)==(_|0))break;else m=m+v|0}}x=x+1|0;if((x|0)==(s|0))break;else w=w+R|0}}T=T+1|0}while((T|0)!=(k|0));ve=ce;return 1}function Rt(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0,$=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0,se=0,ue=0,le=0,ce=0,he=0,fe=0;he=ve;ve=ve+640|0;ue=he+88|0;se=he+72|0;oe=he+64|0;ae=he+48|0;ne=he+40|0;ce=he+24|0;le=he+16|0;ie=he;te=he+128|0;re=he+112|0;ee=he+96|0;B=e+240|0;N=pe[B>>2]|0;q=e+256|0;Z=pe[q>>2]|0;Q=e+272|0;$=pe[Q>>2]|0;r=pe[e+88>>2]|0;U=(me[r+63>>0]|0)<<8|(me[r+64>>0]|0);r=de[r+17>>0]|0;if(!(r<<24>>24)){ve=he;return 1}X=(s|0)==0;H=s+-1|0;W=i<<1;G=e+92|0;V=e+116|0;Y=o+-1|0;J=e+212|0;K=e+188|0;F=(n&1|0)==0;z=(a&1|0)==0;O=e+288|0;I=e+284|0;R=e+252|0;D=e+140|0;j=e+236|0;L=e+164|0;C=e+268|0;A=Y<<5;M=r&255;r=0;n=0;a=0;e=0;u=1;P=0;do{if(!X){S=pe[t+(P<<2)>>2]|0;E=0;while(1){k=E&1;l=(k|0)==0;x=(k<<6^64)+-32|0;k=(k<<1^2)+-1|0;T=l?o:-1;c=l?0:Y;if((c|0)!=(T|0)){w=z|(E|0)!=(H|0);_=l?S:S+A|0;while(1){if((u|0)==1)u=gt(G,V)|0|512;y=u&7;u=u>>>3;h=me[1823+y>>0]|0;l=0;do{v=(gt(G,L)|0)+n|0;b=v-$|0;n=b>>31;n=n&v|b&~n;if((pe[Q>>2]|0)>>>0<=n>>>0){pe[ie>>2]=1154;pe[ie+4>>2]=903;pe[ie+8>>2]=1781;_r(te,1100,ie)|0;yr(te,le)|0}pe[ee+(l<<2)>>2]=ge[(pe[C>>2]|0)+(n<<1)>>1];l=l+1|0}while(l>>>0>>0);l=0;do{v=(gt(G,D)|0)+e|0;b=v-N|0;e=b>>31;e=e&v|b&~e;if((pe[B>>2]|0)>>>0<=e>>>0){pe[ce>>2]=1154;pe[ce+4>>2]=903;pe[ce+8>>2]=1781;_r(te,1100,ce)|0;yr(te,ne)|0}pe[re+(l<<2)>>2]=pe[(pe[j>>2]|0)+(e<<2)>>2];l=l+1|0}while(l>>>0>>0);b=F|(c|0)!=(Y|0);g=0;v=_;while(1){m=w|(g|0)==0;p=g<<1;f=0;d=v;while(1){h=(gt(G,J)|0)+r|0;l=h-U|0;r=l>>31;r=r&h|l&~r;l=(gt(G,K)|0)+a|0;h=l-Z|0;a=h>>31;a=a&l|h&~a;if((b|(f|0)==0)&m){l=me[f+p+(1831+(y<<2))>>0]|0;h=r*3|0;if((pe[O>>2]|0)>>>0<=h>>>0){pe[ae>>2]=1154;pe[ae+4>>2]=903;pe[ae+8>>2]=1781;_r(te,1100,ae)|0;yr(te,oe)|0}fe=pe[I>>2]|0;pe[d>>2]=(ge[fe+(h<<1)>>1]|0)<<16|pe[ee+(l<<2)>>2];pe[d+4>>2]=(ge[fe+(h+2<<1)>>1]|0)<<16|(ge[fe+(h+1<<1)>>1]|0);pe[d+8>>2]=pe[re+(l<<2)>>2];if((pe[q>>2]|0)>>>0<=a>>>0){pe[se>>2]=1154;pe[se+4>>2]=903;pe[se+8>>2]=1781;_r(te,1100,se)|0;yr(te,ue)|0}pe[d+12>>2]=pe[(pe[R>>2]|0)+(a<<2)>>2]}f=f+1|0;if((f|0)==2)break;else d=d+16|0}g=g+1|0;if((g|0)==2)break;else v=v+i|0}c=c+k|0;if((c|0)==(T|0))break;else _=_+x|0}}E=E+1|0;if((E|0)==(s|0))break;else S=S+W|0}}P=P+1|0}while((P|0)!=(M|0));ve=he;return 1}function Dt(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0;Z=ve;ve=ve+608|0;Y=Z+64|0;V=Z+48|0;G=Z+40|0;K=Z+24|0;J=Z+16|0;W=Z;H=Z+88|0;q=Z+72|0;R=e+272|0;D=pe[R>>2]|0;r=pe[e+88>>2]|0;j=(me[r+63>>0]|0)<<8|(me[r+64>>0]|0);r=de[r+17>>0]|0;if(!(r<<24>>24)){ve=Z;return 1}L=(s|0)==0;z=s+-1|0;F=i<<1;B=e+92|0;N=e+116|0;U=o+-1|0;X=e+212|0;I=(a&1|0)==0;C=e+288|0;A=e+284|0;O=e+164|0;M=e+268|0;P=U<<4;E=r&255;S=(n&1|0)!=0;r=0;a=0;e=1;T=0;do{if(!L){x=pe[t+(T<<2)>>2]|0;k=0;while(1){_=k&1;n=(_|0)==0;y=(_<<5^32)+-16|0;_=(_<<1^2)+-1|0;w=n?o:-1;u=n?0:U;if((u|0)!=(w|0)){b=I|(k|0)!=(z|0);v=n?x:x+P|0;while(1){if((e|0)==1)e=gt(B,N)|0|512;g=e&7;e=e>>>3;l=me[1823+g>>0]|0;n=0;do{p=(gt(B,O)|0)+a|0;m=p-D|0;a=m>>31;a=a&p|m&~a;if((pe[R>>2]|0)>>>0<=a>>>0){pe[W>>2]=1154;pe[W+4>>2]=903;pe[W+8>>2]=1781;_r(H,1100,W)|0;yr(H,J)|0}pe[q+(n<<2)>>2]=ge[(pe[M>>2]|0)+(a<<1)>>1];n=n+1|0}while(n>>>0>>0);m=(u|0)==(U|0)&S;d=0;p=v;while(1){f=b|(d|0)==0;h=d<<1;n=(gt(B,X)|0)+r|0;c=n-j|0;l=c>>31;l=l&n|c&~l;if(f){r=me[1831+(g<<2)+h>>0]|0;n=l*3|0;if((pe[C>>2]|0)>>>0<=n>>>0){pe[K>>2]=1154;pe[K+4>>2]=903;pe[K+8>>2]=1781;_r(H,1100,K)|0;yr(H,G)|0}c=pe[A>>2]|0;pe[p>>2]=(ge[c+(n<<1)>>1]|0)<<16|pe[q+(r<<2)>>2];pe[p+4>>2]=(ge[c+(n+2<<1)>>1]|0)<<16|(ge[c+(n+1<<1)>>1]|0)}c=p+8|0;n=(gt(B,X)|0)+l|0;l=n-j|0;r=l>>31;r=r&n|l&~r;if(!(m|f^1)){n=me[(h|1)+(1831+(g<<2))>>0]|0;l=r*3|0;if((pe[C>>2]|0)>>>0<=l>>>0){pe[V>>2]=1154;pe[V+4>>2]=903;pe[V+8>>2]=1781;_r(H,1100,V)|0;yr(H,Y)|0}f=pe[A>>2]|0;pe[c>>2]=(ge[f+(l<<1)>>1]|0)<<16|pe[q+(n<<2)>>2];pe[p+12>>2]=(ge[f+(l+2<<1)>>1]|0)<<16|(ge[f+(l+1<<1)>>1]|0)}d=d+1|0;if((d|0)==2)break;else p=p+i|0}u=u+_|0;if((u|0)==(w|0))break;else v=v+y|0}}k=k+1|0;if((k|0)==(s|0))break;else x=x+F|0}}T=T+1|0}while((T|0)!=(E|0));ve=Z;return 1}function jt(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0,$=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0;oe=ve;ve=ve+640|0;ie=oe+88|0;re=oe+72|0;te=oe+64|0;ee=oe+48|0;$=oe+40|0;ae=oe+24|0;ne=oe+16|0;Q=oe;Z=oe+128|0;J=oe+112|0;K=oe+96|0;B=e+272|0;N=pe[B>>2]|0;r=pe[e+88>>2]|0;U=(me[r+63>>0]|0)<<8|(me[r+64>>0]|0);r=de[r+17>>0]|0;if(!(r<<24>>24)){ve=oe;return 1}X=(s|0)==0;q=s+-1|0;H=i<<1;W=e+92|0;G=e+116|0;V=o+-1|0;Y=e+212|0;F=(n&1|0)==0;z=(a&1|0)==0;D=e+288|0;j=e+284|0;L=e+164|0;I=e+268|0;R=V<<5;A=r&255;r=0;n=0;a=0;e=0;u=1;O=0;do{if(!X){P=pe[t+(O<<2)>>2]|0;C=0;while(1){E=C&1;l=(E|0)==0;S=(E<<6^64)+-32|0;E=(E<<1^2)+-1|0;M=l?o:-1;c=l?0:V;if((c|0)!=(M|0)){T=z|(C|0)!=(q|0);k=l?P:P+R|0;while(1){if((u|0)==1)u=gt(W,G)|0|512;x=u&7;u=u>>>3;h=me[1823+x>>0]|0;l=0;do{_=(gt(W,L)|0)+e|0;w=_-N|0;e=w>>31;e=e&_|w&~e;if((pe[B>>2]|0)>>>0<=e>>>0){pe[Q>>2]=1154;pe[Q+4>>2]=903;pe[Q+8>>2]=1781;_r(Z,1100,Q)|0;yr(Z,ne)|0}pe[J+(l<<2)>>2]=ge[(pe[I>>2]|0)+(e<<1)>>1];l=l+1|0}while(l>>>0>>0);l=0;do{_=(gt(W,L)|0)+n|0;w=_-N|0;n=w>>31;n=n&_|w&~n;if((pe[B>>2]|0)>>>0<=n>>>0){pe[ae>>2]=1154;pe[ae+4>>2]=903;pe[ae+8>>2]=1781;_r(Z,1100,ae)|0;yr(Z,$)|0}pe[K+(l<<2)>>2]=ge[(pe[I>>2]|0)+(n<<1)>>1];l=l+1|0}while(l>>>0>>0);w=F|(c|0)!=(V|0);y=0;_=k;while(1){b=T|(y|0)==0;v=y<<1;m=0;g=_;while(1){p=(gt(W,Y)|0)+a|0;d=p-U|0;a=d>>31;a=a&p|d&~a;d=(gt(W,Y)|0)+r|0;p=d-U|0;r=p>>31;r=r&d|p&~r;if((w|(m|0)==0)&b){d=me[m+v+(1831+(x<<2))>>0]|0;p=a*3|0;l=pe[D>>2]|0;if(l>>>0<=p>>>0){pe[ee>>2]=1154;pe[ee+4>>2]=903;pe[ee+8>>2]=1781;_r(Z,1100,ee)|0;yr(Z,te)|0;l=pe[D>>2]|0}h=pe[j>>2]|0;f=r*3|0;if(l>>>0>f>>>0)l=h;else{pe[re>>2]=1154;pe[re+4>>2]=903;pe[re+8>>2]=1781;_r(Z,1100,re)|0;yr(Z,ie)|0;l=pe[j>>2]|0}pe[g>>2]=(ge[h+(p<<1)>>1]|0)<<16|pe[J+(d<<2)>>2];pe[g+4>>2]=(ge[h+(p+2<<1)>>1]|0)<<16|(ge[h+(p+1<<1)>>1]|0);pe[g+8>>2]=(ge[l+(f<<1)>>1]|0)<<16|pe[K+(d<<2)>>2];pe[g+12>>2]=(ge[l+(f+2<<1)>>1]|0)<<16|(ge[l+(f+1<<1)>>1]|0)}m=m+1|0;if((m|0)==2)break;else g=g+16|0}y=y+1|0;if((y|0)==2)break;else _=_+i|0}c=c+E|0;if((c|0)==(M|0))break;else k=k+S|0}}C=C+1|0;if((C|0)==(s|0))break;else P=P+H|0}}O=O+1|0}while((O|0)!=(A|0));ve=oe;return 1}function Lt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0;f=ve;ve=ve+608|0;h=f+88|0;c=f+72|0;u=f+64|0;s=f+48|0;a=f+40|0;o=f+24|0;n=f+16|0;i=f;l=f+96|0;pe[e>>2]=0;t=e+284|0;r=pe[t>>2]|0;if(r){if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[i>>2]=1154;pe[i+4>>2]=2499;pe[i+8>>2]=1516;_r(l,1100,i)|0;yr(l,n)|0}pe[t>>2]=0;pe[e+288>>2]=0;pe[e+292>>2]=0}de[e+296>>0]=0;t=e+268|0;r=pe[t>>2]|0;if(r){if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[o>>2]=1154;pe[o+4>>2]=2499;pe[o+8>>2]=1516;_r(l,1100,o)|0;yr(l,a)|0}pe[t>>2]=0;pe[e+272>>2]=0;pe[e+276>>2]=0}de[e+280>>0]=0;t=e+252|0;r=pe[t>>2]|0;if(r){if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[s>>2]=1154;pe[s+4>>2]=2499;pe[s+8>>2]=1516;_r(l,1100,s)|0;yr(l,u)|0}pe[t>>2]=0;pe[e+256>>2]=0;pe[e+260>>2]=0}de[e+264>>0]=0;t=e+236|0;r=pe[t>>2]|0;if(!r){h=e+248|0;de[h>>0]=0;h=e+212|0;ht(h);h=e+188|0;ht(h);h=e+164|0;ht(h);h=e+140|0;ht(h);h=e+116|0;ht(h);ve=f;return}if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[c>>2]=1154;pe[c+4>>2]=2499;pe[c+8>>2]=1516;_r(l,1100,c)|0;yr(l,h)|0}pe[t>>2]=0;pe[e+240>>2]=0;pe[e+244>>2]=0;h=e+248|0;de[h>>0]=0;h=e+212|0;ht(h);h=e+188|0;ht(h);h=e+164|0;ht(h);h=e+140|0;ht(h);h=e+116|0;ht(h);ve=f;return}function zt(e,t){e=e|0;t=t|0;var r=0;r=ve;ve=ve+16|0;pe[r>>2]=t;t=pe[63]|0;wr(t,e,r)|0;vr(10,t)|0;Xe()}function Ft(){var e=0,t=0;e=ve;ve=ve+16|0;if(!(Le(200,2)|0)){t=De(pe[49]|0)|0;ve=e;return t|0}else zt(2090,e);return 0}function Bt(e){e=e|0;Ur(e);return}function Nt(e){e=e|0;var t=0;t=ve;ve=ve+16|0;Oi[e&3]();zt(2139,t)}function Ut(){var e=0,t=0;e=Ft()|0;if(((e|0)!=0?(t=pe[e>>2]|0,(t|0)!=0):0)?(e=t+48|0,(pe[e>>2]&-256|0)==1126902528?(pe[e+4>>2]|0)==1129074247:0):0)Nt(pe[t+12>>2]|0);t=pe[28]|0;pe[28]=t+0;Nt(t)}function Xt(e){e=e|0;return}function qt(e){e=e|0;return}function Ht(e){e=e|0;return}function Wt(e){e=e|0;return}function Gt(e){e=e|0;Bt(e);return}function Vt(e){e=e|0;Bt(e);return}function Yt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;o=ve;ve=ve+64|0;a=o;if((e|0)!=(t|0))if((t|0)!=0?(n=Qt(t,24,40,0)|0,(n|0)!=0):0){t=a;i=t+56|0;do{pe[t>>2]=0;t=t+4|0}while((t|0)<(i|0));pe[a>>2]=n;pe[a+8>>2]=e;pe[a+12>>2]=-1;pe[a+48>>2]=1;Di[pe[(pe[n>>2]|0)+28>>2]&3](n,a,pe[r>>2]|0,1);if((pe[a+24>>2]|0)==1){pe[r>>2]=pe[a+16>>2];t=1}else t=0}else t=0;else t=1;ve=o;return t|0}function Jt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0;e=t+16|0;n=pe[e>>2]|0;do{if(n){if((n|0)!=(r|0)){i=t+36|0;pe[i>>2]=(pe[i>>2]|0)+1;pe[t+24>>2]=2;de[t+54>>0]=1;break}e=t+24|0;if((pe[e>>2]|0)==2)pe[e>>2]=i}else{pe[e>>2]=r;pe[t+24>>2]=i;pe[t+36>>2]=1}}while(0);return}function Kt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;if((e|0)==(pe[t+8>>2]|0))Jt(0,t,r,i);return}function Zt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;if((e|0)==(pe[t+8>>2]|0))Jt(0,t,r,i);else{e=pe[e+8>>2]|0;Di[pe[(pe[e>>2]|0)+28>>2]&3](e,t,r,i)}return}function Qt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0;d=ve;ve=ve+64|0;f=d;h=pe[e>>2]|0;c=e+(pe[h+-8>>2]|0)|0;h=pe[h+-4>>2]|0;pe[f>>2]=r;pe[f+4>>2]=e;pe[f+8>>2]=t;pe[f+12>>2]=i;i=f+16|0;e=f+20|0;t=f+24|0;n=f+28|0;a=f+32|0;o=f+40|0;s=(h|0)==(r|0);u=i;l=u+36|0;do{pe[u>>2]=0;u=u+4|0}while((u|0)<(l|0));$[i+36>>1]=0;de[i+38>>0]=0;e:do{if(s){pe[f+48>>2]=1;Ii[pe[(pe[r>>2]|0)+20>>2]&3](r,f,c,c,1,0);i=(pe[t>>2]|0)==1?c:0}else{Mi[pe[(pe[h>>2]|0)+24>>2]&3](h,f,c,1,0);switch(pe[f+36>>2]|0){case 0:{i=(pe[o>>2]|0)==1&(pe[n>>2]|0)==1&(pe[a>>2]|0)==1?pe[e>>2]|0:0;break e}case 1:break;default:{i=0;break e}}if((pe[t>>2]|0)!=1?!((pe[o>>2]|0)==0&(pe[n>>2]|0)==1&(pe[a>>2]|0)==1):0){i=0;break}i=pe[i>>2]|0}}while(0);ve=d;return i|0}function $t(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;de[t+53>>0]=1;do{if((pe[t+4>>2]|0)==(i|0)){de[t+52>>0]=1;i=t+16|0;e=pe[i>>2]|0;if(!e){pe[i>>2]=r;pe[t+24>>2]=n;pe[t+36>>2]=1;if(!((n|0)==1?(pe[t+48>>2]|0)==1:0))break;de[t+54>>0]=1;break}if((e|0)!=(r|0)){n=t+36|0;pe[n>>2]=(pe[n>>2]|0)+1;de[t+54>>0]=1;break}e=t+24|0;i=pe[e>>2]|0;if((i|0)==2){pe[e>>2]=n;i=n}if((i|0)==1?(pe[t+48>>2]|0)==1:0)de[t+54>>0]=1}}while(0);return}function er(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0;e:do{if((e|0)==(pe[t+8>>2]|0)){if((pe[t+4>>2]|0)==(r|0)?(a=t+28|0,(pe[a>>2]|0)!=1):0)pe[a>>2]=i}else{if((e|0)!=(pe[t>>2]|0)){s=pe[e+8>>2]|0;Mi[pe[(pe[s>>2]|0)+24>>2]&3](s,t,r,i,n);break}if((pe[t+16>>2]|0)!=(r|0)?(o=t+20|0,(pe[o>>2]|0)!=(r|0)):0){pe[t+32>>2]=i;i=t+44|0;if((pe[i>>2]|0)==4)break;a=t+52|0;de[a>>0]=0;u=t+53|0;de[u>>0]=0;e=pe[e+8>>2]|0;Ii[pe[(pe[e>>2]|0)+20>>2]&3](e,t,r,r,1,n);if(de[u>>0]|0){if(!(de[a>>0]|0)){a=1;s=13}}else{a=0;s=13}do{if((s|0)==13){pe[o>>2]=r;u=t+40|0;pe[u>>2]=(pe[u>>2]|0)+1;if((pe[t+36>>2]|0)==1?(pe[t+24>>2]|0)==2:0){de[t+54>>0]=1;if(a)break}else s=16;if((s|0)==16?a:0)break;pe[i>>2]=4;break e}}while(0);pe[i>>2]=3;break}if((i|0)==1)pe[t+32>>2]=1}}while(0);return}function tr(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0;do{if((e|0)==(pe[t+8>>2]|0)){if((pe[t+4>>2]|0)==(r|0)?(o=t+28|0,(pe[o>>2]|0)!=1):0)pe[o>>2]=i}else if((e|0)==(pe[t>>2]|0)){if((pe[t+16>>2]|0)!=(r|0)?(a=t+20|0,(pe[a>>2]|0)!=(r|0)):0){pe[t+32>>2]=i;pe[a>>2]=r;n=t+40|0;pe[n>>2]=(pe[n>>2]|0)+1;if((pe[t+36>>2]|0)==1?(pe[t+24>>2]|0)==2:0)de[t+54>>0]=1;pe[t+44>>2]=4;break}if((i|0)==1)pe[t+32>>2]=1}}while(0);return}function rr(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;if((e|0)==(pe[t+8>>2]|0))$t(0,t,r,i,n);else{e=pe[e+8>>2]|0;Ii[pe[(pe[e>>2]|0)+20>>2]&3](e,t,r,i,n,a)}return}function ir(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;if((e|0)==(pe[t+8>>2]|0))$t(0,t,r,i,n);return}function nr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;n=ve;ve=ve+16|0;i=n;pe[i>>2]=pe[r>>2];e=Ei[pe[(pe[e>>2]|0)+16>>2]&7](e,t,i)|0;if(e)pe[r>>2]=pe[i>>2];ve=n;return e&1|0}function ar(e){e=e|0;if(!e)e=0;else e=(Qt(e,24,72,0)|0)!=0;return e&1|0}function or(){var e=0,t=0,r=0,i=0,n=0,a=0,o=0,s=0;n=ve;ve=ve+48|0;o=n+32|0;r=n+24|0;s=n+16|0;a=n;n=n+36|0;e=Ft()|0;if((e|0)!=0?(i=pe[e>>2]|0,(i|0)!=0):0){e=i+48|0;t=pe[e>>2]|0;e=pe[e+4>>2]|0;if(!((t&-256|0)==1126902528&(e|0)==1129074247)){pe[r>>2]=pe[51];zt(2368,r)}if((t|0)==1126902529&(e|0)==1129074247)e=pe[i+44>>2]|0;else e=i+80|0;pe[n>>2]=e;i=pe[i>>2]|0;e=pe[i+4>>2]|0;if(Ei[pe[(pe[8>>2]|0)+16>>2]&7](8,i,n)|0){s=pe[n>>2]|0;n=pe[51]|0;s=Ci[pe[(pe[s>>2]|0)+8>>2]&1](s)|0;pe[a>>2]=n;pe[a+4>>2]=e;pe[a+8>>2]=s;zt(2282,a)}else{pe[s>>2]=pe[51];pe[s+4>>2]=e;zt(2327,s)}}zt(2406,o)}function sr(){var e=0;e=ve;ve=ve+16|0;if(!(ze(196,6)|0)){ve=e;return}else zt(2179,e)}function ur(e){e=e|0;var t=0;t=ve;ve=ve+16|0;Ur(e);if(!(Ne(pe[49]|0,0)|0)){ve=t;return}else zt(2229,t)}function lr(e){e=e|0;var t=0,r=0;t=0;while(1){if((me[2427+t>>0]|0)==(e|0)){r=2;break}t=t+1|0;if((t|0)==87){t=87;e=2515;r=5;break}}if((r|0)==2)if(!t)e=2515;else{e=2515;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(de[r>>0]|0))break;else r=e}t=t+-1|0;if(!t)break;else r=5}return e|0}function cr(){var e=0;if(!(pe[52]|0))e=264;else{e=(je()|0)+60|0;e=pe[e>>2]|0}return e|0}function hr(e){e=e|0;var t=0;if(e>>>0>4294963200){t=cr()|0;pe[t>>2]=0-e;e=-1}return e|0}function fr(e,t){e=+e;t=t|0;var r=0,i=0,n=0;ee[te>>3]=e;r=pe[te>>2]|0;i=pe[te+4>>2]|0;n=Jr(r|0,i|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0.0){e=+fr(e*18446744073709552.0e3,t);r=(pe[t>>2]|0)+-64|0}else r=0;pe[t>>2]=r;break}case 2047:break;default:{pe[t>>2]=n+-1022;pe[te>>2]=r;pe[te+4>>2]=i&-2146435073|1071644672;e=+ee[te>>3]}}return+e}function dr(e,t){e=+e;t=t|0;return+ +fr(e,t)}function pr(e,t,r){e=e|0;t=t|0;r=r|0;do{if(e){if(t>>>0<128){de[e>>0]=t;e=1;break}if(t>>>0<2048){de[e>>0]=t>>>6|192;de[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){de[e>>0]=t>>>12|224;de[e+1>>0]=t>>>6&63|128;de[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){de[e>>0]=t>>>18|240;de[e+1>>0]=t>>>12&63|128;de[e+2>>0]=t>>>6&63|128;de[e+3>>0]=t&63|128;e=4;break}else{e=cr()|0;pe[e>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function mr(e,t){e=e|0;t=t|0;if(!e)e=0;else e=pr(e,t,0)|0;return e|0}function gr(e){e=e|0;var t=0,r=0;do{if(e){if((pe[e+76>>2]|0)<=-1){t=Rr(e)|0;break}r=(Tr(e)|0)==0;t=Rr(e)|0;if(!r)Sr(e)}else{if(!(pe[65]|0))t=0;else t=gr(pe[65]|0)|0;Ue(236);e=pe[58]|0;if(e)do{if((pe[e+76>>2]|0)>-1)r=Tr(e)|0;else r=0;if((pe[e+20>>2]|0)>>>0>(pe[e+28>>2]|0)>>>0)t=Rr(e)|0|t;if(r)Sr(e);e=pe[e+56>>2]|0}while((e|0)!=0);Fe(236)}}while(0);return t|0}function vr(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0;if((pe[t+76>>2]|0)>=0?(Tr(t)|0)!=0:0){if((de[t+75>>0]|0)!=(e|0)?(i=t+20|0,n=pe[i>>2]|0,n>>>0<(pe[t+16>>2]|0)>>>0):0){pe[i>>2]=n+1;de[n>>0]=e;r=e&255}else r=Er(t,e)|0;Sr(t)}else o=3;do{if((o|0)==3){if((de[t+75>>0]|0)!=(e|0)?(a=t+20|0,r=pe[a>>2]|0,r>>>0<(pe[t+16>>2]|0)>>>0):0){pe[a>>2]=r+1;de[r>>0]=e;r=e&255;break}r=Er(t,e)|0}}while(0);return r|0}function br(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;i=r+16|0;n=pe[i>>2]|0;if(!n)if(!(Or(r)|0)){n=pe[i>>2]|0;a=4}else i=0;else a=4;e:do{if((a|0)==4){o=r+20|0;a=pe[o>>2]|0;if((n-a|0)>>>0>>0){i=Ei[pe[r+36>>2]&7](r,e,t)|0;break}t:do{if((de[r+75>>0]|0)>-1){i=t;while(1){if(!i){n=a;i=0;break t}n=i+-1|0;if((de[e+n>>0]|0)==10)break;else i=n}if((Ei[pe[r+36>>2]&7](r,e,i)|0)>>>0>>0)break e;t=t-i|0;e=e+i|0;n=pe[o>>2]|0}else{n=a;i=0}}while(0);Qr(n|0,e|0,t|0)|0;pe[o>>2]=(pe[o>>2]|0)+t;i=i+t|0}}while(0);return i|0}function yr(e,t){e=e|0;t=t|0;var r=0,i=0;r=ve;ve=ve+16|0;i=r;pe[i>>2]=t;t=wr(pe[64]|0,e,i)|0;ve=r;return t|0}function _r(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;i=ve;ve=ve+16|0;n=i;pe[n>>2]=r;r=kr(e,t,n)|0;ve=i;return r|0}function wr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0;m=ve;ve=ve+224|0;h=m+120|0;p=m+80|0;d=m;f=m+136|0;i=p;n=i+40|0;do{pe[i>>2]=0;i=i+4|0}while((i|0)<(n|0));pe[h>>2]=pe[r>>2];if((Dr(0,t,h,d,p)|0)<0)r=-1;else{if((pe[e+76>>2]|0)>-1)l=Tr(e)|0;else l=0;r=pe[e>>2]|0;c=r&32;if((de[e+74>>0]|0)<1)pe[e>>2]=r&-33;r=e+48|0;if(!(pe[r>>2]|0)){n=e+44|0;a=pe[n>>2]|0;pe[n>>2]=f;o=e+28|0;pe[o>>2]=f;s=e+20|0;pe[s>>2]=f;pe[r>>2]=80;u=e+16|0;pe[u>>2]=f+80;i=Dr(e,t,h,d,p)|0;if(a){Ei[pe[e+36>>2]&7](e,0,0)|0;i=(pe[s>>2]|0)==0?-1:i;pe[n>>2]=a;pe[r>>2]=0;pe[u>>2]=0;pe[o>>2]=0;pe[s>>2]=0}}else i=Dr(e,t,h,d,p)|0;r=pe[e>>2]|0;pe[e>>2]=r|c;if(l)Sr(e);r=(r&32|0)==0?i:-1}ve=m;return r|0}function xr(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+128|0;n=c+112|0;l=c;a=l;o=268;s=a+112|0;do{pe[a>>2]=pe[o>>2];a=a+4|0;o=o+4|0}while((a|0)<(s|0));if((t+-1|0)>>>0>2147483646)if(!t){t=1;u=4}else{t=cr()|0;pe[t>>2]=75;t=-1}else{n=e;u=4}if((u|0)==4){u=-2-n|0;u=t>>>0>u>>>0?u:t;pe[l+48>>2]=u;e=l+20|0;pe[e>>2]=n;pe[l+44>>2]=n;t=n+u|0;n=l+16|0;pe[n>>2]=t;pe[l+28>>2]=t;t=wr(l,r,i)|0;if(u){r=pe[e>>2]|0;de[r+(((r|0)==(pe[n>>2]|0))<<31>>31)>>0]=0}}ve=c;return t|0}function kr(e,t,r){e=e|0;t=t|0;r=r|0;return xr(e,2147483647,t,r)|0}function Tr(e){e=e|0;return 0}function Sr(e){e=e|0;return}function Er(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0;u=ve;ve=ve+16|0;s=u;o=t&255;de[s>>0]=o;i=e+16|0;n=pe[i>>2]|0;if(!n)if(!(Or(e)|0)){n=pe[i>>2]|0;a=4}else r=-1;else a=4;do{if((a|0)==4){i=e+20|0;a=pe[i>>2]|0;if(a>>>0>>0?(r=t&255,(r|0)!=(de[e+75>>0]|0)):0){pe[i>>2]=a+1;de[a>>0]=o;break}if((Ei[pe[e+36>>2]&7](e,s,1)|0)==1)r=me[s>>0]|0;else r=-1}}while(0);ve=u;return r|0}function Mr(e){e=e|0;var t=0,r=0;t=ve;ve=ve+16|0;r=t;pe[r>>2]=pe[e+60>>2];e=hr(Ee(6,r|0)|0)|0;ve=t;return e|0}function Pr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0;n=ve;ve=ve+32|0;a=n;i=n+20|0;pe[a>>2]=pe[e+60>>2];pe[a+4>>2]=0;pe[a+8>>2]=t;pe[a+12>>2]=i;pe[a+16>>2]=r;if((hr(We(140,a|0)|0)|0)<0){pe[i>>2]=-1;e=-1}else e=pe[i>>2]|0;ve=n;return e|0}function Cr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;p=ve;ve=ve+48|0;h=p+16|0;c=p;i=p+32|0;f=e+28|0;n=pe[f>>2]|0;pe[i>>2]=n;d=e+20|0;n=(pe[d>>2]|0)-n|0;pe[i+4>>2]=n;pe[i+8>>2]=t;pe[i+12>>2]=r;u=e+60|0;l=e+44|0;t=2;n=n+r|0;while(1){if(!(pe[52]|0)){pe[h>>2]=pe[u>>2];pe[h+4>>2]=i;pe[h+8>>2]=t;o=hr(Ge(146,h|0)|0)|0}else{qe(7,e|0);pe[c>>2]=pe[u>>2];pe[c+4>>2]=i;pe[c+8>>2]=t;o=hr(Ge(146,c|0)|0)|0;Te(0)}if((n|0)==(o|0)){n=6;break}if((o|0)<0){n=8;break}n=n-o|0;a=pe[i+4>>2]|0;if(o>>>0<=a>>>0)if((t|0)==2){pe[f>>2]=(pe[f>>2]|0)+o;s=a;t=2}else s=a;else{s=pe[l>>2]|0;pe[f>>2]=s;pe[d>>2]=s;s=pe[i+12>>2]|0;o=o-a|0;i=i+8|0;t=t+-1|0}pe[i>>2]=(pe[i>>2]|0)+o;pe[i+4>>2]=s-o}if((n|0)==6){h=pe[l>>2]|0;pe[e+16>>2]=h+(pe[e+48>>2]|0);e=h;pe[f>>2]=e;pe[d>>2]=e}else if((n|0)==8){pe[e+16>>2]=0;pe[f>>2]=0;pe[d>>2]=0;pe[e>>2]=pe[e>>2]|32;if((t|0)==2)r=0;else r=r-(pe[i+4>>2]|0)|0}ve=p;return r|0}function Ar(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;n=ve;ve=ve+80|0;i=n;pe[e+36>>2]=3;if((pe[e>>2]&64|0)==0?(pe[i>>2]=pe[e+60>>2],pe[i+4>>2]=21505,pe[i+8>>2]=n+12,(Se(54,i|0)|0)!=0):0)de[e+75>>0]=-1;i=Cr(e,t,r)|0;ve=n;return i|0}function Or(e){e=e|0;var t=0,r=0;t=e+74|0;r=de[t>>0]|0;de[t>>0]=r+255|r;t=pe[e>>2]|0;if(!(t&8)){pe[e+8>>2]=0;pe[e+4>>2]=0;t=pe[e+44>>2]|0;pe[e+28>>2]=t;pe[e+20>>2]=t;pe[e+16>>2]=t+(pe[e+48>>2]|0);t=0}else{pe[e>>2]=t|32;t=-1}return t|0}function Ir(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;a=t&255;i=(r|0)!=0;e:do{if(i&(e&3|0)!=0){n=t&255;while(1){if((de[e>>0]|0)==n<<24>>24){o=6;break e}e=e+1|0;r=r+-1|0;i=(r|0)!=0;if(!(i&(e&3|0)!=0)){o=5;break}}}else o=5}while(0);if((o|0)==5)if(i)o=6;else r=0;e:do{if((o|0)==6){n=t&255;if((de[e>>0]|0)!=n<<24>>24){i=be(a,16843009)|0;t:do{if(r>>>0>3)while(1){a=pe[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){o=11;break t}}else o=11}while(0);if((o|0)==11)if(!r){r=0;break}while(1){if((de[e>>0]|0)==n<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return((r|0)!=0?e:0)|0}function Rr(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0;t=e+20|0;a=e+28|0;if((pe[t>>2]|0)>>>0>(pe[a>>2]|0)>>>0?(Ei[pe[e+36>>2]&7](e,0,0)|0,(pe[t>>2]|0)==0):0)t=-1;else{o=e+4|0;r=pe[o>>2]|0;i=e+8|0;n=pe[i>>2]|0;if(r>>>0>>0)Ei[pe[e+40>>2]&7](e,r-n|0,1)|0;pe[e+16>>2]=0;pe[a>>2]=0;pe[t>>2]=0;pe[i>>2]=0;pe[o>>2]=0;t=0}return t|0}function Dr(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0.0,c=0,h=0,f=0,d=0,p=0.0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0;Q=ve;ve=ve+624|0;V=Q+24|0;J=Q+16|0;Y=Q+588|0;X=Q+576|0;G=Q;B=Q+536|0;Z=Q+8|0;K=Q+528|0;A=(e|0)!=0;O=B+40|0;F=O;B=B+39|0;N=Z+4|0;U=X+12|0;X=X+11|0;q=Y;H=U;W=H-q|0;I=-2-q|0;R=H+2|0;D=V+288|0;j=Y+9|0;L=j;z=Y+8|0;a=0;m=t;o=0;t=0;e:while(1){do{if((a|0)>-1)if((o|0)>(2147483647-a|0)){a=cr()|0;pe[a>>2]=75;a=-1;break}else{a=o+a|0;break}}while(0);o=de[m>>0]|0;if(!(o<<24>>24)){C=245;break}else s=m;t:while(1){switch(o<<24>>24){case 37:{o=s;C=9;break t}case 0:{o=s;break t}default:{}}P=s+1|0;o=de[P>>0]|0;s=P}t:do{if((C|0)==9)while(1){C=0;if((de[o+1>>0]|0)!=37)break t;s=s+1|0;o=o+2|0;if((de[o>>0]|0)==37)C=9;else break}}while(0);v=s-m|0;if(A?(pe[e>>2]&32|0)==0:0)br(m,v,e)|0;if((s|0)!=(m|0)){m=o;o=v;continue}c=o+1|0;s=de[c>>0]|0;u=(s<<24>>24)+-48|0;if(u>>>0<10){P=(de[o+2>>0]|0)==36;c=P?o+3|0:c;s=de[c>>0]|0;d=P?u:-1;t=P?1:t}else d=-1;o=s<<24>>24;t:do{if((o&-32|0)==32){u=0;while(1){if(!(1<>24)+-32|u;c=c+1|0;s=de[c>>0]|0;o=s<<24>>24;if((o&-32|0)!=32){h=u;o=c;break}}}else{h=0;o=c}}while(0);do{if(s<<24>>24==42){u=o+1|0;s=(de[u>>0]|0)+-48|0;if(s>>>0<10?(de[o+2>>0]|0)==36:0){pe[n+(s<<2)>>2]=10;t=1;o=o+3|0;s=pe[i+((de[u>>0]|0)+-48<<3)>>2]|0}else{if(t){a=-1;break e}if(!A){g=h;o=u;t=0;P=0;break}t=(pe[r>>2]|0)+(4-1)&~(4-1);s=pe[t>>2]|0;pe[r>>2]=t+4;t=0;o=u}if((s|0)<0){g=h|8192;P=0-s|0}else{g=h;P=s}}else{u=(s<<24>>24)+-48|0;if(u>>>0<10){s=0;do{s=(s*10|0)+u|0;o=o+1|0;u=(de[o>>0]|0)+-48|0}while(u>>>0<10);if((s|0)<0){a=-1;break e}else{g=h;P=s}}else{g=h;P=0}}}while(0);t:do{if((de[o>>0]|0)==46){u=o+1|0;s=de[u>>0]|0;if(s<<24>>24!=42){c=(s<<24>>24)+-48|0;if(c>>>0<10){o=u;s=0}else{o=u;c=0;break}while(1){s=(s*10|0)+c|0;o=o+1|0;c=(de[o>>0]|0)+-48|0;if(c>>>0>=10){c=s;break t}}}u=o+2|0;s=(de[u>>0]|0)+-48|0;if(s>>>0<10?(de[o+3>>0]|0)==36:0){pe[n+(s<<2)>>2]=10;o=o+4|0;c=pe[i+((de[u>>0]|0)+-48<<3)>>2]|0;break}if(t){a=-1;break e}if(A){o=(pe[r>>2]|0)+(4-1)&~(4-1);c=pe[o>>2]|0;pe[r>>2]=o+4;o=u}else{o=u;c=0}}else c=-1}while(0);f=0;while(1){s=(de[o>>0]|0)+-65|0;if(s>>>0>57){a=-1;break e}u=o+1|0;s=de[5359+(f*58|0)+s>>0]|0;h=s&255;if((h+-1|0)>>>0<8){o=u;f=h}else{M=u;break}}if(!(s<<24>>24)){a=-1;break}u=(d|0)>-1;do{if(s<<24>>24==19)if(u){a=-1;break e}else C=52;else{if(u){pe[n+(d<<2)>>2]=h;S=i+(d<<3)|0;E=pe[S+4>>2]|0;C=G;pe[C>>2]=pe[S>>2];pe[C+4>>2]=E;C=52;break}if(!A){a=0;break e}zr(G,h,r)}}while(0);if((C|0)==52?(C=0,!A):0){m=M;o=v;continue}d=de[o>>0]|0;d=(f|0)!=0&(d&15|0)==3?d&-33:d;u=g&-65537;E=(g&8192|0)==0?g:u;t:do{switch(d|0){case 110:switch(f|0){case 0:{pe[pe[G>>2]>>2]=a;m=M;o=v;continue e}case 1:{pe[pe[G>>2]>>2]=a;m=M;o=v;continue e}case 2:{m=pe[G>>2]|0;pe[m>>2]=a;pe[m+4>>2]=((a|0)<0)<<31>>31;m=M;o=v;continue e}case 3:{$[pe[G>>2]>>1]=a;m=M;o=v;continue e}case 4:{de[pe[G>>2]>>0]=a;m=M;o=v;continue e}case 6:{pe[pe[G>>2]>>2]=a;m=M;o=v;continue e}case 7:{m=pe[G>>2]|0;pe[m>>2]=a;pe[m+4>>2]=((a|0)<0)<<31>>31;m=M;o=v;continue e}default:{m=M;o=v;continue e}}case 112:{f=E|8;c=c>>>0>8?c:8;d=120;C=64;break}case 88:case 120:{f=E;C=64;break}case 111:{u=G;s=pe[u>>2]|0;u=pe[u+4>>2]|0;if((s|0)==0&(u|0)==0)o=O;else{o=O;do{o=o+-1|0;de[o>>0]=s&7|48;s=Jr(s|0,u|0,3)|0;u=re}while(!((s|0)==0&(u|0)==0))}if(!(E&8)){s=E;f=0;h=5839;C=77}else{f=F-o+1|0;s=E;c=(c|0)<(f|0)?f:c;f=0;h=5839;C=77}break}case 105:case 100:{s=G;o=pe[s>>2]|0;s=pe[s+4>>2]|0;if((s|0)<0){o=Vr(0,0,o|0,s|0)|0;s=re;u=G;pe[u>>2]=o;pe[u+4>>2]=s;u=1;h=5839;C=76;break t}if(!(E&2048)){h=E&1;u=h;h=(h|0)==0?5839:5841;C=76}else{u=1;h=5840;C=76}break}case 117:{s=G;o=pe[s>>2]|0;s=pe[s+4>>2]|0;u=0;h=5839;C=76;break}case 99:{de[B>>0]=pe[G>>2];m=B;s=1;f=0;d=5839;o=O;break}case 109:{o=cr()|0;o=lr(pe[o>>2]|0)|0;C=82;break}case 115:{o=pe[G>>2]|0;o=(o|0)!=0?o:5849;C=82;break}case 67:{pe[Z>>2]=pe[G>>2];pe[N>>2]=0;pe[G>>2]=Z;c=-1;C=86;break}case 83:{if(!c){Br(e,32,P,0,E);o=0;C=98}else C=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{l=+ee[G>>3];pe[J>>2]=0;ee[te>>3]=l;if((pe[te+4>>2]|0)>=0)if(!(E&2048)){S=E&1;T=S;S=(S|0)==0?5857:5862}else{T=1;S=5859}else{l=-l;T=1;S=5856}ee[te>>3]=l;k=pe[te+4>>2]&2146435072;do{if(k>>>0<2146435072|(k|0)==2146435072&0<0){p=+dr(l,J)*2.0;s=p!=0.0;if(s)pe[J>>2]=(pe[J>>2]|0)+-1;w=d|32;if((w|0)==97){m=d&32;v=(m|0)==0?S:S+9|0;g=T|2;o=12-c|0;do{if(!(c>>>0>11|(o|0)==0)){l=8.0;do{o=o+-1|0;l=l*16.0}while((o|0)!=0);if((de[v>>0]|0)==45){l=-(l+(-p-l));break}else{l=p+l-l;break}}else l=p}while(0);s=pe[J>>2]|0;o=(s|0)<0?0-s|0:s;o=Fr(o,((o|0)<0)<<31>>31,U)|0;if((o|0)==(U|0)){de[X>>0]=48;o=X}de[o+-1>>0]=(s>>31&2)+43;f=o+-2|0;de[f>>0]=d+15;h=(c|0)<1;u=(E&8|0)==0;s=Y;while(1){S=~~l;o=s+1|0;de[s>>0]=me[5823+S>>0]|m;l=(l-+(S|0))*16.0;do{if((o-q|0)==1){if(u&(h&l==0.0))break;de[o>>0]=46;o=s+2|0}}while(0);if(!(l!=0.0))break;else s=o}c=(c|0)!=0&(I+o|0)<(c|0)?R+c-f|0:W-f+o|0;u=c+g|0;Br(e,32,P,u,E);if(!(pe[e>>2]&32))br(v,g,e)|0;Br(e,48,P,u,E^65536);o=o-q|0;if(!(pe[e>>2]&32))br(Y,o,e)|0;s=H-f|0;Br(e,48,c-(o+s)|0,0,0);if(!(pe[e>>2]&32))br(f,s,e)|0;Br(e,32,P,u,E^8192);o=(u|0)<(P|0)?P:u;break}o=(c|0)<0?6:c;if(s){s=(pe[J>>2]|0)+-28|0;pe[J>>2]=s;l=p*268435456.0}else{l=p;s=pe[J>>2]|0}k=(s|0)<0?V:D;x=k;s=k;do{_=~~l>>>0;pe[s>>2]=_;s=s+4|0;l=(l-+(_>>>0))*1.0e9}while(l!=0.0);u=s;s=pe[J>>2]|0;if((s|0)>0){h=k;while(1){f=(s|0)>29?29:s;c=u+-4|0;do{if(c>>>0>>0)c=h;else{s=0;do{_=Kr(pe[c>>2]|0,0,f|0)|0;_=Zr(_|0,re|0,s|0,0)|0;s=re;y=oi(_|0,s|0,1e9,0)|0;pe[c>>2]=y;s=ai(_|0,s|0,1e9,0)|0;c=c+-4|0}while(c>>>0>=h>>>0);if(!s){c=h;break}c=h+-4|0;pe[c>>2]=s}}while(0);while(1){if(u>>>0<=c>>>0)break;s=u+-4|0;if(!(pe[s>>2]|0))u=s;else break}s=(pe[J>>2]|0)-f|0;pe[J>>2]=s;if((s|0)>0)h=c;else break}}else c=k;if((s|0)<0){v=((o+25|0)/9|0)+1|0;b=(w|0)==102;m=c;while(1){g=0-s|0;g=(g|0)>9?9:g;do{if(m>>>0>>0){s=(1<>>g;c=0;f=m;do{_=pe[f>>2]|0;pe[f>>2]=(_>>>g)+c;c=be(_&s,h)|0;f=f+4|0}while(f>>>0>>0);s=(pe[m>>2]|0)==0?m+4|0:m;if(!c){c=s;break}pe[u>>2]=c;c=s;u=u+4|0}else c=(pe[m>>2]|0)==0?m+4|0:m}while(0);s=b?k:c;u=(u-s>>2|0)>(v|0)?s+(v<<2)|0:u;s=(pe[J>>2]|0)+g|0;pe[J>>2]=s;if((s|0)>=0){m=c;break}else m=c}}else m=c;do{if(m>>>0>>0){s=(x-m>>2)*9|0;h=pe[m>>2]|0;if(h>>>0<10)break;else c=10;do{c=c*10|0;s=s+1|0}while(h>>>0>=c>>>0)}else s=0}while(0);y=(w|0)==103;_=(o|0)!=0;c=o-((w|0)!=102?s:0)+((_&y)<<31>>31)|0;if((c|0)<(((u-x>>2)*9|0)+-9|0)){f=c+9216|0;b=(f|0)/9|0;c=k+(b+-1023<<2)|0;f=((f|0)%9|0)+1|0;if((f|0)<9){h=10;do{h=h*10|0;f=f+1|0}while((f|0)!=9)}else h=10;g=pe[c>>2]|0;v=(g>>>0)%(h>>>0)|0;if((v|0)==0?(k+(b+-1022<<2)|0)==(u|0):0)h=m;else C=163;do{if((C|0)==163){C=0;p=(((g>>>0)/(h>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;f=(h|0)/2|0;do{if(v>>>0>>0)l=.5;else{if((v|0)==(f|0)?(k+(b+-1022<<2)|0)==(u|0):0){l=1.0;break}l=1.5}}while(0);do{if(T){if((de[S>>0]|0)!=45)break;p=-p;l=-l}}while(0);f=g-v|0;pe[c>>2]=f;if(!(p+l!=p)){h=m;break}w=f+h|0;pe[c>>2]=w;if(w>>>0>999999999){s=m;while(1){h=c+-4|0;pe[c>>2]=0;if(h>>>0>>0){s=s+-4|0;pe[s>>2]=0}w=(pe[h>>2]|0)+1|0;pe[h>>2]=w;if(w>>>0>999999999)c=h;else{m=s;c=h;break}}}s=(x-m>>2)*9|0;f=pe[m>>2]|0;if(f>>>0<10){h=m;break}else h=10;do{h=h*10|0;s=s+1|0}while(f>>>0>=h>>>0);h=m}}while(0);w=c+4|0;m=h;u=u>>>0>w>>>0?w:u}v=0-s|0;while(1){if(u>>>0<=m>>>0){b=0;w=u;break}c=u+-4|0;if(!(pe[c>>2]|0))u=c;else{b=1;w=u;break}}do{if(y){o=(_&1^1)+o|0;if((o|0)>(s|0)&(s|0)>-5){d=d+-1|0;o=o+-1-s|0}else{d=d+-2|0;o=o+-1|0}u=E&8;if(u)break;do{if(b){u=pe[w+-4>>2]|0;if(!u){c=9;break}if(!((u>>>0)%10|0)){h=10;c=0}else{c=0;break}do{h=h*10|0;c=c+1|0}while(((u>>>0)%(h>>>0)|0|0)==0)}else c=9}while(0);u=((w-x>>2)*9|0)+-9|0;if((d|32|0)==102){u=u-c|0;u=(u|0)<0?0:u;o=(o|0)<(u|0)?o:u;u=0;break}else{u=u+s-c|0;u=(u|0)<0?0:u;o=(o|0)<(u|0)?o:u;u=0;break}}else u=E&8}while(0);g=o|u;h=(g|0)!=0&1;f=(d|32|0)==102;if(f){s=(s|0)>0?s:0;d=0}else{c=(s|0)<0?v:s;c=Fr(c,((c|0)<0)<<31>>31,U)|0;if((H-c|0)<2)do{c=c+-1|0;de[c>>0]=48}while((H-c|0)<2);de[c+-1>>0]=(s>>31&2)+43;x=c+-2|0;de[x>>0]=d;s=H-x|0;d=x}v=T+1+o+h+s|0;Br(e,32,P,v,E);if(!(pe[e>>2]&32))br(S,T,e)|0;Br(e,48,P,v,E^65536);do{if(f){c=m>>>0>k>>>0?k:m;s=c;do{u=Fr(pe[s>>2]|0,0,j)|0;do{if((s|0)==(c|0)){if((u|0)!=(j|0))break;de[z>>0]=48;u=z}else{if(u>>>0<=Y>>>0)break;do{u=u+-1|0;de[u>>0]=48}while(u>>>0>Y>>>0)}}while(0);if(!(pe[e>>2]&32))br(u,L-u|0,e)|0;s=s+4|0}while(s>>>0<=k>>>0);do{if(g){if(pe[e>>2]&32)break;br(5891,1,e)|0}}while(0);if((o|0)>0&s>>>0>>0){u=s;while(1){s=Fr(pe[u>>2]|0,0,j)|0;if(s>>>0>Y>>>0)do{s=s+-1|0;de[s>>0]=48}while(s>>>0>Y>>>0);if(!(pe[e>>2]&32))br(s,(o|0)>9?9:o,e)|0;u=u+4|0;s=o+-9|0;if(!((o|0)>9&u>>>0>>0)){o=s;break}else o=s}}Br(e,48,o+9|0,9,0)}else{f=b?w:m+4|0;if((o|0)>-1){h=(u|0)==0;c=m;do{s=Fr(pe[c>>2]|0,0,j)|0;if((s|0)==(j|0)){de[z>>0]=48;s=z}do{if((c|0)==(m|0)){u=s+1|0;if(!(pe[e>>2]&32))br(s,1,e)|0;if(h&(o|0)<1){s=u;break}if(pe[e>>2]&32){s=u;break}br(5891,1,e)|0;s=u}else{if(s>>>0<=Y>>>0)break;do{s=s+-1|0;de[s>>0]=48}while(s>>>0>Y>>>0)}}while(0);u=L-s|0;if(!(pe[e>>2]&32))br(s,(o|0)>(u|0)?u:o,e)|0;o=o-u|0;c=c+4|0}while(c>>>0>>0&(o|0)>-1)}Br(e,48,o+18|0,18,0);if(pe[e>>2]&32)break;br(d,H-d|0,e)|0}}while(0);Br(e,32,P,v,E^8192);o=(v|0)<(P|0)?P:v}else{f=(d&32|0)!=0;h=l!=l|0.0!=0.0;s=h?0:T;c=s+3|0;Br(e,32,P,c,u);o=pe[e>>2]|0;if(!(o&32)){br(S,s,e)|0;o=pe[e>>2]|0}if(!(o&32))br(h?f?5883:5887:f?5875:5879,3,e)|0;Br(e,32,P,c,E^8192);o=(c|0)<(P|0)?P:c}}while(0);m=M;continue e}default:{u=E;s=c;f=0;d=5839;o=O}}}while(0);t:do{if((C|0)==64){u=G;s=pe[u>>2]|0;u=pe[u+4>>2]|0;h=d&32;if(!((s|0)==0&(u|0)==0)){o=O;do{o=o+-1|0;de[o>>0]=me[5823+(s&15)>>0]|h;s=Jr(s|0,u|0,4)|0;u=re}while(!((s|0)==0&(u|0)==0));C=G;if((f&8|0)==0|(pe[C>>2]|0)==0&(pe[C+4>>2]|0)==0){s=f;f=0;h=5839;C=77}else{s=f;f=2;h=5839+(d>>4)|0;C=77}}else{o=O;s=f;f=0;h=5839;C=77}}else if((C|0)==76){o=Fr(o,s,O)|0;s=E;f=u;C=77}else if((C|0)==82){C=0;E=Ir(o,0,c)|0;S=(E|0)==0;m=o;s=S?c:E-o|0;f=0;d=5839;o=S?o+c|0:E}else if((C|0)==86){C=0;s=0;o=0;h=pe[G>>2]|0;while(1){u=pe[h>>2]|0;if(!u)break;o=mr(K,u)|0;if((o|0)<0|o>>>0>(c-s|0)>>>0)break;s=o+s|0;if(c>>>0>s>>>0)h=h+4|0;else break}if((o|0)<0){a=-1;break e}Br(e,32,P,s,E);if(!s){o=0;C=98}else{u=0;c=pe[G>>2]|0;while(1){o=pe[c>>2]|0;if(!o){o=s;C=98;break t}o=mr(K,o)|0;u=o+u|0;if((u|0)>(s|0)){o=s;C=98;break t}if(!(pe[e>>2]&32))br(K,o,e)|0;if(u>>>0>=s>>>0){o=s;C=98;break}else c=c+4|0}}}}while(0);if((C|0)==98){C=0;Br(e,32,P,o,E^8192);m=M;o=(P|0)>(o|0)?P:o;continue}if((C|0)==77){C=0;u=(c|0)>-1?s&-65537:s;s=G;s=(pe[s>>2]|0)!=0|(pe[s+4>>2]|0)!=0;if((c|0)!=0|s){s=(s&1^1)+(F-o)|0;m=o;s=(c|0)>(s|0)?c:s;d=h;o=O}else{m=O;s=0;d=h;o=O}}h=o-m|0;s=(s|0)<(h|0)?h:s;c=f+s|0;o=(P|0)<(c|0)?c:P;Br(e,32,o,c,u);if(!(pe[e>>2]&32))br(d,f,e)|0;Br(e,48,o,c,u^65536);Br(e,48,s,h,0);if(!(pe[e>>2]&32))br(m,h,e)|0;Br(e,32,o,c,u^8192);m=M}e:do{if((C|0)==245)if(!e)if(t){a=1;while(1){t=pe[n+(a<<2)>>2]|0;if(!t)break;zr(i+(a<<3)|0,t,r);a=a+1|0;if((a|0)>=10){a=1;break e}}if((a|0)<10)while(1){if(pe[n+(a<<2)>>2]|0){a=-1;break e}a=a+1|0;if((a|0)>=10){a=1;break}}else a=1}else a=0}while(0);ve=Q;return a|0}function jr(e){e=e|0;if(!(pe[e+68>>2]|0))Sr(e);return}function Lr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;i=e+20|0;n=pe[i>>2]|0;e=(pe[e+16>>2]|0)-n|0;e=e>>>0>r>>>0?r:e;Qr(n|0,t|0,e|0)|0;pe[i>>2]=(pe[i>>2]|0)+e;return r|0}function zr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{i=(pe[r>>2]|0)+(4-1)&~(4-1);t=pe[i>>2]|0;pe[r>>2]=i+4;pe[e>>2]=t;break e}case 10:{i=(pe[r>>2]|0)+(4-1)&~(4-1);t=pe[i>>2]|0;pe[r>>2]=i+4;i=e;pe[i>>2]=t;pe[i+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{i=(pe[r>>2]|0)+(4-1)&~(4-1);t=pe[i>>2]|0;pe[r>>2]=i+4;i=e;pe[i>>2]=t;pe[i+4>>2]=0;break e}case 12:{i=(pe[r>>2]|0)+(8-1)&~(8-1);t=i;n=pe[t>>2]|0;t=pe[t+4>>2]|0;pe[r>>2]=i+8;i=e;pe[i>>2]=n;pe[i+4>>2]=t;break e}case 13:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;i=(i&65535)<<16>>16;n=e;pe[n>>2]=i;pe[n+4>>2]=((i|0)<0)<<31>>31;break e}case 14:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;n=e;pe[n>>2]=i&65535;pe[n+4>>2]=0;break e}case 15:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;i=(i&255)<<24>>24;n=e;pe[n>>2]=i;pe[n+4>>2]=((i|0)<0)<<31>>31;break e}case 16:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;n=e;pe[n>>2]=i&255;pe[n+4>>2]=0;break e}case 17:{n=(pe[r>>2]|0)+(8-1)&~(8-1);a=+ee[n>>3];pe[r>>2]=n+8;ee[e>>3]=a;break e}case 18:{n=(pe[r>>2]|0)+(8-1)&~(8-1);a=+ee[n>>3];pe[r>>2]=n+8;ee[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function Fr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295)while(1){i=oi(e|0,t|0,10,0)|0;r=r+-1|0;de[r>>0]=i|48;i=ai(e|0,t|0,10,0)|0;if(t>>>0>9|(t|0)==9&e>>>0>4294967295){e=i;t=re}else{e=i;break}}if(e)while(1){r=r+-1|0;de[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function Br(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0;s=ve;ve=ve+256|0;o=s;do{if((r|0)>(i|0)&(n&73728|0)==0){n=r-i|0;Yr(o|0,t|0,(n>>>0>256?256:n)|0)|0;t=pe[e>>2]|0;a=(t&32|0)==0;if(n>>>0>255){i=r-i|0;do{if(a){br(o,256,e)|0;t=pe[e>>2]|0}n=n+-256|0;a=(t&32|0)==0}while(n>>>0>255);if(a)n=i&255;else break}else if(!a)break;br(o,n,e)|0}}while(0);ve=s;return}function Nr(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0;do{if(e>>>0<245){d=e>>>0<11?16:e+11&-8;e=d>>>3;s=pe[151]|0;r=s>>>e;if(r&3){e=(r&1^1)+e|0;i=e<<1;r=644+(i<<2)|0;i=644+(i+2<<2)|0;n=pe[i>>2]|0;a=n+8|0;o=pe[a>>2]|0;do{if((r|0)!=(o|0)){if(o>>>0<(pe[155]|0)>>>0)Xe();t=o+12|0;if((pe[t>>2]|0)==(n|0)){pe[t>>2]=r;pe[i>>2]=o;break}else Xe()}else pe[151]=s&~(1<>2]=z|3;z=n+(z|4)|0;pe[z>>2]=pe[z>>2]|1;z=a;return z|0}o=pe[153]|0;if(d>>>0>o>>>0){if(r){i=2<>>12&16;i=i>>>u;n=i>>>5&8;i=i>>>n;a=i>>>2&4;i=i>>>a;r=i>>>1&2;i=i>>>r;e=i>>>1&1;e=(n|u|a|r|e)+(i>>>e)|0;i=e<<1;r=644+(i<<2)|0;i=644+(i+2<<2)|0;a=pe[i>>2]|0;u=a+8|0;n=pe[u>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(pe[155]|0)>>>0)Xe();t=n+12|0;if((pe[t>>2]|0)==(a|0)){pe[t>>2]=r;pe[i>>2]=n;l=pe[153]|0;break}else Xe()}else{pe[151]=s&~(1<>2]=d|3;s=a+d|0;pe[a+(d|4)>>2]=o|1;pe[a+z>>2]=o;if(l){n=pe[156]|0;r=l>>>3;t=r<<1;i=644+(t<<2)|0;e=pe[151]|0;r=1<>2]|0;if(t>>>0<(pe[155]|0)>>>0)Xe();else{c=e;h=t}}else{pe[151]=e|r;c=644+(t+2<<2)|0;h=i}pe[c>>2]=n;pe[h+12>>2]=n;pe[n+8>>2]=h;pe[n+12>>2]=i}pe[153]=o;pe[156]=s;z=u;return z|0}e=pe[152]|0;if(e){r=(e&0-e)+-1|0;L=r>>>12&16;r=r>>>L;j=r>>>5&8;r=r>>>j;z=r>>>2&4;r=r>>>z;e=r>>>1&2;r=r>>>e;i=r>>>1&1;i=pe[908+((j|L|z|e|i)+(r>>>i)<<2)>>2]|0;r=(pe[i+4>>2]&-8)-d|0;e=i;while(1){t=pe[e+16>>2]|0;if(!t){t=pe[e+20>>2]|0;if(!t){u=r;break}}e=(pe[t+4>>2]&-8)-d|0;z=e>>>0>>0;r=z?e:r;e=t;i=z?t:i}a=pe[155]|0;if(i>>>0>>0)Xe();s=i+d|0;if(i>>>0>=s>>>0)Xe();o=pe[i+24>>2]|0;r=pe[i+12>>2]|0;do{if((r|0)==(i|0)){e=i+20|0;t=pe[e>>2]|0;if(!t){e=i+16|0;t=pe[e>>2]|0;if(!t){f=0;break}}while(1){r=t+20|0;n=pe[r>>2]|0;if(n){t=n;e=r;continue}r=t+16|0;n=pe[r>>2]|0;if(!n)break;else{t=n;e=r}}if(e>>>0>>0)Xe();else{pe[e>>2]=0;f=t;break}}else{n=pe[i+8>>2]|0;if(n>>>0>>0)Xe();t=n+12|0;if((pe[t>>2]|0)!=(i|0))Xe();e=r+8|0;if((pe[e>>2]|0)==(i|0)){pe[t>>2]=r;pe[e>>2]=n;f=r;break}else Xe()}}while(0);do{if(o){t=pe[i+28>>2]|0;e=908+(t<<2)|0;if((i|0)==(pe[e>>2]|0)){pe[e>>2]=f;if(!f){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=o+16|0;if((pe[t>>2]|0)==(i|0))pe[t>>2]=f;else pe[o+20>>2]=f;if(!f)break}e=pe[155]|0;if(f>>>0>>0)Xe();pe[f+24>>2]=o;t=pe[i+16>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[f+16>>2]=t;pe[t+24>>2]=f;break}}while(0);t=pe[i+20>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[f+20>>2]=t;pe[t+24>>2]=f;break}}}while(0);if(u>>>0<16){z=u+d|0;pe[i+4>>2]=z|3;z=i+(z+4)|0;pe[z>>2]=pe[z>>2]|1}else{pe[i+4>>2]=d|3;pe[i+(d|4)>>2]=u|1;pe[i+(u+d)>>2]=u;t=pe[153]|0;if(t){a=pe[156]|0;r=t>>>3;t=r<<1;n=644+(t<<2)|0;e=pe[151]|0;r=1<>2]|0;if(e>>>0<(pe[155]|0)>>>0)Xe();else{p=t;m=e}}else{pe[151]=e|r;p=644+(t+2<<2)|0;m=n}pe[p>>2]=a;pe[m+12>>2]=a;pe[a+8>>2]=m;pe[a+12>>2]=n}pe[153]=u;pe[156]=s}z=i+8|0;return z|0}else m=d}else m=d}else if(e>>>0<=4294967231){e=e+11|0;h=e&-8;c=pe[152]|0;if(c){r=0-h|0;e=e>>>8;if(e)if(h>>>0>16777215)l=31;else{m=(e+1048320|0)>>>16&8;_=e<>>16&4;_=_<>>16&2;l=14-(p|m|l)+(_<>>15)|0;l=h>>>(l+7|0)&1|l<<1}else l=0;e=pe[908+(l<<2)>>2]|0;e:do{if(!e){n=0;e=0;_=86}else{o=r;n=0;s=h<<((l|0)==31?0:25-(l>>>1)|0);u=e;e=0;while(1){a=pe[u+4>>2]&-8;r=a-h|0;if(r>>>0>>0)if((a|0)==(h|0)){a=u;e=u;_=90;break e}else e=u;else r=o;_=pe[u+20>>2]|0;u=pe[u+16+(s>>>31<<2)>>2]|0;n=(_|0)==0|(_|0)==(u|0)?n:_;if(!u){_=86;break}else{o=r;s=s<<1}}}}while(0);if((_|0)==86){if((n|0)==0&(e|0)==0){e=2<>>12&16;e=e>>>f;c=e>>>5&8;e=e>>>c;p=e>>>2&4;e=e>>>p;m=e>>>1&2;e=e>>>m;n=e>>>1&1;n=pe[908+((c|f|p|m|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){s=r;u=e}else{a=n;_=90}}if((_|0)==90)while(1){_=0;m=(pe[a+4>>2]&-8)-h|0;n=m>>>0>>0;r=n?m:r;e=n?a:e;n=pe[a+16>>2]|0;if(n){a=n;_=90;continue}a=pe[a+20>>2]|0;if(!a){s=r;u=e;break}else _=90}if((u|0)!=0?s>>>0<((pe[153]|0)-h|0)>>>0:0){n=pe[155]|0;if(u>>>0>>0)Xe();o=u+h|0;if(u>>>0>=o>>>0)Xe();a=pe[u+24>>2]|0;r=pe[u+12>>2]|0;do{if((r|0)==(u|0)){e=u+20|0;t=pe[e>>2]|0;if(!t){e=u+16|0;t=pe[e>>2]|0;if(!t){d=0;break}}while(1){r=t+20|0;i=pe[r>>2]|0;if(i){t=i;e=r;continue}r=t+16|0;i=pe[r>>2]|0;if(!i)break;else{t=i;e=r}}if(e>>>0>>0)Xe();else{pe[e>>2]=0;d=t;break}}else{i=pe[u+8>>2]|0;if(i>>>0>>0)Xe();t=i+12|0;if((pe[t>>2]|0)!=(u|0))Xe();e=r+8|0;if((pe[e>>2]|0)==(u|0)){pe[t>>2]=r;pe[e>>2]=i;d=r;break}else Xe()}}while(0);do{if(a){t=pe[u+28>>2]|0;e=908+(t<<2)|0;if((u|0)==(pe[e>>2]|0)){pe[e>>2]=d;if(!d){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=a+16|0;if((pe[t>>2]|0)==(u|0))pe[t>>2]=d;else pe[a+20>>2]=d;if(!d)break}e=pe[155]|0;if(d>>>0>>0)Xe();pe[d+24>>2]=a;t=pe[u+16>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[d+16>>2]=t;pe[t+24>>2]=d;break}}while(0);t=pe[u+20>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[d+20>>2]=t;pe[t+24>>2]=d;break}}}while(0);e:do{if(s>>>0>=16){pe[u+4>>2]=h|3;pe[u+(h|4)>>2]=s|1;pe[u+(s+h)>>2]=s;t=s>>>3;if(s>>>0<256){e=t<<1;i=644+(e<<2)|0;r=pe[151]|0;t=1<>2]|0;if(e>>>0<(pe[155]|0)>>>0)Xe();else{v=t;b=e}}else{pe[151]=r|t;v=644+(e+2<<2)|0;b=i}pe[v>>2]=o;pe[b+12>>2]=o;pe[u+(h+8)>>2]=b;pe[u+(h+12)>>2]=i;break}t=s>>>8;if(t)if(s>>>0>16777215)i=31;else{L=(t+1048320|0)>>>16&8;z=t<>>16&4;z=z<>>16&2;i=14-(j|L|i)+(z<>>15)|0;i=s>>>(i+7|0)&1|i<<1}else i=0;t=908+(i<<2)|0;pe[u+(h+28)>>2]=i;pe[u+(h+20)>>2]=0;pe[u+(h+16)>>2]=0;e=pe[152]|0;r=1<>2]=o;pe[u+(h+24)>>2]=t;pe[u+(h+12)>>2]=o;pe[u+(h+8)>>2]=o;break}t=pe[t>>2]|0;t:do{if((pe[t+4>>2]&-8|0)!=(s|0)){i=s<<((i|0)==31?0:25-(i>>>1)|0);while(1){e=t+16+(i>>>31<<2)|0;r=pe[e>>2]|0;if(!r)break;if((pe[r+4>>2]&-8|0)==(s|0)){k=r;break t}else{i=i<<1;t=r}}if(e>>>0<(pe[155]|0)>>>0)Xe();else{pe[e>>2]=o;pe[u+(h+24)>>2]=t;pe[u+(h+12)>>2]=o;pe[u+(h+8)>>2]=o;break e}}else k=t}while(0);t=k+8|0;e=pe[t>>2]|0;z=pe[155]|0;if(e>>>0>=z>>>0&k>>>0>=z>>>0){pe[e+12>>2]=o;pe[t>>2]=o;pe[u+(h+8)>>2]=e;pe[u+(h+12)>>2]=k;pe[u+(h+24)>>2]=0;break}else Xe()}else{z=s+h|0;pe[u+4>>2]=z|3;z=u+(z+4)|0;pe[z>>2]=pe[z>>2]|1}}while(0);z=u+8|0;return z|0}else m=h}else m=h}else m=-1}while(0);r=pe[153]|0;if(r>>>0>=m>>>0){t=r-m|0;e=pe[156]|0;if(t>>>0>15){pe[156]=e+m;pe[153]=t;pe[e+(m+4)>>2]=t|1;pe[e+r>>2]=t;pe[e+4>>2]=m|3}else{pe[153]=0;pe[156]=0;pe[e+4>>2]=r|3;z=e+(r+4)|0;pe[z>>2]=pe[z>>2]|1}z=e+8|0;return z|0}e=pe[154]|0;if(e>>>0>m>>>0){L=e-m|0;pe[154]=L;z=pe[157]|0;pe[157]=z+m;pe[z+(m+4)>>2]=L|1;pe[z+4>>2]=m|3;z=z+8|0;return z|0}do{if(!(pe[269]|0)){e=Re(30)|0;if(!(e+-1&e)){pe[271]=e;pe[270]=e;pe[272]=-1;pe[273]=-1;pe[274]=0;pe[262]=0;k=(He(0)|0)&-16^1431655768;pe[269]=k;break}else Xe()}}while(0);u=m+48|0;s=pe[271]|0;l=m+47|0;o=s+l|0;s=0-s|0;c=o&s;if(c>>>0<=m>>>0){z=0;return z|0}e=pe[261]|0;if((e|0)!=0?(b=pe[259]|0,k=b+c|0,k>>>0<=b>>>0|k>>>0>e>>>0):0){z=0;return z|0}e:do{if(!(pe[262]&4)){e=pe[157]|0;t:do{if(e){n=1052;while(1){r=pe[n>>2]|0;if(r>>>0<=e>>>0?(g=n+4|0,(r+(pe[g>>2]|0)|0)>>>0>e>>>0):0){a=n;e=g;break}n=pe[n+8>>2]|0;if(!n){_=174;break t}}r=o-(pe[154]|0)&s;if(r>>>0<2147483647){n=Ae(r|0)|0;k=(n|0)==((pe[a>>2]|0)+(pe[e>>2]|0)|0);e=k?r:0;if(k){if((n|0)!=(-1|0)){w=n;p=e;_=194;break e}}else _=184}else e=0}else _=174}while(0);do{if((_|0)==174){a=Ae(0)|0;if((a|0)!=(-1|0)){e=a;r=pe[270]|0;n=r+-1|0;if(!(n&e))r=c;else r=c-e+(n+e&0-r)|0;e=pe[259]|0;n=e+r|0;if(r>>>0>m>>>0&r>>>0<2147483647){k=pe[261]|0;if((k|0)!=0?n>>>0<=e>>>0|n>>>0>k>>>0:0){e=0;break}n=Ae(r|0)|0;k=(n|0)==(a|0);e=k?r:0;if(k){w=a;p=e;_=194;break e}else _=184}else e=0}else e=0}}while(0);t:do{if((_|0)==184){a=0-r|0;do{if(u>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))?(y=pe[271]|0,y=l-r+y&0-y,y>>>0<2147483647):0)if((Ae(y|0)|0)==(-1|0)){Ae(a|0)|0;break t}else{r=y+r|0;break}}while(0);if((n|0)!=(-1|0)){w=n;p=r;_=194;break e}}}while(0);pe[262]=pe[262]|4;_=191}else{e=0;_=191}}while(0);if((((_|0)==191?c>>>0<2147483647:0)?(w=Ae(c|0)|0,x=Ae(0)|0,w>>>0>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(T=x-w|0,S=T>>>0>(m+40|0)>>>0,S):0){p=S?T:e;_=194}if((_|0)==194){e=(pe[259]|0)+p|0;pe[259]=e;if(e>>>0>(pe[260]|0)>>>0)pe[260]=e;o=pe[157]|0;e:do{if(o){a=1052;do{e=pe[a>>2]|0;r=a+4|0;n=pe[r>>2]|0;if((w|0)==(e+n|0)){E=e;M=r;P=n;C=a;_=204;break}a=pe[a+8>>2]|0}while((a|0)!=0);if(((_|0)==204?(pe[C+12>>2]&8|0)==0:0)?o>>>0>>0&o>>>0>=E>>>0:0){pe[M>>2]=P+p;z=(pe[154]|0)+p|0;L=o+8|0;L=(L&7|0)==0?0:0-L&7;j=z-L|0;pe[157]=o+L;pe[154]=j;pe[o+(L+4)>>2]=j|1;pe[o+(z+4)>>2]=40;pe[158]=pe[273];break}e=pe[155]|0;if(w>>>0>>0){pe[155]=w;e=w}r=w+p|0;a=1052;while(1){if((pe[a>>2]|0)==(r|0)){n=a;r=a;_=212;break}a=pe[a+8>>2]|0;if(!a){r=1052;break}}if((_|0)==212)if(!(pe[r+12>>2]&8)){pe[n>>2]=w;f=r+4|0;pe[f>>2]=(pe[f>>2]|0)+p;f=w+8|0;f=(f&7|0)==0?0:0-f&7;l=w+(p+8)|0;l=(l&7|0)==0?0:0-l&7;t=w+(l+p)|0;h=f+m|0;d=w+h|0;c=t-(w+f)-m|0;pe[w+(f+4)>>2]=m|3;t:do{if((t|0)!=(o|0)){if((t|0)==(pe[156]|0)){z=(pe[153]|0)+c|0;pe[153]=z;pe[156]=d;pe[w+(h+4)>>2]=z|1;pe[w+(z+h)>>2]=z;break}s=p+4|0;r=pe[w+(s+l)>>2]|0;if((r&3|0)==1){u=r&-8;a=r>>>3;r:do{if(r>>>0>=256){o=pe[w+((l|24)+p)>>2]|0;i=pe[w+(p+12+l)>>2]|0;do{if((i|0)==(t|0)){n=l|16;i=w+(s+n)|0;r=pe[i>>2]|0;if(!r){i=w+(n+p)|0;r=pe[i>>2]|0;if(!r){D=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;D=r;break}}else{n=pe[w+((l|8)+p)>>2]|0;if(n>>>0>>0)Xe();e=n+12|0;if((pe[e>>2]|0)!=(t|0))Xe();r=i+8|0;if((pe[r>>2]|0)==(t|0)){pe[e>>2]=i;pe[r>>2]=n;D=i;break}else Xe()}}while(0);if(!o)break;e=pe[w+(p+28+l)>>2]|0;r=908+(e<<2)|0;do{if((t|0)!=(pe[r>>2]|0)){if(o>>>0<(pe[155]|0)>>>0)Xe();e=o+16|0;if((pe[e>>2]|0)==(t|0))pe[e>>2]=D;else pe[o+20>>2]=D;if(!D)break r}else{pe[r>>2]=D;if(D)break;pe[152]=pe[152]&~(1<>>0>>0)Xe();pe[D+24>>2]=o;t=l|16;e=pe[w+(t+p)>>2]|0;do{if(e)if(e>>>0>>0)Xe();else{pe[D+16>>2]=e;pe[e+24>>2]=D;break}}while(0);t=pe[w+(s+t)>>2]|0;if(!t)break;if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[D+20>>2]=t;pe[t+24>>2]=D;break}}else{i=pe[w+((l|8)+p)>>2]|0;n=pe[w+(p+12+l)>>2]|0;r=644+(a<<1<<2)|0;do{if((i|0)!=(r|0)){if(i>>>0>>0)Xe();if((pe[i+12>>2]|0)==(t|0))break;Xe()}}while(0);if((n|0)==(i|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();e=n+8|0;if((pe[e>>2]|0)==(t|0)){A=e;break}Xe()}}while(0);pe[i+12>>2]=n;pe[A>>2]=i}}while(0);t=w+((u|l)+p)|0;n=u+c|0}else n=c;t=t+4|0;pe[t>>2]=pe[t>>2]&-2;pe[w+(h+4)>>2]=n|1;pe[w+(n+h)>>2]=n;t=n>>>3;if(n>>>0<256){e=t<<1;i=644+(e<<2)|0;r=pe[151]|0;t=1<>2]|0;if(e>>>0>=(pe[155]|0)>>>0){j=t;L=e;break}Xe()}}while(0);pe[j>>2]=d;pe[L+12>>2]=d;pe[w+(h+8)>>2]=L;pe[w+(h+12)>>2]=i;break}t=n>>>8;do{if(!t)i=0;else{if(n>>>0>16777215){i=31;break}j=(t+1048320|0)>>>16&8;L=t<>>16&4;L=L<>>16&2;i=14-(D|j|i)+(L<>>15)|0;i=n>>>(i+7|0)&1|i<<1}}while(0);t=908+(i<<2)|0;pe[w+(h+28)>>2]=i;pe[w+(h+20)>>2]=0;pe[w+(h+16)>>2]=0;e=pe[152]|0;r=1<>2]=d;pe[w+(h+24)>>2]=t;pe[w+(h+12)>>2]=d;pe[w+(h+8)>>2]=d;break}t=pe[t>>2]|0;r:do{if((pe[t+4>>2]&-8|0)!=(n|0)){i=n<<((i|0)==31?0:25-(i>>>1)|0);while(1){e=t+16+(i>>>31<<2)|0;r=pe[e>>2]|0;if(!r)break;if((pe[r+4>>2]&-8|0)==(n|0)){z=r;break r}else{i=i<<1;t=r}}if(e>>>0<(pe[155]|0)>>>0)Xe();else{pe[e>>2]=d;pe[w+(h+24)>>2]=t;pe[w+(h+12)>>2]=d;pe[w+(h+8)>>2]=d;break t}}else z=t}while(0);t=z+8|0;e=pe[t>>2]|0;L=pe[155]|0;if(e>>>0>=L>>>0&z>>>0>=L>>>0){pe[e+12>>2]=d;pe[t>>2]=d;pe[w+(h+8)>>2]=e;pe[w+(h+12)>>2]=z;pe[w+(h+24)>>2]=0;break}else Xe()}else{z=(pe[154]|0)+c|0;pe[154]=z;pe[157]=d;pe[w+(h+4)>>2]=z|1}}while(0);z=w+(f|8)|0;return z|0}else r=1052;while(1){e=pe[r>>2]|0;if(e>>>0<=o>>>0?(t=pe[r+4>>2]|0,i=e+t|0,i>>>0>o>>>0):0)break;r=pe[r+8>>2]|0}n=e+(t+-39)|0;e=e+(t+-47+((n&7|0)==0?0:0-n&7))|0;n=o+16|0;e=e>>>0>>0?o:e;t=e+8|0;r=w+8|0;r=(r&7|0)==0?0:0-r&7;z=p+-40-r|0;pe[157]=w+r;pe[154]=z;pe[w+(r+4)>>2]=z|1;pe[w+(p+-36)>>2]=40;pe[158]=pe[273];r=e+4|0;pe[r>>2]=27;pe[t>>2]=pe[263];pe[t+4>>2]=pe[264];pe[t+8>>2]=pe[265];pe[t+12>>2]=pe[266];pe[263]=w;pe[264]=p;pe[266]=0;pe[265]=t;t=e+28|0;pe[t>>2]=7;if((e+32|0)>>>0>>0)do{z=t;t=t+4|0;pe[t>>2]=7}while((z+8|0)>>>0>>0);if((e|0)!=(o|0)){a=e-o|0;pe[r>>2]=pe[r>>2]&-2;pe[o+4>>2]=a|1;pe[e>>2]=a;t=a>>>3;if(a>>>0<256){e=t<<1;i=644+(e<<2)|0;r=pe[151]|0;t=1<>2]|0;if(e>>>0<(pe[155]|0)>>>0)Xe();else{O=t;I=e}}else{pe[151]=r|t;O=644+(e+2<<2)|0;I=i}pe[O>>2]=o;pe[I+12>>2]=o;pe[o+8>>2]=I;pe[o+12>>2]=i;break}t=a>>>8;if(t)if(a>>>0>16777215)i=31;else{L=(t+1048320|0)>>>16&8;z=t<>>16&4;z=z<>>16&2;i=14-(j|L|i)+(z<>>15)|0;i=a>>>(i+7|0)&1|i<<1}else i=0;r=908+(i<<2)|0;pe[o+28>>2]=i;pe[o+20>>2]=0;pe[n>>2]=0;t=pe[152]|0;e=1<>2]=o;pe[o+24>>2]=r;pe[o+12>>2]=o;pe[o+8>>2]=o;break}t=pe[r>>2]|0;t:do{if((pe[t+4>>2]&-8|0)!=(a|0)){i=a<<((i|0)==31?0:25-(i>>>1)|0);while(1){e=t+16+(i>>>31<<2)|0;r=pe[e>>2]|0;if(!r)break;if((pe[r+4>>2]&-8|0)==(a|0)){R=r;break t}else{i=i<<1;t=r}}if(e>>>0<(pe[155]|0)>>>0)Xe();else{pe[e>>2]=o;pe[o+24>>2]=t;pe[o+12>>2]=o;pe[o+8>>2]=o;break e}}else R=t}while(0);t=R+8|0;e=pe[t>>2]|0;z=pe[155]|0;if(e>>>0>=z>>>0&R>>>0>=z>>>0){pe[e+12>>2]=o;pe[t>>2]=o;pe[o+8>>2]=e;pe[o+12>>2]=R;pe[o+24>>2]=0;break}else Xe()}}else{z=pe[155]|0;if((z|0)==0|w>>>0>>0)pe[155]=w;pe[263]=w;pe[264]=p;pe[266]=0;pe[160]=pe[269];pe[159]=-1;t=0;do{z=t<<1;L=644+(z<<2)|0;pe[644+(z+3<<2)>>2]=L;pe[644+(z+2<<2)>>2]=L;t=t+1|0}while((t|0)!=32);z=w+8|0;z=(z&7|0)==0?0:0-z&7;L=p+-40-z|0;pe[157]=w+z;pe[154]=L;pe[w+(z+4)>>2]=L|1;pe[w+(p+-36)>>2]=40;pe[158]=pe[273]}}while(0);t=pe[154]|0;if(t>>>0>m>>>0){L=t-m|0;pe[154]=L;z=pe[157]|0;pe[157]=z+m;pe[z+(m+4)>>2]=L|1;pe[z+4>>2]=m|3;z=z+8|0;return z|0}}z=cr()|0;pe[z>>2]=12;z=0;return z|0}function Ur(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0;if(!e)return;t=e+-8|0;s=pe[155]|0;if(t>>>0>>0)Xe();r=pe[e+-4>>2]|0;i=r&3;if((i|0)==1)Xe();d=r&-8;m=e+(d+-8)|0;do{if(!(r&1)){t=pe[t>>2]|0;if(!i)return;u=-8-t|0;c=e+u|0;h=t+d|0;if(c>>>0>>0)Xe();if((c|0)==(pe[156]|0)){t=e+(d+-4)|0;r=pe[t>>2]|0;if((r&3|0)!=3){y=c;a=h;break}pe[153]=h;pe[t>>2]=r&-2;pe[e+(u+4)>>2]=h|1;pe[m>>2]=h;return}n=t>>>3;if(t>>>0<256){i=pe[e+(u+8)>>2]|0;r=pe[e+(u+12)>>2]|0;t=644+(n<<1<<2)|0;if((i|0)!=(t|0)){if(i>>>0>>0)Xe();if((pe[i+12>>2]|0)!=(c|0))Xe()}if((r|0)==(i|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();t=r+8|0;if((pe[t>>2]|0)==(c|0))o=t;else Xe()}else o=r+8|0;pe[i+12>>2]=r;pe[o>>2]=i;y=c;a=h;break}o=pe[e+(u+24)>>2]|0;i=pe[e+(u+12)>>2]|0;do{if((i|0)==(c|0)){r=e+(u+20)|0;t=pe[r>>2]|0;if(!t){r=e+(u+16)|0;t=pe[r>>2]|0;if(!t){l=0;break}}while(1){i=t+20|0;n=pe[i>>2]|0;if(n){t=n;r=i;continue}i=t+16|0;n=pe[i>>2]|0;if(!n)break;else{t=n;r=i}}if(r>>>0>>0)Xe();else{pe[r>>2]=0;l=t;break}}else{n=pe[e+(u+8)>>2]|0;if(n>>>0>>0)Xe();t=n+12|0;if((pe[t>>2]|0)!=(c|0))Xe();r=i+8|0;if((pe[r>>2]|0)==(c|0)){pe[t>>2]=i;pe[r>>2]=n;l=i;break}else Xe()}}while(0);if(o){t=pe[e+(u+28)>>2]|0;r=908+(t<<2)|0;if((c|0)==(pe[r>>2]|0)){pe[r>>2]=l;if(!l){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=o+16|0;if((pe[t>>2]|0)==(c|0))pe[t>>2]=l;else pe[o+20>>2]=l;if(!l){y=c;a=h;break}}r=pe[155]|0;if(l>>>0>>0)Xe();pe[l+24>>2]=o;t=pe[e+(u+16)>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[l+16>>2]=t;pe[t+24>>2]=l;break}}while(0);t=pe[e+(u+20)>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[l+20>>2]=t;pe[t+24>>2]=l;y=c;a=h;break}else{y=c;a=h}}else{y=c;a=h}}else{y=t;a=d}}while(0);if(y>>>0>=m>>>0)Xe();t=e+(d+-4)|0;r=pe[t>>2]|0;if(!(r&1))Xe();if(!(r&2)){if((m|0)==(pe[157]|0)){b=(pe[154]|0)+a|0;pe[154]=b;pe[157]=y;pe[y+4>>2]=b|1;if((y|0)!=(pe[156]|0))return;pe[156]=0;pe[153]=0;return}if((m|0)==(pe[156]|0)){b=(pe[153]|0)+a|0;pe[153]=b;pe[156]=y;pe[y+4>>2]=b|1;pe[y+b>>2]=b;return}a=(r&-8)+a|0;n=r>>>3;do{if(r>>>0>=256){o=pe[e+(d+16)>>2]|0;t=pe[e+(d|4)>>2]|0;do{if((t|0)==(m|0)){r=e+(d+12)|0;t=pe[r>>2]|0;if(!t){r=e+(d+8)|0;t=pe[r>>2]|0;if(!t){p=0;break}}while(1){i=t+20|0;n=pe[i>>2]|0;if(n){t=n;r=i;continue}i=t+16|0;n=pe[i>>2]|0;if(!n)break;else{t=n;r=i}}if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[r>>2]=0;p=t;break}}else{r=pe[e+d>>2]|0;if(r>>>0<(pe[155]|0)>>>0)Xe();i=r+12|0;if((pe[i>>2]|0)!=(m|0))Xe();n=t+8|0;if((pe[n>>2]|0)==(m|0)){pe[i>>2]=t;pe[n>>2]=r;p=t;break}else Xe()}}while(0);if(o){t=pe[e+(d+20)>>2]|0;r=908+(t<<2)|0;if((m|0)==(pe[r>>2]|0)){pe[r>>2]=p;if(!p){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=o+16|0;if((pe[t>>2]|0)==(m|0))pe[t>>2]=p;else pe[o+20>>2]=p;if(!p)break}r=pe[155]|0;if(p>>>0>>0)Xe();pe[p+24>>2]=o;t=pe[e+(d+8)>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[p+16>>2]=t;pe[t+24>>2]=p;break}}while(0);t=pe[e+(d+12)>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[p+20>>2]=t;pe[t+24>>2]=p;break}}}else{i=pe[e+d>>2]|0;r=pe[e+(d|4)>>2]|0;t=644+(n<<1<<2)|0;if((i|0)!=(t|0)){if(i>>>0<(pe[155]|0)>>>0)Xe();if((pe[i+12>>2]|0)!=(m|0))Xe()}if((r|0)==(i|0)){pe[151]=pe[151]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=r+8|0;if((pe[t>>2]|0)==(m|0))f=t;else Xe()}else f=r+8|0;pe[i+12>>2]=r;pe[f>>2]=i}}while(0);pe[y+4>>2]=a|1;pe[y+a>>2]=a;if((y|0)==(pe[156]|0)){pe[153]=a;return}}else{pe[t>>2]=r&-2;pe[y+4>>2]=a|1;pe[y+a>>2]=a}t=a>>>3;if(a>>>0<256){r=t<<1;n=644+(r<<2)|0;i=pe[151]|0;t=1<>2]|0;if(r>>>0<(pe[155]|0)>>>0)Xe();else{g=t;v=r}}else{pe[151]=i|t;g=644+(r+2<<2)|0;v=n}pe[g>>2]=y;pe[v+12>>2]=y;pe[y+8>>2]=v;pe[y+12>>2]=n;return}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{g=(t+1048320|0)>>>16&8;v=t<>>16&4;v=v<>>16&2;n=14-(m|g|n)+(v<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=908+(n<<2)|0;pe[y+28>>2]=n;pe[y+20>>2]=0;pe[y+16>>2]=0;r=pe[152]|0;i=1<>2]|0;t:do{if((pe[t+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=t+16+(n>>>31<<2)|0;i=pe[r>>2]|0;if(!i)break;if((pe[i+4>>2]&-8|0)==(a|0)){b=i;break t}else{n=n<<1;t=i}}if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[r>>2]=y;pe[y+24>>2]=t;pe[y+12>>2]=y;pe[y+8>>2]=y;break e}}else b=t}while(0);t=b+8|0;r=pe[t>>2]|0;v=pe[155]|0;if(r>>>0>=v>>>0&b>>>0>=v>>>0){pe[r+12>>2]=y;pe[t>>2]=y;pe[y+8>>2]=r;pe[y+12>>2]=b;pe[y+24>>2]=0;break}else Xe()}else{pe[152]=r|i;pe[t>>2]=y;pe[y+24>>2]=t;pe[y+12>>2]=y;pe[y+8>>2]=y}}while(0);y=(pe[159]|0)+-1|0;pe[159]=y;if(!y)t=1060;else return;while(1){t=pe[t>>2]|0;if(!t)break;else t=t+8|0}pe[159]=-1;return}function Xr(e,t){e=e|0;t=t|0;var r=0,i=0;if(!e){e=Nr(t)|0;return e|0}if(t>>>0>4294967231){e=cr()|0;pe[e>>2]=12;e=0;return e|0}r=Hr(e+-8|0,t>>>0<11?16:t+11&-8)|0;if(r){e=r+8|0;return e|0}r=Nr(t)|0;if(!r){e=0;return e|0}i=pe[e+-4>>2]|0;i=(i&-8)-((i&3|0)==0?8:4)|0;Qr(r|0,e|0,(i>>>0>>0?i:t)|0)|0;Ur(e);e=r;return e|0}function qr(e){e=e|0;var t=0;if(!e){t=0;return t|0}e=pe[e+-4>>2]|0;t=e&3;if((t|0)==1){t=0;return t|0}t=(e&-8)-((t|0)==0?8:4)|0;return t|0}function Hr(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;d=e+4|0;p=pe[d>>2]|0;u=p&-8;c=e+u|0;s=pe[155]|0;r=p&3;if(!((r|0)!=1&e>>>0>=s>>>0&e>>>0>>0))Xe();i=e+(u|4)|0;n=pe[i>>2]|0;if(!(n&1))Xe();if(!r){if(t>>>0<256){e=0;return e|0}if(u>>>0>=(t+4|0)>>>0?(u-t|0)>>>0<=pe[271]<<1>>>0:0)return e|0;e=0;return e|0}if(u>>>0>=t>>>0){r=u-t|0;if(r>>>0<=15)return e|0;pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=r|3;pe[i>>2]=pe[i>>2]|1;Wr(e+t|0,r);return e|0}if((c|0)==(pe[157]|0)){r=(pe[154]|0)+u|0;if(r>>>0<=t>>>0){e=0;return e|0}f=r-t|0;pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=f|1;pe[157]=e+t;pe[154]=f;return e|0}if((c|0)==(pe[156]|0)){i=(pe[153]|0)+u|0;if(i>>>0>>0){e=0;return e|0}r=i-t|0;if(r>>>0>15){pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=r|1;pe[e+i>>2]=r;i=e+(i+4)|0;pe[i>>2]=pe[i>>2]&-2;i=e+t|0}else{pe[d>>2]=p&1|i|2;i=e+(i+4)|0;pe[i>>2]=pe[i>>2]|1;i=0;r=0}pe[153]=r;pe[156]=i;return e|0}if(n&2){e=0;return e|0}h=(n&-8)+u|0;if(h>>>0>>0){e=0;return e|0}f=h-t|0;a=n>>>3;do{if(n>>>0>=256){o=pe[e+(u+24)>>2]|0;a=pe[e+(u+12)>>2]|0;do{if((a|0)==(c|0)){i=e+(u+20)|0;r=pe[i>>2]|0;if(!r){i=e+(u+16)|0;r=pe[i>>2]|0;if(!r){l=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;l=r;break}}else{n=pe[e+(u+8)>>2]|0;if(n>>>0>>0)Xe();r=n+12|0;if((pe[r>>2]|0)!=(c|0))Xe();i=a+8|0;if((pe[i>>2]|0)==(c|0)){pe[r>>2]=a;pe[i>>2]=n;l=a;break}else Xe()}}while(0);if(o){r=pe[e+(u+28)>>2]|0;i=908+(r<<2)|0;if((c|0)==(pe[i>>2]|0)){pe[i>>2]=l;if(!l){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();r=o+16|0;if((pe[r>>2]|0)==(c|0))pe[r>>2]=l;else pe[o+20>>2]=l;if(!l)break}i=pe[155]|0;if(l>>>0>>0)Xe();pe[l+24>>2]=o;r=pe[e+(u+16)>>2]|0;do{if(r)if(r>>>0>>0)Xe();else{pe[l+16>>2]=r;pe[r+24>>2]=l;break}}while(0);r=pe[e+(u+20)>>2]|0;if(r)if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[l+20>>2]=r;pe[r+24>>2]=l;break}}}else{n=pe[e+(u+8)>>2]|0;i=pe[e+(u+12)>>2]|0;r=644+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0>>0)Xe();if((pe[n+12>>2]|0)!=(c|0))Xe()}if((i|0)==(n|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();r=i+8|0;if((pe[r>>2]|0)==(c|0))o=r;else Xe()}else o=i+8|0;pe[n+12>>2]=i;pe[o>>2]=n}}while(0);if(f>>>0<16){pe[d>>2]=h|p&1|2;t=e+(h|4)|0;pe[t>>2]=pe[t>>2]|1;return e|0}else{pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=f|3;p=e+(h|4)|0;pe[p>>2]=pe[p>>2]|1;Wr(e+t|0,f);return e|0}return 0}function Wr(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0;m=e+t|0;r=pe[e+4>>2]|0;do{if(!(r&1)){l=pe[e>>2]|0;if(!(r&3))return;f=e+(0-l)|0;h=l+t|0;u=pe[155]|0;if(f>>>0>>0)Xe();if((f|0)==(pe[156]|0)){i=e+(t+4)|0;r=pe[i>>2]|0;if((r&3|0)!=3){b=f;o=h;break}pe[153]=h;pe[i>>2]=r&-2;pe[e+(4-l)>>2]=h|1;pe[m>>2]=h;return}a=l>>>3;if(l>>>0<256){n=pe[e+(8-l)>>2]|0;i=pe[e+(12-l)>>2]|0;r=644+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0>>0)Xe();if((pe[n+12>>2]|0)!=(f|0))Xe()}if((i|0)==(n|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();r=i+8|0;if((pe[r>>2]|0)==(f|0))s=r;else Xe()}else s=i+8|0;pe[n+12>>2]=i;pe[s>>2]=n;b=f;o=h;break}s=pe[e+(24-l)>>2]|0;n=pe[e+(12-l)>>2]|0;do{if((n|0)==(f|0)){n=16-l|0;i=e+(n+4)|0;r=pe[i>>2]|0;if(!r){i=e+n|0;r=pe[i>>2]|0;if(!r){c=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;c=r;break}}else{a=pe[e+(8-l)>>2]|0;if(a>>>0>>0)Xe();r=a+12|0;if((pe[r>>2]|0)!=(f|0))Xe();i=n+8|0;if((pe[i>>2]|0)==(f|0)){pe[r>>2]=n;pe[i>>2]=a;c=n;break}else Xe()}}while(0);if(s){r=pe[e+(28-l)>>2]|0;i=908+(r<<2)|0;if((f|0)==(pe[i>>2]|0)){pe[i>>2]=c;if(!c){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();r=s+16|0;if((pe[r>>2]|0)==(f|0))pe[r>>2]=c;else pe[s+20>>2]=c;if(!c){b=f;o=h;break}}n=pe[155]|0;if(c>>>0>>0)Xe();pe[c+24>>2]=s;r=16-l|0;i=pe[e+r>>2]|0;do{if(i)if(i>>>0>>0)Xe();else{pe[c+16>>2]=i;pe[i+24>>2]=c;break}}while(0);r=pe[e+(r+4)>>2]|0;if(r)if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[c+20>>2]=r;pe[r+24>>2]=c;b=f;o=h;break}else{b=f;o=h}}else{b=f;o=h}}else{b=e;o=t}}while(0);u=pe[155]|0;if(m>>>0>>0)Xe();r=e+(t+4)|0;i=pe[r>>2]|0;if(!(i&2)){if((m|0)==(pe[157]|0)){v=(pe[154]|0)+o|0;pe[154]=v;pe[157]=b;pe[b+4>>2]=v|1;if((b|0)!=(pe[156]|0))return;pe[156]=0;pe[153]=0;return}if((m|0)==(pe[156]|0)){v=(pe[153]|0)+o|0;pe[153]=v;pe[156]=b;pe[b+4>>2]=v|1;pe[b+v>>2]=v;return}o=(i&-8)+o|0;a=i>>>3;do{if(i>>>0>=256){s=pe[e+(t+24)>>2]|0;n=pe[e+(t+12)>>2]|0;do{if((n|0)==(m|0)){i=e+(t+20)|0;r=pe[i>>2]|0;if(!r){i=e+(t+16)|0;r=pe[i>>2]|0;if(!r){p=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;p=r;break}}else{a=pe[e+(t+8)>>2]|0;if(a>>>0>>0)Xe();r=a+12|0;if((pe[r>>2]|0)!=(m|0))Xe();i=n+8|0;if((pe[i>>2]|0)==(m|0)){pe[r>>2]=n;pe[i>>2]=a;p=n;break}else Xe()}}while(0);if(s){r=pe[e+(t+28)>>2]|0;i=908+(r<<2)|0;if((m|0)==(pe[i>>2]|0)){pe[i>>2]=p;if(!p){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();r=s+16|0;if((pe[r>>2]|0)==(m|0))pe[r>>2]=p;else pe[s+20>>2]=p;if(!p)break}i=pe[155]|0;if(p>>>0>>0)Xe();pe[p+24>>2]=s;r=pe[e+(t+16)>>2]|0;do{if(r)if(r>>>0>>0)Xe();else{pe[p+16>>2]=r;pe[r+24>>2]=p;break}}while(0);r=pe[e+(t+20)>>2]|0;if(r)if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[p+20>>2]=r;pe[r+24>>2]=p;break}}}else{n=pe[e+(t+8)>>2]|0;i=pe[e+(t+12)>>2]|0;r=644+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0>>0)Xe();if((pe[n+12>>2]|0)!=(m|0))Xe()}if((i|0)==(n|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();r=i+8|0;if((pe[r>>2]|0)==(m|0))d=r;else Xe()}else d=i+8|0;pe[n+12>>2]=i;pe[d>>2]=n}}while(0);pe[b+4>>2]=o|1;pe[b+o>>2]=o;if((b|0)==(pe[156]|0)){pe[153]=o;return}}else{pe[r>>2]=i&-2;pe[b+4>>2]=o|1;pe[b+o>>2]=o}r=o>>>3;if(o>>>0<256){i=r<<1;a=644+(i<<2)|0;n=pe[151]|0;r=1<>2]|0;if(i>>>0<(pe[155]|0)>>>0)Xe();else{g=r;v=i}}else{pe[151]=n|r;g=644+(i+2<<2)|0;v=a}pe[g>>2]=b;pe[v+12>>2]=b;pe[b+8>>2]=v;pe[b+12>>2]=a;return}r=o>>>8;if(r)if(o>>>0>16777215)a=31;else{g=(r+1048320|0)>>>16&8;v=r<>>16&4;v=v<>>16&2;a=14-(m|g|a)+(v<>>15)|0;a=o>>>(a+7|0)&1|a<<1}else a=0;r=908+(a<<2)|0;pe[b+28>>2]=a;pe[b+20>>2]=0;pe[b+16>>2]=0;i=pe[152]|0;n=1<>2]=b;pe[b+24>>2]=r;pe[b+12>>2]=b;pe[b+8>>2]=b;return}r=pe[r>>2]|0;e:do{if((pe[r+4>>2]&-8|0)!=(o|0)){a=o<<((a|0)==31?0:25-(a>>>1)|0);while(1){i=r+16+(a>>>31<<2)|0;n=pe[i>>2]|0;if(!n)break;if((pe[n+4>>2]&-8|0)==(o|0)){r=n;break e}else{a=a<<1;r=n}}if(i>>>0<(pe[155]|0)>>>0)Xe();pe[i>>2]=b;pe[b+24>>2]=r;pe[b+12>>2]=b;pe[b+8>>2]=b;return}}while(0);i=r+8|0;n=pe[i>>2]|0;v=pe[155]|0;if(!(n>>>0>=v>>>0&r>>>0>=v>>>0))Xe();pe[n+12>>2]=b;pe[i>>2]=b;pe[b+8>>2]=n;pe[b+12>>2]=r;pe[b+24>>2]=0;return}function Gr(){}function Vr(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;i=t-i-(r>>>0>e>>>0|0)>>>0;return(re=i,e-r>>>0|0)|0}function Yr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;i=e+r|0;if((r|0)>=20){t=t&255;a=e&3;o=t|t<<8|t<<16|t<<24;n=i&~3;if(a){a=e+4-a|0;while((e|0)<(a|0)){de[e>>0]=t;e=e+1|0}}while((e|0)<(n|0)){pe[e>>2]=o;e=e+4|0}}while((e|0)<(i|0)){de[e>>0]=t;e=e+1|0}return e-r|0}function Jr(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){re=t>>>r;return e>>>r|(t&(1<>>r-32|0}function Kr(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){re=t<>>32-r;return e<>>0;return(re=t+i+(r>>>0>>0|0)>>>0,r|0)|0}function Qr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if((r|0)>=4096)return Ie(e|0,t|0,r|0)|0;i=e|0;if((e&3)==(t&3)){while(e&3){if(!r)return i|0;de[e>>0]=de[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}while((r|0)>=4){pe[e>>2]=pe[t>>2];e=e+4|0;t=t+4|0;r=r-4|0}}while((r|0)>0){de[e>>0]=de[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}return i|0}function $r(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){re=t>>r;return e>>>r|(t&(1<>r-32|0}function ei(e){e=e|0;var t=0;t=de[g+(e&255)>>0]|0;if((t|0)<8)return t|0;t=de[g+(e>>8&255)>>0]|0;if((t|0)<8)return t+8|0;t=de[g+(e>>16&255)>>0]|0;if((t|0)<8)return t+16|0;return(de[g+(e>>>24)>>0]|0)+24|0}function ti(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0;a=e&65535;n=t&65535;r=be(n,a)|0;i=e>>>16;e=(r>>>16)+(be(n,i)|0)|0;n=t>>>16;t=be(n,a)|0;return(re=(e>>>16)+(be(n,i)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|r&65535|0)|0}function ri(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0;l=t>>31|((t|0)<0?-1:0)<<1;u=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;a=i>>31|((i|0)<0?-1:0)<<1;n=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;s=Vr(l^e,u^t,l,u)|0;o=re;e=a^l;t=n^u;return Vr((si(s,o,Vr(a^r,n^i,a,n)|0,re,0)|0)^e,re^t,e,t)|0}function ii(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0;n=ve;ve=ve+16|0;s=n|0;o=t>>31|((t|0)<0?-1:0)<<1;a=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;l=i>>31|((i|0)<0?-1:0)<<1;u=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;e=Vr(o^e,a^t,o,a)|0;t=re;si(e,t,Vr(l^r,u^i,l,u)|0,re,s)|0;i=Vr(pe[s>>2]^o,pe[s+4>>2]^a,o,a)|0;r=re;ve=n;return(re=r,i)|0}function ni(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0;n=e;a=r;r=ti(n,a)|0;e=re;return(re=(be(t,a)|0)+(be(i,n)|0)+e|e&0,r|0|0)|0}function ai(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;return si(e,t,r,i,0)|0}function oi(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0;a=ve;ve=ve+16|0;n=a|0;si(e,t,r,i,n)|0;ve=a;return(re=pe[n+4>>2]|0,pe[n>>2]|0)|0}function si(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;c=e;u=t;l=u;o=r;f=i;s=f;if(!l){a=(n|0)!=0;if(!s){if(a){pe[n>>2]=(c>>>0)%(o>>>0);pe[n+4>>2]=0}f=0;n=(c>>>0)/(o>>>0)>>>0;return(re=f,n)|0}else{if(!a){f=0;n=0;return(re=f,n)|0}pe[n>>2]=e|0;pe[n+4>>2]=t&0;f=0;n=0;return(re=f,n)|0}}a=(s|0)==0;do{if(o){if(!a){a=(oe(s|0)|0)-(oe(l|0)|0)|0;if(a>>>0<=31){h=a+1|0;s=31-a|0;t=a-31>>31;o=h;e=c>>>(h>>>0)&t|l<>>(h>>>0)&t;a=0;s=c<>2]=e|0;pe[n+4>>2]=u|t&0;f=0;n=0;return(re=f,n)|0}a=o-1|0;if(a&o){s=(oe(o|0)|0)+33-(oe(l|0)|0)|0;p=64-s|0;h=32-s|0;u=h>>31;d=s-32|0;t=d>>31;o=s;e=h-1>>31&l>>>(d>>>0)|(l<>>(s>>>0))&t;t=t&l>>>(s>>>0);a=c<>>(d>>>0))&u|c<>31;break}if(n){pe[n>>2]=a&c;pe[n+4>>2]=0}if((o|0)==1){d=u|t&0;p=e|0|0;return(re=d,p)|0}else{p=ei(o|0)|0;d=l>>>(p>>>0)|0;p=l<<32-p|c>>>(p>>>0)|0;return(re=d,p)|0}}else{if(a){if(n){pe[n>>2]=(l>>>0)%(o>>>0);pe[n+4>>2]=0}d=0;p=(l>>>0)/(o>>>0)>>>0;return(re=d,p)|0}if(!c){if(n){pe[n>>2]=0;pe[n+4>>2]=(l>>>0)%(s>>>0)}d=0;p=(l>>>0)/(s>>>0)>>>0;return(re=d,p)|0}a=s-1|0;if(!(a&s)){if(n){pe[n>>2]=e|0;pe[n+4>>2]=a&l|t&0}d=0;p=l>>>((ei(s|0)|0)>>>0);return(re=d,p)|0}a=(oe(s|0)|0)-(oe(l|0)|0)|0;if(a>>>0<=30){t=a+1|0;s=31-a|0;o=t;e=l<>>(t>>>0);t=l>>>(t>>>0);a=0;s=c<>2]=e|0;pe[n+4>>2]=u|t&0;d=0;p=0;return(re=d,p)|0}}while(0);if(!o){l=s;u=0;s=0}else{h=r|0|0;c=f|i&0;l=Zr(h|0,c|0,-1,-1)|0;r=re;u=s;s=0;do{i=u;u=a>>>31|u<<1;a=s|a<<1;i=e<<1|i>>>31|0;f=e>>>31|t<<1|0;Vr(l,r,i,f)|0;p=re;d=p>>31|((p|0)<0?-1:0)<<1;s=d&1;e=Vr(i,f,d&h,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&c)|0;t=re;o=o-1|0}while((o|0)!=0);l=u;u=0}o=0;if(n){pe[n>>2]=e;pe[n+4>>2]=t}d=(a|0)>>>31|(l|o)<<1|(o<<1|a>>>31)&0|u;p=(a<<1|0>>>31)&-2|s;return(re=d,p)|0}function ui(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;return Ei[e&7](t|0,r|0,i|0)|0}function li(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;Mi[e&3](t|0,r|0,i|0,n|0,a|0)}function ci(e,t){e=e|0;t=t|0;Pi[e&7](t|0)}function hi(e,t){e=e|0;t=t|0;return Ci[e&1](t|0)|0}function fi(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;Ai[e&0](t|0,r|0,i|0)}function di(e){e=e|0;Oi[e&3]()}function pi(e,t,r,i,n,a,o){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;Ii[e&3](t|0,r|0,i|0,n|0,a|0,o|0)}function mi(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;return Ri[e&1](t|0,r|0,i|0,n|0,a|0)|0}function gi(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;Di[e&3](t|0,r|0,i|0,n|0)}function vi(e,t,r){e=e|0;t=t|0;r=r|0;se(0);return 0}function bi(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;se(1)}function yi(e){e=e|0;se(2)}function _i(e){e=e|0;se(3);return 0}function wi(e,t,r){e=e|0;t=t|0;r=r|0;se(4)}function xi(){se(5)}function ki(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;se(6)}function Ti(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;se(7);return 0}function Si(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;se(8)}var Ei=[vi,Yt,Lr,Cr,Pr,Ar,vi,vi];var Mi=[bi,tr,er,bi];var Pi=[yi,qt,Gt,Ht,Wt,Vt,ur,jr];var Ci=[_i,Mr];var Ai=[wi];var Oi=[xi,or,sr,xi];var Ii=[ki,ir,rr,ki];var Ri=[Ti,ut];var Di=[Si,Kt,Zt,Si];return{___cxa_can_catch:nr,_crn_get_levels:kt,_crn_get_uncompressed_size:St,_crn_decompress:Et,_i64Add:Zr,_crn_get_width:wt,___cxa_is_pointer_type:ar,_i64Subtract:Vr,_memset:Yr,_malloc:Nr,_free:Ur,_memcpy:Qr,_bitshift64Lshr:Jr,_fflush:gr,_bitshift64Shl:Kr,_crn_get_height:xt,___errno_location:cr,_crn_get_dxt_format:Tt,runPostSets:Gr,_emscripten_replace_memory:Ye,stackAlloc:Je,stackSave:Ke,stackRestore:Ze,establishStackSpace:Qe,setThrew:$e,setTempRet0:rt,getTempRet0:it,dynCall_iiii:ui,dynCall_viiiii:li,dynCall_vi:ci,dynCall_ii:hi,dynCall_viii:fi,dynCall_v:di,dynCall_viiiiii:pi,dynCall_iiiiii:mi,dynCall_viiii:gi}}(e.Ya,e.Za,buffer);e.___cxa_can_catch=Z.___cxa_can_catch,e._crn_get_levels=Z._crn_get_levels,e.runPostSets=Z.runPostSets,e._crn_get_uncompressed_size=Z._crn_get_uncompressed_size,e._crn_decompress=Z._crn_decompress;var zc=e._i64Add=Z._i64Add;e._crn_get_height=Z._crn_get_height,e.___cxa_is_pointer_type=Z.___cxa_is_pointer_type;var nb=e._i64Subtract=Z._i64Subtract,qb=e._memset=Z._memset,Ea=e._malloc=Z._malloc,Bc=e._memcpy=Z._memcpy,Xa=e._emscripten_replace_memory=Z._emscripten_replace_memory;e._crn_get_dxt_format=Z._crn_get_dxt_format;var rb=e._bitshift64Lshr=Z._bitshift64Lshr,Na=e._free=Z._free;e._fflush=Z._fflush,e._crn_get_width=Z._crn_get_width,e.___errno_location=Z.___errno_location;var sb=e._bitshift64Shl=Z._bitshift64Shl;function ia(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}e.dynCall_iiii=Z.dynCall_iiii,e.dynCall_viiiii=Z.dynCall_viiiii,e.dynCall_vi=Z.dynCall_vi,e.dynCall_ii=Z.dynCall_ii,e.dynCall_viii=Z.dynCall_viii,e.dynCall_v=Z.dynCall_v,e.dynCall_viiiiii=Z.dynCall_viiiiii,e.dynCall_iiiiii=Z.dynCall_iiiiii,e.dynCall_viiii=Z.dynCall_viiii,n.aa=Z.stackAlloc,n.ua=Z.stackSave,n.ba=Z.stackRestore,n.Cd=Z.establishStackSpace,n.rb=Z.setTempRet0,n.fb=Z.getTempRet0,ia.prototype=Error(),ia.prototype.constructor=ia;var rd=null,jb=function t(){e.calledRun||td(),e.calledRun||(jb=t)};function td(t){function r(){if(!e.calledRun&&(e.calledRun=!0,!na)){if(Ha||(Ha=!0,ab(cb)),ab(db),e.onRuntimeInitialized&&e.onRuntimeInitialized(),e._main&&vd&&e.callMain(t),e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;)gb(e.postRun.shift());ab(eb)}}if(t=t||e.arguments,null===rd&&(rd=Date.now()),!(0 0) var gc = undefined");else{if(!ba&&!ca)throw"Unknown runtime environment. Where are we?";e.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},void 0!==arguments&&(e.arguments=arguments),"undefined"!=typeof console?(e.print||(e.print=function(e){console.log(e)}),e.printErr||(e.printErr=function(e){console.log(e)})):e.print||(e.print=function(){}),ca&&(e.load=importScripts),void 0===e.setWindowTitle&&(e.setWindowTitle=function(e){document.title=e})}function ha(e){eval.call(null,e)}for(k in!e.load&&e.read&&(e.load=function(t){ha(e.read(t))}),e.print||(e.print=function(){}),e.printErr||(e.printErr=e.print),e.arguments||(e.arguments=[]),e.thisProgram||(e.thisProgram="./this.program"),e.print=e.print,e.W=e.printErr,e.preRun=[],e.postRun=[],aa)aa.hasOwnProperty(k)&&(e[k]=aa[k]);var n={rb:function(e){ka=e},fb:function(){return ka},ua:function(){return m},ba:function(e){m=e},Ka:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:return"*"===e[e.length-1]?n.J:"i"===e[0]?(assert(0==(e=parseInt(e.substr(1)))%8),e/8):0}},eb:function(e){return Math.max(n.Ka(e),n.J)},ud:16,Qd:function(e,t){return"double"===t||"i64"===t?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},Ed:function(e,t,r){return r||"i64"!=e&&"double"!=e?e?Math.min(t||(e?n.eb(e):0),n.J):Math.min(t,8):8},L:function(t,r,i){return i&&i.length?(i.splice||(i=Array.prototype.slice.call(i)),i.splice(0,0,r),e["dynCall_"+t].apply(null,i)):e["dynCall_"+t].call(null,r)},Z:[],Xa:function(e){for(var t=0;t>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},Ua:8,J:4,vd:0};e.Runtime=n,n.addFunction=n.Xa,n.removeFunction=n.nb;var na=!1,oa,pa,ka,ra,sa;function assert(e,t){e||x("Assertion failed: "+t)}function qa(a){var b=e["_"+a];if(!b)try{b=eval("_"+a)}catch(e){}return assert(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)"),b}function wa(e,t,r){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":y[e>>0]=t;break;case"i16":z[e>>1]=t;break;case"i32":C[e>>2]=t;break;case"i64":pa=[t>>>0,(oa=t,1<=+xa(oa)?0>>0:~~+Aa((oa-+(~~oa>>>0))/4294967296)>>>0:0)],C[e>>2]=pa[0],C[e+4>>2]=pa[1];break;case"float":Ba[e>>2]=t;break;case"double":Ca[e>>3]=t;break;default:x("invalid type for setValue: "+r)}}function Da(e,t){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return y[e>>0];case"i16":return z[e>>1];case"i32":case"i64":return C[e>>2];case"float":return Ba[e>>2];case"double":return Ca[e>>3];default:x("invalid type for setValue: "+t)}return null}function D(e,t,r,i){var a,o;o="number"==typeof e?(a=!0,e):(a=!1,e.length);var s,u,l="string"==typeof t?t:null;if(r=4==r?i:[Ea,n.aa,n.Ra,n.R][void 0===r?2:r](Math.max(o,l?1:t.length)),a){for(assert(0==(3&(i=r))),e=r+(-4&o);i>2]=0;for(e=r+o;i>0]=0;return r}if("i8"===l)return e.subarray||e.slice?E.set(e,r):E.set(new Uint8Array(e),r),r;for(i=0;i>0],0!=i||r)&&(a++,!r||a!=r););if(r||(r=a),i="",n<128){for(;0>10,56320|1023&r)))):s+=String.fromCharCode(r)}}function Ka(e,t,r,i){if(!(0>6}else{if(o<=65535){if(i<=r+2)break;t[r++]=224|o>>12}else{if(o<=2097151){if(i<=r+3)break;t[r++]=240|o>>18}else{if(o<=67108863){if(i<=r+4)break;t[r++]=248|o>>24}else{if(i<=r+5)break;t[r++]=252|o>>30,t[r++]=128|o>>24&63}t[r++]=128|o>>18&63}t[r++]=128|o>>12&63}t[r++]=128|o>>6&63}t[r++]=128|63&o}}return t[r]=0,r-n}function La(e){for(var t=0,r=0;r"):a=n;e:for(;h>0];if(!r)return t;t+=String.fromCharCode(r)}},e.stringToAscii=function(e,t){return Ia(e,t,!1)},e.UTF8ArrayToString=Ja,e.UTF8ToString=function(e){return Ja(E,e)},e.stringToUTF8Array=Ka,e.stringToUTF8=function(e,t,r){return Ka(e,E,t,r)},e.lengthBytesUTF8=La,e.UTF16ToString=function(e){for(var t=0,r="";;){var i=z[e+2*t>>1];if(0==i)return r;++t,r+=String.fromCharCode(i)}},e.stringToUTF16=function(e,t,r){if(void 0===r&&(r=2147483647),r<2)return 0;var i=t;r=(r-=2)<2*e.length?r/2:e.length;for(var n=0;n>1]=e.charCodeAt(n),t+=2;return z[t>>1]=0,t-i},e.lengthBytesUTF16=function(e){return 2*e.length},e.UTF32ToString=function(e){for(var t=0,r="";;){var i=C[e+4*t>>2];if(0==i)return r;++t,65536<=i?(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i)):r+=String.fromCharCode(i)}},e.stringToUTF32=function(e,t,r){if(void 0===r&&(r=2147483647),r<4)return 0;var i=t;r=i+r-4;for(var n=0;n>2]=a,r<(t+=4)+4)break}return C[t>>2]=0,t-i},e.lengthBytesUTF32=function(e){for(var t=0,r=0;r>0]=e[r],r+=1}function ta(e,t){for(var r=0;r>0]=e[r]}function Ia(e,t,r){for(var i=0;i>0]=e.charCodeAt(i);r||(y[t>>0]=0)}e.addOnPreRun=fb,e.addOnInit=function(e){cb.unshift(e)},e.addOnPreMain=function(e){db.unshift(e)},e.addOnExit=function(e){H.unshift(e)},e.addOnPostRun=gb,e.intArrayFromString=hb,e.intArrayToString=function(e){for(var t=[],r=0;r>>16)*i+r*(t>>>16)<<16)|0}),Math.Jd=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.Ad=Math.clz32;var xa=Math.abs,Aa=Math.ceil,za=Math.floor,ya=Math.min,I=0,ib=null,jb=null;function kb(){I++,e.monitorRunDependencies&&e.monitorRunDependencies(I)}function lb(){if(I--,e.monitorRunDependencies&&e.monitorRunDependencies(I),0==I&&(null!==ib&&(clearInterval(ib),ib=null),jb)){var t=jb;jb=null,t()}}e.addRunDependency=kb,e.removeRunDependency=lb,e.preloadedImages={},e.preloadedAudios={},Ta=8,la=Ta+5888,cb.push(),D([124,0,0,0,98,7,0,0,124,0,0,0,111,7,0,0,164,0,0,0,124,7,0,0,16,0,0,0,0,0,0,0,164,0,0,0,157,7,0,0,24,0,0,0,0,0,0,0,164,0,0,0,227,7,0,0,24,0,0,0,0,0,0,0,164,0,0,0,191,7,0,0,56,0,0,0,0,0,0,0,164,0,0,0,5,8,0,0,40,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,40,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,88,0,0,0,1,0,0,0,5,0,0,0,3,0,0,0,4,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,114,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,1,0,0,236,1,0,0,236,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,239,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,231,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,115,40,37,117,41,58,32,65,115,115,101,114,116,105,111,110,32,102,97,105,108,117,114,101,58,32,34,37,115,34,10,0,109,95,115,105,122,101,32,60,61,32,109,95,99,97,112,97,99,105,116,121,0,46,47,99,114,110,95,100,101,99,111,109,112,46,104,0,109,105,110,95,110,101,119,95,99,97,112,97,99,105,116,121,32,60,32,40,48,120,55,70,70,70,48,48,48,48,85,32,47,32,101,108,101,109,101,110,116,95,115,105,122,101,41,0,110,101,119,95,99,97,112,97,99,105,116,121,32,38,38,32,40,110,101,119,95,99,97,112,97,99,105,116,121,32,62,32,109,95,99,97,112,97,99,105,116,121,41,0,110,117,109,95,99,111,100,101,115,91,99,93,0,115,111,114,116,101,100,95,112,111,115,32,60,32,116,111,116,97,108,95,117,115,101,100,95,115,121,109,115,0,112,67,111,100,101,115,105,122,101,115,91,115,121,109,95,105,110,100,101,120,93,32,61,61,32,99,111,100,101,115,105,122,101,0,116,32,60,32,40,49,85,32,60,60,32,116,97,98,108,101,95,98,105,116,115,41,0,109,95,108,111,111,107,117,112,91,116,93,32,61,61,32,99,85,73,78,84,51,50,95,77,65,88,0,99,114,110,100,95,109,97,108,108,111,99,58,32,115,105,122,101,32,116,111,111,32,98,105,103,0,99,114,110,100,95,109,97,108,108,111,99,58,32,111,117,116,32,111,102,32,109,101,109,111,114,121,0,40,40,117,105,110,116,51,50,41,112,95,110,101,119,32,38,32,40,67,82,78,68,95,77,73,78,95,65,76,76,79,67,95,65,76,73,71,78,77,69,78,84,32,45,32,49,41,41,32,61,61,32,48,0,99,114,110,100,95,114,101,97,108,108,111,99,58,32,98,97,100,32,112,116,114,0,99,114,110,100,95,102,114,101,101,58,32,98,97,100,32,112,116,114,0,102,97,108,115,101,0,40,116,111,116,97,108,95,115,121,109,115,32,62,61,32,49,41,32,38,38,32,40,116,111,116,97,108,95,115,121,109,115,32,60,61,32,112,114,101,102,105,120,95,99,111,100,105,110,103,58,58,99,77,97,120,83,117,112,112,111,114,116,101,100,83,121,109,115,41,0,17,18,19,20,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15,16,48,0,110,117,109,95,98,105,116,115,32,60,61,32,51,50,85,0,109,95,98,105,116,95,99,111,117,110,116,32,60,61,32,99,66,105,116,66,117,102,83,105,122,101,0,116,32,33,61,32,99,85,73,78,84,51,50,95,77,65,88,0,109,111,100,101,108,46,109,95,99,111,100,101,95,115,105,122,101,115,91,115,121,109,93,32,61,61,32,108,101,110,0,0,2,3,1,0,2,3,4,5,6,7,1,40,108,101,110,32,62,61,32,49,41,32,38,38,32,40,108,101,110,32,60,61,32,99,77,97,120,69,120,112,101,99,116,101,100,67,111,100,101,83,105,122,101,41,0,105,32,60,32,109,95,115,105,122,101,0,110,101,120,116,95,108,101,118,101,108,95,111,102,115,32,62,32,99,117,114,95,108,101,118,101,108,95,111,102,115,0,1,2,2,3,3,3,3,4,0,0,0,0,0,0,1,1,0,1,0,1,0,0,1,2,1,2,0,0,0,1,0,2,1,0,2,0,0,1,2,3,110,117,109,32,38,38,32,40,110,117,109,32,61,61,32,126,110,117,109,95,99,104,101,99,107,41,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",4,n.Ua);var mb=n.ja(D(12,"i8",2),8);function ob(t){return e.___errno_location&&(C[e.___errno_location()>>2]=t),t}assert(0==mb%8),e._i64Subtract=nb;var J={I:1,F:2,ed:3,bc:4,H:5,Aa:6,vb:7,zc:8,ea:9,Jb:10,va:11,qd:11,Ta:12,da:13,Vb:14,Lc:15,fa:16,wa:17,rd:18,ha:19,ya:20,P:21,q:22,uc:23,Sa:24,Q:25,nd:26,Wb:27,Hc:28,ia:29,bd:30,nc:31,Vc:32,Sb:33,Zc:34,Dc:42,Zb:43,Kb:44,ec:45,fc:46,gc:47,mc:48,od:49,xc:50,dc:51,Pb:35,Ac:37,Bb:52,Eb:53,sd:54,vc:55,Fb:56,Gb:57,Qb:35,Hb:59,Jc:60,yc:61,kd:62,Ic:63,Ec:64,Fc:65,ad:66,Bc:67,yb:68,gd:69,Lb:70,Wc:71,pc:72,Tb:73,Db:74,Qc:76,Cb:77,$c:78,hc:79,ic:80,lc:81,kc:82,jc:83,Kc:38,za:39,qc:36,ga:40,Rc:95,Uc:96,Ob:104,wc:105,zb:97,Yc:91,Oc:88,Gc:92,cd:108,Nb:111,wb:98,Mb:103,tc:101,rc:100,ld:110,Xb:112,Yb:113,ac:115,Ab:114,Rb:89,oc:90,Xc:93,dd:94,xb:99,sc:102,cc:106,Mc:107,md:109,pd:87,Ub:122,hd:116,Pc:95,Cc:123,$b:84,Sc:75,Ib:125,Nc:131,Tc:130,jd:86};function pb(e,t){H.push(function(){n.L("vi",e,[t])}),pb.level=H.length}function tb(){return!!tb.p}e._memset=qb,e._bitshift64Lshr=rb,e._bitshift64Shl=sb;var ub=[],vb={};function wb(e,t){wb.p||(wb.p={}),e in wb.p||(n.L("v",t),wb.p[e]=1)}var xb={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function yb(e,t){for(var r=0,i=e.length-1;0<=i;i--){var n=e[i];"."===n?e.splice(i,1):".."===n?(e.splice(i,1),r++):r&&(e.splice(i,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}function zb(e){var t="/"===e.charAt(0),r="/"===e.substr(-1);return(e=yb(e.split("/").filter(function(e){return!!e}),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e}function Ab(e){var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1);return e=t[0],t=t[1],e||t?(t&&(t=t.substr(0,t.length-1)),e+t):"."}function Bb(e){if("/"===e)return"/";var t=e.lastIndexOf("/");return-1===t?e:e.substr(t+1)}function Cb(){return zb(Array.prototype.slice.call(arguments,0).join("/"))}function K(e,t){return zb(e+"/"+t)}function Db(){for(var e="",t=!1,r=arguments.length-1;-1<=r&&!t;r--){if("string"!=typeof(t=0<=r?arguments[r]:"/"))throw new TypeError("Arguments to path.resolve must be strings");if(!t)return"";e=t+"/"+e,t="/"===t.charAt(0)}return(t?"/":"")+(e=yb(e.split("/").filter(function(e){return!!e}),!t).join("/"))||"."}var Eb=[];function Fb(e,t){Eb[e]={input:[],output:[],N:t},Gb(e,Hb)}var Hb={open:function(e){var t=Eb[e.g.rdev];if(!t)throw new L(J.ha);e.tty=t,e.seekable=!1},close:function(e){e.tty.N.flush(e.tty)},flush:function(e){e.tty.N.flush(e.tty)},read:function(e,t,r,i){if(!e.tty||!e.tty.N.La)throw new L(J.Aa);for(var n=0,a=0;ae.e.length&&(e.e=M.cb(e),e.o=e.e.length),!e.e||e.e.subarray){var r=e.e?e.e.buffer.byteLength:0;t<=r||(t=Math.max(t,r*(r<1048576?2:1.125)|0),0!=r&&(t=Math.max(t,256)),r=e.e,e.e=new Uint8Array(t),0t)e.e.length=t;else for(;e.e.length=e.g.o)return 0;if(assert(0<=(e=Math.min(e.g.o-n,i))),8>1)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}return t.mode},B:function(e){for(var t=[];e.parent!==e;)t.push(e.name),e=e.parent;return t.push(e.A.pa.root),t.reverse(),Cb.apply(null,t)},Ha:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},$a:function(e){if((e&=-32769)in P.Ha)return P.Ha[e];throw new L(J.q)},k:{D:function(e){var t;e=P.B(e);try{t=fs.lstatSync(e)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}return P.$&&!t.K&&(t.K=4096),P.$&&!t.blocks&&(t.blocks=(t.size+t.K-1)/t.K|0),{dev:t.dev,ino:t.ino,mode:t.mode,nlink:t.nlink,uid:t.uid,gid:t.gid,rdev:t.rdev,size:t.size,atime:t.atime,mtime:t.mtime,ctime:t.ctime,K:t.K,blocks:t.blocks}},u:function(e,t){var r=P.B(e);try{void 0!==t.mode&&(fs.chmodSync(r,t.mode),e.mode=t.mode),void 0!==t.size&&fs.truncateSync(r,t.size)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},lookup:function(e,t){var r=K(P.B(e),t);r=P.Ja(r);return P.createNode(e,t,r)},T:function(e,t,r,i){e=P.createNode(e,t,r,i),t=P.B(e);try{N(e.mode)?fs.mkdirSync(t,e.mode):fs.writeFileSync(t,"",{mode:e.mode})}catch(e){if(!e.code)throw e;throw new L(J[e.code])}return e},rename:function(e,t,r){e=P.B(e),t=K(P.B(t),r);try{fs.renameSync(e,t)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},unlink:function(e,t){var r=K(P.B(e),t);try{fs.unlinkSync(r)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},rmdir:function(e,t){var r=K(P.B(e),t);try{fs.rmdirSync(r)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},readdir:function(e){e=P.B(e);try{return fs.readdirSync(e)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},symlink:function(e,t,r){e=K(P.B(e),t);try{fs.symlinkSync(r,e)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},readlink:function(e){var t=P.B(e);try{return t=fs.readlinkSync(t),t=Ob.relative(Ob.resolve(e.A.pa.root),t)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}}},n:{open:function(e){var t=P.B(e.g);try{32768==(61440&e.g.mode)&&(e.V=fs.openSync(t,P.$a(e.flags)))}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},close:function(e){try{32768==(61440&e.g.mode)&&e.V&&fs.closeSync(e.V)}catch(e){if(!e.code)throw e;throw new L(J[e.code])}},read:function(e,t,r,i,n){if(0===i)return 0;var a,o=new Buffer(i);try{a=fs.readSync(e.V,o,0,i,n)}catch(e){throw new L(J[e.code])}if(0>>0)%Q.length}function Xb(e){var t=Wb(e.parent.id,e.name);e.M=Q[t],Q[t]=e}function Nb(e,t){var r;if(r=(r=Yb(e,"x"))?r:e.k.lookup?0:J.da)throw new L(r,e);for(r=Q[Wb(e.id,t)];r;r=r.M){var i=r.name;if(r.parent.id===e.id&&i===t)return r}return e.k.lookup(e,t)}function Lb(e,t,r,i){return Zb||((Zb=function(e,t,r,i){e||(e=this),this.parent=e,this.A=e.A,this.U=null,this.id=Sb++,this.name=t,this.mode=r,this.k={},this.n={},this.rdev=i}).prototype={},Object.defineProperties(Zb.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}},kb:{get:function(){return N(this.mode)}},jb:{get:function(){return 8192==(61440&this.mode)}}})),Xb(e=new Zb(e,t,r,i)),e}function N(e){return 16384==(61440&e)}var $b={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function Yb(e,t){return Tb?0:(-1===t.indexOf("r")||292&e.mode)&&(-1===t.indexOf("w")||146&e.mode)&&(-1===t.indexOf("x")||73&e.mode)?0:J.da}function ac(e,t){try{return Nb(e,t),J.wa}catch(e){}return Yb(e,"wx")}function bc(){for(var e=0;e<=4096;e++)if(!Rb[e])return e;throw new L(J.Sa)}function cc(e){dc||((dc=function(){}).prototype={},Object.defineProperties(dc.prototype,{object:{get:function(){return this.g},set:function(e){this.g=e}},Ld:{get:function(){return 1!=(2097155&this.flags)}},Md:{get:function(){return 0!=(2097155&this.flags)}},Kd:{get:function(){return 1024&this.flags}}}));var t,r=new dc;for(t in e)r[t]=e[t];return e=r,r=bc(),e.fd=r,Rb[r]=e}var Kb={open:function(e){e.n=Qb[e.g.rdev].n,e.n.open&&e.n.open(e)},G:function(){throw new L(J.ia)}},qc;function Gb(e,t){Qb[e]={n:t}}function ec(e,t){var r,i="/"===t,n=!t;if(i&&Pb)throw new L(J.fa);if(!i&&!n){if(t=(r=S(t,{Ia:!1})).path,(r=r.g).U)throw new L(J.fa);if(!N(r.mode))throw new L(J.ya)}n={type:e,pa:{},Oa:t,lb:[]};var a=e.A(n);(a.A=n).root=a,i?Pb=a:r&&(r.U=n,r.A&&r.A.lb.push(n))}function fc(e,t,r){var i=S(e,{parent:!0}).g;if(!(e=Bb(e))||"."===e||".."===e)throw new L(J.q);var n=ac(i,e);if(n)throw new L(n);if(!i.k.T)throw new L(J.I);return i.k.T(i,e,t,r)}function gc(e,t){return t=4095&(void 0!==t?t:438),fc(e,t|=32768,0)}function V(e,t){return t=1023&(void 0!==t?t:511),fc(e,t|=16384,0)}function hc(e,t,r){return void 0===r&&(r=t,t=438),fc(e,8192|t,r)}function ic(e,t){if(!Db(e))throw new L(J.F);var r=S(t,{parent:!0}).g;if(!r)throw new L(J.F);var i=Bb(t),n=ac(r,i);if(n)throw new L(n);if(!r.k.symlink)throw new L(J.I);return r.k.symlink(r,i,e)}function Vb(e){if(!(e=S(e).g))throw new L(J.F);if(!e.k.readlink)throw new L(J.q);return Db(T(e.parent),e.k.readlink(e))}function jc(e,t){var r;if(!(r="string"==typeof e?S(e,{la:!0}).g:e).k.u)throw new L(J.I);r.k.u(r,{mode:4095&t|-4096&r.mode,timestamp:Date.now()})}function kc(t,r){var i,n,a;if(""===t)throw new L(J.F);if("string"==typeof r){if(void 0===(n=$b[r]))throw Error("Unknown file open mode: "+r)}else n=r;if(i=64&(r=n)?4095&(void 0===i?438:i)|32768:0,"object"==typeof t)a=t;else{t=zb(t);try{a=S(t,{la:!(131072&r)}).g}catch(e){}}if(n=!1,64&r)if(a){if(128&r)throw new L(J.wa)}else a=fc(t,i,0),n=!0;if(!a)throw new L(J.F);if(8192==(61440&a.mode)&&(r&=-513),65536&r&&!N(a.mode))throw new L(J.ya);if(!n&&(i=a?40960==(61440&a.mode)?J.ga:N(a.mode)&&(0!=(2097155&r)||512&r)?J.P:(i=["r","w","rw"][3&r],512&r&&(i+="w"),Yb(a,i)):J.F))throw new L(i);if(512&r){var o;if(!(o="string"==typeof(i=a)?S(i,{la:!0}).g:i).k.u)throw new L(J.I);if(N(o.mode))throw new L(J.P);if(32768!=(61440&o.mode))throw new L(J.q);if(i=Yb(o,"w"))throw new L(i);o.k.u(o,{size:0,timestamp:Date.now()})}r&=-641,(a=cc({g:a,path:T(a),flags:r,seekable:!0,position:0,n:a.n,tb:[],error:!1})).n.open&&a.n.open(a),!e.logReadFiles||1&r||(lc||(lc={}),t in lc||(lc[t]=1,e.printErr("read file: "+t)));try{R.onOpenFile&&(o=0,1!=(2097155&r)&&(o|=1),0!=(2097155&r)&&(o|=2),R.onOpenFile(t,o))}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+t+"', flags) threw an exception: "+e.message)}return a}function mc(e){e.na&&(e.na=null);try{e.n.close&&e.n.close(e)}catch(e){throw e}finally{Rb[e.fd]=null}}function nc(e,t,r){if(!e.seekable||!e.n.G)throw new L(J.ia);e.position=e.n.G(e,t,r),e.tb=[]}function oc(e,t,r,i,n,a){if(i<0||n<0)throw new L(J.q);if(0==(2097155&e.flags))throw new L(J.ea);if(N(e.g.mode))throw new L(J.P);if(!e.n.write)throw new L(J.q);1024&e.flags&&nc(e,0,2);var o=!0;if(void 0===n)n=e.position,o=!1;else if(!e.seekable)throw new L(J.ia);t=e.n.write(e,t,r,i,n,a),o||(e.position+=t);try{e.path&&R.onWriteToFile&&R.onWriteToFile(e.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return t}function pc(){L||((L=function(e,t){this.g=t,this.qb=function(e){for(var t in this.S=e,J)if(J[t]===e){this.code=t;break}},this.qb(e),this.message=xb[e]}).prototype=Error(),L.prototype.constructor=L,[J.F].forEach(function(e){Mb[e]=new L(e),Mb[e].stack=""}))}function rc(e,t){var r=0;return e&&(r|=365),t&&(r|=146),r}function sc(e,t,r,i){return gc(e=K("string"==typeof e?e:T(e),t),rc(r,i))}function tc(e,t,r,i,n,a){if(n=gc(e=t?K("string"==typeof e?e:T(e),t):e,i=rc(i,n)),r){if("string"==typeof r){e=Array(r.length),t=0;for(var o=r.length;t>2]}function xc(){var e;if(e=X(),!(e=Rb[e]))throw new L(J.ea);return e}var yc={};function Ga(e){Ga.p||(r=Qa(r),Ga.p=!0,assert(n.R),Ga.bb=n.R,n.R=function(){x("cannot dynamically allocate, sbrk now has control")});var t=r;return 0==e||Ga.bb(e)?t:4294967295}e._i64Add=zc;var Ac=1;function Cc(e,t){if(Dc=e,Ec=t,!Fc)return 1;if(0==e)Y=function(){setTimeout(Gc,t)},Hc="timeout";else if(1==e)Y=function(){Ic(Gc)},Hc="rAF";else if(2==e){if(!window.setImmediate){var r=[];window.addEventListener("message",function(e){e.source===window&&"__emcc"===e.data&&(e.stopPropagation(),r.shift()())},!0),window.setImmediate=function(e){r.push(e),window.postMessage("__emcc","*")}}Y=function(){window.setImmediate(Gc)},Hc="immediate"}return 0}function Jc(o,t,r,s,i){e.noExitRuntime=!0,assert(!Fc,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Fc=o,Kc=s;var u=Lc;if(Gc=function(){if(!na)if(0>r-6&63;r=r-6,e=e+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[n]}2==r?(e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(3&t)<<4],e+="=="):4==r&&(e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(15&t)<<2],e+="="),l.src="data:audio/x-"+o.substr(-3)+";base64,"+e,s(l)}},l.src=n,ad(function(){s(l)})}});var r=e.canvas;r&&(r.sa=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.Fa=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.Fa=r.Fa.bind(document),document.addEventListener("pointerlockchange",t,!1),document.addEventListener("mozpointerlockchange",t,!1),document.addEventListener("webkitpointerlockchange",t,!1),document.addEventListener("mspointerlockchange",t,!1),e.elementPointerLock&&r.addEventListener("click",function(e){!Tc&&r.sa&&(r.sa(),e.preventDefault())},!1))}}function bd(t,r,i,n){if(r&&e.ka&&t==e.canvas)return e.ka;var a,o;if(r){if(o={antialias:!1,alpha:!1},n)for(var s in n)o[s]=n[s];(o=GL.createContext(t,o))&&(a=GL.getContext(o).td),t.style.backgroundColor="black"}else a=t.getContext("2d");return a?(i&&(r||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),e.ka=a,r&&GL.Od(o),e.Td=r,Uc.forEach(function(e){e()}),Vc()),a):null}var cd=!1,dd=void 0,ed=void 0;function fd(t,r,i){function n(){Sc=!1;var t=a.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===t?(a.Da=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},a.Da=a.Da.bind(document),dd&&a.sa(),Sc=!0,ed&&gd()):(t.parentNode.insertBefore(a,t),t.parentNode.removeChild(t),ed&&hd()),e.onFullScreen&&e.onFullScreen(Sc),id(a)}void 0===(dd=t)&&(dd=!0),void 0===(ed=r)&&(ed=!1),void 0===(jd=i)&&(jd=null);var a=e.canvas;cd||(cd=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var o=document.createElement("div");a.parentNode.insertBefore(o,a),o.appendChild(a),o.p=o.requestFullScreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),i?o.p({Ud:i}):o.p()}var kd=0;function ld(e){var t=Date.now();if(0===kd)kd=t+1e3/60;else for(;kd<=t+2;)kd+=1e3/60;t=Math.max(kd-t,0),setTimeout(e,t)}function Ic(e){"undefined"==typeof window?ld(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||ld),window.requestAnimationFrame(e))}function ad(t){e.noExitRuntime=!0,setTimeout(function(){na||t()},1e4)}function $c(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]}function md(e,t,r){var i=new XMLHttpRequest;i.open("GET",e,!0),i.responseType="arraybuffer",i.onload=function(){200==i.status||0==i.status&&i.response?t(i.response):r()},i.onerror=r,i.send(null)}function nd(t,r,e){md(t,function(e){assert(e,'Loading data file "'+t+'" failed (no arrayBuffer).'),r(new Uint8Array(e)),lb()},function(){if(!e)throw'Loading data file "'+t+'" failed.';e()}),kb()}var od=[],Wc,Xc,Yc,Zc,jd;function pd(){var t=e.canvas;od.forEach(function(e){e(t.width,t.height)})}function gd(){if("undefined"!=typeof SDL){var e=Sa[SDL.screen+0*n.J>>2];C[SDL.screen+0*n.J>>2]=8388608|e}pd()}function hd(){if("undefined"!=typeof SDL){var e=Sa[SDL.screen+0*n.J>>2];C[SDL.screen+0*n.J>>2]=-8388609&e}pd()}function id(t,r,i){r&&i?(t.ub=r,t.hb=i):(r=t.ub,i=t.hb);var n=r,a=i;if(e.forcedAspectRatio&&0this.length-1||e<0)){var t=e%this.chunkSize;return this.gb(e/this.chunkSize|0)[t]}},o.prototype.pb=function(e){this.gb=e},o.prototype.Ca=function(){var e=new XMLHttpRequest;if(e.open("HEAD",u,!1),e.send(null),!(200<=e.status&&e.status<300||304===e.status))throw Error("Couldn't load "+u+". Status: "+e.status);var t,a=Number(e.getResponseHeader("Content-length")),o=1048576;(t=e.getResponseHeader("Accept-Ranges"))&&"bytes"===t||(o=a);var s=this;s.pb(function(e){var t=e*o,r=(e+1)*o-1;r=Math.min(r,a-1);if(void 0===s.Y[e]){var i=s.Y;if(r=(e=e.g.e).length)return 0;if(assert(0<=(i=Math.min(e.length-n,i))),e.slice)for(var a=0;a>2]=0;case 21520:return r.tty?-J.q:-J.Q;case 21531:if(n=X(),!r.n.ib)throw new L(J.Q);return r.n.ib(r,i,n);default:x("bad ioctl syscall "+i)}}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},___syscall6:function(e,t){wc=t;try{return mc(xc()),0}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},_emscripten_set_main_loop_timing:Cc,__ZSt18uncaught_exceptionv:tb,___setErrNo:ob,_sbrk:Ga,___cxa_begin_catch:function(e){var t;tb.p--,ub.push(e);e:{if(e&&!vb[e])for(t in vb)if(vb[t].wd===e)break e;t=e}return t&&vb[t].Sd++,e},_emscripten_memcpy_big:function(e,t,r){return E.set(E.subarray(t,t+r),e),e},_sysconf:function(e){switch(e){case 30:return 4096;case 85:return F/4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ob(J.q),-1},_pthread_getspecific:function(e){return yc[e]||0},_pthread_self:function(){return 0},_pthread_once:wb,_pthread_key_create:function(e){return 0==e?J.q:(C[e>>2]=Ac,yc[Ac]=0,Ac++,0)},___unlock:function(){},_emscripten_set_main_loop:Jc,_pthread_setspecific:function(e,t){return e in yc?(yc[e]=t,0):J.q},___lock:function(){},_abort:function(){e.abort()},_pthread_cleanup_push:pb,_time:function(e){var t=Date.now()/1e3|0;return e&&(C[e>>2]=t),t},___syscall140:function(e,t){wc=t;try{var r=xc(),i=X(),n=X(),a=X(),o=X();return assert(0===i),nc(r,n,o),C[a>>2]=r.position,r.na&&0===n&&0===o&&(r.na=null),0}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},___syscall146:function(e,t){wc=t;try{var r,i=xc(),n=X();e:{for(var a=X(),o=0,s=0;s>2],C[n+(8*s+4)>>2],void 0);if(u<0){r=-1;break e}o+=u}r=o}return r}catch(e){return void 0!==vc&&e instanceof L||x(e),-e.S}},STACKTOP:m,STACK_MAX:Va,tempDoublePtr:mb,ABORT:na,cttz_i8:qd};var Z=function(e,t,r){"use asm";var i=e.Int8Array;var n=e.Int16Array;var a=e.Int32Array;var o=e.Uint8Array;var s=e.Uint16Array;var u=e.Uint32Array;var l=e.Float32Array;var c=e.Float64Array;var de=new i(r);var $=new n(r);var pe=new a(r);var me=new o(r);var ge=new s(r);var h=new u(r);var f=new l(r);var ee=new c(r);var d=e.byteLength;var ve=t.STACKTOP|0;var p=t.STACK_MAX|0;var te=t.tempDoublePtr|0;var m=t.ABORT|0;var g=t.cttz_i8|0;var v=0;var b=0;var y=0;var _=0;var w=e.NaN,x=e.Infinity;var k=0,T=0,S=0,E=0,M=0.0,P=0,C=0,A=0,O=0.0;var re=0;var I=0;var R=0;var D=0;var j=0;var L=0;var z=0;var F=0;var B=0;var N=0;var U=e.Math.floor;var X=e.Math.abs;var q=e.Math.sqrt;var H=e.Math.pow;var W=e.Math.cos;var G=e.Math.sin;var V=e.Math.tan;var Y=e.Math.acos;var J=e.Math.asin;var K=e.Math.atan;var Z=e.Math.atan2;var Q=e.Math.exp;var ie=e.Math.log;var ne=e.Math.ceil;var be=e.Math.imul;var ae=e.Math.min;var oe=e.Math.clz32;var se=t.abort;var ue=t.assert;var le=t.invoke_iiii;var ce=t.invoke_viiiii;var he=t.invoke_vi;var fe=t.invoke_ii;var ye=t.invoke_viii;var _e=t.invoke_v;var we=t.invoke_viiiiii;var xe=t.invoke_iiiiii;var ke=t.invoke_viiii;var Te=t._pthread_cleanup_pop;var Se=t.___syscall54;var Ee=t.___syscall6;var Me=t._emscripten_set_main_loop_timing;var Pe=t.__ZSt18uncaught_exceptionv;var Ce=t.___setErrNo;var Ae=t._sbrk;var Oe=t.___cxa_begin_catch;var Ie=t._emscripten_memcpy_big;var Re=t._sysconf;var De=t._pthread_getspecific;var je=t._pthread_self;var Le=t._pthread_once;var ze=t._pthread_key_create;var Fe=t.___unlock;var Be=t._emscripten_set_main_loop;var Ne=t._pthread_setspecific;var Ue=t.___lock;var Xe=t._abort;var qe=t._pthread_cleanup_push;var He=t._time;var We=t.___syscall140;var Ge=t.___syscall146;var Ve=0.0;function Ye(e){if(d(e)&16777215||d(e)<=16777215||d(e)>2147483648)return false;de=new i(e);$=new n(e);pe=new a(e);me=new o(e);ge=new s(e);h=new u(e);f=new l(e);ee=new c(e);r=e;return true}function Je(e){e=e|0;var t=0;t=ve;ve=ve+e|0;ve=ve+15&-16;return t|0}function Ke(){return ve|0}function Ze(e){e=e|0;ve=e}function Qe(e,t){e=e|0;t=t|0;ve=e;p=t}function $e(e,t){e=e|0;t=t|0;if(!v){v=e;b=t}}function et(e){e=e|0;de[te>>0]=de[e>>0];de[te+1>>0]=de[e+1>>0];de[te+2>>0]=de[e+2>>0];de[te+3>>0]=de[e+3>>0]}function tt(e){e=e|0;de[te>>0]=de[e>>0];de[te+1>>0]=de[e+1>>0];de[te+2>>0]=de[e+2>>0];de[te+3>>0]=de[e+3>>0];de[te+4>>0]=de[e+4>>0];de[te+5>>0]=de[e+5>>0];de[te+6>>0]=de[e+6>>0];de[te+7>>0]=de[e+7>>0]}function rt(e){e=e|0;re=e}function it(){return re|0}function nt(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0;m=ve;ve=ve+608|0;f=m+88|0;h=m+72|0;u=m+64|0;s=m+48|0;o=m+24|0;a=m;c=m+96|0;d=m+92|0;l=e+4|0;p=e+8|0;if((pe[l>>2]|0)>>>0>(pe[p>>2]|0)>>>0){pe[a>>2]=1154;pe[a+4>>2]=2120;pe[a+8>>2]=1133;_r(c,1100,a)|0;yr(c,m+16|0)|0}if((2147418112/(i>>>0)|0)>>>0<=t>>>0){pe[o>>2]=1154;pe[o+4>>2]=2121;pe[o+8>>2]=1169;_r(c,1100,o)|0;yr(c,m+40|0)|0}o=pe[p>>2]|0;if(o>>>0>=t>>>0){p=1;ve=m;return p|0}do{if(r){if(t){a=t+-1|0;if(!(a&t)){a=11;break}else t=a}else t=-1;t=t>>>16|t;t=t>>>8|t;t=t>>>4|t;t=t>>>2|t;t=(t>>>1|t)+1|0;a=10}else a=10}while(0);if((a|0)==10)if(!t){t=0;a=12}else a=11;if((a|0)==11)if(t>>>0<=o>>>0)a=12;if((a|0)==12){pe[s>>2]=1154;pe[s+4>>2]=2130;pe[s+8>>2]=1217;_r(c,1100,s)|0;yr(c,u)|0}r=be(t,i)|0;do{if(!n){a=at(pe[e>>2]|0,r,d,1)|0;if(!a){p=0;ve=m;return p|0}else{pe[e>>2]=a;break}}else{o=ot(r,d)|0;if(!o){p=0;ve=m;return p|0}Ai[n&0](o,pe[e>>2]|0,pe[l>>2]|0);a=pe[e>>2]|0;do{if(a)if(!(a&7)){Ri[pe[104>>2]&1](a,0,0,1,pe[27]|0)|0;break}else{pe[h>>2]=1154;pe[h+4>>2]=2499;pe[h+8>>2]=1516;_r(c,1100,h)|0;yr(c,f)|0;break}}while(0);pe[e>>2]=o}}while(0);a=pe[d>>2]|0;if(a>>>0>r>>>0)t=(a>>>0)/(i>>>0)|0;pe[p>>2]=t;p=1;ve=m;return p|0}function at(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0;l=ve;ve=ve+592|0;u=l+48|0;a=l+24|0;n=l;s=l+72|0;o=l+68|0;if(e&7){pe[n>>2]=1154;pe[n+4>>2]=2499;pe[n+8>>2]=1494;_r(s,1100,n)|0;yr(s,l+16|0)|0;u=0;ve=l;return u|0}if(t>>>0>2147418112){pe[a>>2]=1154;pe[a+4>>2]=2499;pe[a+8>>2]=1387;_r(s,1100,a)|0;yr(s,l+40|0)|0;u=0;ve=l;return u|0}pe[o>>2]=t;i=Ri[pe[104>>2]&1](e,t,o,i,pe[27]|0)|0;if(r)pe[r>>2]=pe[o>>2];if(!(i&7)){u=i;ve=l;return u|0}pe[u>>2]=1154;pe[u+4>>2]=2551;pe[u+8>>2]=1440;_r(s,1100,u)|0;yr(s,l+64|0)|0;u=i;ve=l;return u|0}function ot(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0;u=ve;ve=ve+592|0;o=u+48|0;s=u+24|0;r=u;a=u+72|0;n=u+68|0;i=e+3&-4;i=(i|0)!=0?i:4;if(i>>>0>2147418112){pe[r>>2]=1154;pe[r+4>>2]=2499;pe[r+8>>2]=1387;_r(a,1100,r)|0;yr(a,u+16|0)|0;s=0;ve=u;return s|0}pe[n>>2]=i;r=Ri[pe[104>>2]&1](0,i,n,1,pe[27]|0)|0;e=pe[n>>2]|0;if(t)pe[t>>2]=e;if((r|0)==0|e>>>0>>0){pe[s>>2]=1154;pe[s+4>>2]=2499;pe[s+8>>2]=1413;_r(a,1100,s)|0;yr(a,u+40|0)|0;s=0;ve=u;return s|0}if(!(r&7)){s=r;ve=u;return s|0}pe[o>>2]=1154;pe[o+4>>2]=2526;pe[o+8>>2]=1440;_r(a,1100,o)|0;yr(a,u+64|0)|0;s=r;ve=u;return s|0}function st(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0;F=ve;ve=ve+960|0;j=F+232|0;D=F+216|0;R=F+208|0;I=F+192|0;O=F+184|0;A=F+168|0;C=F+160|0;P=F+144|0;S=F+136|0;T=F+120|0;k=F+112|0;x=F+96|0;y=F+88|0;b=F+72|0;v=F+64|0;g=F+48|0;h=F+40|0;d=F+24|0;f=F+16|0;c=F;M=F+440|0;L=F+376|0;z=F+304|0;m=F+236|0;if((t|0)==0|i>>>0>11){e=0;ve=F;return e|0}pe[e>>2]=t;n=z;a=n+68|0;do{pe[n>>2]=0;n=n+4|0}while((n|0)<(a|0));a=0;do{n=de[r+a>>0]|0;if(n<<24>>24){E=z+((n&255)<<2)|0;pe[E>>2]=(pe[E>>2]|0)+1}a=a+1|0}while((a|0)!=(t|0));a=0;l=1;o=0;s=-1;u=0;while(1){n=pe[z+(l<<2)>>2]|0;if(!n)pe[e+28+(l+-1<<2)>>2]=0;else{E=l+-1|0;pe[L+(E<<2)>>2]=a;a=n+a|0;w=16-l|0;pe[e+28+(E<<2)>>2]=(a+-1<>2]=u;pe[m+(l<<2)>>2]=u;o=o>>>0>l>>>0?o:l;s=s>>>0>>0?s:l;u=n+u|0}l=l+1|0;if((l|0)==17){E=o;break}else a=a<<1}pe[e+4>>2]=u;a=e+172|0;do{if(u>>>0>(pe[a>>2]|0)>>>0){pe[a>>2]=u;if(u){n=u+-1|0;if(n&u)p=14}else{n=-1;p=14}if((p|0)==14){w=n>>>16|n;w=w>>>8|w;w=w>>>4|w;w=w>>>2|w;w=(w>>>1|w)+1|0;pe[a>>2]=w>>>0>t>>>0?t:w}o=e+176|0;n=pe[o>>2]|0;do{if(n){w=pe[n+-4>>2]|0;n=n+-8|0;if(!((w|0)!=0?(w|0)==(~pe[n>>2]|0):0)){pe[c>>2]=1154;pe[c+4>>2]=644;pe[c+8>>2]=1863;_r(M,1100,c)|0;yr(M,f)|0}if(!(n&7)){Ri[pe[104>>2]&1](n,0,0,1,pe[27]|0)|0;break}else{pe[d>>2]=1154;pe[d+4>>2]=2499;pe[d+8>>2]=1516;_r(M,1100,d)|0;yr(M,h)|0;break}}}while(0);a=pe[a>>2]|0;a=(a|0)!=0?a:1;n=ot((a<<1)+8|0,0)|0;if(!n){pe[o>>2]=0;n=0;break}else{pe[n+4>>2]=a;pe[n>>2]=~a;pe[o>>2]=n+8;p=25;break}}else p=25}while(0);e:do{if((p|0)==25){w=e+24|0;de[w>>0]=s;de[e+25>>0]=E;a=e+176|0;o=0;do{_=de[r+o>>0]|0;n=_&255;if(_<<24>>24){if(!(pe[z+(n<<2)>>2]|0)){pe[g>>2]=1154;pe[g+4>>2]=2273;pe[g+8>>2]=1261;_r(M,1100,g)|0;yr(M,v)|0}_=m+(n<<2)|0;n=pe[_>>2]|0;pe[_>>2]=n+1;if(n>>>0>=u>>>0){pe[b>>2]=1154;pe[b+4>>2]=2277;pe[b+8>>2]=1274;_r(M,1100,b)|0;yr(M,y)|0}$[(pe[a>>2]|0)+(n<<1)>>1]=o}o=o+1|0}while((o|0)!=(t|0));n=de[w>>0]|0;y=(n&255)>>>0>>0?i:0;_=e+8|0;pe[_>>2]=y;b=(y|0)!=0;if(b){v=1<>>0>(pe[n>>2]|0)>>>0){pe[n>>2]=v;o=e+168|0;n=pe[o>>2]|0;do{if(n){g=pe[n+-4>>2]|0;n=n+-8|0;if(!((g|0)!=0?(g|0)==(~pe[n>>2]|0):0)){pe[x>>2]=1154;pe[x+4>>2]=644;pe[x+8>>2]=1863;_r(M,1100,x)|0;yr(M,k)|0}if(!(n&7)){Ri[pe[104>>2]&1](n,0,0,1,pe[27]|0)|0;break}else{pe[T>>2]=1154;pe[T+4>>2]=2499;pe[T+8>>2]=1516;_r(M,1100,T)|0;yr(M,S)|0;break}}}while(0);n=v<<2;a=ot(n+8|0,0)|0;if(!a){pe[o>>2]=0;n=0;break e}else{S=a+8|0;pe[a+4>>2]=v;pe[a>>2]=~v;pe[o>>2]=S;a=S;break}}else{a=e+168|0;n=v<<2;o=a;a=pe[a>>2]|0}}while(0);Yr(a|0,-1,n|0)|0;p=e+176|0;g=1;do{if(pe[z+(g<<2)>>2]|0){t=y-g|0;m=1<>2]|0;if(a>>>0>=16){pe[P>>2]=1154;pe[P+4>>2]=1953;pe[P+8>>2]=1737;_r(M,1100,P)|0;yr(M,C)|0}n=pe[e+28+(a<<2)>>2]|0;if(!n)d=-1;else d=(n+-1|0)>>>(16-g|0);if(s>>>0<=d>>>0){h=(pe[e+96+(a<<2)>>2]|0)-s|0;f=g<<16;do{n=ge[(pe[p>>2]|0)+(h+s<<1)>>1]|0;if((me[r+n>>0]|0|0)!=(g|0)){pe[A>>2]=1154;pe[A+4>>2]=2319;pe[A+8>>2]=1303;_r(M,1100,A)|0;yr(M,O)|0}c=s<>>0>=v>>>0){pe[I>>2]=1154;pe[I+4>>2]=2325;pe[I+8>>2]=1337;_r(M,1100,I)|0;yr(M,R)|0}n=pe[o>>2]|0;if((pe[n+(u<<2)>>2]|0)!=-1){pe[D>>2]=1154;pe[D+4>>2]=2327;pe[D+8>>2]=1360;_r(M,1100,D)|0;yr(M,j)|0;n=pe[o>>2]|0}pe[n+(u<<2)>>2]=a;l=l+1|0}while(l>>>0>>0);s=s+1|0}while(s>>>0<=d>>>0)}}g=g+1|0}while(y>>>0>=g>>>0);n=de[w>>0]|0}a=e+96|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L>>2]|0);a=e+100|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+4>>2]|0);a=e+104|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+8>>2]|0);a=e+108|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+12>>2]|0);a=e+112|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+16>>2]|0);a=e+116|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+20>>2]|0);a=e+120|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+24>>2]|0);a=e+124|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+28>>2]|0);a=e+128|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+32>>2]|0);a=e+132|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+36>>2]|0);a=e+136|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+40>>2]|0);a=e+140|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+44>>2]|0);a=e+144|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+48>>2]|0);a=e+148|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+52>>2]|0);a=e+152|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+56>>2]|0);a=e+156|0;pe[a>>2]=(pe[a>>2]|0)-(pe[L+60>>2]|0);a=e+16|0;pe[a>>2]=0;o=e+20|0;pe[o>>2]=n&255;t:do{if(b){while(1){if(!i)break t;n=i+-1|0;if(!(pe[z+(i<<2)>>2]|0))i=n;else break}pe[a>>2]=pe[e+28+(n<<2)>>2];n=y+1|0;pe[o>>2]=n;if(n>>>0<=E>>>0){while(1){if(pe[z+(n<<2)>>2]|0)break;n=n+1|0;if(n>>>0>E>>>0)break t}pe[o>>2]=n}}}while(0);pe[e+92>>2]=-1;pe[e+160>>2]=1048575;pe[e+12>>2]=32-(pe[_>>2]|0);n=1}}while(0);e=n;ve=F;return e|0}function ut(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0;if(!e){n=Nr(t)|0;if(!r){r=n;return r|0}if(!n)a=0;else a=qr(n)|0;pe[r>>2]=a;r=n;return r|0}if(!t){Ur(e);if(!r){r=0;return r|0}pe[r>>2]=0;r=0;return r|0}n=Xr(e,t)|0;a=(n|0)!=0;if(a|i^1)a=a?n:e;else{n=Xr(e,t)|0;a=(n|0)==0?e:n}if(!r){r=n;return r|0}t=qr(a)|0;pe[r>>2]=t;r=n;return r|0}function lt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if(!((e|0)!=0&t>>>0>73&(r|0)!=0)){r=0;return r|0}if((pe[r>>2]|0)!=40|t>>>0<74){r=0;return r|0}if(((me[e>>0]|0)<<8|(me[e+1>>0]|0)|0)!=18552){r=0;return r|0}if(((me[e+2>>0]|0)<<8|(me[e+3>>0]|0))>>>0<74){r=0;return r|0}if(((me[e+7>>0]|0)<<16|(me[e+6>>0]|0)<<24|(me[e+8>>0]|0)<<8|(me[e+9>>0]|0))>>>0>t>>>0){r=0;return r|0}pe[r+4>>2]=(me[e+12>>0]|0)<<8|(me[e+13>>0]|0);pe[r+8>>2]=(me[e+14>>0]|0)<<8|(me[e+15>>0]|0);pe[r+12>>2]=me[e+16>>0];pe[r+16>>2]=me[e+17>>0];t=e+18|0;i=r+32|0;pe[i>>2]=me[t>>0];pe[i+4>>2]=0;t=de[t>>0]|0;pe[r+20>>2]=t<<24>>24==0|t<<24>>24==9?8:16;pe[r+24>>2]=(me[e+26>>0]|0)<<16|(me[e+25>>0]|0)<<24|(me[e+27>>0]|0)<<8|(me[e+28>>0]|0);pe[r+28>>2]=(me[e+30>>0]|0)<<16|(me[e+29>>0]|0)<<24|(me[e+31>>0]|0)<<8|(me[e+32>>0]|0);r=1;return r|0}function ct(e){e=e|0;Oe(e|0)|0;Ut()}function ht(e){e=e|0;var t=0,r=0,i=0,n=0,a=0;a=ve;ve=ve+544|0;n=a;i=a+24|0;t=pe[e+20>>2]|0;if(t)ft(t);t=e+4|0;r=pe[t>>2]|0;if(!r){n=e+16|0;de[n>>0]=0;ve=a;return}if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[n>>2]=1154;pe[n+4>>2]=2499;pe[n+8>>2]=1516;_r(i,1100,n)|0;yr(i,a+16|0)|0}pe[t>>2]=0;pe[e+8>>2]=0;pe[e+12>>2]=0;n=e+16|0;de[n>>0]=0;ve=a;return}function ft(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;d=ve;ve=ve+640|0;f=d+112|0;h=d+96|0;c=d+88|0;l=d+72|0;u=d+64|0;s=d+48|0;i=d+40|0;a=d+24|0;n=d+16|0;r=d;o=d+120|0;if(!e){ve=d;return}t=pe[e+168>>2]|0;do{if(t){p=pe[t+-4>>2]|0;t=t+-8|0;if(!((p|0)!=0?(p|0)==(~pe[t>>2]|0):0)){pe[r>>2]=1154;pe[r+4>>2]=644;pe[r+8>>2]=1863;_r(o,1100,r)|0;yr(o,n)|0}if(!(t&7)){Ri[pe[104>>2]&1](t,0,0,1,pe[27]|0)|0;break}else{pe[a>>2]=1154;pe[a+4>>2]=2499;pe[a+8>>2]=1516;_r(o,1100,a)|0;yr(o,i)|0;break}}}while(0);t=pe[e+176>>2]|0;do{if(t){p=pe[t+-4>>2]|0;t=t+-8|0;if(!((p|0)!=0?(p|0)==(~pe[t>>2]|0):0)){pe[s>>2]=1154;pe[s+4>>2]=644;pe[s+8>>2]=1863;_r(o,1100,s)|0;yr(o,u)|0}if(!(t&7)){Ri[pe[104>>2]&1](t,0,0,1,pe[27]|0)|0;break}else{pe[l>>2]=1154;pe[l+4>>2]=2499;pe[l+8>>2]=1516;_r(o,1100,l)|0;yr(o,c)|0;break}}}while(0);if(!(e&7)){Ri[pe[104>>2]&1](e,0,0,1,pe[27]|0)|0;ve=d;return}else{pe[h>>2]=1154;pe[h+4>>2]=2499;pe[h+8>>2]=1516;_r(o,1100,h)|0;yr(o,f)|0;ve=d;return}}function dt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+560|0;o=c+40|0;s=c+24|0;t=c;a=c+48|0;n=e+8|0;r=pe[n>>2]|0;if((r+-1|0)>>>0>=8192){pe[t>>2]=1154;pe[t+4>>2]=2997;pe[t+8>>2]=1541;_r(a,1100,t)|0;yr(a,c+16|0)|0}pe[e>>2]=r;i=e+20|0;t=pe[i>>2]|0;if(!t){t=ot(180,0)|0;if(!t)t=0;else{l=t+164|0;pe[l>>2]=0;pe[l+4>>2]=0;pe[l+8>>2]=0;pe[l+12>>2]=0}pe[i>>2]=t;l=t;u=pe[e>>2]|0}else{l=t;u=r}if(!(pe[n>>2]|0)){pe[s>>2]=1154;pe[s+4>>2]=903;pe[s+8>>2]=1781;_r(a,1100,s)|0;yr(a,o)|0;a=pe[e>>2]|0}else a=u;n=pe[e+4>>2]|0;if(a>>>0>16){r=a;t=0}else{e=0;l=st(l,u,n,e)|0;ve=c;return l|0}while(1){i=t+1|0;if(r>>>0>3){r=r>>>1;t=i}else{r=i;break}}e=t+2+((r|0)!=32&1<>>0>>0&1)|0;e=e>>>0<11?e&255:11;l=st(l,u,n,e)|0;ve=c;return l|0}function pt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0;j=ve;ve=ve+800|0;A=j+256|0;C=j+240|0;P=j+232|0;M=j+216|0;E=j+208|0;S=j+192|0;T=j+184|0;k=j+168|0;x=j+160|0;w=j+144|0;_=j+136|0;y=j+120|0;b=j+112|0;v=j+96|0;g=j+88|0;m=j+72|0;h=j+64|0;c=j+48|0;s=j+40|0;u=j+24|0;a=j+16|0;n=j;R=j+288|0;D=j+264|0;O=mt(e,14)|0;if(!O){pe[t>>2]=0;r=t+4|0;i=pe[r>>2]|0;if(i){if(!(i&7))Ri[pe[104>>2]&1](i,0,0,1,pe[27]|0)|0;else{pe[n>>2]=1154;pe[n+4>>2]=2499;pe[n+8>>2]=1516;_r(R,1100,n)|0;yr(R,a)|0}pe[r>>2]=0;pe[t+8>>2]=0;pe[t+12>>2]=0}de[t+16>>0]=0;r=t+20|0;i=pe[r>>2]|0;if(!i){t=1;ve=j;return t|0}ft(i);pe[r>>2]=0;t=1;ve=j;return t|0}d=t+4|0;p=t+8|0;r=pe[p>>2]|0;if((r|0)!=(O|0)){if(r>>>0<=O>>>0){do{if((pe[t+12>>2]|0)>>>0>>0){if(nt(d,O,(r+1|0)==(O|0),1,0)|0){r=pe[p>>2]|0;break}de[t+16>>0]=1;t=0;ve=j;return t|0}}while(0);Yr((pe[d>>2]|0)+r|0,0,O-r|0)|0}pe[p>>2]=O}Yr(pe[d>>2]|0,0,O|0)|0;f=e+20|0;r=pe[f>>2]|0;if((r|0)<5){a=e+4|0;o=e+8|0;n=e+16|0;do{i=pe[a>>2]|0;if((i|0)==(pe[o>>2]|0))i=0;else{pe[a>>2]=i+1;i=me[i>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[u>>2]=1154;pe[u+4>>2]=3199;pe[u+8>>2]=1650;_r(R,1100,u)|0;yr(R,s)|0;r=pe[f>>2]|0}i=i<<32-r|pe[n>>2];pe[n>>2]=i}while((r|0)<5)}else{i=e+16|0;n=i;i=pe[i>>2]|0}l=i>>>27;pe[n>>2]=i<<5;pe[f>>2]=r+-5;if((l+-1|0)>>>0>20){t=0;ve=j;return t|0}pe[D+20>>2]=0;pe[D>>2]=0;pe[D+4>>2]=0;pe[D+8>>2]=0;pe[D+12>>2]=0;de[D+16>>0]=0;r=D+4|0;i=D+8|0;e:do{if(nt(r,21,0,1,0)|0){s=pe[i>>2]|0;u=pe[r>>2]|0;Yr(u+s|0,0,21-s|0)|0;pe[i>>2]=21;if(l){n=e+4|0;a=e+8|0;o=e+16|0;s=0;do{r=pe[f>>2]|0;if((r|0)<3)do{i=pe[n>>2]|0;if((i|0)==(pe[a>>2]|0))i=0;else{pe[n>>2]=i+1;i=me[i>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[c>>2]=1154;pe[c+4>>2]=3199;pe[c+8>>2]=1650;_r(R,1100,c)|0;yr(R,h)|0;r=pe[f>>2]|0}i=i<<32-r|pe[o>>2];pe[o>>2]=i}while((r|0)<3);else i=pe[o>>2]|0;pe[o>>2]=i<<3;pe[f>>2]=r+-3;de[u+(me[1611+s>>0]|0)>>0]=i>>>29;s=s+1|0}while((s|0)!=(l|0))}if(dt(D)|0){s=e+4|0;u=e+8|0;l=e+16|0;i=0;t:while(1){o=O-i|0;r=gt(e,D)|0;r:do{if(r>>>0<17){if((pe[p>>2]|0)>>>0<=i>>>0){pe[m>>2]=1154;pe[m+4>>2]=903;pe[m+8>>2]=1781;_r(R,1100,m)|0;yr(R,g)|0}de[(pe[d>>2]|0)+i>>0]=r;r=i+1|0}else switch(r|0){case 17:{r=pe[f>>2]|0;if((r|0)<3)do{n=pe[s>>2]|0;if((n|0)==(pe[u>>2]|0))n=0;else{pe[s>>2]=n+1;n=me[n>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[v>>2]=1154;pe[v+4>>2]=3199;pe[v+8>>2]=1650;_r(R,1100,v)|0;yr(R,b)|0;r=pe[f>>2]|0}n=n<<32-r|pe[l>>2];pe[l>>2]=n}while((r|0)<3);else n=pe[l>>2]|0;pe[l>>2]=n<<3;pe[f>>2]=r+-3;r=(n>>>29)+3|0;if(r>>>0>o>>>0){r=0;break e}r=r+i|0;break r}case 18:{r=pe[f>>2]|0;if((r|0)<7)do{n=pe[s>>2]|0;if((n|0)==(pe[u>>2]|0))n=0;else{pe[s>>2]=n+1;n=me[n>>0]|0}r=r+8|0;pe[f>>2]=r;if((r|0)>=33){pe[y>>2]=1154;pe[y+4>>2]=3199;pe[y+8>>2]=1650;_r(R,1100,y)|0;yr(R,_)|0;r=pe[f>>2]|0}n=n<<32-r|pe[l>>2];pe[l>>2]=n}while((r|0)<7);else n=pe[l>>2]|0;pe[l>>2]=n<<7;pe[f>>2]=r+-7;r=(n>>>25)+11|0;if(r>>>0>o>>>0){r=0;break e}r=r+i|0;break r}default:{if((r+-19|0)>>>0>=2){I=90;break t}a=pe[f>>2]|0;if((r|0)==19){if((a|0)<2){n=a;while(1){r=pe[s>>2]|0;if((r|0)==(pe[u>>2]|0))a=0;else{pe[s>>2]=r+1;a=me[r>>0]|0}r=n+8|0;pe[f>>2]=r;if((r|0)>=33){pe[w>>2]=1154;pe[w+4>>2]=3199;pe[w+8>>2]=1650;_r(R,1100,w)|0;yr(R,x)|0;r=pe[f>>2]|0}n=a<<32-r|pe[l>>2];pe[l>>2]=n;if((r|0)<2)n=r;else break}}else{n=pe[l>>2]|0;r=a}pe[l>>2]=n<<2;pe[f>>2]=r+-2;a=(n>>>30)+3|0}else{if((a|0)<6){n=a;while(1){r=pe[s>>2]|0;if((r|0)==(pe[u>>2]|0))a=0;else{pe[s>>2]=r+1;a=me[r>>0]|0}r=n+8|0;pe[f>>2]=r;if((r|0)>=33){pe[k>>2]=1154;pe[k+4>>2]=3199;pe[k+8>>2]=1650;_r(R,1100,k)|0;yr(R,T)|0;r=pe[f>>2]|0}n=a<<32-r|pe[l>>2];pe[l>>2]=n;if((r|0)<6)n=r;else break}}else{n=pe[l>>2]|0;r=a}pe[l>>2]=n<<6;pe[f>>2]=r+-6;a=(n>>>26)+7|0}if((i|0)==0|a>>>0>o>>>0){r=0;break e}r=i+-1|0;if((pe[p>>2]|0)>>>0<=r>>>0){pe[S>>2]=1154;pe[S+4>>2]=903;pe[S+8>>2]=1781;_r(R,1100,S)|0;yr(R,E)|0}n=de[(pe[d>>2]|0)+r>>0]|0;if(!(n<<24>>24)){r=0;break e}r=a+i|0;if(i>>>0>=r>>>0){r=i;break r}do{if((pe[p>>2]|0)>>>0<=i>>>0){pe[M>>2]=1154;pe[M+4>>2]=903;pe[M+8>>2]=1781;_r(R,1100,M)|0;yr(R,P)|0}de[(pe[d>>2]|0)+i>>0]=n;i=i+1|0}while((i|0)!=(r|0))}}}while(0);if(O>>>0>r>>>0)i=r;else break}if((I|0)==90){pe[C>>2]=1154;pe[C+4>>2]=3140;pe[C+8>>2]=1632;_r(R,1100,C)|0;yr(R,A)|0;r=0;break}if((O|0)==(r|0))r=dt(t)|0;else r=0}else r=0}else{de[D+16>>0]=1;r=0}}while(0);ht(D);t=r;ve=j;return t|0}function mt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+544|0;s=c+16|0;o=c;a=c+24|0;if(!t){l=0;ve=c;return l|0}if(t>>>0<=16){l=vt(e,t)|0;ve=c;return l|0}u=vt(e,t+-16|0)|0;l=e+20|0;t=pe[l>>2]|0;if((t|0)<16){i=e+4|0;n=e+8|0;r=e+16|0;do{e=pe[i>>2]|0;if((e|0)==(pe[n>>2]|0))e=0;else{pe[i>>2]=e+1;e=me[e>>0]|0}t=t+8|0;pe[l>>2]=t;if((t|0)>=33){pe[o>>2]=1154;pe[o+4>>2]=3199;pe[o+8>>2]=1650;_r(a,1100,o)|0;yr(a,s)|0;t=pe[l>>2]|0}e=e<<32-t|pe[r>>2];pe[r>>2]=e}while((t|0)<16)}else{e=e+16|0;r=e;e=pe[e>>2]|0}pe[r>>2]=e<<16;pe[l>>2]=t+-16;l=e>>>16|u<<16;ve=c;return l|0}function gt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0;y=ve;ve=ve+608|0;m=y+88|0;p=y+72|0;f=y+64|0;h=y+48|0;c=y+40|0;d=y+24|0;l=y+16|0;u=y;v=y+96|0;g=pe[t+20>>2]|0;b=e+20|0;s=pe[b>>2]|0;do{if((s|0)<24){o=e+4|0;i=pe[o>>2]|0;n=pe[e+8>>2]|0;r=i>>>0>>0;if((s|0)>=16){if(r){pe[o>>2]=i+1;r=me[i>>0]|0}else r=0;pe[b>>2]=s+8;o=e+16|0;a=r<<24-s|pe[o>>2];pe[o>>2]=a;break}if(r){a=(me[i>>0]|0)<<8;r=i+1|0}else{a=0;r=i}if(r>>>0>>0){i=me[r>>0]|0;r=r+1|0}else i=0;pe[o>>2]=r;pe[b>>2]=s+16;o=e+16|0;a=(i|a)<<16-s|pe[o>>2];pe[o>>2]=a}else{a=e+16|0;o=a;a=pe[a>>2]|0}}while(0);n=(a>>>16)+1|0;do{if(n>>>0<=(pe[g+16>>2]|0)>>>0){i=pe[(pe[g+168>>2]|0)+(a>>>(32-(pe[g+8>>2]|0)|0)<<2)>>2]|0;if((i|0)==-1){pe[u>>2]=1154;pe[u+4>>2]=3244;pe[u+8>>2]=1677;_r(v,1100,u)|0;yr(v,l)|0}r=i&65535;i=i>>>16;if((pe[t+8>>2]|0)>>>0<=r>>>0){pe[d>>2]=1154;pe[d+4>>2]=902;pe[d+8>>2]=1781;_r(v,1100,d)|0;yr(v,c)|0}if((me[(pe[t+4>>2]|0)+r>>0]|0|0)!=(i|0)){pe[h>>2]=1154;pe[h+4>>2]=3248;pe[h+8>>2]=1694;_r(v,1100,h)|0;yr(v,f)|0}}else{i=pe[g+20>>2]|0;while(1){r=i+-1|0;if(n>>>0>(pe[g+28+(r<<2)>>2]|0)>>>0)i=i+1|0;else break}r=(a>>>(32-i|0))+(pe[g+96+(r<<2)>>2]|0)|0;if(r>>>0<(pe[t>>2]|0)>>>0){r=ge[(pe[g+176>>2]|0)+(r<<1)>>1]|0;break}pe[p>>2]=1154;pe[p+4>>2]=3266;pe[p+8>>2]=1632;_r(v,1100,p)|0;yr(v,m)|0;b=0;ve=y;return b|0}}while(0);pe[o>>2]=pe[o>>2]<>2]=(pe[b>>2]|0)-i;b=r;ve=y;return b|0}function vt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+560|0;s=c+40|0;u=c+24|0;r=c;o=c+48|0;if(t>>>0>=33){pe[r>>2]=1154;pe[r+4>>2]=3190;pe[r+8>>2]=1634;_r(o,1100,r)|0;yr(o,c+16|0)|0}l=e+20|0;r=pe[l>>2]|0;if((r|0)>=(t|0)){a=e+16|0;o=a;a=pe[a>>2]|0;s=r;u=32-t|0;u=a>>>u;a=a<>2]=a;t=s-t|0;pe[l>>2]=t;ve=c;return u|0}n=e+4|0;a=e+8|0;i=e+16|0;do{e=pe[n>>2]|0;if((e|0)==(pe[a>>2]|0))e=0;else{pe[n>>2]=e+1;e=me[e>>0]|0}r=r+8|0;pe[l>>2]=r;if((r|0)>=33){pe[u>>2]=1154;pe[u+4>>2]=3199;pe[u+8>>2]=1650;_r(o,1100,u)|0;yr(o,s)|0;r=pe[l>>2]|0}e=e<<32-r|pe[i>>2];pe[i>>2]=e}while((r|0)<(t|0));u=32-t|0;u=e>>>u;s=e<>2]=s;t=r-t|0;pe[l>>2]=t;ve=c;return u|0}function bt(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0;p=ve;ve=ve+544|0;f=p+16|0;h=p;c=p+24|0;if((e|0)==0|t>>>0<62){d=0;ve=p;return d|0}l=ot(300,0)|0;if(!l){d=0;ve=p;return d|0}pe[l>>2]=519686845;r=l+4|0;pe[r>>2]=0;i=l+8|0;pe[i>>2]=0;u=l+88|0;n=l+136|0;a=l+160|0;o=u;s=o+44|0;do{pe[o>>2]=0;o=o+4|0}while((o|0)<(s|0));de[u+44>>0]=0;m=l+184|0;o=l+208|0;s=l+232|0;g=l+252|0;pe[g>>2]=0;pe[g+4>>2]=0;pe[g+8>>2]=0;de[g+12>>0]=0;g=l+268|0;pe[g>>2]=0;pe[g+4>>2]=0;pe[g+8>>2]=0;de[g+12>>0]=0;g=l+284|0;pe[g>>2]=0;pe[g+4>>2]=0;pe[g+8>>2]=0;de[g+12>>0]=0;pe[n>>2]=0;pe[n+4>>2]=0;pe[n+8>>2]=0;pe[n+12>>2]=0;pe[n+16>>2]=0;de[n+20>>0]=0;pe[a>>2]=0;pe[a+4>>2]=0;pe[a+8>>2]=0;pe[a+12>>2]=0;pe[a+16>>2]=0;de[a+20>>0]=0;pe[m>>2]=0;pe[m+4>>2]=0;pe[m+8>>2]=0;pe[m+12>>2]=0;pe[m+16>>2]=0;de[m+20>>0]=0;pe[o>>2]=0;pe[o+4>>2]=0;pe[o+8>>2]=0;pe[o+12>>2]=0;pe[o+16>>2]=0;de[o+20>>0]=0;pe[s>>2]=0;pe[s+4>>2]=0;pe[s+8>>2]=0;pe[s+12>>2]=0;de[s+16>>0]=0;do{if(((t>>>0>=74?((me[e>>0]|0)<<8|(me[e+1>>0]|0)|0)==18552:0)?((me[e+2>>0]|0)<<8|(me[e+3>>0]|0))>>>0>=74:0)?((me[e+7>>0]|0)<<16|(me[e+6>>0]|0)<<24|(me[e+8>>0]|0)<<8|(me[e+9>>0]|0))>>>0<=t>>>0:0){pe[u>>2]=e;pe[r>>2]=e;pe[i>>2]=t;if(Mt(l)|0){r=pe[u>>2]|0;if((me[r+39>>0]|0)<<8|(me[r+40>>0]|0)){if(!(Pt(l)|0))break;if(!(Ct(l)|0))break;r=pe[u>>2]|0}if(!((me[r+55>>0]|0)<<8|(me[r+56>>0]|0))){g=l;ve=p;return g|0}if(At(l)|0?Ot(l)|0:0){g=l;ve=p;return g|0}}}else d=7}while(0);if((d|0)==7)pe[u>>2]=0;Lt(l);if(!(l&7)){Ri[pe[104>>2]&1](l,0,0,1,pe[27]|0)|0;g=0;ve=p;return g|0}else{pe[h>>2]=1154;pe[h+4>>2]=2499;pe[h+8>>2]=1516;_r(c,1100,h)|0;yr(c,f)|0;g=0;ve=p;return g|0}return 0}function yt(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+544|0;l=c;u=c+24|0;a=pe[e+88>>2]|0;s=(me[a+70+(n<<2)+1>>0]|0)<<16|(me[a+70+(n<<2)>>0]|0)<<24|(me[a+70+(n<<2)+2>>0]|0)<<8|(me[a+70+(n<<2)+3>>0]|0);o=n+1|0;if(o>>>0<(me[a+16>>0]|0)>>>0)a=(me[a+70+(o<<2)+1>>0]|0)<<16|(me[a+70+(o<<2)>>0]|0)<<24|(me[a+70+(o<<2)+2>>0]|0)<<8|(me[a+70+(o<<2)+3>>0]|0);else a=pe[e+8>>2]|0;if(a>>>0>s>>>0){u=e+4|0;u=pe[u>>2]|0;u=u+s|0;l=a-s|0;l=_t(e,u,l,t,r,i,n)|0;ve=c;return l|0}pe[l>>2]=1154;pe[l+4>>2]=3704;pe[l+8>>2]=1792;_r(u,1100,l)|0;yr(u,c+16|0)|0;u=e+4|0;u=pe[u>>2]|0;u=u+s|0;l=a-s|0;l=_t(e,u,l,t,r,i,n)|0;ve=c;return l|0}function _t(e,t,r,i,n,a,o){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;var s=0,u=0,l=0,c=0;c=pe[e+88>>2]|0;u=((me[c+12>>0]|0)<<8|(me[c+13>>0]|0))>>>o;l=((me[c+14>>0]|0)<<8|(me[c+15>>0]|0))>>>o;u=u>>>0>1?(u+3|0)>>>2:1;l=l>>>0>1?(l+3|0)>>>2:1;c=c+18|0;o=de[c>>0]|0;o=be(o<<24>>24==0|o<<24>>24==9?8:16,u)|0;if(a)if((a&3|0)==0&o>>>0<=a>>>0)o=a;else{e=0;return e|0}if((be(o,l)|0)>>>0>n>>>0){e=0;return e|0}a=(u+1|0)>>>1;s=(l+1|0)>>>1;if(!r){e=0;return e|0}pe[e+92>>2]=t;pe[e+96>>2]=t;pe[e+104>>2]=r;pe[e+100>>2]=t+r;pe[e+108>>2]=0;pe[e+112>>2]=0;switch(me[c>>0]|0|0){case 0:{It(e,i,n,o,u,l,a,s)|0;e=1;return e|0}case 4:case 6:case 5:case 3:case 2:{Rt(e,i,n,o,u,l,a,s)|0;e=1;return e|0}case 9:{Dt(e,i,n,o,u,l,a,s)|0;e=1;return e|0}case 8:case 7:{jt(e,i,n,o,u,l,a,s)|0;e=1;return e|0}default:{e=0;return e|0}}return 0}function wt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+4>>2]|0}function xt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+8>>2]|0}function kt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+12>>2]|0}function Tt(e,t){e=e|0;t=t|0;var r=0,i=0;i=ve;ve=ve+48|0;r=i;pe[r>>2]=40;lt(e,t,r)|0;ve=i;return pe[r+32>>2]|0}function St(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0,s=0,u=0,l=0;u=ve;ve=ve+576|0;o=u+56|0;a=u+40|0;n=u+64|0;l=u;pe[l>>2]=40;lt(e,t,l)|0;i=(((pe[l+4>>2]|0)>>>r)+3|0)>>>2;t=(((pe[l+8>>2]|0)>>>r)+3|0)>>>2;r=l+32|0;e=pe[r+4>>2]|0;do{switch(pe[r>>2]|0){case 0:{if(!e)e=8;else s=13;break}case 1:{if(!e)s=12;else s=13;break}case 2:{if(!e)s=12;else s=13;break}case 3:{if(!e)s=12;else s=13;break}case 4:{if(!e)s=12;else s=13;break}case 5:{if(!e)s=12;else s=13;break}case 6:{if(!e)s=12;else s=13;break}case 7:{if(!e)s=12;else s=13;break}case 8:{if(!e)s=12;else s=13;break}case 9:{if(!e)e=8;else s=13;break}default:s=13}}while(0);if((s|0)==12)e=16;else if((s|0)==13){pe[a>>2]=1154;pe[a+4>>2]=2663;pe[a+8>>2]=1535;_r(n,1100,a)|0;yr(n,o)|0;e=0}l=be(be(t,i)|0,e)|0;ve=u;return l|0}function Et(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0;p=ve;ve=ve+608|0;f=p+80|0;d=p+64|0;s=p+56|0;o=p+40|0;c=p+88|0;m=p;h=p+84|0;pe[m>>2]=40;lt(e,t,m)|0;u=(((pe[m+4>>2]|0)>>>n)+3|0)>>>2;m=m+32|0;a=pe[m+4>>2]|0;do{switch(pe[m>>2]|0){case 0:{if(!a)a=8;else l=13;break}case 1:{if(!a)l=12;else l=13;break}case 2:{if(!a)l=12;else l=13;break}case 3:{if(!a)l=12;else l=13;break}case 4:{if(!a)l=12;else l=13;break}case 5:{if(!a)l=12;else l=13;break}case 6:{if(!a)l=12;else l=13;break}case 7:{if(!a)l=12;else l=13;break}case 8:{if(!a)l=12;else l=13;break}case 9:{if(!a)a=8;else l=13;break}default:l=13}}while(0);if((l|0)==12)a=16;else if((l|0)==13){pe[o>>2]=1154;pe[o+4>>2]=2663;pe[o+8>>2]=1535;_r(c,1100,o)|0;yr(c,s)|0;a=0}s=be(a,u)|0;o=bt(e,t)|0;pe[h>>2]=r;a=(o|0)==0;if(!(n>>>0>15|(i>>>0<8|a))?(pe[o>>2]|0)==519686845:0)yt(o,h,i,s,n)|0;if(a){ve=p;return}if((pe[o>>2]|0)!=519686845){ve=p;return}Lt(o);if(!(o&7)){Ri[pe[104>>2]&1](o,0,0,1,pe[27]|0)|0;ve=p;return}else{pe[d>>2]=1154;pe[d+4>>2]=2499;pe[d+8>>2]=1516;_r(c,1100,d)|0;yr(c,f)|0;ve=p;return}}function Mt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0;o=e+92|0;i=pe[e+4>>2]|0;a=e+88|0;n=pe[a>>2]|0;t=(me[n+68>>0]|0)<<8|(me[n+67>>0]|0)<<16|(me[n+69>>0]|0);r=i+t|0;n=(me[n+65>>0]|0)<<8|(me[n+66>>0]|0);if(!n){e=0;return e|0}pe[o>>2]=r;pe[e+96>>2]=r;pe[e+104>>2]=n;pe[e+100>>2]=i+(n+t);pe[e+108>>2]=0;pe[e+112>>2]=0;if(!(pt(o,e+116|0)|0)){e=0;return e|0}t=pe[a>>2]|0;do{if(!((me[t+39>>0]|0)<<8|(me[t+40>>0]|0))){if(!((me[t+55>>0]|0)<<8|(me[t+56>>0]|0))){e=0;return e|0}}else{if(!(pt(o,e+140|0)|0)){e=0;return e|0}if(pt(o,e+188|0)|0){t=pe[a>>2]|0;break}else{e=0;return e|0}}}while(0);if((me[t+55>>0]|0)<<8|(me[t+56>>0]|0)){if(!(pt(o,e+164|0)|0)){e=0;return e|0}if(!(pt(o,e+212|0)|0)){e=0;return e|0}}e=1;return e|0}function Pt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;p=ve;ve=ve+592|0;u=p+16|0;s=p;o=p+72|0;d=p+24|0;i=e+88|0;t=pe[i>>2]|0;f=(me[t+39>>0]|0)<<8|(me[t+40>>0]|0);c=e+236|0;a=e+240|0;r=pe[a>>2]|0;if((r|0)!=(f|0)){if(r>>>0<=f>>>0){do{if((pe[e+244>>2]|0)>>>0>>0){if(nt(c,f,(r+1|0)==(f|0),4,0)|0){t=pe[a>>2]|0;break}de[e+248>>0]=1;d=0;ve=p;return d|0}else t=r}while(0);Yr((pe[c>>2]|0)+(t<<2)|0,0,f-t<<2|0)|0;t=pe[i>>2]|0}pe[a>>2]=f}l=e+92|0;r=pe[e+4>>2]|0;i=(me[t+34>>0]|0)<<8|(me[t+33>>0]|0)<<16|(me[t+35>>0]|0);n=r+i|0;t=(me[t+37>>0]|0)<<8|(me[t+36>>0]|0)<<16|(me[t+38>>0]|0);if(!t){d=0;ve=p;return d|0}pe[l>>2]=n;pe[e+96>>2]=n;pe[e+104>>2]=t;pe[e+100>>2]=r+(t+i);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[d+20>>2]=0;pe[d>>2]=0;pe[d+4>>2]=0;pe[d+8>>2]=0;pe[d+12>>2]=0;de[d+16>>0]=0;e=d+24|0;pe[d+44>>2]=0;pe[e>>2]=0;pe[e+4>>2]=0;pe[e+8>>2]=0;pe[e+12>>2]=0;de[e+16>>0]=0;if(pt(l,d)|0?(h=d+24|0,pt(l,h)|0):0){if(!(pe[a>>2]|0)){pe[s>>2]=1154;pe[s+4>>2]=903;pe[s+8>>2]=1781;_r(o,1100,s)|0;yr(o,u)|0}if(!f)t=1;else{i=0;n=0;a=0;t=0;o=0;e=0;s=0;r=pe[c>>2]|0;while(1){i=(gt(l,d)|0)+i&31;n=(gt(l,h)|0)+n&63;a=(gt(l,d)|0)+a&31;t=(gt(l,d)|0)+t|0;o=(gt(l,h)|0)+o&63;e=(gt(l,d)|0)+e&31;pe[r>>2]=n<<5|i<<11|a|t<<27|o<<21|e<<16;s=s+1|0;if((s|0)==(f|0)){t=1;break}else{t=t&31;r=r+4|0}}}}else t=0;ht(d+24|0);ht(d);d=t;ve=p;return d|0}function Ct(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0;S=ve;ve=ve+1024|0;s=S+16|0;o=S;a=S+504|0;T=S+480|0;x=S+284|0;k=S+88|0;w=S+24|0;n=pe[e+88>>2]|0;_=(me[n+47>>0]|0)<<8|(me[n+48>>0]|0);y=e+92|0;t=pe[e+4>>2]|0;r=(me[n+42>>0]|0)<<8|(me[n+41>>0]|0)<<16|(me[n+43>>0]|0);i=t+r|0;n=(me[n+45>>0]|0)<<8|(me[n+44>>0]|0)<<16|(me[n+46>>0]|0);if(!n){T=0;ve=S;return T|0}pe[y>>2]=i;pe[e+96>>2]=i;pe[e+104>>2]=n;pe[e+100>>2]=t+(n+r);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[T+20>>2]=0;pe[T>>2]=0;pe[T+4>>2]=0;pe[T+8>>2]=0;pe[T+12>>2]=0;de[T+16>>0]=0;if(pt(y,T)|0){r=0;i=-3;n=-3;while(1){pe[x+(r<<2)>>2]=i;pe[k+(r<<2)>>2]=n;t=(i|0)>2;r=r+1|0;if((r|0)==49)break;else{i=t?-3:i+1|0;n=(t&1)+n|0}}t=w;r=t+64|0;do{pe[t>>2]=0;t=t+4|0}while((t|0)<(r|0));b=e+252|0;r=e+256|0;t=pe[r>>2]|0;e:do{if((t|0)==(_|0))u=13;else{if(t>>>0<=_>>>0){do{if((pe[e+260>>2]|0)>>>0<_>>>0)if(nt(b,_,(t+1|0)==(_|0),4,0)|0){t=pe[r>>2]|0;break}else{de[e+264>>0]=1;t=0;break e}}while(0);Yr((pe[b>>2]|0)+(t<<2)|0,0,_-t<<2|0)|0}pe[r>>2]=_;u=13}}while(0);do{if((u|0)==13){if(!_){pe[o>>2]=1154;pe[o+4>>2]=903;pe[o+8>>2]=1781;_r(a,1100,o)|0;yr(a,s)|0;t=1;break}i=w+4|0;n=w+8|0;e=w+12|0;a=w+16|0;o=w+20|0;s=w+24|0;u=w+28|0;l=w+32|0;c=w+36|0;h=w+40|0;f=w+44|0;d=w+48|0;p=w+52|0;m=w+56|0;g=w+60|0;v=0;r=pe[b>>2]|0;while(1){t=0;do{E=gt(y,T)|0;b=t<<1;M=w+(b<<2)|0;pe[M>>2]=(pe[M>>2]|0)+(pe[x+(E<<2)>>2]|0)&3;b=w+((b|1)<<2)|0;pe[b>>2]=(pe[b>>2]|0)+(pe[k+(E<<2)>>2]|0)&3;t=t+1|0}while((t|0)!=8);pe[r>>2]=(me[1725+(pe[i>>2]|0)>>0]|0)<<2|(me[1725+(pe[w>>2]|0)>>0]|0)|(me[1725+(pe[n>>2]|0)>>0]|0)<<4|(me[1725+(pe[e>>2]|0)>>0]|0)<<6|(me[1725+(pe[a>>2]|0)>>0]|0)<<8|(me[1725+(pe[o>>2]|0)>>0]|0)<<10|(me[1725+(pe[s>>2]|0)>>0]|0)<<12|(me[1725+(pe[u>>2]|0)>>0]|0)<<14|(me[1725+(pe[l>>2]|0)>>0]|0)<<16|(me[1725+(pe[c>>2]|0)>>0]|0)<<18|(me[1725+(pe[h>>2]|0)>>0]|0)<<20|(me[1725+(pe[f>>2]|0)>>0]|0)<<22|(me[1725+(pe[d>>2]|0)>>0]|0)<<24|(me[1725+(pe[p>>2]|0)>>0]|0)<<26|(me[1725+(pe[m>>2]|0)>>0]|0)<<28|(me[1725+(pe[g>>2]|0)>>0]|0)<<30;v=v+1|0;if((v|0)==(_|0)){t=1;break}else r=r+4|0}}}while(0)}else t=0;ht(T);M=t;ve=S;return M|0}function At(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0;f=ve;ve=ve+560|0;u=f+16|0;s=f;o=f+48|0;h=f+24|0;n=pe[e+88>>2]|0;c=(me[n+55>>0]|0)<<8|(me[n+56>>0]|0);l=e+92|0;t=pe[e+4>>2]|0;r=(me[n+50>>0]|0)<<8|(me[n+49>>0]|0)<<16|(me[n+51>>0]|0);i=t+r|0;n=(me[n+53>>0]|0)<<8|(me[n+52>>0]|0)<<16|(me[n+54>>0]|0);if(!n){h=0;ve=f;return h|0}pe[l>>2]=i;pe[e+96>>2]=i;pe[e+104>>2]=n;pe[e+100>>2]=t+(n+r);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[h+20>>2]=0;pe[h>>2]=0;pe[h+4>>2]=0;pe[h+8>>2]=0;pe[h+12>>2]=0;de[h+16>>0]=0;e:do{if(pt(l,h)|0){a=e+268|0;r=e+272|0;t=pe[r>>2]|0;if((t|0)!=(c|0)){if(t>>>0<=c>>>0){do{if((pe[e+276>>2]|0)>>>0>>0)if(nt(a,c,(t+1|0)==(c|0),2,0)|0){t=pe[r>>2]|0;break}else{de[e+280>>0]=1;t=0;break e}}while(0);Yr((pe[a>>2]|0)+(t<<1)|0,0,c-t<<1|0)|0}pe[r>>2]=c}if(!c){pe[s>>2]=1154;pe[s+4>>2]=903;pe[s+8>>2]=1781;_r(o,1100,s)|0;yr(o,u)|0;t=1;break}r=0;i=0;n=0;t=pe[a>>2]|0;while(1){u=gt(l,h)|0;r=u+r&255;i=(gt(l,h)|0)+i&255;$[t>>1]=i<<8|r;n=n+1|0;if((n|0)==(c|0)){t=1;break}else t=t+2|0}}else t=0}while(0);ht(h);h=t;ve=f;return h|0}function Ot(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0;S=ve;ve=ve+2432|0;s=S+16|0;o=S;a=S+1912|0;T=S+1888|0;x=S+988|0;k=S+88|0;w=S+24|0;n=pe[e+88>>2]|0;_=(me[n+63>>0]|0)<<8|(me[n+64>>0]|0);y=e+92|0;t=pe[e+4>>2]|0;r=(me[n+58>>0]|0)<<8|(me[n+57>>0]|0)<<16|(me[n+59>>0]|0);i=t+r|0;n=(me[n+61>>0]|0)<<8|(me[n+60>>0]|0)<<16|(me[n+62>>0]|0);if(!n){T=0;ve=S;return T|0}pe[y>>2]=i;pe[e+96>>2]=i;pe[e+104>>2]=n;pe[e+100>>2]=t+(n+r);pe[e+108>>2]=0;pe[e+112>>2]=0;pe[T+20>>2]=0;pe[T>>2]=0;pe[T+4>>2]=0;pe[T+8>>2]=0;pe[T+12>>2]=0;de[T+16>>0]=0;if(pt(y,T)|0){r=0;i=-7;n=-7;while(1){pe[x+(r<<2)>>2]=i;pe[k+(r<<2)>>2]=n;t=(i|0)>6;r=r+1|0;if((r|0)==225)break;else{i=t?-7:i+1|0;n=(t&1)+n|0}}t=w;r=t+64|0;do{pe[t>>2]=0;t=t+4|0}while((t|0)<(r|0));b=e+284|0;r=_*3|0;i=e+288|0;t=pe[i>>2]|0;e:do{if((t|0)==(r|0))u=13;else{if(t>>>0<=r>>>0){do{if((pe[e+292>>2]|0)>>>0>>0)if(nt(b,r,(t+1|0)==(r|0),2,0)|0){t=pe[i>>2]|0;break}else{de[e+296>>0]=1;t=0;break e}}while(0);Yr((pe[b>>2]|0)+(t<<1)|0,0,r-t<<1|0)|0}pe[i>>2]=r;u=13}}while(0);do{if((u|0)==13){if(!_){pe[o>>2]=1154;pe[o+4>>2]=903;pe[o+8>>2]=1781;_r(a,1100,o)|0;yr(a,s)|0;t=1;break}i=w+4|0;n=w+8|0;e=w+12|0;a=w+16|0;o=w+20|0;s=w+24|0;u=w+28|0;l=w+32|0;c=w+36|0;h=w+40|0;f=w+44|0;d=w+48|0;p=w+52|0;m=w+56|0;g=w+60|0;v=0;r=pe[b>>2]|0;while(1){t=0;do{E=gt(y,T)|0;b=t<<1;M=w+(b<<2)|0;pe[M>>2]=(pe[M>>2]|0)+(pe[x+(E<<2)>>2]|0)&7;b=w+((b|1)<<2)|0;pe[b>>2]=(pe[b>>2]|0)+(pe[k+(E<<2)>>2]|0)&7;t=t+1|0}while((t|0)!=8);E=me[1729+(pe[o>>2]|0)>>0]|0;$[r>>1]=(me[1729+(pe[i>>2]|0)>>0]|0)<<3|(me[1729+(pe[w>>2]|0)>>0]|0)|(me[1729+(pe[n>>2]|0)>>0]|0)<<6|(me[1729+(pe[e>>2]|0)>>0]|0)<<9|(me[1729+(pe[a>>2]|0)>>0]|0)<<12|E<<15;M=me[1729+(pe[h>>2]|0)>>0]|0;$[r+2>>1]=(me[1729+(pe[s>>2]|0)>>0]|0)<<2|E>>>1|(me[1729+(pe[u>>2]|0)>>0]|0)<<5|(me[1729+(pe[l>>2]|0)>>0]|0)<<8|(me[1729+(pe[c>>2]|0)>>0]|0)<<11|M<<14;$[r+4>>1]=(me[1729+(pe[f>>2]|0)>>0]|0)<<1|M>>>2|(me[1729+(pe[d>>2]|0)>>0]|0)<<4|(me[1729+(pe[p>>2]|0)>>0]|0)<<7|(me[1729+(pe[m>>2]|0)>>0]|0)<<10|(me[1729+(pe[g>>2]|0)>>0]|0)<<13;v=v+1|0;if((v|0)==(_|0)){t=1;break}else r=r+6|0}}}while(0)}else t=0;ht(T);M=t;ve=S;return M|0}function It(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0,$=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0,se=0,ue=0,le=0,ce=0,he=0,fe=0;ce=ve;ve=ve+720|0;le=ce+184|0;se=ce+168|0;oe=ce+160|0;ae=ce+144|0;ne=ce+136|0;ie=ce+120|0;re=ce+112|0;ee=ce+96|0;$=ce+88|0;Q=ce+72|0;Z=ce+64|0;K=ce+48|0;J=ce+40|0;ue=ce+24|0;te=ce+16|0;Y=ce;G=ce+208|0;V=ce+192|0;B=e+240|0;N=pe[B>>2]|0;q=e+256|0;H=pe[q>>2]|0;r=de[(pe[e+88>>2]|0)+17>>0]|0;W=i>>>2;if(!(r<<24>>24)){ve=ce;return 1}U=(s|0)==0;X=s+-1|0;I=(a&1|0)!=0;R=i<<1;D=e+92|0;j=e+116|0;L=e+140|0;z=e+236|0;F=o+-1|0;O=(n&1|0)!=0;A=e+188|0;S=e+252|0;E=W+1|0;M=W+2|0;P=W+3|0;C=F<<4;k=r&255;r=0;a=0;n=1;T=0;do{if(!U){w=pe[t+(T<<2)>>2]|0;x=0;while(1){b=x&1;u=(b|0)==0;v=(b<<5^32)+-16|0;b=(b<<1^2)+-1|0;_=u?o:-1;l=u?0:F;e=(x|0)==(X|0);y=I&e;if((l|0)!=(_|0)){g=I&e^1;m=u?w:w+C|0;while(1){if((n|0)==1)n=gt(D,j)|0|512;p=n&7;n=n>>>3;u=me[1823+p>>0]|0;e=0;do{f=(gt(D,L)|0)+a|0;d=f-N|0;a=d>>31;a=a&f|d&~a;if((pe[B>>2]|0)>>>0<=a>>>0){pe[Y>>2]=1154;pe[Y+4>>2]=903;pe[Y+8>>2]=1781;_r(G,1100,Y)|0;yr(G,te)|0}pe[V+(e<<2)>>2]=pe[(pe[z>>2]|0)+(a<<2)>>2];e=e+1|0}while(e>>>0>>0);d=O&(l|0)==(F|0);if(y|d){f=0;do{c=be(f,i)|0;e=m+c|0;u=(f|0)==0|g;h=f<<1;fe=(gt(D,A)|0)+r|0;he=fe-H|0;r=he>>31;r=r&fe|he&~r;do{if(d){if(!u){he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;break}pe[e>>2]=pe[V+((me[1831+(p<<2)+h>>0]|0)<<2)>>2];if((pe[q>>2]|0)>>>0<=r>>>0){pe[ae>>2]=1154;pe[ae+4>>2]=903;pe[ae+8>>2]=1781;_r(G,1100,ae)|0;yr(G,oe)|0}pe[m+(c+4)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r}else{if(!u){he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;break}pe[e>>2]=pe[V+((me[1831+(p<<2)+h>>0]|0)<<2)>>2];if((pe[q>>2]|0)>>>0<=r>>>0){pe[ie>>2]=1154;pe[ie+4>>2]=903;pe[ie+8>>2]=1781;_r(G,1100,ie)|0;yr(G,ne)|0}pe[m+(c+4)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;pe[m+(c+8)>>2]=pe[V+((me[(h|1)+(1831+(p<<2))>>0]|0)<<2)>>2];if((pe[q>>2]|0)>>>0<=r>>>0){pe[se>>2]=1154;pe[se+4>>2]=903;pe[se+8>>2]=1781;_r(G,1100,se)|0;yr(G,le)|0}pe[m+(c+12)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2]}}while(0);f=f+1|0}while((f|0)!=2)}else{pe[m>>2]=pe[V+((me[1831+(p<<2)>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[ue>>2]=1154;pe[ue+4>>2]=903;pe[ue+8>>2]=1781;_r(G,1100,ue)|0;yr(G,J)|0}pe[m+4>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];pe[m+8>>2]=pe[V+((me[1831+(p<<2)+1>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[K>>2]=1154;pe[K+4>>2]=903;pe[K+8>>2]=1781;_r(G,1100,K)|0;yr(G,Z)|0}pe[m+12>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];pe[m+(W<<2)>>2]=pe[V+((me[1831+(p<<2)+2>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[Q>>2]=1154;pe[Q+4>>2]=903;pe[Q+8>>2]=1781;_r(G,1100,Q)|0;yr(G,$)|0}pe[m+(E<<2)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2];pe[m+(M<<2)>>2]=pe[V+((me[1831+(p<<2)+3>>0]|0)<<2)>>2];he=(gt(D,A)|0)+r|0;fe=he-H|0;r=fe>>31;r=r&he|fe&~r;if((pe[q>>2]|0)>>>0<=r>>>0){pe[ee>>2]=1154;pe[ee+4>>2]=903;pe[ee+8>>2]=1781;_r(G,1100,ee)|0;yr(G,re)|0}pe[m+(P<<2)>>2]=pe[(pe[S>>2]|0)+(r<<2)>>2]}l=l+b|0;if((l|0)==(_|0))break;else m=m+v|0}}x=x+1|0;if((x|0)==(s|0))break;else w=w+R|0}}T=T+1|0}while((T|0)!=(k|0));ve=ce;return 1}function Rt(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0,$=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0,se=0,ue=0,le=0,ce=0,he=0,fe=0;he=ve;ve=ve+640|0;ue=he+88|0;se=he+72|0;oe=he+64|0;ae=he+48|0;ne=he+40|0;ce=he+24|0;le=he+16|0;ie=he;te=he+128|0;re=he+112|0;ee=he+96|0;B=e+240|0;N=pe[B>>2]|0;q=e+256|0;Z=pe[q>>2]|0;Q=e+272|0;$=pe[Q>>2]|0;r=pe[e+88>>2]|0;U=(me[r+63>>0]|0)<<8|(me[r+64>>0]|0);r=de[r+17>>0]|0;if(!(r<<24>>24)){ve=he;return 1}X=(s|0)==0;H=s+-1|0;W=i<<1;G=e+92|0;V=e+116|0;Y=o+-1|0;J=e+212|0;K=e+188|0;F=(n&1|0)==0;z=(a&1|0)==0;O=e+288|0;I=e+284|0;R=e+252|0;D=e+140|0;j=e+236|0;L=e+164|0;C=e+268|0;A=Y<<5;M=r&255;r=0;n=0;a=0;e=0;u=1;P=0;do{if(!X){S=pe[t+(P<<2)>>2]|0;E=0;while(1){k=E&1;l=(k|0)==0;x=(k<<6^64)+-32|0;k=(k<<1^2)+-1|0;T=l?o:-1;c=l?0:Y;if((c|0)!=(T|0)){w=z|(E|0)!=(H|0);_=l?S:S+A|0;while(1){if((u|0)==1)u=gt(G,V)|0|512;y=u&7;u=u>>>3;h=me[1823+y>>0]|0;l=0;do{v=(gt(G,L)|0)+n|0;b=v-$|0;n=b>>31;n=n&v|b&~n;if((pe[Q>>2]|0)>>>0<=n>>>0){pe[ie>>2]=1154;pe[ie+4>>2]=903;pe[ie+8>>2]=1781;_r(te,1100,ie)|0;yr(te,le)|0}pe[ee+(l<<2)>>2]=ge[(pe[C>>2]|0)+(n<<1)>>1];l=l+1|0}while(l>>>0>>0);l=0;do{v=(gt(G,D)|0)+e|0;b=v-N|0;e=b>>31;e=e&v|b&~e;if((pe[B>>2]|0)>>>0<=e>>>0){pe[ce>>2]=1154;pe[ce+4>>2]=903;pe[ce+8>>2]=1781;_r(te,1100,ce)|0;yr(te,ne)|0}pe[re+(l<<2)>>2]=pe[(pe[j>>2]|0)+(e<<2)>>2];l=l+1|0}while(l>>>0>>0);b=F|(c|0)!=(Y|0);g=0;v=_;while(1){m=w|(g|0)==0;p=g<<1;f=0;d=v;while(1){h=(gt(G,J)|0)+r|0;l=h-U|0;r=l>>31;r=r&h|l&~r;l=(gt(G,K)|0)+a|0;h=l-Z|0;a=h>>31;a=a&l|h&~a;if((b|(f|0)==0)&m){l=me[f+p+(1831+(y<<2))>>0]|0;h=r*3|0;if((pe[O>>2]|0)>>>0<=h>>>0){pe[ae>>2]=1154;pe[ae+4>>2]=903;pe[ae+8>>2]=1781;_r(te,1100,ae)|0;yr(te,oe)|0}fe=pe[I>>2]|0;pe[d>>2]=(ge[fe+(h<<1)>>1]|0)<<16|pe[ee+(l<<2)>>2];pe[d+4>>2]=(ge[fe+(h+2<<1)>>1]|0)<<16|(ge[fe+(h+1<<1)>>1]|0);pe[d+8>>2]=pe[re+(l<<2)>>2];if((pe[q>>2]|0)>>>0<=a>>>0){pe[se>>2]=1154;pe[se+4>>2]=903;pe[se+8>>2]=1781;_r(te,1100,se)|0;yr(te,ue)|0}pe[d+12>>2]=pe[(pe[R>>2]|0)+(a<<2)>>2]}f=f+1|0;if((f|0)==2)break;else d=d+16|0}g=g+1|0;if((g|0)==2)break;else v=v+i|0}c=c+k|0;if((c|0)==(T|0))break;else _=_+x|0}}E=E+1|0;if((E|0)==(s|0))break;else S=S+W|0}}P=P+1|0}while((P|0)!=(M|0));ve=he;return 1}function Dt(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0;Z=ve;ve=ve+608|0;Y=Z+64|0;V=Z+48|0;G=Z+40|0;K=Z+24|0;J=Z+16|0;W=Z;H=Z+88|0;q=Z+72|0;R=e+272|0;D=pe[R>>2]|0;r=pe[e+88>>2]|0;j=(me[r+63>>0]|0)<<8|(me[r+64>>0]|0);r=de[r+17>>0]|0;if(!(r<<24>>24)){ve=Z;return 1}L=(s|0)==0;z=s+-1|0;F=i<<1;B=e+92|0;N=e+116|0;U=o+-1|0;X=e+212|0;I=(a&1|0)==0;C=e+288|0;A=e+284|0;O=e+164|0;M=e+268|0;P=U<<4;E=r&255;S=(n&1|0)!=0;r=0;a=0;e=1;T=0;do{if(!L){x=pe[t+(T<<2)>>2]|0;k=0;while(1){_=k&1;n=(_|0)==0;y=(_<<5^32)+-16|0;_=(_<<1^2)+-1|0;w=n?o:-1;u=n?0:U;if((u|0)!=(w|0)){b=I|(k|0)!=(z|0);v=n?x:x+P|0;while(1){if((e|0)==1)e=gt(B,N)|0|512;g=e&7;e=e>>>3;l=me[1823+g>>0]|0;n=0;do{p=(gt(B,O)|0)+a|0;m=p-D|0;a=m>>31;a=a&p|m&~a;if((pe[R>>2]|0)>>>0<=a>>>0){pe[W>>2]=1154;pe[W+4>>2]=903;pe[W+8>>2]=1781;_r(H,1100,W)|0;yr(H,J)|0}pe[q+(n<<2)>>2]=ge[(pe[M>>2]|0)+(a<<1)>>1];n=n+1|0}while(n>>>0>>0);m=(u|0)==(U|0)&S;d=0;p=v;while(1){f=b|(d|0)==0;h=d<<1;n=(gt(B,X)|0)+r|0;c=n-j|0;l=c>>31;l=l&n|c&~l;if(f){r=me[1831+(g<<2)+h>>0]|0;n=l*3|0;if((pe[C>>2]|0)>>>0<=n>>>0){pe[K>>2]=1154;pe[K+4>>2]=903;pe[K+8>>2]=1781;_r(H,1100,K)|0;yr(H,G)|0}c=pe[A>>2]|0;pe[p>>2]=(ge[c+(n<<1)>>1]|0)<<16|pe[q+(r<<2)>>2];pe[p+4>>2]=(ge[c+(n+2<<1)>>1]|0)<<16|(ge[c+(n+1<<1)>>1]|0)}c=p+8|0;n=(gt(B,X)|0)+l|0;l=n-j|0;r=l>>31;r=r&n|l&~r;if(!(m|f^1)){n=me[(h|1)+(1831+(g<<2))>>0]|0;l=r*3|0;if((pe[C>>2]|0)>>>0<=l>>>0){pe[V>>2]=1154;pe[V+4>>2]=903;pe[V+8>>2]=1781;_r(H,1100,V)|0;yr(H,Y)|0}f=pe[A>>2]|0;pe[c>>2]=(ge[f+(l<<1)>>1]|0)<<16|pe[q+(n<<2)>>2];pe[p+12>>2]=(ge[f+(l+2<<1)>>1]|0)<<16|(ge[f+(l+1<<1)>>1]|0)}d=d+1|0;if((d|0)==2)break;else p=p+i|0}u=u+_|0;if((u|0)==(w|0))break;else v=v+y|0}}k=k+1|0;if((k|0)==(s|0))break;else x=x+F|0}}T=T+1|0}while((T|0)!=(E|0));ve=Z;return 1}function jt(e,t,r,i,n,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;s=s|0;var u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0,$=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0;oe=ve;ve=ve+640|0;ie=oe+88|0;re=oe+72|0;te=oe+64|0;ee=oe+48|0;$=oe+40|0;ae=oe+24|0;ne=oe+16|0;Q=oe;Z=oe+128|0;J=oe+112|0;K=oe+96|0;B=e+272|0;N=pe[B>>2]|0;r=pe[e+88>>2]|0;U=(me[r+63>>0]|0)<<8|(me[r+64>>0]|0);r=de[r+17>>0]|0;if(!(r<<24>>24)){ve=oe;return 1}X=(s|0)==0;q=s+-1|0;H=i<<1;W=e+92|0;G=e+116|0;V=o+-1|0;Y=e+212|0;F=(n&1|0)==0;z=(a&1|0)==0;D=e+288|0;j=e+284|0;L=e+164|0;I=e+268|0;R=V<<5;A=r&255;r=0;n=0;a=0;e=0;u=1;O=0;do{if(!X){P=pe[t+(O<<2)>>2]|0;C=0;while(1){E=C&1;l=(E|0)==0;S=(E<<6^64)+-32|0;E=(E<<1^2)+-1|0;M=l?o:-1;c=l?0:V;if((c|0)!=(M|0)){T=z|(C|0)!=(q|0);k=l?P:P+R|0;while(1){if((u|0)==1)u=gt(W,G)|0|512;x=u&7;u=u>>>3;h=me[1823+x>>0]|0;l=0;do{_=(gt(W,L)|0)+e|0;w=_-N|0;e=w>>31;e=e&_|w&~e;if((pe[B>>2]|0)>>>0<=e>>>0){pe[Q>>2]=1154;pe[Q+4>>2]=903;pe[Q+8>>2]=1781;_r(Z,1100,Q)|0;yr(Z,ne)|0}pe[J+(l<<2)>>2]=ge[(pe[I>>2]|0)+(e<<1)>>1];l=l+1|0}while(l>>>0>>0);l=0;do{_=(gt(W,L)|0)+n|0;w=_-N|0;n=w>>31;n=n&_|w&~n;if((pe[B>>2]|0)>>>0<=n>>>0){pe[ae>>2]=1154;pe[ae+4>>2]=903;pe[ae+8>>2]=1781;_r(Z,1100,ae)|0;yr(Z,$)|0}pe[K+(l<<2)>>2]=ge[(pe[I>>2]|0)+(n<<1)>>1];l=l+1|0}while(l>>>0>>0);w=F|(c|0)!=(V|0);y=0;_=k;while(1){b=T|(y|0)==0;v=y<<1;m=0;g=_;while(1){p=(gt(W,Y)|0)+a|0;d=p-U|0;a=d>>31;a=a&p|d&~a;d=(gt(W,Y)|0)+r|0;p=d-U|0;r=p>>31;r=r&d|p&~r;if((w|(m|0)==0)&b){d=me[m+v+(1831+(x<<2))>>0]|0;p=a*3|0;l=pe[D>>2]|0;if(l>>>0<=p>>>0){pe[ee>>2]=1154;pe[ee+4>>2]=903;pe[ee+8>>2]=1781;_r(Z,1100,ee)|0;yr(Z,te)|0;l=pe[D>>2]|0}h=pe[j>>2]|0;f=r*3|0;if(l>>>0>f>>>0)l=h;else{pe[re>>2]=1154;pe[re+4>>2]=903;pe[re+8>>2]=1781;_r(Z,1100,re)|0;yr(Z,ie)|0;l=pe[j>>2]|0}pe[g>>2]=(ge[h+(p<<1)>>1]|0)<<16|pe[J+(d<<2)>>2];pe[g+4>>2]=(ge[h+(p+2<<1)>>1]|0)<<16|(ge[h+(p+1<<1)>>1]|0);pe[g+8>>2]=(ge[l+(f<<1)>>1]|0)<<16|pe[K+(d<<2)>>2];pe[g+12>>2]=(ge[l+(f+2<<1)>>1]|0)<<16|(ge[l+(f+1<<1)>>1]|0)}m=m+1|0;if((m|0)==2)break;else g=g+16|0}y=y+1|0;if((y|0)==2)break;else _=_+i|0}c=c+E|0;if((c|0)==(M|0))break;else k=k+S|0}}C=C+1|0;if((C|0)==(s|0))break;else P=P+H|0}}O=O+1|0}while((O|0)!=(A|0));ve=oe;return 1}function Lt(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0;f=ve;ve=ve+608|0;h=f+88|0;c=f+72|0;u=f+64|0;s=f+48|0;a=f+40|0;o=f+24|0;n=f+16|0;i=f;l=f+96|0;pe[e>>2]=0;t=e+284|0;r=pe[t>>2]|0;if(r){if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[i>>2]=1154;pe[i+4>>2]=2499;pe[i+8>>2]=1516;_r(l,1100,i)|0;yr(l,n)|0}pe[t>>2]=0;pe[e+288>>2]=0;pe[e+292>>2]=0}de[e+296>>0]=0;t=e+268|0;r=pe[t>>2]|0;if(r){if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[o>>2]=1154;pe[o+4>>2]=2499;pe[o+8>>2]=1516;_r(l,1100,o)|0;yr(l,a)|0}pe[t>>2]=0;pe[e+272>>2]=0;pe[e+276>>2]=0}de[e+280>>0]=0;t=e+252|0;r=pe[t>>2]|0;if(r){if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[s>>2]=1154;pe[s+4>>2]=2499;pe[s+8>>2]=1516;_r(l,1100,s)|0;yr(l,u)|0}pe[t>>2]=0;pe[e+256>>2]=0;pe[e+260>>2]=0}de[e+264>>0]=0;t=e+236|0;r=pe[t>>2]|0;if(!r){h=e+248|0;de[h>>0]=0;h=e+212|0;ht(h);h=e+188|0;ht(h);h=e+164|0;ht(h);h=e+140|0;ht(h);h=e+116|0;ht(h);ve=f;return}if(!(r&7))Ri[pe[104>>2]&1](r,0,0,1,pe[27]|0)|0;else{pe[c>>2]=1154;pe[c+4>>2]=2499;pe[c+8>>2]=1516;_r(l,1100,c)|0;yr(l,h)|0}pe[t>>2]=0;pe[e+240>>2]=0;pe[e+244>>2]=0;h=e+248|0;de[h>>0]=0;h=e+212|0;ht(h);h=e+188|0;ht(h);h=e+164|0;ht(h);h=e+140|0;ht(h);h=e+116|0;ht(h);ve=f;return}function zt(e,t){e=e|0;t=t|0;var r=0;r=ve;ve=ve+16|0;pe[r>>2]=t;t=pe[63]|0;wr(t,e,r)|0;vr(10,t)|0;Xe()}function Ft(){var e=0,t=0;e=ve;ve=ve+16|0;if(!(Le(200,2)|0)){t=De(pe[49]|0)|0;ve=e;return t|0}else zt(2090,e);return 0}function Bt(e){e=e|0;Ur(e);return}function Nt(e){e=e|0;var t=0;t=ve;ve=ve+16|0;Oi[e&3]();zt(2139,t)}function Ut(){var e=0,t=0;e=Ft()|0;if(((e|0)!=0?(t=pe[e>>2]|0,(t|0)!=0):0)?(e=t+48|0,(pe[e>>2]&-256|0)==1126902528?(pe[e+4>>2]|0)==1129074247:0):0)Nt(pe[t+12>>2]|0);t=pe[28]|0;pe[28]=t+0;Nt(t)}function Xt(e){e=e|0;return}function qt(e){e=e|0;return}function Ht(e){e=e|0;return}function Wt(e){e=e|0;return}function Gt(e){e=e|0;Bt(e);return}function Vt(e){e=e|0;Bt(e);return}function Yt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;o=ve;ve=ve+64|0;a=o;if((e|0)!=(t|0))if((t|0)!=0?(n=Qt(t,24,40,0)|0,(n|0)!=0):0){t=a;i=t+56|0;do{pe[t>>2]=0;t=t+4|0}while((t|0)<(i|0));pe[a>>2]=n;pe[a+8>>2]=e;pe[a+12>>2]=-1;pe[a+48>>2]=1;Di[pe[(pe[n>>2]|0)+28>>2]&3](n,a,pe[r>>2]|0,1);if((pe[a+24>>2]|0)==1){pe[r>>2]=pe[a+16>>2];t=1}else t=0}else t=0;else t=1;ve=o;return t|0}function Jt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0;e=t+16|0;n=pe[e>>2]|0;do{if(n){if((n|0)!=(r|0)){i=t+36|0;pe[i>>2]=(pe[i>>2]|0)+1;pe[t+24>>2]=2;de[t+54>>0]=1;break}e=t+24|0;if((pe[e>>2]|0)==2)pe[e>>2]=i}else{pe[e>>2]=r;pe[t+24>>2]=i;pe[t+36>>2]=1}}while(0);return}function Kt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;if((e|0)==(pe[t+8>>2]|0))Jt(0,t,r,i);return}function Zt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;if((e|0)==(pe[t+8>>2]|0))Jt(0,t,r,i);else{e=pe[e+8>>2]|0;Di[pe[(pe[e>>2]|0)+28>>2]&3](e,t,r,i)}return}function Qt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0;d=ve;ve=ve+64|0;f=d;h=pe[e>>2]|0;c=e+(pe[h+-8>>2]|0)|0;h=pe[h+-4>>2]|0;pe[f>>2]=r;pe[f+4>>2]=e;pe[f+8>>2]=t;pe[f+12>>2]=i;i=f+16|0;e=f+20|0;t=f+24|0;n=f+28|0;a=f+32|0;o=f+40|0;s=(h|0)==(r|0);u=i;l=u+36|0;do{pe[u>>2]=0;u=u+4|0}while((u|0)<(l|0));$[i+36>>1]=0;de[i+38>>0]=0;e:do{if(s){pe[f+48>>2]=1;Ii[pe[(pe[r>>2]|0)+20>>2]&3](r,f,c,c,1,0);i=(pe[t>>2]|0)==1?c:0}else{Mi[pe[(pe[h>>2]|0)+24>>2]&3](h,f,c,1,0);switch(pe[f+36>>2]|0){case 0:{i=(pe[o>>2]|0)==1&(pe[n>>2]|0)==1&(pe[a>>2]|0)==1?pe[e>>2]|0:0;break e}case 1:break;default:{i=0;break e}}if((pe[t>>2]|0)!=1?!((pe[o>>2]|0)==0&(pe[n>>2]|0)==1&(pe[a>>2]|0)==1):0){i=0;break}i=pe[i>>2]|0}}while(0);ve=d;return i|0}function $t(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;de[t+53>>0]=1;do{if((pe[t+4>>2]|0)==(i|0)){de[t+52>>0]=1;i=t+16|0;e=pe[i>>2]|0;if(!e){pe[i>>2]=r;pe[t+24>>2]=n;pe[t+36>>2]=1;if(!((n|0)==1?(pe[t+48>>2]|0)==1:0))break;de[t+54>>0]=1;break}if((e|0)!=(r|0)){n=t+36|0;pe[n>>2]=(pe[n>>2]|0)+1;de[t+54>>0]=1;break}e=t+24|0;i=pe[e>>2]|0;if((i|0)==2){pe[e>>2]=n;i=n}if((i|0)==1?(pe[t+48>>2]|0)==1:0)de[t+54>>0]=1}}while(0);return}function er(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0;e:do{if((e|0)==(pe[t+8>>2]|0)){if((pe[t+4>>2]|0)==(r|0)?(a=t+28|0,(pe[a>>2]|0)!=1):0)pe[a>>2]=i}else{if((e|0)!=(pe[t>>2]|0)){s=pe[e+8>>2]|0;Mi[pe[(pe[s>>2]|0)+24>>2]&3](s,t,r,i,n);break}if((pe[t+16>>2]|0)!=(r|0)?(o=t+20|0,(pe[o>>2]|0)!=(r|0)):0){pe[t+32>>2]=i;i=t+44|0;if((pe[i>>2]|0)==4)break;a=t+52|0;de[a>>0]=0;u=t+53|0;de[u>>0]=0;e=pe[e+8>>2]|0;Ii[pe[(pe[e>>2]|0)+20>>2]&3](e,t,r,r,1,n);if(de[u>>0]|0){if(!(de[a>>0]|0)){a=1;s=13}}else{a=0;s=13}do{if((s|0)==13){pe[o>>2]=r;u=t+40|0;pe[u>>2]=(pe[u>>2]|0)+1;if((pe[t+36>>2]|0)==1?(pe[t+24>>2]|0)==2:0){de[t+54>>0]=1;if(a)break}else s=16;if((s|0)==16?a:0)break;pe[i>>2]=4;break e}}while(0);pe[i>>2]=3;break}if((i|0)==1)pe[t+32>>2]=1}}while(0);return}function tr(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0;do{if((e|0)==(pe[t+8>>2]|0)){if((pe[t+4>>2]|0)==(r|0)?(o=t+28|0,(pe[o>>2]|0)!=1):0)pe[o>>2]=i}else if((e|0)==(pe[t>>2]|0)){if((pe[t+16>>2]|0)!=(r|0)?(a=t+20|0,(pe[a>>2]|0)!=(r|0)):0){pe[t+32>>2]=i;pe[a>>2]=r;n=t+40|0;pe[n>>2]=(pe[n>>2]|0)+1;if((pe[t+36>>2]|0)==1?(pe[t+24>>2]|0)==2:0)de[t+54>>0]=1;pe[t+44>>2]=4;break}if((i|0)==1)pe[t+32>>2]=1}}while(0);return}function rr(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;if((e|0)==(pe[t+8>>2]|0))$t(0,t,r,i,n);else{e=pe[e+8>>2]|0;Ii[pe[(pe[e>>2]|0)+20>>2]&3](e,t,r,i,n,a)}return}function ir(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;if((e|0)==(pe[t+8>>2]|0))$t(0,t,r,i,n);return}function nr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;n=ve;ve=ve+16|0;i=n;pe[i>>2]=pe[r>>2];e=Ei[pe[(pe[e>>2]|0)+16>>2]&7](e,t,i)|0;if(e)pe[r>>2]=pe[i>>2];ve=n;return e&1|0}function ar(e){e=e|0;if(!e)e=0;else e=(Qt(e,24,72,0)|0)!=0;return e&1|0}function or(){var e=0,t=0,r=0,i=0,n=0,a=0,o=0,s=0;n=ve;ve=ve+48|0;o=n+32|0;r=n+24|0;s=n+16|0;a=n;n=n+36|0;e=Ft()|0;if((e|0)!=0?(i=pe[e>>2]|0,(i|0)!=0):0){e=i+48|0;t=pe[e>>2]|0;e=pe[e+4>>2]|0;if(!((t&-256|0)==1126902528&(e|0)==1129074247)){pe[r>>2]=pe[51];zt(2368,r)}if((t|0)==1126902529&(e|0)==1129074247)e=pe[i+44>>2]|0;else e=i+80|0;pe[n>>2]=e;i=pe[i>>2]|0;e=pe[i+4>>2]|0;if(Ei[pe[(pe[8>>2]|0)+16>>2]&7](8,i,n)|0){s=pe[n>>2]|0;n=pe[51]|0;s=Ci[pe[(pe[s>>2]|0)+8>>2]&1](s)|0;pe[a>>2]=n;pe[a+4>>2]=e;pe[a+8>>2]=s;zt(2282,a)}else{pe[s>>2]=pe[51];pe[s+4>>2]=e;zt(2327,s)}}zt(2406,o)}function sr(){var e=0;e=ve;ve=ve+16|0;if(!(ze(196,6)|0)){ve=e;return}else zt(2179,e)}function ur(e){e=e|0;var t=0;t=ve;ve=ve+16|0;Ur(e);if(!(Ne(pe[49]|0,0)|0)){ve=t;return}else zt(2229,t)}function lr(e){e=e|0;var t=0,r=0;t=0;while(1){if((me[2427+t>>0]|0)==(e|0)){r=2;break}t=t+1|0;if((t|0)==87){t=87;e=2515;r=5;break}}if((r|0)==2)if(!t)e=2515;else{e=2515;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(de[r>>0]|0))break;else r=e}t=t+-1|0;if(!t)break;else r=5}return e|0}function cr(){var e=0;if(!(pe[52]|0))e=264;else{e=(je()|0)+60|0;e=pe[e>>2]|0}return e|0}function hr(e){e=e|0;var t=0;if(e>>>0>4294963200){t=cr()|0;pe[t>>2]=0-e;e=-1}return e|0}function fr(e,t){e=+e;t=t|0;var r=0,i=0,n=0;ee[te>>3]=e;r=pe[te>>2]|0;i=pe[te+4>>2]|0;n=Jr(r|0,i|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0.0){e=+fr(e*18446744073709552.0e3,t);r=(pe[t>>2]|0)+-64|0}else r=0;pe[t>>2]=r;break}case 2047:break;default:{pe[t>>2]=n+-1022;pe[te>>2]=r;pe[te+4>>2]=i&-2146435073|1071644672;e=+ee[te>>3]}}return+e}function dr(e,t){e=+e;t=t|0;return+ +fr(e,t)}function pr(e,t,r){e=e|0;t=t|0;r=r|0;do{if(e){if(t>>>0<128){de[e>>0]=t;e=1;break}if(t>>>0<2048){de[e>>0]=t>>>6|192;de[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){de[e>>0]=t>>>12|224;de[e+1>>0]=t>>>6&63|128;de[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){de[e>>0]=t>>>18|240;de[e+1>>0]=t>>>12&63|128;de[e+2>>0]=t>>>6&63|128;de[e+3>>0]=t&63|128;e=4;break}else{e=cr()|0;pe[e>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function mr(e,t){e=e|0;t=t|0;if(!e)e=0;else e=pr(e,t,0)|0;return e|0}function gr(e){e=e|0;var t=0,r=0;do{if(e){if((pe[e+76>>2]|0)<=-1){t=Rr(e)|0;break}r=(Tr(e)|0)==0;t=Rr(e)|0;if(!r)Sr(e)}else{if(!(pe[65]|0))t=0;else t=gr(pe[65]|0)|0;Ue(236);e=pe[58]|0;if(e)do{if((pe[e+76>>2]|0)>-1)r=Tr(e)|0;else r=0;if((pe[e+20>>2]|0)>>>0>(pe[e+28>>2]|0)>>>0)t=Rr(e)|0|t;if(r)Sr(e);e=pe[e+56>>2]|0}while((e|0)!=0);Fe(236)}}while(0);return t|0}function vr(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0;if((pe[t+76>>2]|0)>=0?(Tr(t)|0)!=0:0){if((de[t+75>>0]|0)!=(e|0)?(i=t+20|0,n=pe[i>>2]|0,n>>>0<(pe[t+16>>2]|0)>>>0):0){pe[i>>2]=n+1;de[n>>0]=e;r=e&255}else r=Er(t,e)|0;Sr(t)}else o=3;do{if((o|0)==3){if((de[t+75>>0]|0)!=(e|0)?(a=t+20|0,r=pe[a>>2]|0,r>>>0<(pe[t+16>>2]|0)>>>0):0){pe[a>>2]=r+1;de[r>>0]=e;r=e&255;break}r=Er(t,e)|0}}while(0);return r|0}function br(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;i=r+16|0;n=pe[i>>2]|0;if(!n)if(!(Or(r)|0)){n=pe[i>>2]|0;a=4}else i=0;else a=4;e:do{if((a|0)==4){o=r+20|0;a=pe[o>>2]|0;if((n-a|0)>>>0>>0){i=Ei[pe[r+36>>2]&7](r,e,t)|0;break}t:do{if((de[r+75>>0]|0)>-1){i=t;while(1){if(!i){n=a;i=0;break t}n=i+-1|0;if((de[e+n>>0]|0)==10)break;else i=n}if((Ei[pe[r+36>>2]&7](r,e,i)|0)>>>0>>0)break e;t=t-i|0;e=e+i|0;n=pe[o>>2]|0}else{n=a;i=0}}while(0);Qr(n|0,e|0,t|0)|0;pe[o>>2]=(pe[o>>2]|0)+t;i=i+t|0}}while(0);return i|0}function yr(e,t){e=e|0;t=t|0;var r=0,i=0;r=ve;ve=ve+16|0;i=r;pe[i>>2]=t;t=wr(pe[64]|0,e,i)|0;ve=r;return t|0}function _r(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;i=ve;ve=ve+16|0;n=i;pe[n>>2]=r;r=kr(e,t,n)|0;ve=i;return r|0}function wr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0;m=ve;ve=ve+224|0;h=m+120|0;p=m+80|0;d=m;f=m+136|0;i=p;n=i+40|0;do{pe[i>>2]=0;i=i+4|0}while((i|0)<(n|0));pe[h>>2]=pe[r>>2];if((Dr(0,t,h,d,p)|0)<0)r=-1;else{if((pe[e+76>>2]|0)>-1)l=Tr(e)|0;else l=0;r=pe[e>>2]|0;c=r&32;if((de[e+74>>0]|0)<1)pe[e>>2]=r&-33;r=e+48|0;if(!(pe[r>>2]|0)){n=e+44|0;a=pe[n>>2]|0;pe[n>>2]=f;o=e+28|0;pe[o>>2]=f;s=e+20|0;pe[s>>2]=f;pe[r>>2]=80;u=e+16|0;pe[u>>2]=f+80;i=Dr(e,t,h,d,p)|0;if(a){Ei[pe[e+36>>2]&7](e,0,0)|0;i=(pe[s>>2]|0)==0?-1:i;pe[n>>2]=a;pe[r>>2]=0;pe[u>>2]=0;pe[o>>2]=0;pe[s>>2]=0}}else i=Dr(e,t,h,d,p)|0;r=pe[e>>2]|0;pe[e>>2]=r|c;if(l)Sr(e);r=(r&32|0)==0?i:-1}ve=m;return r|0}function xr(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0,c=0;c=ve;ve=ve+128|0;n=c+112|0;l=c;a=l;o=268;s=a+112|0;do{pe[a>>2]=pe[o>>2];a=a+4|0;o=o+4|0}while((a|0)<(s|0));if((t+-1|0)>>>0>2147483646)if(!t){t=1;u=4}else{t=cr()|0;pe[t>>2]=75;t=-1}else{n=e;u=4}if((u|0)==4){u=-2-n|0;u=t>>>0>u>>>0?u:t;pe[l+48>>2]=u;e=l+20|0;pe[e>>2]=n;pe[l+44>>2]=n;t=n+u|0;n=l+16|0;pe[n>>2]=t;pe[l+28>>2]=t;t=wr(l,r,i)|0;if(u){r=pe[e>>2]|0;de[r+(((r|0)==(pe[n>>2]|0))<<31>>31)>>0]=0}}ve=c;return t|0}function kr(e,t,r){e=e|0;t=t|0;r=r|0;return xr(e,2147483647,t,r)|0}function Tr(e){e=e|0;return 0}function Sr(e){e=e|0;return}function Er(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0;u=ve;ve=ve+16|0;s=u;o=t&255;de[s>>0]=o;i=e+16|0;n=pe[i>>2]|0;if(!n)if(!(Or(e)|0)){n=pe[i>>2]|0;a=4}else r=-1;else a=4;do{if((a|0)==4){i=e+20|0;a=pe[i>>2]|0;if(a>>>0>>0?(r=t&255,(r|0)!=(de[e+75>>0]|0)):0){pe[i>>2]=a+1;de[a>>0]=o;break}if((Ei[pe[e+36>>2]&7](e,s,1)|0)==1)r=me[s>>0]|0;else r=-1}}while(0);ve=u;return r|0}function Mr(e){e=e|0;var t=0,r=0;t=ve;ve=ve+16|0;r=t;pe[r>>2]=pe[e+60>>2];e=hr(Ee(6,r|0)|0)|0;ve=t;return e|0}function Pr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0;n=ve;ve=ve+32|0;a=n;i=n+20|0;pe[a>>2]=pe[e+60>>2];pe[a+4>>2]=0;pe[a+8>>2]=t;pe[a+12>>2]=i;pe[a+16>>2]=r;if((hr(We(140,a|0)|0)|0)<0){pe[i>>2]=-1;e=-1}else e=pe[i>>2]|0;ve=n;return e|0}function Cr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;p=ve;ve=ve+48|0;h=p+16|0;c=p;i=p+32|0;f=e+28|0;n=pe[f>>2]|0;pe[i>>2]=n;d=e+20|0;n=(pe[d>>2]|0)-n|0;pe[i+4>>2]=n;pe[i+8>>2]=t;pe[i+12>>2]=r;u=e+60|0;l=e+44|0;t=2;n=n+r|0;while(1){if(!(pe[52]|0)){pe[h>>2]=pe[u>>2];pe[h+4>>2]=i;pe[h+8>>2]=t;o=hr(Ge(146,h|0)|0)|0}else{qe(7,e|0);pe[c>>2]=pe[u>>2];pe[c+4>>2]=i;pe[c+8>>2]=t;o=hr(Ge(146,c|0)|0)|0;Te(0)}if((n|0)==(o|0)){n=6;break}if((o|0)<0){n=8;break}n=n-o|0;a=pe[i+4>>2]|0;if(o>>>0<=a>>>0)if((t|0)==2){pe[f>>2]=(pe[f>>2]|0)+o;s=a;t=2}else s=a;else{s=pe[l>>2]|0;pe[f>>2]=s;pe[d>>2]=s;s=pe[i+12>>2]|0;o=o-a|0;i=i+8|0;t=t+-1|0}pe[i>>2]=(pe[i>>2]|0)+o;pe[i+4>>2]=s-o}if((n|0)==6){h=pe[l>>2]|0;pe[e+16>>2]=h+(pe[e+48>>2]|0);e=h;pe[f>>2]=e;pe[d>>2]=e}else if((n|0)==8){pe[e+16>>2]=0;pe[f>>2]=0;pe[d>>2]=0;pe[e>>2]=pe[e>>2]|32;if((t|0)==2)r=0;else r=r-(pe[i+4>>2]|0)|0}ve=p;return r|0}function Ar(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;n=ve;ve=ve+80|0;i=n;pe[e+36>>2]=3;if((pe[e>>2]&64|0)==0?(pe[i>>2]=pe[e+60>>2],pe[i+4>>2]=21505,pe[i+8>>2]=n+12,(Se(54,i|0)|0)!=0):0)de[e+75>>0]=-1;i=Cr(e,t,r)|0;ve=n;return i|0}function Or(e){e=e|0;var t=0,r=0;t=e+74|0;r=de[t>>0]|0;de[t>>0]=r+255|r;t=pe[e>>2]|0;if(!(t&8)){pe[e+8>>2]=0;pe[e+4>>2]=0;t=pe[e+44>>2]|0;pe[e+28>>2]=t;pe[e+20>>2]=t;pe[e+16>>2]=t+(pe[e+48>>2]|0);t=0}else{pe[e>>2]=t|32;t=-1}return t|0}function Ir(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;a=t&255;i=(r|0)!=0;e:do{if(i&(e&3|0)!=0){n=t&255;while(1){if((de[e>>0]|0)==n<<24>>24){o=6;break e}e=e+1|0;r=r+-1|0;i=(r|0)!=0;if(!(i&(e&3|0)!=0)){o=5;break}}}else o=5}while(0);if((o|0)==5)if(i)o=6;else r=0;e:do{if((o|0)==6){n=t&255;if((de[e>>0]|0)!=n<<24>>24){i=be(a,16843009)|0;t:do{if(r>>>0>3)while(1){a=pe[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){o=11;break t}}else o=11}while(0);if((o|0)==11)if(!r){r=0;break}while(1){if((de[e>>0]|0)==n<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return((r|0)!=0?e:0)|0}function Rr(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0;t=e+20|0;a=e+28|0;if((pe[t>>2]|0)>>>0>(pe[a>>2]|0)>>>0?(Ei[pe[e+36>>2]&7](e,0,0)|0,(pe[t>>2]|0)==0):0)t=-1;else{o=e+4|0;r=pe[o>>2]|0;i=e+8|0;n=pe[i>>2]|0;if(r>>>0>>0)Ei[pe[e+40>>2]&7](e,r-n|0,1)|0;pe[e+16>>2]=0;pe[a>>2]=0;pe[t>>2]=0;pe[i>>2]=0;pe[o>>2]=0;t=0}return t|0}function Dr(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0.0,c=0,h=0,f=0,d=0,p=0.0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0,F=0,B=0,N=0,U=0,X=0,q=0,H=0,W=0,G=0,V=0,Y=0,J=0,K=0,Z=0,Q=0;Q=ve;ve=ve+624|0;V=Q+24|0;J=Q+16|0;Y=Q+588|0;X=Q+576|0;G=Q;B=Q+536|0;Z=Q+8|0;K=Q+528|0;A=(e|0)!=0;O=B+40|0;F=O;B=B+39|0;N=Z+4|0;U=X+12|0;X=X+11|0;q=Y;H=U;W=H-q|0;I=-2-q|0;R=H+2|0;D=V+288|0;j=Y+9|0;L=j;z=Y+8|0;a=0;m=t;o=0;t=0;e:while(1){do{if((a|0)>-1)if((o|0)>(2147483647-a|0)){a=cr()|0;pe[a>>2]=75;a=-1;break}else{a=o+a|0;break}}while(0);o=de[m>>0]|0;if(!(o<<24>>24)){C=245;break}else s=m;t:while(1){switch(o<<24>>24){case 37:{o=s;C=9;break t}case 0:{o=s;break t}default:{}}P=s+1|0;o=de[P>>0]|0;s=P}t:do{if((C|0)==9)while(1){C=0;if((de[o+1>>0]|0)!=37)break t;s=s+1|0;o=o+2|0;if((de[o>>0]|0)==37)C=9;else break}}while(0);v=s-m|0;if(A?(pe[e>>2]&32|0)==0:0)br(m,v,e)|0;if((s|0)!=(m|0)){m=o;o=v;continue}c=o+1|0;s=de[c>>0]|0;u=(s<<24>>24)+-48|0;if(u>>>0<10){P=(de[o+2>>0]|0)==36;c=P?o+3|0:c;s=de[c>>0]|0;d=P?u:-1;t=P?1:t}else d=-1;o=s<<24>>24;t:do{if((o&-32|0)==32){u=0;while(1){if(!(1<>24)+-32|u;c=c+1|0;s=de[c>>0]|0;o=s<<24>>24;if((o&-32|0)!=32){h=u;o=c;break}}}else{h=0;o=c}}while(0);do{if(s<<24>>24==42){u=o+1|0;s=(de[u>>0]|0)+-48|0;if(s>>>0<10?(de[o+2>>0]|0)==36:0){pe[n+(s<<2)>>2]=10;t=1;o=o+3|0;s=pe[i+((de[u>>0]|0)+-48<<3)>>2]|0}else{if(t){a=-1;break e}if(!A){g=h;o=u;t=0;P=0;break}t=(pe[r>>2]|0)+(4-1)&~(4-1);s=pe[t>>2]|0;pe[r>>2]=t+4;t=0;o=u}if((s|0)<0){g=h|8192;P=0-s|0}else{g=h;P=s}}else{u=(s<<24>>24)+-48|0;if(u>>>0<10){s=0;do{s=(s*10|0)+u|0;o=o+1|0;u=(de[o>>0]|0)+-48|0}while(u>>>0<10);if((s|0)<0){a=-1;break e}else{g=h;P=s}}else{g=h;P=0}}}while(0);t:do{if((de[o>>0]|0)==46){u=o+1|0;s=de[u>>0]|0;if(s<<24>>24!=42){c=(s<<24>>24)+-48|0;if(c>>>0<10){o=u;s=0}else{o=u;c=0;break}while(1){s=(s*10|0)+c|0;o=o+1|0;c=(de[o>>0]|0)+-48|0;if(c>>>0>=10){c=s;break t}}}u=o+2|0;s=(de[u>>0]|0)+-48|0;if(s>>>0<10?(de[o+3>>0]|0)==36:0){pe[n+(s<<2)>>2]=10;o=o+4|0;c=pe[i+((de[u>>0]|0)+-48<<3)>>2]|0;break}if(t){a=-1;break e}if(A){o=(pe[r>>2]|0)+(4-1)&~(4-1);c=pe[o>>2]|0;pe[r>>2]=o+4;o=u}else{o=u;c=0}}else c=-1}while(0);f=0;while(1){s=(de[o>>0]|0)+-65|0;if(s>>>0>57){a=-1;break e}u=o+1|0;s=de[5359+(f*58|0)+s>>0]|0;h=s&255;if((h+-1|0)>>>0<8){o=u;f=h}else{M=u;break}}if(!(s<<24>>24)){a=-1;break}u=(d|0)>-1;do{if(s<<24>>24==19)if(u){a=-1;break e}else C=52;else{if(u){pe[n+(d<<2)>>2]=h;S=i+(d<<3)|0;E=pe[S+4>>2]|0;C=G;pe[C>>2]=pe[S>>2];pe[C+4>>2]=E;C=52;break}if(!A){a=0;break e}zr(G,h,r)}}while(0);if((C|0)==52?(C=0,!A):0){m=M;o=v;continue}d=de[o>>0]|0;d=(f|0)!=0&(d&15|0)==3?d&-33:d;u=g&-65537;E=(g&8192|0)==0?g:u;t:do{switch(d|0){case 110:switch(f|0){case 0:{pe[pe[G>>2]>>2]=a;m=M;o=v;continue e}case 1:{pe[pe[G>>2]>>2]=a;m=M;o=v;continue e}case 2:{m=pe[G>>2]|0;pe[m>>2]=a;pe[m+4>>2]=((a|0)<0)<<31>>31;m=M;o=v;continue e}case 3:{$[pe[G>>2]>>1]=a;m=M;o=v;continue e}case 4:{de[pe[G>>2]>>0]=a;m=M;o=v;continue e}case 6:{pe[pe[G>>2]>>2]=a;m=M;o=v;continue e}case 7:{m=pe[G>>2]|0;pe[m>>2]=a;pe[m+4>>2]=((a|0)<0)<<31>>31;m=M;o=v;continue e}default:{m=M;o=v;continue e}}case 112:{f=E|8;c=c>>>0>8?c:8;d=120;C=64;break}case 88:case 120:{f=E;C=64;break}case 111:{u=G;s=pe[u>>2]|0;u=pe[u+4>>2]|0;if((s|0)==0&(u|0)==0)o=O;else{o=O;do{o=o+-1|0;de[o>>0]=s&7|48;s=Jr(s|0,u|0,3)|0;u=re}while(!((s|0)==0&(u|0)==0))}if(!(E&8)){s=E;f=0;h=5839;C=77}else{f=F-o+1|0;s=E;c=(c|0)<(f|0)?f:c;f=0;h=5839;C=77}break}case 105:case 100:{s=G;o=pe[s>>2]|0;s=pe[s+4>>2]|0;if((s|0)<0){o=Vr(0,0,o|0,s|0)|0;s=re;u=G;pe[u>>2]=o;pe[u+4>>2]=s;u=1;h=5839;C=76;break t}if(!(E&2048)){h=E&1;u=h;h=(h|0)==0?5839:5841;C=76}else{u=1;h=5840;C=76}break}case 117:{s=G;o=pe[s>>2]|0;s=pe[s+4>>2]|0;u=0;h=5839;C=76;break}case 99:{de[B>>0]=pe[G>>2];m=B;s=1;f=0;d=5839;o=O;break}case 109:{o=cr()|0;o=lr(pe[o>>2]|0)|0;C=82;break}case 115:{o=pe[G>>2]|0;o=(o|0)!=0?o:5849;C=82;break}case 67:{pe[Z>>2]=pe[G>>2];pe[N>>2]=0;pe[G>>2]=Z;c=-1;C=86;break}case 83:{if(!c){Br(e,32,P,0,E);o=0;C=98}else C=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{l=+ee[G>>3];pe[J>>2]=0;ee[te>>3]=l;if((pe[te+4>>2]|0)>=0)if(!(E&2048)){S=E&1;T=S;S=(S|0)==0?5857:5862}else{T=1;S=5859}else{l=-l;T=1;S=5856}ee[te>>3]=l;k=pe[te+4>>2]&2146435072;do{if(k>>>0<2146435072|(k|0)==2146435072&0<0){p=+dr(l,J)*2.0;s=p!=0.0;if(s)pe[J>>2]=(pe[J>>2]|0)+-1;w=d|32;if((w|0)==97){m=d&32;v=(m|0)==0?S:S+9|0;g=T|2;o=12-c|0;do{if(!(c>>>0>11|(o|0)==0)){l=8.0;do{o=o+-1|0;l=l*16.0}while((o|0)!=0);if((de[v>>0]|0)==45){l=-(l+(-p-l));break}else{l=p+l-l;break}}else l=p}while(0);s=pe[J>>2]|0;o=(s|0)<0?0-s|0:s;o=Fr(o,((o|0)<0)<<31>>31,U)|0;if((o|0)==(U|0)){de[X>>0]=48;o=X}de[o+-1>>0]=(s>>31&2)+43;f=o+-2|0;de[f>>0]=d+15;h=(c|0)<1;u=(E&8|0)==0;s=Y;while(1){S=~~l;o=s+1|0;de[s>>0]=me[5823+S>>0]|m;l=(l-+(S|0))*16.0;do{if((o-q|0)==1){if(u&(h&l==0.0))break;de[o>>0]=46;o=s+2|0}}while(0);if(!(l!=0.0))break;else s=o}c=(c|0)!=0&(I+o|0)<(c|0)?R+c-f|0:W-f+o|0;u=c+g|0;Br(e,32,P,u,E);if(!(pe[e>>2]&32))br(v,g,e)|0;Br(e,48,P,u,E^65536);o=o-q|0;if(!(pe[e>>2]&32))br(Y,o,e)|0;s=H-f|0;Br(e,48,c-(o+s)|0,0,0);if(!(pe[e>>2]&32))br(f,s,e)|0;Br(e,32,P,u,E^8192);o=(u|0)<(P|0)?P:u;break}o=(c|0)<0?6:c;if(s){s=(pe[J>>2]|0)+-28|0;pe[J>>2]=s;l=p*268435456.0}else{l=p;s=pe[J>>2]|0}k=(s|0)<0?V:D;x=k;s=k;do{_=~~l>>>0;pe[s>>2]=_;s=s+4|0;l=(l-+(_>>>0))*1.0e9}while(l!=0.0);u=s;s=pe[J>>2]|0;if((s|0)>0){h=k;while(1){f=(s|0)>29?29:s;c=u+-4|0;do{if(c>>>0>>0)c=h;else{s=0;do{_=Kr(pe[c>>2]|0,0,f|0)|0;_=Zr(_|0,re|0,s|0,0)|0;s=re;y=oi(_|0,s|0,1e9,0)|0;pe[c>>2]=y;s=ai(_|0,s|0,1e9,0)|0;c=c+-4|0}while(c>>>0>=h>>>0);if(!s){c=h;break}c=h+-4|0;pe[c>>2]=s}}while(0);while(1){if(u>>>0<=c>>>0)break;s=u+-4|0;if(!(pe[s>>2]|0))u=s;else break}s=(pe[J>>2]|0)-f|0;pe[J>>2]=s;if((s|0)>0)h=c;else break}}else c=k;if((s|0)<0){v=((o+25|0)/9|0)+1|0;b=(w|0)==102;m=c;while(1){g=0-s|0;g=(g|0)>9?9:g;do{if(m>>>0>>0){s=(1<>>g;c=0;f=m;do{_=pe[f>>2]|0;pe[f>>2]=(_>>>g)+c;c=be(_&s,h)|0;f=f+4|0}while(f>>>0>>0);s=(pe[m>>2]|0)==0?m+4|0:m;if(!c){c=s;break}pe[u>>2]=c;c=s;u=u+4|0}else c=(pe[m>>2]|0)==0?m+4|0:m}while(0);s=b?k:c;u=(u-s>>2|0)>(v|0)?s+(v<<2)|0:u;s=(pe[J>>2]|0)+g|0;pe[J>>2]=s;if((s|0)>=0){m=c;break}else m=c}}else m=c;do{if(m>>>0>>0){s=(x-m>>2)*9|0;h=pe[m>>2]|0;if(h>>>0<10)break;else c=10;do{c=c*10|0;s=s+1|0}while(h>>>0>=c>>>0)}else s=0}while(0);y=(w|0)==103;_=(o|0)!=0;c=o-((w|0)!=102?s:0)+((_&y)<<31>>31)|0;if((c|0)<(((u-x>>2)*9|0)+-9|0)){f=c+9216|0;b=(f|0)/9|0;c=k+(b+-1023<<2)|0;f=((f|0)%9|0)+1|0;if((f|0)<9){h=10;do{h=h*10|0;f=f+1|0}while((f|0)!=9)}else h=10;g=pe[c>>2]|0;v=(g>>>0)%(h>>>0)|0;if((v|0)==0?(k+(b+-1022<<2)|0)==(u|0):0)h=m;else C=163;do{if((C|0)==163){C=0;p=(((g>>>0)/(h>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;f=(h|0)/2|0;do{if(v>>>0>>0)l=.5;else{if((v|0)==(f|0)?(k+(b+-1022<<2)|0)==(u|0):0){l=1.0;break}l=1.5}}while(0);do{if(T){if((de[S>>0]|0)!=45)break;p=-p;l=-l}}while(0);f=g-v|0;pe[c>>2]=f;if(!(p+l!=p)){h=m;break}w=f+h|0;pe[c>>2]=w;if(w>>>0>999999999){s=m;while(1){h=c+-4|0;pe[c>>2]=0;if(h>>>0>>0){s=s+-4|0;pe[s>>2]=0}w=(pe[h>>2]|0)+1|0;pe[h>>2]=w;if(w>>>0>999999999)c=h;else{m=s;c=h;break}}}s=(x-m>>2)*9|0;f=pe[m>>2]|0;if(f>>>0<10){h=m;break}else h=10;do{h=h*10|0;s=s+1|0}while(f>>>0>=h>>>0);h=m}}while(0);w=c+4|0;m=h;u=u>>>0>w>>>0?w:u}v=0-s|0;while(1){if(u>>>0<=m>>>0){b=0;w=u;break}c=u+-4|0;if(!(pe[c>>2]|0))u=c;else{b=1;w=u;break}}do{if(y){o=(_&1^1)+o|0;if((o|0)>(s|0)&(s|0)>-5){d=d+-1|0;o=o+-1-s|0}else{d=d+-2|0;o=o+-1|0}u=E&8;if(u)break;do{if(b){u=pe[w+-4>>2]|0;if(!u){c=9;break}if(!((u>>>0)%10|0)){h=10;c=0}else{c=0;break}do{h=h*10|0;c=c+1|0}while(((u>>>0)%(h>>>0)|0|0)==0)}else c=9}while(0);u=((w-x>>2)*9|0)+-9|0;if((d|32|0)==102){u=u-c|0;u=(u|0)<0?0:u;o=(o|0)<(u|0)?o:u;u=0;break}else{u=u+s-c|0;u=(u|0)<0?0:u;o=(o|0)<(u|0)?o:u;u=0;break}}else u=E&8}while(0);g=o|u;h=(g|0)!=0&1;f=(d|32|0)==102;if(f){s=(s|0)>0?s:0;d=0}else{c=(s|0)<0?v:s;c=Fr(c,((c|0)<0)<<31>>31,U)|0;if((H-c|0)<2)do{c=c+-1|0;de[c>>0]=48}while((H-c|0)<2);de[c+-1>>0]=(s>>31&2)+43;x=c+-2|0;de[x>>0]=d;s=H-x|0;d=x}v=T+1+o+h+s|0;Br(e,32,P,v,E);if(!(pe[e>>2]&32))br(S,T,e)|0;Br(e,48,P,v,E^65536);do{if(f){c=m>>>0>k>>>0?k:m;s=c;do{u=Fr(pe[s>>2]|0,0,j)|0;do{if((s|0)==(c|0)){if((u|0)!=(j|0))break;de[z>>0]=48;u=z}else{if(u>>>0<=Y>>>0)break;do{u=u+-1|0;de[u>>0]=48}while(u>>>0>Y>>>0)}}while(0);if(!(pe[e>>2]&32))br(u,L-u|0,e)|0;s=s+4|0}while(s>>>0<=k>>>0);do{if(g){if(pe[e>>2]&32)break;br(5891,1,e)|0}}while(0);if((o|0)>0&s>>>0>>0){u=s;while(1){s=Fr(pe[u>>2]|0,0,j)|0;if(s>>>0>Y>>>0)do{s=s+-1|0;de[s>>0]=48}while(s>>>0>Y>>>0);if(!(pe[e>>2]&32))br(s,(o|0)>9?9:o,e)|0;u=u+4|0;s=o+-9|0;if(!((o|0)>9&u>>>0>>0)){o=s;break}else o=s}}Br(e,48,o+9|0,9,0)}else{f=b?w:m+4|0;if((o|0)>-1){h=(u|0)==0;c=m;do{s=Fr(pe[c>>2]|0,0,j)|0;if((s|0)==(j|0)){de[z>>0]=48;s=z}do{if((c|0)==(m|0)){u=s+1|0;if(!(pe[e>>2]&32))br(s,1,e)|0;if(h&(o|0)<1){s=u;break}if(pe[e>>2]&32){s=u;break}br(5891,1,e)|0;s=u}else{if(s>>>0<=Y>>>0)break;do{s=s+-1|0;de[s>>0]=48}while(s>>>0>Y>>>0)}}while(0);u=L-s|0;if(!(pe[e>>2]&32))br(s,(o|0)>(u|0)?u:o,e)|0;o=o-u|0;c=c+4|0}while(c>>>0>>0&(o|0)>-1)}Br(e,48,o+18|0,18,0);if(pe[e>>2]&32)break;br(d,H-d|0,e)|0}}while(0);Br(e,32,P,v,E^8192);o=(v|0)<(P|0)?P:v}else{f=(d&32|0)!=0;h=l!=l|0.0!=0.0;s=h?0:T;c=s+3|0;Br(e,32,P,c,u);o=pe[e>>2]|0;if(!(o&32)){br(S,s,e)|0;o=pe[e>>2]|0}if(!(o&32))br(h?f?5883:5887:f?5875:5879,3,e)|0;Br(e,32,P,c,E^8192);o=(c|0)<(P|0)?P:c}}while(0);m=M;continue e}default:{u=E;s=c;f=0;d=5839;o=O}}}while(0);t:do{if((C|0)==64){u=G;s=pe[u>>2]|0;u=pe[u+4>>2]|0;h=d&32;if(!((s|0)==0&(u|0)==0)){o=O;do{o=o+-1|0;de[o>>0]=me[5823+(s&15)>>0]|h;s=Jr(s|0,u|0,4)|0;u=re}while(!((s|0)==0&(u|0)==0));C=G;if((f&8|0)==0|(pe[C>>2]|0)==0&(pe[C+4>>2]|0)==0){s=f;f=0;h=5839;C=77}else{s=f;f=2;h=5839+(d>>4)|0;C=77}}else{o=O;s=f;f=0;h=5839;C=77}}else if((C|0)==76){o=Fr(o,s,O)|0;s=E;f=u;C=77}else if((C|0)==82){C=0;E=Ir(o,0,c)|0;S=(E|0)==0;m=o;s=S?c:E-o|0;f=0;d=5839;o=S?o+c|0:E}else if((C|0)==86){C=0;s=0;o=0;h=pe[G>>2]|0;while(1){u=pe[h>>2]|0;if(!u)break;o=mr(K,u)|0;if((o|0)<0|o>>>0>(c-s|0)>>>0)break;s=o+s|0;if(c>>>0>s>>>0)h=h+4|0;else break}if((o|0)<0){a=-1;break e}Br(e,32,P,s,E);if(!s){o=0;C=98}else{u=0;c=pe[G>>2]|0;while(1){o=pe[c>>2]|0;if(!o){o=s;C=98;break t}o=mr(K,o)|0;u=o+u|0;if((u|0)>(s|0)){o=s;C=98;break t}if(!(pe[e>>2]&32))br(K,o,e)|0;if(u>>>0>=s>>>0){o=s;C=98;break}else c=c+4|0}}}}while(0);if((C|0)==98){C=0;Br(e,32,P,o,E^8192);m=M;o=(P|0)>(o|0)?P:o;continue}if((C|0)==77){C=0;u=(c|0)>-1?s&-65537:s;s=G;s=(pe[s>>2]|0)!=0|(pe[s+4>>2]|0)!=0;if((c|0)!=0|s){s=(s&1^1)+(F-o)|0;m=o;s=(c|0)>(s|0)?c:s;d=h;o=O}else{m=O;s=0;d=h;o=O}}h=o-m|0;s=(s|0)<(h|0)?h:s;c=f+s|0;o=(P|0)<(c|0)?c:P;Br(e,32,o,c,u);if(!(pe[e>>2]&32))br(d,f,e)|0;Br(e,48,o,c,u^65536);Br(e,48,s,h,0);if(!(pe[e>>2]&32))br(m,h,e)|0;Br(e,32,o,c,u^8192);m=M}e:do{if((C|0)==245)if(!e)if(t){a=1;while(1){t=pe[n+(a<<2)>>2]|0;if(!t)break;zr(i+(a<<3)|0,t,r);a=a+1|0;if((a|0)>=10){a=1;break e}}if((a|0)<10)while(1){if(pe[n+(a<<2)>>2]|0){a=-1;break e}a=a+1|0;if((a|0)>=10){a=1;break}}else a=1}else a=0}while(0);ve=Q;return a|0}function jr(e){e=e|0;if(!(pe[e+68>>2]|0))Sr(e);return}function Lr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0;i=e+20|0;n=pe[i>>2]|0;e=(pe[e+16>>2]|0)-n|0;e=e>>>0>r>>>0?r:e;Qr(n|0,t|0,e|0)|0;pe[i>>2]=(pe[i>>2]|0)+e;return r|0}function zr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{i=(pe[r>>2]|0)+(4-1)&~(4-1);t=pe[i>>2]|0;pe[r>>2]=i+4;pe[e>>2]=t;break e}case 10:{i=(pe[r>>2]|0)+(4-1)&~(4-1);t=pe[i>>2]|0;pe[r>>2]=i+4;i=e;pe[i>>2]=t;pe[i+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{i=(pe[r>>2]|0)+(4-1)&~(4-1);t=pe[i>>2]|0;pe[r>>2]=i+4;i=e;pe[i>>2]=t;pe[i+4>>2]=0;break e}case 12:{i=(pe[r>>2]|0)+(8-1)&~(8-1);t=i;n=pe[t>>2]|0;t=pe[t+4>>2]|0;pe[r>>2]=i+8;i=e;pe[i>>2]=n;pe[i+4>>2]=t;break e}case 13:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;i=(i&65535)<<16>>16;n=e;pe[n>>2]=i;pe[n+4>>2]=((i|0)<0)<<31>>31;break e}case 14:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;n=e;pe[n>>2]=i&65535;pe[n+4>>2]=0;break e}case 15:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;i=(i&255)<<24>>24;n=e;pe[n>>2]=i;pe[n+4>>2]=((i|0)<0)<<31>>31;break e}case 16:{n=(pe[r>>2]|0)+(4-1)&~(4-1);i=pe[n>>2]|0;pe[r>>2]=n+4;n=e;pe[n>>2]=i&255;pe[n+4>>2]=0;break e}case 17:{n=(pe[r>>2]|0)+(8-1)&~(8-1);a=+ee[n>>3];pe[r>>2]=n+8;ee[e>>3]=a;break e}case 18:{n=(pe[r>>2]|0)+(8-1)&~(8-1);a=+ee[n>>3];pe[r>>2]=n+8;ee[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function Fr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295)while(1){i=oi(e|0,t|0,10,0)|0;r=r+-1|0;de[r>>0]=i|48;i=ai(e|0,t|0,10,0)|0;if(t>>>0>9|(t|0)==9&e>>>0>4294967295){e=i;t=re}else{e=i;break}}if(e)while(1){r=r+-1|0;de[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function Br(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0;s=ve;ve=ve+256|0;o=s;do{if((r|0)>(i|0)&(n&73728|0)==0){n=r-i|0;Yr(o|0,t|0,(n>>>0>256?256:n)|0)|0;t=pe[e>>2]|0;a=(t&32|0)==0;if(n>>>0>255){i=r-i|0;do{if(a){br(o,256,e)|0;t=pe[e>>2]|0}n=n+-256|0;a=(t&32|0)==0}while(n>>>0>255);if(a)n=i&255;else break}else if(!a)break;br(o,n,e)|0}}while(0);ve=s;return}function Nr(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0,_=0,w=0,x=0,k=0,T=0,S=0,E=0,M=0,P=0,C=0,A=0,O=0,I=0,R=0,D=0,j=0,L=0,z=0;do{if(e>>>0<245){d=e>>>0<11?16:e+11&-8;e=d>>>3;s=pe[151]|0;r=s>>>e;if(r&3){e=(r&1^1)+e|0;i=e<<1;r=644+(i<<2)|0;i=644+(i+2<<2)|0;n=pe[i>>2]|0;a=n+8|0;o=pe[a>>2]|0;do{if((r|0)!=(o|0)){if(o>>>0<(pe[155]|0)>>>0)Xe();t=o+12|0;if((pe[t>>2]|0)==(n|0)){pe[t>>2]=r;pe[i>>2]=o;break}else Xe()}else pe[151]=s&~(1<>2]=z|3;z=n+(z|4)|0;pe[z>>2]=pe[z>>2]|1;z=a;return z|0}o=pe[153]|0;if(d>>>0>o>>>0){if(r){i=2<>>12&16;i=i>>>u;n=i>>>5&8;i=i>>>n;a=i>>>2&4;i=i>>>a;r=i>>>1&2;i=i>>>r;e=i>>>1&1;e=(n|u|a|r|e)+(i>>>e)|0;i=e<<1;r=644+(i<<2)|0;i=644+(i+2<<2)|0;a=pe[i>>2]|0;u=a+8|0;n=pe[u>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(pe[155]|0)>>>0)Xe();t=n+12|0;if((pe[t>>2]|0)==(a|0)){pe[t>>2]=r;pe[i>>2]=n;l=pe[153]|0;break}else Xe()}else{pe[151]=s&~(1<>2]=d|3;s=a+d|0;pe[a+(d|4)>>2]=o|1;pe[a+z>>2]=o;if(l){n=pe[156]|0;r=l>>>3;t=r<<1;i=644+(t<<2)|0;e=pe[151]|0;r=1<>2]|0;if(t>>>0<(pe[155]|0)>>>0)Xe();else{c=e;h=t}}else{pe[151]=e|r;c=644+(t+2<<2)|0;h=i}pe[c>>2]=n;pe[h+12>>2]=n;pe[n+8>>2]=h;pe[n+12>>2]=i}pe[153]=o;pe[156]=s;z=u;return z|0}e=pe[152]|0;if(e){r=(e&0-e)+-1|0;L=r>>>12&16;r=r>>>L;j=r>>>5&8;r=r>>>j;z=r>>>2&4;r=r>>>z;e=r>>>1&2;r=r>>>e;i=r>>>1&1;i=pe[908+((j|L|z|e|i)+(r>>>i)<<2)>>2]|0;r=(pe[i+4>>2]&-8)-d|0;e=i;while(1){t=pe[e+16>>2]|0;if(!t){t=pe[e+20>>2]|0;if(!t){u=r;break}}e=(pe[t+4>>2]&-8)-d|0;z=e>>>0>>0;r=z?e:r;e=t;i=z?t:i}a=pe[155]|0;if(i>>>0>>0)Xe();s=i+d|0;if(i>>>0>=s>>>0)Xe();o=pe[i+24>>2]|0;r=pe[i+12>>2]|0;do{if((r|0)==(i|0)){e=i+20|0;t=pe[e>>2]|0;if(!t){e=i+16|0;t=pe[e>>2]|0;if(!t){f=0;break}}while(1){r=t+20|0;n=pe[r>>2]|0;if(n){t=n;e=r;continue}r=t+16|0;n=pe[r>>2]|0;if(!n)break;else{t=n;e=r}}if(e>>>0>>0)Xe();else{pe[e>>2]=0;f=t;break}}else{n=pe[i+8>>2]|0;if(n>>>0>>0)Xe();t=n+12|0;if((pe[t>>2]|0)!=(i|0))Xe();e=r+8|0;if((pe[e>>2]|0)==(i|0)){pe[t>>2]=r;pe[e>>2]=n;f=r;break}else Xe()}}while(0);do{if(o){t=pe[i+28>>2]|0;e=908+(t<<2)|0;if((i|0)==(pe[e>>2]|0)){pe[e>>2]=f;if(!f){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=o+16|0;if((pe[t>>2]|0)==(i|0))pe[t>>2]=f;else pe[o+20>>2]=f;if(!f)break}e=pe[155]|0;if(f>>>0>>0)Xe();pe[f+24>>2]=o;t=pe[i+16>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[f+16>>2]=t;pe[t+24>>2]=f;break}}while(0);t=pe[i+20>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[f+20>>2]=t;pe[t+24>>2]=f;break}}}while(0);if(u>>>0<16){z=u+d|0;pe[i+4>>2]=z|3;z=i+(z+4)|0;pe[z>>2]=pe[z>>2]|1}else{pe[i+4>>2]=d|3;pe[i+(d|4)>>2]=u|1;pe[i+(u+d)>>2]=u;t=pe[153]|0;if(t){a=pe[156]|0;r=t>>>3;t=r<<1;n=644+(t<<2)|0;e=pe[151]|0;r=1<>2]|0;if(e>>>0<(pe[155]|0)>>>0)Xe();else{p=t;m=e}}else{pe[151]=e|r;p=644+(t+2<<2)|0;m=n}pe[p>>2]=a;pe[m+12>>2]=a;pe[a+8>>2]=m;pe[a+12>>2]=n}pe[153]=u;pe[156]=s}z=i+8|0;return z|0}else m=d}else m=d}else if(e>>>0<=4294967231){e=e+11|0;h=e&-8;c=pe[152]|0;if(c){r=0-h|0;e=e>>>8;if(e)if(h>>>0>16777215)l=31;else{m=(e+1048320|0)>>>16&8;_=e<>>16&4;_=_<>>16&2;l=14-(p|m|l)+(_<>>15)|0;l=h>>>(l+7|0)&1|l<<1}else l=0;e=pe[908+(l<<2)>>2]|0;e:do{if(!e){n=0;e=0;_=86}else{o=r;n=0;s=h<<((l|0)==31?0:25-(l>>>1)|0);u=e;e=0;while(1){a=pe[u+4>>2]&-8;r=a-h|0;if(r>>>0>>0)if((a|0)==(h|0)){a=u;e=u;_=90;break e}else e=u;else r=o;_=pe[u+20>>2]|0;u=pe[u+16+(s>>>31<<2)>>2]|0;n=(_|0)==0|(_|0)==(u|0)?n:_;if(!u){_=86;break}else{o=r;s=s<<1}}}}while(0);if((_|0)==86){if((n|0)==0&(e|0)==0){e=2<>>12&16;e=e>>>f;c=e>>>5&8;e=e>>>c;p=e>>>2&4;e=e>>>p;m=e>>>1&2;e=e>>>m;n=e>>>1&1;n=pe[908+((c|f|p|m|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){s=r;u=e}else{a=n;_=90}}if((_|0)==90)while(1){_=0;m=(pe[a+4>>2]&-8)-h|0;n=m>>>0>>0;r=n?m:r;e=n?a:e;n=pe[a+16>>2]|0;if(n){a=n;_=90;continue}a=pe[a+20>>2]|0;if(!a){s=r;u=e;break}else _=90}if((u|0)!=0?s>>>0<((pe[153]|0)-h|0)>>>0:0){n=pe[155]|0;if(u>>>0>>0)Xe();o=u+h|0;if(u>>>0>=o>>>0)Xe();a=pe[u+24>>2]|0;r=pe[u+12>>2]|0;do{if((r|0)==(u|0)){e=u+20|0;t=pe[e>>2]|0;if(!t){e=u+16|0;t=pe[e>>2]|0;if(!t){d=0;break}}while(1){r=t+20|0;i=pe[r>>2]|0;if(i){t=i;e=r;continue}r=t+16|0;i=pe[r>>2]|0;if(!i)break;else{t=i;e=r}}if(e>>>0>>0)Xe();else{pe[e>>2]=0;d=t;break}}else{i=pe[u+8>>2]|0;if(i>>>0>>0)Xe();t=i+12|0;if((pe[t>>2]|0)!=(u|0))Xe();e=r+8|0;if((pe[e>>2]|0)==(u|0)){pe[t>>2]=r;pe[e>>2]=i;d=r;break}else Xe()}}while(0);do{if(a){t=pe[u+28>>2]|0;e=908+(t<<2)|0;if((u|0)==(pe[e>>2]|0)){pe[e>>2]=d;if(!d){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=a+16|0;if((pe[t>>2]|0)==(u|0))pe[t>>2]=d;else pe[a+20>>2]=d;if(!d)break}e=pe[155]|0;if(d>>>0>>0)Xe();pe[d+24>>2]=a;t=pe[u+16>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[d+16>>2]=t;pe[t+24>>2]=d;break}}while(0);t=pe[u+20>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[d+20>>2]=t;pe[t+24>>2]=d;break}}}while(0);e:do{if(s>>>0>=16){pe[u+4>>2]=h|3;pe[u+(h|4)>>2]=s|1;pe[u+(s+h)>>2]=s;t=s>>>3;if(s>>>0<256){e=t<<1;i=644+(e<<2)|0;r=pe[151]|0;t=1<>2]|0;if(e>>>0<(pe[155]|0)>>>0)Xe();else{v=t;b=e}}else{pe[151]=r|t;v=644+(e+2<<2)|0;b=i}pe[v>>2]=o;pe[b+12>>2]=o;pe[u+(h+8)>>2]=b;pe[u+(h+12)>>2]=i;break}t=s>>>8;if(t)if(s>>>0>16777215)i=31;else{L=(t+1048320|0)>>>16&8;z=t<>>16&4;z=z<>>16&2;i=14-(j|L|i)+(z<>>15)|0;i=s>>>(i+7|0)&1|i<<1}else i=0;t=908+(i<<2)|0;pe[u+(h+28)>>2]=i;pe[u+(h+20)>>2]=0;pe[u+(h+16)>>2]=0;e=pe[152]|0;r=1<>2]=o;pe[u+(h+24)>>2]=t;pe[u+(h+12)>>2]=o;pe[u+(h+8)>>2]=o;break}t=pe[t>>2]|0;t:do{if((pe[t+4>>2]&-8|0)!=(s|0)){i=s<<((i|0)==31?0:25-(i>>>1)|0);while(1){e=t+16+(i>>>31<<2)|0;r=pe[e>>2]|0;if(!r)break;if((pe[r+4>>2]&-8|0)==(s|0)){k=r;break t}else{i=i<<1;t=r}}if(e>>>0<(pe[155]|0)>>>0)Xe();else{pe[e>>2]=o;pe[u+(h+24)>>2]=t;pe[u+(h+12)>>2]=o;pe[u+(h+8)>>2]=o;break e}}else k=t}while(0);t=k+8|0;e=pe[t>>2]|0;z=pe[155]|0;if(e>>>0>=z>>>0&k>>>0>=z>>>0){pe[e+12>>2]=o;pe[t>>2]=o;pe[u+(h+8)>>2]=e;pe[u+(h+12)>>2]=k;pe[u+(h+24)>>2]=0;break}else Xe()}else{z=s+h|0;pe[u+4>>2]=z|3;z=u+(z+4)|0;pe[z>>2]=pe[z>>2]|1}}while(0);z=u+8|0;return z|0}else m=h}else m=h}else m=-1}while(0);r=pe[153]|0;if(r>>>0>=m>>>0){t=r-m|0;e=pe[156]|0;if(t>>>0>15){pe[156]=e+m;pe[153]=t;pe[e+(m+4)>>2]=t|1;pe[e+r>>2]=t;pe[e+4>>2]=m|3}else{pe[153]=0;pe[156]=0;pe[e+4>>2]=r|3;z=e+(r+4)|0;pe[z>>2]=pe[z>>2]|1}z=e+8|0;return z|0}e=pe[154]|0;if(e>>>0>m>>>0){L=e-m|0;pe[154]=L;z=pe[157]|0;pe[157]=z+m;pe[z+(m+4)>>2]=L|1;pe[z+4>>2]=m|3;z=z+8|0;return z|0}do{if(!(pe[269]|0)){e=Re(30)|0;if(!(e+-1&e)){pe[271]=e;pe[270]=e;pe[272]=-1;pe[273]=-1;pe[274]=0;pe[262]=0;k=(He(0)|0)&-16^1431655768;pe[269]=k;break}else Xe()}}while(0);u=m+48|0;s=pe[271]|0;l=m+47|0;o=s+l|0;s=0-s|0;c=o&s;if(c>>>0<=m>>>0){z=0;return z|0}e=pe[261]|0;if((e|0)!=0?(b=pe[259]|0,k=b+c|0,k>>>0<=b>>>0|k>>>0>e>>>0):0){z=0;return z|0}e:do{if(!(pe[262]&4)){e=pe[157]|0;t:do{if(e){n=1052;while(1){r=pe[n>>2]|0;if(r>>>0<=e>>>0?(g=n+4|0,(r+(pe[g>>2]|0)|0)>>>0>e>>>0):0){a=n;e=g;break}n=pe[n+8>>2]|0;if(!n){_=174;break t}}r=o-(pe[154]|0)&s;if(r>>>0<2147483647){n=Ae(r|0)|0;k=(n|0)==((pe[a>>2]|0)+(pe[e>>2]|0)|0);e=k?r:0;if(k){if((n|0)!=(-1|0)){w=n;p=e;_=194;break e}}else _=184}else e=0}else _=174}while(0);do{if((_|0)==174){a=Ae(0)|0;if((a|0)!=(-1|0)){e=a;r=pe[270]|0;n=r+-1|0;if(!(n&e))r=c;else r=c-e+(n+e&0-r)|0;e=pe[259]|0;n=e+r|0;if(r>>>0>m>>>0&r>>>0<2147483647){k=pe[261]|0;if((k|0)!=0?n>>>0<=e>>>0|n>>>0>k>>>0:0){e=0;break}n=Ae(r|0)|0;k=(n|0)==(a|0);e=k?r:0;if(k){w=a;p=e;_=194;break e}else _=184}else e=0}else e=0}}while(0);t:do{if((_|0)==184){a=0-r|0;do{if(u>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))?(y=pe[271]|0,y=l-r+y&0-y,y>>>0<2147483647):0)if((Ae(y|0)|0)==(-1|0)){Ae(a|0)|0;break t}else{r=y+r|0;break}}while(0);if((n|0)!=(-1|0)){w=n;p=r;_=194;break e}}}while(0);pe[262]=pe[262]|4;_=191}else{e=0;_=191}}while(0);if((((_|0)==191?c>>>0<2147483647:0)?(w=Ae(c|0)|0,x=Ae(0)|0,w>>>0>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(T=x-w|0,S=T>>>0>(m+40|0)>>>0,S):0){p=S?T:e;_=194}if((_|0)==194){e=(pe[259]|0)+p|0;pe[259]=e;if(e>>>0>(pe[260]|0)>>>0)pe[260]=e;o=pe[157]|0;e:do{if(o){a=1052;do{e=pe[a>>2]|0;r=a+4|0;n=pe[r>>2]|0;if((w|0)==(e+n|0)){E=e;M=r;P=n;C=a;_=204;break}a=pe[a+8>>2]|0}while((a|0)!=0);if(((_|0)==204?(pe[C+12>>2]&8|0)==0:0)?o>>>0>>0&o>>>0>=E>>>0:0){pe[M>>2]=P+p;z=(pe[154]|0)+p|0;L=o+8|0;L=(L&7|0)==0?0:0-L&7;j=z-L|0;pe[157]=o+L;pe[154]=j;pe[o+(L+4)>>2]=j|1;pe[o+(z+4)>>2]=40;pe[158]=pe[273];break}e=pe[155]|0;if(w>>>0>>0){pe[155]=w;e=w}r=w+p|0;a=1052;while(1){if((pe[a>>2]|0)==(r|0)){n=a;r=a;_=212;break}a=pe[a+8>>2]|0;if(!a){r=1052;break}}if((_|0)==212)if(!(pe[r+12>>2]&8)){pe[n>>2]=w;f=r+4|0;pe[f>>2]=(pe[f>>2]|0)+p;f=w+8|0;f=(f&7|0)==0?0:0-f&7;l=w+(p+8)|0;l=(l&7|0)==0?0:0-l&7;t=w+(l+p)|0;h=f+m|0;d=w+h|0;c=t-(w+f)-m|0;pe[w+(f+4)>>2]=m|3;t:do{if((t|0)!=(o|0)){if((t|0)==(pe[156]|0)){z=(pe[153]|0)+c|0;pe[153]=z;pe[156]=d;pe[w+(h+4)>>2]=z|1;pe[w+(z+h)>>2]=z;break}s=p+4|0;r=pe[w+(s+l)>>2]|0;if((r&3|0)==1){u=r&-8;a=r>>>3;r:do{if(r>>>0>=256){o=pe[w+((l|24)+p)>>2]|0;i=pe[w+(p+12+l)>>2]|0;do{if((i|0)==(t|0)){n=l|16;i=w+(s+n)|0;r=pe[i>>2]|0;if(!r){i=w+(n+p)|0;r=pe[i>>2]|0;if(!r){D=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;D=r;break}}else{n=pe[w+((l|8)+p)>>2]|0;if(n>>>0>>0)Xe();e=n+12|0;if((pe[e>>2]|0)!=(t|0))Xe();r=i+8|0;if((pe[r>>2]|0)==(t|0)){pe[e>>2]=i;pe[r>>2]=n;D=i;break}else Xe()}}while(0);if(!o)break;e=pe[w+(p+28+l)>>2]|0;r=908+(e<<2)|0;do{if((t|0)!=(pe[r>>2]|0)){if(o>>>0<(pe[155]|0)>>>0)Xe();e=o+16|0;if((pe[e>>2]|0)==(t|0))pe[e>>2]=D;else pe[o+20>>2]=D;if(!D)break r}else{pe[r>>2]=D;if(D)break;pe[152]=pe[152]&~(1<>>0>>0)Xe();pe[D+24>>2]=o;t=l|16;e=pe[w+(t+p)>>2]|0;do{if(e)if(e>>>0>>0)Xe();else{pe[D+16>>2]=e;pe[e+24>>2]=D;break}}while(0);t=pe[w+(s+t)>>2]|0;if(!t)break;if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[D+20>>2]=t;pe[t+24>>2]=D;break}}else{i=pe[w+((l|8)+p)>>2]|0;n=pe[w+(p+12+l)>>2]|0;r=644+(a<<1<<2)|0;do{if((i|0)!=(r|0)){if(i>>>0>>0)Xe();if((pe[i+12>>2]|0)==(t|0))break;Xe()}}while(0);if((n|0)==(i|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();e=n+8|0;if((pe[e>>2]|0)==(t|0)){A=e;break}Xe()}}while(0);pe[i+12>>2]=n;pe[A>>2]=i}}while(0);t=w+((u|l)+p)|0;n=u+c|0}else n=c;t=t+4|0;pe[t>>2]=pe[t>>2]&-2;pe[w+(h+4)>>2]=n|1;pe[w+(n+h)>>2]=n;t=n>>>3;if(n>>>0<256){e=t<<1;i=644+(e<<2)|0;r=pe[151]|0;t=1<>2]|0;if(e>>>0>=(pe[155]|0)>>>0){j=t;L=e;break}Xe()}}while(0);pe[j>>2]=d;pe[L+12>>2]=d;pe[w+(h+8)>>2]=L;pe[w+(h+12)>>2]=i;break}t=n>>>8;do{if(!t)i=0;else{if(n>>>0>16777215){i=31;break}j=(t+1048320|0)>>>16&8;L=t<>>16&4;L=L<>>16&2;i=14-(D|j|i)+(L<>>15)|0;i=n>>>(i+7|0)&1|i<<1}}while(0);t=908+(i<<2)|0;pe[w+(h+28)>>2]=i;pe[w+(h+20)>>2]=0;pe[w+(h+16)>>2]=0;e=pe[152]|0;r=1<>2]=d;pe[w+(h+24)>>2]=t;pe[w+(h+12)>>2]=d;pe[w+(h+8)>>2]=d;break}t=pe[t>>2]|0;r:do{if((pe[t+4>>2]&-8|0)!=(n|0)){i=n<<((i|0)==31?0:25-(i>>>1)|0);while(1){e=t+16+(i>>>31<<2)|0;r=pe[e>>2]|0;if(!r)break;if((pe[r+4>>2]&-8|0)==(n|0)){z=r;break r}else{i=i<<1;t=r}}if(e>>>0<(pe[155]|0)>>>0)Xe();else{pe[e>>2]=d;pe[w+(h+24)>>2]=t;pe[w+(h+12)>>2]=d;pe[w+(h+8)>>2]=d;break t}}else z=t}while(0);t=z+8|0;e=pe[t>>2]|0;L=pe[155]|0;if(e>>>0>=L>>>0&z>>>0>=L>>>0){pe[e+12>>2]=d;pe[t>>2]=d;pe[w+(h+8)>>2]=e;pe[w+(h+12)>>2]=z;pe[w+(h+24)>>2]=0;break}else Xe()}else{z=(pe[154]|0)+c|0;pe[154]=z;pe[157]=d;pe[w+(h+4)>>2]=z|1}}while(0);z=w+(f|8)|0;return z|0}else r=1052;while(1){e=pe[r>>2]|0;if(e>>>0<=o>>>0?(t=pe[r+4>>2]|0,i=e+t|0,i>>>0>o>>>0):0)break;r=pe[r+8>>2]|0}n=e+(t+-39)|0;e=e+(t+-47+((n&7|0)==0?0:0-n&7))|0;n=o+16|0;e=e>>>0>>0?o:e;t=e+8|0;r=w+8|0;r=(r&7|0)==0?0:0-r&7;z=p+-40-r|0;pe[157]=w+r;pe[154]=z;pe[w+(r+4)>>2]=z|1;pe[w+(p+-36)>>2]=40;pe[158]=pe[273];r=e+4|0;pe[r>>2]=27;pe[t>>2]=pe[263];pe[t+4>>2]=pe[264];pe[t+8>>2]=pe[265];pe[t+12>>2]=pe[266];pe[263]=w;pe[264]=p;pe[266]=0;pe[265]=t;t=e+28|0;pe[t>>2]=7;if((e+32|0)>>>0>>0)do{z=t;t=t+4|0;pe[t>>2]=7}while((z+8|0)>>>0>>0);if((e|0)!=(o|0)){a=e-o|0;pe[r>>2]=pe[r>>2]&-2;pe[o+4>>2]=a|1;pe[e>>2]=a;t=a>>>3;if(a>>>0<256){e=t<<1;i=644+(e<<2)|0;r=pe[151]|0;t=1<>2]|0;if(e>>>0<(pe[155]|0)>>>0)Xe();else{O=t;I=e}}else{pe[151]=r|t;O=644+(e+2<<2)|0;I=i}pe[O>>2]=o;pe[I+12>>2]=o;pe[o+8>>2]=I;pe[o+12>>2]=i;break}t=a>>>8;if(t)if(a>>>0>16777215)i=31;else{L=(t+1048320|0)>>>16&8;z=t<>>16&4;z=z<>>16&2;i=14-(j|L|i)+(z<>>15)|0;i=a>>>(i+7|0)&1|i<<1}else i=0;r=908+(i<<2)|0;pe[o+28>>2]=i;pe[o+20>>2]=0;pe[n>>2]=0;t=pe[152]|0;e=1<>2]=o;pe[o+24>>2]=r;pe[o+12>>2]=o;pe[o+8>>2]=o;break}t=pe[r>>2]|0;t:do{if((pe[t+4>>2]&-8|0)!=(a|0)){i=a<<((i|0)==31?0:25-(i>>>1)|0);while(1){e=t+16+(i>>>31<<2)|0;r=pe[e>>2]|0;if(!r)break;if((pe[r+4>>2]&-8|0)==(a|0)){R=r;break t}else{i=i<<1;t=r}}if(e>>>0<(pe[155]|0)>>>0)Xe();else{pe[e>>2]=o;pe[o+24>>2]=t;pe[o+12>>2]=o;pe[o+8>>2]=o;break e}}else R=t}while(0);t=R+8|0;e=pe[t>>2]|0;z=pe[155]|0;if(e>>>0>=z>>>0&R>>>0>=z>>>0){pe[e+12>>2]=o;pe[t>>2]=o;pe[o+8>>2]=e;pe[o+12>>2]=R;pe[o+24>>2]=0;break}else Xe()}}else{z=pe[155]|0;if((z|0)==0|w>>>0>>0)pe[155]=w;pe[263]=w;pe[264]=p;pe[266]=0;pe[160]=pe[269];pe[159]=-1;t=0;do{z=t<<1;L=644+(z<<2)|0;pe[644+(z+3<<2)>>2]=L;pe[644+(z+2<<2)>>2]=L;t=t+1|0}while((t|0)!=32);z=w+8|0;z=(z&7|0)==0?0:0-z&7;L=p+-40-z|0;pe[157]=w+z;pe[154]=L;pe[w+(z+4)>>2]=L|1;pe[w+(p+-36)>>2]=40;pe[158]=pe[273]}}while(0);t=pe[154]|0;if(t>>>0>m>>>0){L=t-m|0;pe[154]=L;z=pe[157]|0;pe[157]=z+m;pe[z+(m+4)>>2]=L|1;pe[z+4>>2]=m|3;z=z+8|0;return z|0}}z=cr()|0;pe[z>>2]=12;z=0;return z|0}function Ur(e){e=e|0;var t=0,r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0,y=0;if(!e)return;t=e+-8|0;s=pe[155]|0;if(t>>>0>>0)Xe();r=pe[e+-4>>2]|0;i=r&3;if((i|0)==1)Xe();d=r&-8;m=e+(d+-8)|0;do{if(!(r&1)){t=pe[t>>2]|0;if(!i)return;u=-8-t|0;c=e+u|0;h=t+d|0;if(c>>>0>>0)Xe();if((c|0)==(pe[156]|0)){t=e+(d+-4)|0;r=pe[t>>2]|0;if((r&3|0)!=3){y=c;a=h;break}pe[153]=h;pe[t>>2]=r&-2;pe[e+(u+4)>>2]=h|1;pe[m>>2]=h;return}n=t>>>3;if(t>>>0<256){i=pe[e+(u+8)>>2]|0;r=pe[e+(u+12)>>2]|0;t=644+(n<<1<<2)|0;if((i|0)!=(t|0)){if(i>>>0>>0)Xe();if((pe[i+12>>2]|0)!=(c|0))Xe()}if((r|0)==(i|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();t=r+8|0;if((pe[t>>2]|0)==(c|0))o=t;else Xe()}else o=r+8|0;pe[i+12>>2]=r;pe[o>>2]=i;y=c;a=h;break}o=pe[e+(u+24)>>2]|0;i=pe[e+(u+12)>>2]|0;do{if((i|0)==(c|0)){r=e+(u+20)|0;t=pe[r>>2]|0;if(!t){r=e+(u+16)|0;t=pe[r>>2]|0;if(!t){l=0;break}}while(1){i=t+20|0;n=pe[i>>2]|0;if(n){t=n;r=i;continue}i=t+16|0;n=pe[i>>2]|0;if(!n)break;else{t=n;r=i}}if(r>>>0>>0)Xe();else{pe[r>>2]=0;l=t;break}}else{n=pe[e+(u+8)>>2]|0;if(n>>>0>>0)Xe();t=n+12|0;if((pe[t>>2]|0)!=(c|0))Xe();r=i+8|0;if((pe[r>>2]|0)==(c|0)){pe[t>>2]=i;pe[r>>2]=n;l=i;break}else Xe()}}while(0);if(o){t=pe[e+(u+28)>>2]|0;r=908+(t<<2)|0;if((c|0)==(pe[r>>2]|0)){pe[r>>2]=l;if(!l){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=o+16|0;if((pe[t>>2]|0)==(c|0))pe[t>>2]=l;else pe[o+20>>2]=l;if(!l){y=c;a=h;break}}r=pe[155]|0;if(l>>>0>>0)Xe();pe[l+24>>2]=o;t=pe[e+(u+16)>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[l+16>>2]=t;pe[t+24>>2]=l;break}}while(0);t=pe[e+(u+20)>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[l+20>>2]=t;pe[t+24>>2]=l;y=c;a=h;break}else{y=c;a=h}}else{y=c;a=h}}else{y=t;a=d}}while(0);if(y>>>0>=m>>>0)Xe();t=e+(d+-4)|0;r=pe[t>>2]|0;if(!(r&1))Xe();if(!(r&2)){if((m|0)==(pe[157]|0)){b=(pe[154]|0)+a|0;pe[154]=b;pe[157]=y;pe[y+4>>2]=b|1;if((y|0)!=(pe[156]|0))return;pe[156]=0;pe[153]=0;return}if((m|0)==(pe[156]|0)){b=(pe[153]|0)+a|0;pe[153]=b;pe[156]=y;pe[y+4>>2]=b|1;pe[y+b>>2]=b;return}a=(r&-8)+a|0;n=r>>>3;do{if(r>>>0>=256){o=pe[e+(d+16)>>2]|0;t=pe[e+(d|4)>>2]|0;do{if((t|0)==(m|0)){r=e+(d+12)|0;t=pe[r>>2]|0;if(!t){r=e+(d+8)|0;t=pe[r>>2]|0;if(!t){p=0;break}}while(1){i=t+20|0;n=pe[i>>2]|0;if(n){t=n;r=i;continue}i=t+16|0;n=pe[i>>2]|0;if(!n)break;else{t=n;r=i}}if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[r>>2]=0;p=t;break}}else{r=pe[e+d>>2]|0;if(r>>>0<(pe[155]|0)>>>0)Xe();i=r+12|0;if((pe[i>>2]|0)!=(m|0))Xe();n=t+8|0;if((pe[n>>2]|0)==(m|0)){pe[i>>2]=t;pe[n>>2]=r;p=t;break}else Xe()}}while(0);if(o){t=pe[e+(d+20)>>2]|0;r=908+(t<<2)|0;if((m|0)==(pe[r>>2]|0)){pe[r>>2]=p;if(!p){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=o+16|0;if((pe[t>>2]|0)==(m|0))pe[t>>2]=p;else pe[o+20>>2]=p;if(!p)break}r=pe[155]|0;if(p>>>0>>0)Xe();pe[p+24>>2]=o;t=pe[e+(d+8)>>2]|0;do{if(t)if(t>>>0>>0)Xe();else{pe[p+16>>2]=t;pe[t+24>>2]=p;break}}while(0);t=pe[e+(d+12)>>2]|0;if(t)if(t>>>0<(pe[155]|0)>>>0)Xe();else{pe[p+20>>2]=t;pe[t+24>>2]=p;break}}}else{i=pe[e+d>>2]|0;r=pe[e+(d|4)>>2]|0;t=644+(n<<1<<2)|0;if((i|0)!=(t|0)){if(i>>>0<(pe[155]|0)>>>0)Xe();if((pe[i+12>>2]|0)!=(m|0))Xe()}if((r|0)==(i|0)){pe[151]=pe[151]&~(1<>>0<(pe[155]|0)>>>0)Xe();t=r+8|0;if((pe[t>>2]|0)==(m|0))f=t;else Xe()}else f=r+8|0;pe[i+12>>2]=r;pe[f>>2]=i}}while(0);pe[y+4>>2]=a|1;pe[y+a>>2]=a;if((y|0)==(pe[156]|0)){pe[153]=a;return}}else{pe[t>>2]=r&-2;pe[y+4>>2]=a|1;pe[y+a>>2]=a}t=a>>>3;if(a>>>0<256){r=t<<1;n=644+(r<<2)|0;i=pe[151]|0;t=1<>2]|0;if(r>>>0<(pe[155]|0)>>>0)Xe();else{g=t;v=r}}else{pe[151]=i|t;g=644+(r+2<<2)|0;v=n}pe[g>>2]=y;pe[v+12>>2]=y;pe[y+8>>2]=v;pe[y+12>>2]=n;return}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{g=(t+1048320|0)>>>16&8;v=t<>>16&4;v=v<>>16&2;n=14-(m|g|n)+(v<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=908+(n<<2)|0;pe[y+28>>2]=n;pe[y+20>>2]=0;pe[y+16>>2]=0;r=pe[152]|0;i=1<>2]|0;t:do{if((pe[t+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=t+16+(n>>>31<<2)|0;i=pe[r>>2]|0;if(!i)break;if((pe[i+4>>2]&-8|0)==(a|0)){b=i;break t}else{n=n<<1;t=i}}if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[r>>2]=y;pe[y+24>>2]=t;pe[y+12>>2]=y;pe[y+8>>2]=y;break e}}else b=t}while(0);t=b+8|0;r=pe[t>>2]|0;v=pe[155]|0;if(r>>>0>=v>>>0&b>>>0>=v>>>0){pe[r+12>>2]=y;pe[t>>2]=y;pe[y+8>>2]=r;pe[y+12>>2]=b;pe[y+24>>2]=0;break}else Xe()}else{pe[152]=r|i;pe[t>>2]=y;pe[y+24>>2]=t;pe[y+12>>2]=y;pe[y+8>>2]=y}}while(0);y=(pe[159]|0)+-1|0;pe[159]=y;if(!y)t=1060;else return;while(1){t=pe[t>>2]|0;if(!t)break;else t=t+8|0}pe[159]=-1;return}function Xr(e,t){e=e|0;t=t|0;var r=0,i=0;if(!e){e=Nr(t)|0;return e|0}if(t>>>0>4294967231){e=cr()|0;pe[e>>2]=12;e=0;return e|0}r=Hr(e+-8|0,t>>>0<11?16:t+11&-8)|0;if(r){e=r+8|0;return e|0}r=Nr(t)|0;if(!r){e=0;return e|0}i=pe[e+-4>>2]|0;i=(i&-8)-((i&3|0)==0?8:4)|0;Qr(r|0,e|0,(i>>>0>>0?i:t)|0)|0;Ur(e);e=r;return e|0}function qr(e){e=e|0;var t=0;if(!e){t=0;return t|0}e=pe[e+-4>>2]|0;t=e&3;if((t|0)==1){t=0;return t|0}t=(e&-8)-((t|0)==0?8:4)|0;return t|0}function Hr(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;d=e+4|0;p=pe[d>>2]|0;u=p&-8;c=e+u|0;s=pe[155]|0;r=p&3;if(!((r|0)!=1&e>>>0>=s>>>0&e>>>0>>0))Xe();i=e+(u|4)|0;n=pe[i>>2]|0;if(!(n&1))Xe();if(!r){if(t>>>0<256){e=0;return e|0}if(u>>>0>=(t+4|0)>>>0?(u-t|0)>>>0<=pe[271]<<1>>>0:0)return e|0;e=0;return e|0}if(u>>>0>=t>>>0){r=u-t|0;if(r>>>0<=15)return e|0;pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=r|3;pe[i>>2]=pe[i>>2]|1;Wr(e+t|0,r);return e|0}if((c|0)==(pe[157]|0)){r=(pe[154]|0)+u|0;if(r>>>0<=t>>>0){e=0;return e|0}f=r-t|0;pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=f|1;pe[157]=e+t;pe[154]=f;return e|0}if((c|0)==(pe[156]|0)){i=(pe[153]|0)+u|0;if(i>>>0>>0){e=0;return e|0}r=i-t|0;if(r>>>0>15){pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=r|1;pe[e+i>>2]=r;i=e+(i+4)|0;pe[i>>2]=pe[i>>2]&-2;i=e+t|0}else{pe[d>>2]=p&1|i|2;i=e+(i+4)|0;pe[i>>2]=pe[i>>2]|1;i=0;r=0}pe[153]=r;pe[156]=i;return e|0}if(n&2){e=0;return e|0}h=(n&-8)+u|0;if(h>>>0>>0){e=0;return e|0}f=h-t|0;a=n>>>3;do{if(n>>>0>=256){o=pe[e+(u+24)>>2]|0;a=pe[e+(u+12)>>2]|0;do{if((a|0)==(c|0)){i=e+(u+20)|0;r=pe[i>>2]|0;if(!r){i=e+(u+16)|0;r=pe[i>>2]|0;if(!r){l=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;l=r;break}}else{n=pe[e+(u+8)>>2]|0;if(n>>>0>>0)Xe();r=n+12|0;if((pe[r>>2]|0)!=(c|0))Xe();i=a+8|0;if((pe[i>>2]|0)==(c|0)){pe[r>>2]=a;pe[i>>2]=n;l=a;break}else Xe()}}while(0);if(o){r=pe[e+(u+28)>>2]|0;i=908+(r<<2)|0;if((c|0)==(pe[i>>2]|0)){pe[i>>2]=l;if(!l){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();r=o+16|0;if((pe[r>>2]|0)==(c|0))pe[r>>2]=l;else pe[o+20>>2]=l;if(!l)break}i=pe[155]|0;if(l>>>0>>0)Xe();pe[l+24>>2]=o;r=pe[e+(u+16)>>2]|0;do{if(r)if(r>>>0>>0)Xe();else{pe[l+16>>2]=r;pe[r+24>>2]=l;break}}while(0);r=pe[e+(u+20)>>2]|0;if(r)if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[l+20>>2]=r;pe[r+24>>2]=l;break}}}else{n=pe[e+(u+8)>>2]|0;i=pe[e+(u+12)>>2]|0;r=644+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0>>0)Xe();if((pe[n+12>>2]|0)!=(c|0))Xe()}if((i|0)==(n|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();r=i+8|0;if((pe[r>>2]|0)==(c|0))o=r;else Xe()}else o=i+8|0;pe[n+12>>2]=i;pe[o>>2]=n}}while(0);if(f>>>0<16){pe[d>>2]=h|p&1|2;t=e+(h|4)|0;pe[t>>2]=pe[t>>2]|1;return e|0}else{pe[d>>2]=p&1|t|2;pe[e+(t+4)>>2]=f|3;p=e+(h|4)|0;pe[p>>2]=pe[p>>2]|1;Wr(e+t|0,f);return e|0}return 0}function Wr(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0,m=0,g=0,v=0,b=0;m=e+t|0;r=pe[e+4>>2]|0;do{if(!(r&1)){l=pe[e>>2]|0;if(!(r&3))return;f=e+(0-l)|0;h=l+t|0;u=pe[155]|0;if(f>>>0>>0)Xe();if((f|0)==(pe[156]|0)){i=e+(t+4)|0;r=pe[i>>2]|0;if((r&3|0)!=3){b=f;o=h;break}pe[153]=h;pe[i>>2]=r&-2;pe[e+(4-l)>>2]=h|1;pe[m>>2]=h;return}a=l>>>3;if(l>>>0<256){n=pe[e+(8-l)>>2]|0;i=pe[e+(12-l)>>2]|0;r=644+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0>>0)Xe();if((pe[n+12>>2]|0)!=(f|0))Xe()}if((i|0)==(n|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();r=i+8|0;if((pe[r>>2]|0)==(f|0))s=r;else Xe()}else s=i+8|0;pe[n+12>>2]=i;pe[s>>2]=n;b=f;o=h;break}s=pe[e+(24-l)>>2]|0;n=pe[e+(12-l)>>2]|0;do{if((n|0)==(f|0)){n=16-l|0;i=e+(n+4)|0;r=pe[i>>2]|0;if(!r){i=e+n|0;r=pe[i>>2]|0;if(!r){c=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;c=r;break}}else{a=pe[e+(8-l)>>2]|0;if(a>>>0>>0)Xe();r=a+12|0;if((pe[r>>2]|0)!=(f|0))Xe();i=n+8|0;if((pe[i>>2]|0)==(f|0)){pe[r>>2]=n;pe[i>>2]=a;c=n;break}else Xe()}}while(0);if(s){r=pe[e+(28-l)>>2]|0;i=908+(r<<2)|0;if((f|0)==(pe[i>>2]|0)){pe[i>>2]=c;if(!c){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();r=s+16|0;if((pe[r>>2]|0)==(f|0))pe[r>>2]=c;else pe[s+20>>2]=c;if(!c){b=f;o=h;break}}n=pe[155]|0;if(c>>>0>>0)Xe();pe[c+24>>2]=s;r=16-l|0;i=pe[e+r>>2]|0;do{if(i)if(i>>>0>>0)Xe();else{pe[c+16>>2]=i;pe[i+24>>2]=c;break}}while(0);r=pe[e+(r+4)>>2]|0;if(r)if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[c+20>>2]=r;pe[r+24>>2]=c;b=f;o=h;break}else{b=f;o=h}}else{b=f;o=h}}else{b=e;o=t}}while(0);u=pe[155]|0;if(m>>>0>>0)Xe();r=e+(t+4)|0;i=pe[r>>2]|0;if(!(i&2)){if((m|0)==(pe[157]|0)){v=(pe[154]|0)+o|0;pe[154]=v;pe[157]=b;pe[b+4>>2]=v|1;if((b|0)!=(pe[156]|0))return;pe[156]=0;pe[153]=0;return}if((m|0)==(pe[156]|0)){v=(pe[153]|0)+o|0;pe[153]=v;pe[156]=b;pe[b+4>>2]=v|1;pe[b+v>>2]=v;return}o=(i&-8)+o|0;a=i>>>3;do{if(i>>>0>=256){s=pe[e+(t+24)>>2]|0;n=pe[e+(t+12)>>2]|0;do{if((n|0)==(m|0)){i=e+(t+20)|0;r=pe[i>>2]|0;if(!r){i=e+(t+16)|0;r=pe[i>>2]|0;if(!r){p=0;break}}while(1){n=r+20|0;a=pe[n>>2]|0;if(a){r=a;i=n;continue}n=r+16|0;a=pe[n>>2]|0;if(!a)break;else{r=a;i=n}}if(i>>>0>>0)Xe();else{pe[i>>2]=0;p=r;break}}else{a=pe[e+(t+8)>>2]|0;if(a>>>0>>0)Xe();r=a+12|0;if((pe[r>>2]|0)!=(m|0))Xe();i=n+8|0;if((pe[i>>2]|0)==(m|0)){pe[r>>2]=n;pe[i>>2]=a;p=n;break}else Xe()}}while(0);if(s){r=pe[e+(t+28)>>2]|0;i=908+(r<<2)|0;if((m|0)==(pe[i>>2]|0)){pe[i>>2]=p;if(!p){pe[152]=pe[152]&~(1<>>0<(pe[155]|0)>>>0)Xe();r=s+16|0;if((pe[r>>2]|0)==(m|0))pe[r>>2]=p;else pe[s+20>>2]=p;if(!p)break}i=pe[155]|0;if(p>>>0>>0)Xe();pe[p+24>>2]=s;r=pe[e+(t+16)>>2]|0;do{if(r)if(r>>>0>>0)Xe();else{pe[p+16>>2]=r;pe[r+24>>2]=p;break}}while(0);r=pe[e+(t+20)>>2]|0;if(r)if(r>>>0<(pe[155]|0)>>>0)Xe();else{pe[p+20>>2]=r;pe[r+24>>2]=p;break}}}else{n=pe[e+(t+8)>>2]|0;i=pe[e+(t+12)>>2]|0;r=644+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0>>0)Xe();if((pe[n+12>>2]|0)!=(m|0))Xe()}if((i|0)==(n|0)){pe[151]=pe[151]&~(1<>>0>>0)Xe();r=i+8|0;if((pe[r>>2]|0)==(m|0))d=r;else Xe()}else d=i+8|0;pe[n+12>>2]=i;pe[d>>2]=n}}while(0);pe[b+4>>2]=o|1;pe[b+o>>2]=o;if((b|0)==(pe[156]|0)){pe[153]=o;return}}else{pe[r>>2]=i&-2;pe[b+4>>2]=o|1;pe[b+o>>2]=o}r=o>>>3;if(o>>>0<256){i=r<<1;a=644+(i<<2)|0;n=pe[151]|0;r=1<>2]|0;if(i>>>0<(pe[155]|0)>>>0)Xe();else{g=r;v=i}}else{pe[151]=n|r;g=644+(i+2<<2)|0;v=a}pe[g>>2]=b;pe[v+12>>2]=b;pe[b+8>>2]=v;pe[b+12>>2]=a;return}r=o>>>8;if(r)if(o>>>0>16777215)a=31;else{g=(r+1048320|0)>>>16&8;v=r<>>16&4;v=v<>>16&2;a=14-(m|g|a)+(v<>>15)|0;a=o>>>(a+7|0)&1|a<<1}else a=0;r=908+(a<<2)|0;pe[b+28>>2]=a;pe[b+20>>2]=0;pe[b+16>>2]=0;i=pe[152]|0;n=1<>2]=b;pe[b+24>>2]=r;pe[b+12>>2]=b;pe[b+8>>2]=b;return}r=pe[r>>2]|0;e:do{if((pe[r+4>>2]&-8|0)!=(o|0)){a=o<<((a|0)==31?0:25-(a>>>1)|0);while(1){i=r+16+(a>>>31<<2)|0;n=pe[i>>2]|0;if(!n)break;if((pe[n+4>>2]&-8|0)==(o|0)){r=n;break e}else{a=a<<1;r=n}}if(i>>>0<(pe[155]|0)>>>0)Xe();pe[i>>2]=b;pe[b+24>>2]=r;pe[b+12>>2]=b;pe[b+8>>2]=b;return}}while(0);i=r+8|0;n=pe[i>>2]|0;v=pe[155]|0;if(!(n>>>0>=v>>>0&r>>>0>=v>>>0))Xe();pe[n+12>>2]=b;pe[i>>2]=b;pe[b+8>>2]=n;pe[b+12>>2]=r;pe[b+24>>2]=0;return}function Gr(){}function Vr(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;i=t-i-(r>>>0>e>>>0|0)>>>0;return(re=i,e-r>>>0|0)|0}function Yr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,o=0;i=e+r|0;if((r|0)>=20){t=t&255;a=e&3;o=t|t<<8|t<<16|t<<24;n=i&~3;if(a){a=e+4-a|0;while((e|0)<(a|0)){de[e>>0]=t;e=e+1|0}}while((e|0)<(n|0)){pe[e>>2]=o;e=e+4|0}}while((e|0)<(i|0)){de[e>>0]=t;e=e+1|0}return e-r|0}function Jr(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){re=t>>>r;return e>>>r|(t&(1<>>r-32|0}function Kr(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){re=t<>>32-r;return e<>>0;return(re=t+i+(r>>>0>>0|0)>>>0,r|0)|0}function Qr(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if((r|0)>=4096)return Ie(e|0,t|0,r|0)|0;i=e|0;if((e&3)==(t&3)){while(e&3){if(!r)return i|0;de[e>>0]=de[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}while((r|0)>=4){pe[e>>2]=pe[t>>2];e=e+4|0;t=t+4|0;r=r-4|0}}while((r|0)>0){de[e>>0]=de[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}return i|0}function $r(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){re=t>>r;return e>>>r|(t&(1<>r-32|0}function ei(e){e=e|0;var t=0;t=de[g+(e&255)>>0]|0;if((t|0)<8)return t|0;t=de[g+(e>>8&255)>>0]|0;if((t|0)<8)return t+8|0;t=de[g+(e>>16&255)>>0]|0;if((t|0)<8)return t+16|0;return(de[g+(e>>>24)>>0]|0)+24|0}function ti(e,t){e=e|0;t=t|0;var r=0,i=0,n=0,a=0;a=e&65535;n=t&65535;r=be(n,a)|0;i=e>>>16;e=(r>>>16)+(be(n,i)|0)|0;n=t>>>16;t=be(n,a)|0;return(re=(e>>>16)+(be(n,i)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|r&65535|0)|0}function ri(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0;l=t>>31|((t|0)<0?-1:0)<<1;u=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;a=i>>31|((i|0)<0?-1:0)<<1;n=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;s=Vr(l^e,u^t,l,u)|0;o=re;e=a^l;t=n^u;return Vr((si(s,o,Vr(a^r,n^i,a,n)|0,re,0)|0)^e,re^t,e,t)|0}function ii(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0,o=0,s=0,u=0,l=0;n=ve;ve=ve+16|0;s=n|0;o=t>>31|((t|0)<0?-1:0)<<1;a=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;l=i>>31|((i|0)<0?-1:0)<<1;u=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;e=Vr(o^e,a^t,o,a)|0;t=re;si(e,t,Vr(l^r,u^i,l,u)|0,re,s)|0;i=Vr(pe[s>>2]^o,pe[s+4>>2]^a,o,a)|0;r=re;ve=n;return(re=r,i)|0}function ni(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0;n=e;a=r;r=ti(n,a)|0;e=re;return(re=(be(t,a)|0)+(be(i,n)|0)+e|e&0,r|0|0)|0}function ai(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;return si(e,t,r,i,0)|0}function oi(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var n=0,a=0;a=ve;ve=ve+16|0;n=a|0;si(e,t,r,i,n)|0;ve=a;return(re=pe[n+4>>2]|0,pe[n>>2]|0)|0}function si(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;var a=0,o=0,s=0,u=0,l=0,c=0,h=0,f=0,d=0,p=0;c=e;u=t;l=u;o=r;f=i;s=f;if(!l){a=(n|0)!=0;if(!s){if(a){pe[n>>2]=(c>>>0)%(o>>>0);pe[n+4>>2]=0}f=0;n=(c>>>0)/(o>>>0)>>>0;return(re=f,n)|0}else{if(!a){f=0;n=0;return(re=f,n)|0}pe[n>>2]=e|0;pe[n+4>>2]=t&0;f=0;n=0;return(re=f,n)|0}}a=(s|0)==0;do{if(o){if(!a){a=(oe(s|0)|0)-(oe(l|0)|0)|0;if(a>>>0<=31){h=a+1|0;s=31-a|0;t=a-31>>31;o=h;e=c>>>(h>>>0)&t|l<>>(h>>>0)&t;a=0;s=c<>2]=e|0;pe[n+4>>2]=u|t&0;f=0;n=0;return(re=f,n)|0}a=o-1|0;if(a&o){s=(oe(o|0)|0)+33-(oe(l|0)|0)|0;p=64-s|0;h=32-s|0;u=h>>31;d=s-32|0;t=d>>31;o=s;e=h-1>>31&l>>>(d>>>0)|(l<>>(s>>>0))&t;t=t&l>>>(s>>>0);a=c<>>(d>>>0))&u|c<>31;break}if(n){pe[n>>2]=a&c;pe[n+4>>2]=0}if((o|0)==1){d=u|t&0;p=e|0|0;return(re=d,p)|0}else{p=ei(o|0)|0;d=l>>>(p>>>0)|0;p=l<<32-p|c>>>(p>>>0)|0;return(re=d,p)|0}}else{if(a){if(n){pe[n>>2]=(l>>>0)%(o>>>0);pe[n+4>>2]=0}d=0;p=(l>>>0)/(o>>>0)>>>0;return(re=d,p)|0}if(!c){if(n){pe[n>>2]=0;pe[n+4>>2]=(l>>>0)%(s>>>0)}d=0;p=(l>>>0)/(s>>>0)>>>0;return(re=d,p)|0}a=s-1|0;if(!(a&s)){if(n){pe[n>>2]=e|0;pe[n+4>>2]=a&l|t&0}d=0;p=l>>>((ei(s|0)|0)>>>0);return(re=d,p)|0}a=(oe(s|0)|0)-(oe(l|0)|0)|0;if(a>>>0<=30){t=a+1|0;s=31-a|0;o=t;e=l<>>(t>>>0);t=l>>>(t>>>0);a=0;s=c<>2]=e|0;pe[n+4>>2]=u|t&0;d=0;p=0;return(re=d,p)|0}}while(0);if(!o){l=s;u=0;s=0}else{h=r|0|0;c=f|i&0;l=Zr(h|0,c|0,-1,-1)|0;r=re;u=s;s=0;do{i=u;u=a>>>31|u<<1;a=s|a<<1;i=e<<1|i>>>31|0;f=e>>>31|t<<1|0;Vr(l,r,i,f)|0;p=re;d=p>>31|((p|0)<0?-1:0)<<1;s=d&1;e=Vr(i,f,d&h,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&c)|0;t=re;o=o-1|0}while((o|0)!=0);l=u;u=0}o=0;if(n){pe[n>>2]=e;pe[n+4>>2]=t}d=(a|0)>>>31|(l|o)<<1|(o<<1|a>>>31)&0|u;p=(a<<1|0>>>31)&-2|s;return(re=d,p)|0}function ui(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;return Ei[e&7](t|0,r|0,i|0)|0}function li(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;Mi[e&3](t|0,r|0,i|0,n|0,a|0)}function ci(e,t){e=e|0;t=t|0;Pi[e&7](t|0)}function hi(e,t){e=e|0;t=t|0;return Ci[e&1](t|0)|0}function fi(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;Ai[e&0](t|0,r|0,i|0)}function di(e){e=e|0;Oi[e&3]()}function pi(e,t,r,i,n,a,o){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;o=o|0;Ii[e&3](t|0,r|0,i|0,n|0,a|0,o|0)}function mi(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;return Ri[e&1](t|0,r|0,i|0,n|0,a|0)|0}function gi(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;Di[e&3](t|0,r|0,i|0,n|0)}function vi(e,t,r){e=e|0;t=t|0;r=r|0;se(0);return 0}function bi(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;se(1)}function yi(e){e=e|0;se(2)}function _i(e){e=e|0;se(3);return 0}function wi(e,t,r){e=e|0;t=t|0;r=r|0;se(4)}function xi(){se(5)}function ki(e,t,r,i,n,a){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;a=a|0;se(6)}function Ti(e,t,r,i,n){e=e|0;t=t|0;r=r|0;i=i|0;n=n|0;se(7);return 0}function Si(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;se(8)}var Ei=[vi,Yt,Lr,Cr,Pr,Ar,vi,vi];var Mi=[bi,tr,er,bi];var Pi=[yi,qt,Gt,Ht,Wt,Vt,ur,jr];var Ci=[_i,Mr];var Ai=[wi];var Oi=[xi,or,sr,xi];var Ii=[ki,ir,rr,ki];var Ri=[Ti,ut];var Di=[Si,Kt,Zt,Si];return{___cxa_can_catch:nr,_crn_get_levels:kt,_crn_get_uncompressed_size:St,_crn_decompress:Et,_i64Add:Zr,_crn_get_width:wt,___cxa_is_pointer_type:ar,_i64Subtract:Vr,_memset:Yr,_malloc:Nr,_free:Ur,_memcpy:Qr,_bitshift64Lshr:Jr,_fflush:gr,_bitshift64Shl:Kr,_crn_get_height:xt,___errno_location:cr,_crn_get_dxt_format:Tt,runPostSets:Gr,_emscripten_replace_memory:Ye,stackAlloc:Je,stackSave:Ke,stackRestore:Ze,establishStackSpace:Qe,setThrew:$e,setTempRet0:rt,getTempRet0:it,dynCall_iiii:ui,dynCall_viiiii:li,dynCall_vi:ci,dynCall_ii:hi,dynCall_viii:fi,dynCall_v:di,dynCall_viiiiii:pi,dynCall_iiiiii:mi,dynCall_viiii:gi}}(e.Ya,e.Za,buffer);e.___cxa_can_catch=Z.___cxa_can_catch,e._crn_get_levels=Z._crn_get_levels,e.runPostSets=Z.runPostSets,e._crn_get_uncompressed_size=Z._crn_get_uncompressed_size,e._crn_decompress=Z._crn_decompress;var zc=e._i64Add=Z._i64Add;e._crn_get_height=Z._crn_get_height,e.___cxa_is_pointer_type=Z.___cxa_is_pointer_type;var nb=e._i64Subtract=Z._i64Subtract,qb=e._memset=Z._memset,Ea=e._malloc=Z._malloc,Bc=e._memcpy=Z._memcpy,Xa=e._emscripten_replace_memory=Z._emscripten_replace_memory;e._crn_get_dxt_format=Z._crn_get_dxt_format;var rb=e._bitshift64Lshr=Z._bitshift64Lshr,Na=e._free=Z._free;e._fflush=Z._fflush,e._crn_get_width=Z._crn_get_width,e.___errno_location=Z.___errno_location;var sb=e._bitshift64Shl=Z._bitshift64Shl;function ia(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}e.dynCall_iiii=Z.dynCall_iiii,e.dynCall_viiiii=Z.dynCall_viiiii,e.dynCall_vi=Z.dynCall_vi,e.dynCall_ii=Z.dynCall_ii,e.dynCall_viii=Z.dynCall_viii,e.dynCall_v=Z.dynCall_v,e.dynCall_viiiiii=Z.dynCall_viiiiii,e.dynCall_iiiiii=Z.dynCall_iiiiii,e.dynCall_viiii=Z.dynCall_viiii,n.aa=Z.stackAlloc,n.ua=Z.stackSave,n.ba=Z.stackRestore,n.Cd=Z.establishStackSpace,n.rb=Z.setTempRet0,n.fb=Z.getTempRet0,ia.prototype=Error(),ia.prototype.constructor=ia;var rd=null,jb=function t(){e.calledRun||td(),e.calledRun||(jb=t)};function td(t){function r(){if(!e.calledRun&&(e.calledRun=!0,!na)){if(Ha||(Ha=!0,ab(cb)),ab(db),e.onRuntimeInitialized&&e.onRuntimeInitialized(),e._main&&vd&&e.callMain(t),e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;)gb(e.postRun.shift());ab(eb)}}if(t=t||e.arguments,null===rd&&(rd=Date.now()),!(0>6],n=0==(32&r);if(31==(31&r)){var a=r;for(r=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;r<<=7,r|=127&a}}else r&=31;return{cls:i,primitive:n,tag:r,tagStr:s.tag[r]}}function h(e,t,r){var i=e.readUInt8(r);if(e.isError(i))return i;if(!t&&128===i)return null;if(0==(128&i))return i;var n=127&i;if(4>=8)o++;(n=new l(2+o))[0]=a,n[1]=128|o;s=1+o;for(var u=i.length;0>=8)n[s]=255&u;return this._createEncoderBuffer([n,i])},s.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"!==t)return"numstr"===t?this._isNumstr(e)?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: numstr supports only digits and space"):"printstr"===t?this._isPrintstr(e)?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark"):/str$/.test(t)?this._createEncoderBuffer(e):"objDesc"===t?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: "+t+" unsupported");for(var r=new l(2*e.length),i=0;i>=7)n++}var o=new l(n),s=o.length-1;for(i=e.length-1;0<=i;i--){a=e[i];for(o[s--]=127&a;0<(a>>=7);)o[s--]=128|127&a}return this._createEncoderBuffer(o)},s.prototype._encodeTime=function(e,t){var r,i=new Date(e);return"gentime"===t?r=[u(i.getFullYear()),u(i.getUTCMonth()+1),u(i.getUTCDate()),u(i.getUTCHours()),u(i.getUTCMinutes()),u(i.getUTCSeconds()),"Z"].join(""):"utctime"===t?r=[u(i.getFullYear()%100),u(i.getUTCMonth()+1),u(i.getUTCDate()),u(i.getUTCHours()),u(i.getUTCMinutes()),u(i.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(r,"octstr")},s.prototype._encodeNull=function(){return this._createEncoderBuffer("")},s.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!l.isBuffer(e)){var r=e.toArray();!e.sign&&128&r[0]&&r.unshift(0),e=new l(r)}if(l.isBuffer(e)){var i=e.length;0===e.length&&i++;var n=new l(i);return e.copy(n),0===e.length&&(n[0]=0),this._createEncoderBuffer(n)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);i=1;for(var a=e;256<=a;a>>=8)i++;for(a=(n=new Array(i)).length-1;0<=a;a--)n[a]=255&e,e>>=8;return 128&n[0]&&n.unshift(0),this._createEncoderBuffer(new l(n))},s.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},s.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},s.prototype._skipDefault=function(e,t,r){var i,n=this._baseState;if(null===n.default)return!1;var a=e.join();if(void 0===n.defaultBuffer&&(n.defaultBuffer=this._encodeValue(n.default,t,r).join()),a.length!==n.defaultBuffer.length)return!1;for(i=0;i>16&255,a[s++]=i>>8&255,a[s++]=255&i;2===n?(i=l[e.charCodeAt(t)]<<2|l[e.charCodeAt(t+1)]>>4,a[s++]=255&i):1===n&&(i=l[e.charCodeAt(t)]<<10|l[e.charCodeAt(t+1)]<<4|l[e.charCodeAt(t+2)]>>2,a[s++]=i>>8&255,a[s++]=255&i);return a},r.fromByteArray=function(e){for(var t,r=e.length,i=r%3,n="",a=[],o=0,s=r-i;o>2],n+=u[t<<4&63],n+="=="):2==i&&(t=(e[r-2]<<8)+e[r-1],n+=u[t>>10],n+=u[t>>4&63],n+=u[t<<2&63],n+="=");return a.push(n),a.join("")};for(var u=[],l=[],c="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,a=i.length;n>18&63]+u[n>>12&63]+u[n>>6&63]+u[63&n]);return a.join("")}l["-".charCodeAt(0)]=62,l["_".charCodeAt(0)]=63},{}],17:[function(k,e,t){!function(e,t){"use strict";function g(e,t){if(!e)throw new Error(t||"Assertion failed")}function r(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function v(e,t,r){if(v.isBN(e))return e;this.negative=0,this.words=null,this.length=0,(this.red=null)!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var i;"object"==typeof e?e.exports=v:t.BN=v,(v.BN=v).wordSize=26;try{i=k("buffer").Buffer}catch(e){}function o(e,t,r){for(var i=0,n=Math.min(e.length,r),a=t;a>>26-o&67108863,26<=(o+=24)&&(o-=26,n++);else if("le"===r)for(n=i=0;i>>26-o&67108863,26<=(o+=24)&&(o-=26,n++);return this.strip()},v.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r>>26-a&4194303,26<=(a+=24)&&(a-=26,i++);r+6!==t&&(n=o(e,t,r+6),this.words[i]|=n<>>26-a&4194303),this.strip()},v.prototype._parseBase=function(e,t,r){this.words=[0];for(var i=0,n=this.length=1;n<=67108863;n*=t)i++;i--,n=n/t|0;for(var a=e.length-r,o=a%i,s=Math.min(a,a-o)+r,u=0,l=r;l"};var f=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function n(e,t,r){r.negative=t.negative^e.negative;var i=e.length+t.length|0;i=(r.length=i)-1|0;var n=0|e.words[0],a=0|t.words[0],o=n*a,s=67108863&o,u=o/67108864|0;r.words[0]=s;for(var l=1;l>>26,h=67108863&u,f=Math.min(l,t.length-1),d=Math.max(0,l-e.length+1);d<=f;d++){var p=l-d|0;c+=(o=(n=0|e.words[p])*(a=0|t.words[d])+h)/67108864|0,h=67108863&o}r.words[l]=0|h,u=0|c}return 0!==u?r.words[l]=0|u:r.length--,r.strip()}v.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,n=0,a=0;a>>24-i&16777215)||a!==this.length-1?f[6-s.length]+s+r:s+r,26<=(i+=2)&&(i-=26,a--)}for(0!==n&&(r=n.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&2<=e&&e<=36){var u=d[e],l=p[e];r="";var c=this.clone();for(c.negative=0;!c.isZero();){var h=c.modn(l).toString(e);r=(c=c.idivn(l)).isZero()?h+r:f[u-h.length]+h+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}g(!1,"Base should be between 2 and 36")},v.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:2>>=13),64<=t&&(r+=7,t>>>=7),8<=t&&(r+=4,t>>>=4),2<=t&&(r+=2,t>>>=2),r+t},v.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},v.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},v.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},v.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},v.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},v.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},v.prototype.iuxor=function(e){var t,r;r=this.length>e.length?(t=this,e):(t=e,this);for(var i=0;ie.length?this.clone().ixor(e):e.clone().ixor(this)},v.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},v.prototype.inotn=function(e){g("number"==typeof e&&0<=e);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),0>26-r),this.strip()},v.prototype.notn=function(e){return this.clone().inotn(e)},v.prototype.setn=function(e,t){g("number"==typeof e&&0<=e);var r=e/26|0,i=e%26;return this._expand(1+r),this.words[r]=t?this.words[r]|1<e.length?(r=this,e):(r=e,this);for(var n=0,a=0;a>>26;for(;0!==n&&a>>26;if(this.length=r.length,0!==n)this.words[this.length]=n,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},v.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,i,n=this.cmp(e);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;i=0>26,this.words[o]=67108863&t;for(;0!==a&&o>26,this.words[o]=67108863&t;if(0===a&&o>>13,d=0|o[1],p=8191&d,m=d>>>13,g=0|o[2],v=8191&g,b=g>>>13,y=0|o[3],_=8191&y,w=y>>>13,x=0|o[4],k=8191&x,T=x>>>13,S=0|o[5],E=8191&S,M=S>>>13,P=0|o[6],C=8191&P,A=P>>>13,O=0|o[7],I=8191&O,R=O>>>13,D=0|o[8],j=8191&D,L=D>>>13,z=0|o[9],F=8191&z,B=z>>>13,N=0|s[0],U=8191&N,X=N>>>13,q=0|s[1],H=8191&q,W=q>>>13,G=0|s[2],V=8191&G,Y=G>>>13,J=0|s[3],K=8191&J,Z=J>>>13,Q=0|s[4],$=8191&Q,ee=Q>>>13,te=0|s[5],re=8191&te,ie=te>>>13,ne=0|s[6],ae=8191&ne,oe=ne>>>13,se=0|s[7],ue=8191&se,le=se>>>13,ce=0|s[8],he=8191&ce,fe=ce>>>13,de=0|s[9],pe=8191&de,me=de>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(i=Math.imul(h,U))|0)+((8191&(n=(n=Math.imul(h,X))+Math.imul(f,U)|0))<<13)|0;l=((a=Math.imul(f,X))+(n>>>13)|0)+(ge>>>26)|0,ge&=67108863,i=Math.imul(p,U),n=(n=Math.imul(p,X))+Math.imul(m,U)|0,a=Math.imul(m,X);var ve=(l+(i=i+Math.imul(h,H)|0)|0)+((8191&(n=(n=n+Math.imul(h,W)|0)+Math.imul(f,H)|0))<<13)|0;l=((a=a+Math.imul(f,W)|0)+(n>>>13)|0)+(ve>>>26)|0,ve&=67108863,i=Math.imul(v,U),n=(n=Math.imul(v,X))+Math.imul(b,U)|0,a=Math.imul(b,X),i=i+Math.imul(p,H)|0,n=(n=n+Math.imul(p,W)|0)+Math.imul(m,H)|0,a=a+Math.imul(m,W)|0;var be=(l+(i=i+Math.imul(h,V)|0)|0)+((8191&(n=(n=n+Math.imul(h,Y)|0)+Math.imul(f,V)|0))<<13)|0;l=((a=a+Math.imul(f,Y)|0)+(n>>>13)|0)+(be>>>26)|0,be&=67108863,i=Math.imul(_,U),n=(n=Math.imul(_,X))+Math.imul(w,U)|0,a=Math.imul(w,X),i=i+Math.imul(v,H)|0,n=(n=n+Math.imul(v,W)|0)+Math.imul(b,H)|0,a=a+Math.imul(b,W)|0,i=i+Math.imul(p,V)|0,n=(n=n+Math.imul(p,Y)|0)+Math.imul(m,V)|0,a=a+Math.imul(m,Y)|0;var ye=(l+(i=i+Math.imul(h,K)|0)|0)+((8191&(n=(n=n+Math.imul(h,Z)|0)+Math.imul(f,K)|0))<<13)|0;l=((a=a+Math.imul(f,Z)|0)+(n>>>13)|0)+(ye>>>26)|0,ye&=67108863,i=Math.imul(k,U),n=(n=Math.imul(k,X))+Math.imul(T,U)|0,a=Math.imul(T,X),i=i+Math.imul(_,H)|0,n=(n=n+Math.imul(_,W)|0)+Math.imul(w,H)|0,a=a+Math.imul(w,W)|0,i=i+Math.imul(v,V)|0,n=(n=n+Math.imul(v,Y)|0)+Math.imul(b,V)|0,a=a+Math.imul(b,Y)|0,i=i+Math.imul(p,K)|0,n=(n=n+Math.imul(p,Z)|0)+Math.imul(m,K)|0,a=a+Math.imul(m,Z)|0;var _e=(l+(i=i+Math.imul(h,$)|0)|0)+((8191&(n=(n=n+Math.imul(h,ee)|0)+Math.imul(f,$)|0))<<13)|0;l=((a=a+Math.imul(f,ee)|0)+(n>>>13)|0)+(_e>>>26)|0,_e&=67108863,i=Math.imul(E,U),n=(n=Math.imul(E,X))+Math.imul(M,U)|0,a=Math.imul(M,X),i=i+Math.imul(k,H)|0,n=(n=n+Math.imul(k,W)|0)+Math.imul(T,H)|0,a=a+Math.imul(T,W)|0,i=i+Math.imul(_,V)|0,n=(n=n+Math.imul(_,Y)|0)+Math.imul(w,V)|0,a=a+Math.imul(w,Y)|0,i=i+Math.imul(v,K)|0,n=(n=n+Math.imul(v,Z)|0)+Math.imul(b,K)|0,a=a+Math.imul(b,Z)|0,i=i+Math.imul(p,$)|0,n=(n=n+Math.imul(p,ee)|0)+Math.imul(m,$)|0,a=a+Math.imul(m,ee)|0;var we=(l+(i=i+Math.imul(h,re)|0)|0)+((8191&(n=(n=n+Math.imul(h,ie)|0)+Math.imul(f,re)|0))<<13)|0;l=((a=a+Math.imul(f,ie)|0)+(n>>>13)|0)+(we>>>26)|0,we&=67108863,i=Math.imul(C,U),n=(n=Math.imul(C,X))+Math.imul(A,U)|0,a=Math.imul(A,X),i=i+Math.imul(E,H)|0,n=(n=n+Math.imul(E,W)|0)+Math.imul(M,H)|0,a=a+Math.imul(M,W)|0,i=i+Math.imul(k,V)|0,n=(n=n+Math.imul(k,Y)|0)+Math.imul(T,V)|0,a=a+Math.imul(T,Y)|0,i=i+Math.imul(_,K)|0,n=(n=n+Math.imul(_,Z)|0)+Math.imul(w,K)|0,a=a+Math.imul(w,Z)|0,i=i+Math.imul(v,$)|0,n=(n=n+Math.imul(v,ee)|0)+Math.imul(b,$)|0,a=a+Math.imul(b,ee)|0,i=i+Math.imul(p,re)|0,n=(n=n+Math.imul(p,ie)|0)+Math.imul(m,re)|0,a=a+Math.imul(m,ie)|0;var xe=(l+(i=i+Math.imul(h,ae)|0)|0)+((8191&(n=(n=n+Math.imul(h,oe)|0)+Math.imul(f,ae)|0))<<13)|0;l=((a=a+Math.imul(f,oe)|0)+(n>>>13)|0)+(xe>>>26)|0,xe&=67108863,i=Math.imul(I,U),n=(n=Math.imul(I,X))+Math.imul(R,U)|0,a=Math.imul(R,X),i=i+Math.imul(C,H)|0,n=(n=n+Math.imul(C,W)|0)+Math.imul(A,H)|0,a=a+Math.imul(A,W)|0,i=i+Math.imul(E,V)|0,n=(n=n+Math.imul(E,Y)|0)+Math.imul(M,V)|0,a=a+Math.imul(M,Y)|0,i=i+Math.imul(k,K)|0,n=(n=n+Math.imul(k,Z)|0)+Math.imul(T,K)|0,a=a+Math.imul(T,Z)|0,i=i+Math.imul(_,$)|0,n=(n=n+Math.imul(_,ee)|0)+Math.imul(w,$)|0,a=a+Math.imul(w,ee)|0,i=i+Math.imul(v,re)|0,n=(n=n+Math.imul(v,ie)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ie)|0,i=i+Math.imul(p,ae)|0,n=(n=n+Math.imul(p,oe)|0)+Math.imul(m,ae)|0,a=a+Math.imul(m,oe)|0;var ke=(l+(i=i+Math.imul(h,ue)|0)|0)+((8191&(n=(n=n+Math.imul(h,le)|0)+Math.imul(f,ue)|0))<<13)|0;l=((a=a+Math.imul(f,le)|0)+(n>>>13)|0)+(ke>>>26)|0,ke&=67108863,i=Math.imul(j,U),n=(n=Math.imul(j,X))+Math.imul(L,U)|0,a=Math.imul(L,X),i=i+Math.imul(I,H)|0,n=(n=n+Math.imul(I,W)|0)+Math.imul(R,H)|0,a=a+Math.imul(R,W)|0,i=i+Math.imul(C,V)|0,n=(n=n+Math.imul(C,Y)|0)+Math.imul(A,V)|0,a=a+Math.imul(A,Y)|0,i=i+Math.imul(E,K)|0,n=(n=n+Math.imul(E,Z)|0)+Math.imul(M,K)|0,a=a+Math.imul(M,Z)|0,i=i+Math.imul(k,$)|0,n=(n=n+Math.imul(k,ee)|0)+Math.imul(T,$)|0,a=a+Math.imul(T,ee)|0,i=i+Math.imul(_,re)|0,n=(n=n+Math.imul(_,ie)|0)+Math.imul(w,re)|0,a=a+Math.imul(w,ie)|0,i=i+Math.imul(v,ae)|0,n=(n=n+Math.imul(v,oe)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,oe)|0,i=i+Math.imul(p,ue)|0,n=(n=n+Math.imul(p,le)|0)+Math.imul(m,ue)|0,a=a+Math.imul(m,le)|0;var Te=(l+(i=i+Math.imul(h,he)|0)|0)+((8191&(n=(n=n+Math.imul(h,fe)|0)+Math.imul(f,he)|0))<<13)|0;l=((a=a+Math.imul(f,fe)|0)+(n>>>13)|0)+(Te>>>26)|0,Te&=67108863,i=Math.imul(F,U),n=(n=Math.imul(F,X))+Math.imul(B,U)|0,a=Math.imul(B,X),i=i+Math.imul(j,H)|0,n=(n=n+Math.imul(j,W)|0)+Math.imul(L,H)|0,a=a+Math.imul(L,W)|0,i=i+Math.imul(I,V)|0,n=(n=n+Math.imul(I,Y)|0)+Math.imul(R,V)|0,a=a+Math.imul(R,Y)|0,i=i+Math.imul(C,K)|0,n=(n=n+Math.imul(C,Z)|0)+Math.imul(A,K)|0,a=a+Math.imul(A,Z)|0,i=i+Math.imul(E,$)|0,n=(n=n+Math.imul(E,ee)|0)+Math.imul(M,$)|0,a=a+Math.imul(M,ee)|0,i=i+Math.imul(k,re)|0,n=(n=n+Math.imul(k,ie)|0)+Math.imul(T,re)|0,a=a+Math.imul(T,ie)|0,i=i+Math.imul(_,ae)|0,n=(n=n+Math.imul(_,oe)|0)+Math.imul(w,ae)|0,a=a+Math.imul(w,oe)|0,i=i+Math.imul(v,ue)|0,n=(n=n+Math.imul(v,le)|0)+Math.imul(b,ue)|0,a=a+Math.imul(b,le)|0,i=i+Math.imul(p,he)|0,n=(n=n+Math.imul(p,fe)|0)+Math.imul(m,he)|0,a=a+Math.imul(m,fe)|0;var Se=(l+(i=i+Math.imul(h,pe)|0)|0)+((8191&(n=(n=n+Math.imul(h,me)|0)+Math.imul(f,pe)|0))<<13)|0;l=((a=a+Math.imul(f,me)|0)+(n>>>13)|0)+(Se>>>26)|0,Se&=67108863,i=Math.imul(F,H),n=(n=Math.imul(F,W))+Math.imul(B,H)|0,a=Math.imul(B,W),i=i+Math.imul(j,V)|0,n=(n=n+Math.imul(j,Y)|0)+Math.imul(L,V)|0,a=a+Math.imul(L,Y)|0,i=i+Math.imul(I,K)|0,n=(n=n+Math.imul(I,Z)|0)+Math.imul(R,K)|0,a=a+Math.imul(R,Z)|0,i=i+Math.imul(C,$)|0,n=(n=n+Math.imul(C,ee)|0)+Math.imul(A,$)|0,a=a+Math.imul(A,ee)|0,i=i+Math.imul(E,re)|0,n=(n=n+Math.imul(E,ie)|0)+Math.imul(M,re)|0,a=a+Math.imul(M,ie)|0,i=i+Math.imul(k,ae)|0,n=(n=n+Math.imul(k,oe)|0)+Math.imul(T,ae)|0,a=a+Math.imul(T,oe)|0,i=i+Math.imul(_,ue)|0,n=(n=n+Math.imul(_,le)|0)+Math.imul(w,ue)|0,a=a+Math.imul(w,le)|0,i=i+Math.imul(v,he)|0,n=(n=n+Math.imul(v,fe)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,fe)|0;var Ee=(l+(i=i+Math.imul(p,pe)|0)|0)+((8191&(n=(n=n+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((a=a+Math.imul(m,me)|0)+(n>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,i=Math.imul(F,V),n=(n=Math.imul(F,Y))+Math.imul(B,V)|0,a=Math.imul(B,Y),i=i+Math.imul(j,K)|0,n=(n=n+Math.imul(j,Z)|0)+Math.imul(L,K)|0,a=a+Math.imul(L,Z)|0,i=i+Math.imul(I,$)|0,n=(n=n+Math.imul(I,ee)|0)+Math.imul(R,$)|0,a=a+Math.imul(R,ee)|0,i=i+Math.imul(C,re)|0,n=(n=n+Math.imul(C,ie)|0)+Math.imul(A,re)|0,a=a+Math.imul(A,ie)|0,i=i+Math.imul(E,ae)|0,n=(n=n+Math.imul(E,oe)|0)+Math.imul(M,ae)|0,a=a+Math.imul(M,oe)|0,i=i+Math.imul(k,ue)|0,n=(n=n+Math.imul(k,le)|0)+Math.imul(T,ue)|0,a=a+Math.imul(T,le)|0,i=i+Math.imul(_,he)|0,n=(n=n+Math.imul(_,fe)|0)+Math.imul(w,he)|0,a=a+Math.imul(w,fe)|0;var Me=(l+(i=i+Math.imul(v,pe)|0)|0)+((8191&(n=(n=n+Math.imul(v,me)|0)+Math.imul(b,pe)|0))<<13)|0;l=((a=a+Math.imul(b,me)|0)+(n>>>13)|0)+(Me>>>26)|0,Me&=67108863,i=Math.imul(F,K),n=(n=Math.imul(F,Z))+Math.imul(B,K)|0,a=Math.imul(B,Z),i=i+Math.imul(j,$)|0,n=(n=n+Math.imul(j,ee)|0)+Math.imul(L,$)|0,a=a+Math.imul(L,ee)|0,i=i+Math.imul(I,re)|0,n=(n=n+Math.imul(I,ie)|0)+Math.imul(R,re)|0,a=a+Math.imul(R,ie)|0,i=i+Math.imul(C,ae)|0,n=(n=n+Math.imul(C,oe)|0)+Math.imul(A,ae)|0,a=a+Math.imul(A,oe)|0,i=i+Math.imul(E,ue)|0,n=(n=n+Math.imul(E,le)|0)+Math.imul(M,ue)|0,a=a+Math.imul(M,le)|0,i=i+Math.imul(k,he)|0,n=(n=n+Math.imul(k,fe)|0)+Math.imul(T,he)|0,a=a+Math.imul(T,fe)|0;var Pe=(l+(i=i+Math.imul(_,pe)|0)|0)+((8191&(n=(n=n+Math.imul(_,me)|0)+Math.imul(w,pe)|0))<<13)|0;l=((a=a+Math.imul(w,me)|0)+(n>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,i=Math.imul(F,$),n=(n=Math.imul(F,ee))+Math.imul(B,$)|0,a=Math.imul(B,ee),i=i+Math.imul(j,re)|0,n=(n=n+Math.imul(j,ie)|0)+Math.imul(L,re)|0,a=a+Math.imul(L,ie)|0,i=i+Math.imul(I,ae)|0,n=(n=n+Math.imul(I,oe)|0)+Math.imul(R,ae)|0,a=a+Math.imul(R,oe)|0,i=i+Math.imul(C,ue)|0,n=(n=n+Math.imul(C,le)|0)+Math.imul(A,ue)|0,a=a+Math.imul(A,le)|0,i=i+Math.imul(E,he)|0,n=(n=n+Math.imul(E,fe)|0)+Math.imul(M,he)|0,a=a+Math.imul(M,fe)|0;var Ce=(l+(i=i+Math.imul(k,pe)|0)|0)+((8191&(n=(n=n+Math.imul(k,me)|0)+Math.imul(T,pe)|0))<<13)|0;l=((a=a+Math.imul(T,me)|0)+(n>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,i=Math.imul(F,re),n=(n=Math.imul(F,ie))+Math.imul(B,re)|0,a=Math.imul(B,ie),i=i+Math.imul(j,ae)|0,n=(n=n+Math.imul(j,oe)|0)+Math.imul(L,ae)|0,a=a+Math.imul(L,oe)|0,i=i+Math.imul(I,ue)|0,n=(n=n+Math.imul(I,le)|0)+Math.imul(R,ue)|0,a=a+Math.imul(R,le)|0,i=i+Math.imul(C,he)|0,n=(n=n+Math.imul(C,fe)|0)+Math.imul(A,he)|0,a=a+Math.imul(A,fe)|0;var Ae=(l+(i=i+Math.imul(E,pe)|0)|0)+((8191&(n=(n=n+Math.imul(E,me)|0)+Math.imul(M,pe)|0))<<13)|0;l=((a=a+Math.imul(M,me)|0)+(n>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,i=Math.imul(F,ae),n=(n=Math.imul(F,oe))+Math.imul(B,ae)|0,a=Math.imul(B,oe),i=i+Math.imul(j,ue)|0,n=(n=n+Math.imul(j,le)|0)+Math.imul(L,ue)|0,a=a+Math.imul(L,le)|0,i=i+Math.imul(I,he)|0,n=(n=n+Math.imul(I,fe)|0)+Math.imul(R,he)|0,a=a+Math.imul(R,fe)|0;var Oe=(l+(i=i+Math.imul(C,pe)|0)|0)+((8191&(n=(n=n+Math.imul(C,me)|0)+Math.imul(A,pe)|0))<<13)|0;l=((a=a+Math.imul(A,me)|0)+(n>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,i=Math.imul(F,ue),n=(n=Math.imul(F,le))+Math.imul(B,ue)|0,a=Math.imul(B,le),i=i+Math.imul(j,he)|0,n=(n=n+Math.imul(j,fe)|0)+Math.imul(L,he)|0,a=a+Math.imul(L,fe)|0;var Ie=(l+(i=i+Math.imul(I,pe)|0)|0)+((8191&(n=(n=n+Math.imul(I,me)|0)+Math.imul(R,pe)|0))<<13)|0;l=((a=a+Math.imul(R,me)|0)+(n>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,i=Math.imul(F,he),n=(n=Math.imul(F,fe))+Math.imul(B,he)|0,a=Math.imul(B,fe);var Re=(l+(i=i+Math.imul(j,pe)|0)|0)+((8191&(n=(n=n+Math.imul(j,me)|0)+Math.imul(L,pe)|0))<<13)|0;l=((a=a+Math.imul(L,me)|0)+(n>>>13)|0)+(Re>>>26)|0,Re&=67108863;var De=(l+(i=Math.imul(F,pe))|0)+((8191&(n=(n=Math.imul(F,me))+Math.imul(B,pe)|0))<<13)|0;return l=((a=Math.imul(B,me))+(n>>>13)|0)+(De>>>26)|0,De&=67108863,u[0]=ge,u[1]=ve,u[2]=be,u[3]=ye,u[4]=_e,u[5]=we,u[6]=xe,u[7]=ke,u[8]=Te,u[9]=Se,u[10]=Ee,u[11]=Me,u[12]=Pe,u[13]=Ce,u[14]=Ae,u[15]=Oe,u[16]=Ie,u[17]=Re,u[18]=De,0!==l&&(u[19]=l,r.length++),r};function s(e,t,r){return(new u).mulp(e,t,r)}function u(e,t){this.x=e,this.y=t}Math.imul||(a=n),v.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?a(this,e,t):r<63?n(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var i=0,n=0,a=0;a>>26)|0)>>>26,o&=67108863}r.words[a]=s,i=o,o=n}return 0!==i?r.words[a]=i:r.length--,r.strip()}(this,e,t):s(this,e,t)},u.prototype.makeRBT=function(e){for(var t=new Array(e),r=v.prototype._countBits(e)-1,i=0;i>=1;return i},u.prototype.permute=function(e,t,r,i,n,a){for(var o=0;o>>=1)n++;return 1<>>=13,r[2*a+1]=8191&n,n>>>=13;for(a=2*t;a>=26,t+=i/67108864|0,t+=n>>>26,this.words[r]=67108863&n}return 0!==t&&(this.words[r]=t,this.length++),this},v.prototype.muln=function(e){return this.clone().imuln(e)},v.prototype.sqr=function(){return this.mul(this)},v.prototype.isqr=function(){return this.imul(this.clone())},v.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>n}return t}(e);if(0===t.length)return new v(1);for(var r=this,i=0;i>>26-r<<26-r;if(0!=r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!=i){for(t=this.length-1;0<=t;t--)this.words[t+i]=this.words[t];for(t=0;t>>n<a)for(this.length-=a,u=0;u>>n,l=c&o}return s&&0!==l&&(s.words[s.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},v.prototype.ishrn=function(e,t,r){return g(0===this.negative),this.iushrn(e,t,r)},v.prototype.shln=function(e){return this.clone().ishln(e)},v.prototype.ushln=function(e){return this.clone().iushln(e)},v.prototype.shrn=function(e){return this.clone().ishrn(e)},v.prototype.ushrn=function(e){return this.clone().iushrn(e)},v.prototype.testn=function(e){g("number"==typeof e&&0<=e);var t=e%26,r=(e-t)/26,i=1<>>t<>26)-(s/67108864|0),this.words[i+r]=67108863&n}for(;i>26,this.words[i+r]=67108863&n;if(0===o)return this.strip();for(g(-1===o),i=o=0;i>26,this.words[i]=67108863&n;return this.negative=1,this.strip()},v.prototype._wordDiv=function(e,t){var r=(this.length,e.length),i=this.clone(),n=e,a=0|n.words[n.length-1];0!=(r=26-this._countBits(a))&&(n=n.ushln(r),i.iushln(r),a=0|n.words[n.length-1]);var o,s=i.length-n.length;if("mod"!==t){(o=new v(null)).length=1+s,o.words=new Array(o.length);for(var u=0;uthis.length||this.cmp(e)<0?{div:new v(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new v(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new v(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,n,a},v.prototype.div=function(e){return this.divmod(e,"div",!1).div},v.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},v.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},v.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,i=e.ushrn(1),n=e.andln(1),a=r.cmp(i);return a<0||1===n&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},v.prototype.modn=function(e){g(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;0<=i;i--)r=(t*r+(0|this.words[i]))%e;return r},v.prototype.idivn=function(e){g(e<=67108863);for(var t=0,r=this.length-1;0<=r;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},v.prototype.divn=function(e){return this.clone().idivn(e)},v.prototype.egcd=function(e){g(0===e.negative),g(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new v(1),n=new v(0),a=new v(0),o=new v(1),s=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++s;for(var u=r.clone(),l=t.clone();!t.isZero();){for(var c=0,h=1;0==(t.words[0]&h)&&c<26;++c,h<<=1);if(0>>26,o&=67108863,this.words[a]=o}return 0!==n&&(this.words[a]=n,this.length++),this},v.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},v.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),1e.length)return 1;if(this.lengththis.n;);var i=t>>22,n=a}n>>>=22,0===(e.words[i-10]=n)&&10>>=26,e.words[r]=n,t=i}return 0!==t&&(e.words[e.length++]=t),e},v._prime=function(e){if(l[e])return l[e];var t;if("k256"===e)t=new m;else if("p224"===e)t=new b;else if("p192"===e)t=new y;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return l[e]=t},w.prototype._verify1=function(e){g(0===e.negative,"red works only with positives"),g(e.red,"red works only with red numbers")},w.prototype._verify2=function(e,t){g(0==(e.negative|t.negative),"red works only with positives"),g(e.red&&e.red===t.red,"red works only with red numbers")},w.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},w.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},w.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return 0<=r.cmp(this.m)&&r.isub(this.m),r._forceRed(this)},w.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return 0<=r.cmp(this.m)&&r.isub(this.m),r},w.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},w.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},w.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},w.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},w.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},w.prototype.isqr=function(e){return this.imul(e,e.clone())},w.prototype.sqr=function(e){return this.mul(e,e)},w.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(g(t%2==1),3===t){var r=this.m.add(new v(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),n=0;!i.isZero()&&0===i.andln(1);)n++,i.iushrn(1);g(!i.isZero());var a=new v(1).toRed(this),o=a.redNeg(),s=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new v(2*u*u).toRed(this);0!==this.pow(u,s).cmp(o);)u.redIAdd(o);for(var l=this.pow(u,i),c=this.pow(e,i.addn(1).iushrn(1)),h=this.pow(e,i),f=n;0!==h.cmp(a);){for(var d=h,p=0;0!==d.cmp(a);p++)d=d.redSqr();g(p>l&1;n!==r[0]&&(n=this.sqr(n)),0!=c||0!==a?(a<<=1,a|=c,(4===++o||0===i&&0===l)&&(n=this.mul(n,r[a]),a=o=0)):o=0}s=26}return n},w.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},w.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},v.mont=function(e){return new x(e)},r(x,w),x.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},x.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},x.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),a=n;return 0<=n.cmp(this.m)?a=n.isub(this.m):n.cmpn(0)<0&&(a=n.iadd(this.m)),a._forceRed(this)},x.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new v(0)._forceRed(this);var r=e.mul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),a=n;return 0<=n.cmp(this.m)?a=n.isub(this.m):n.cmpn(0)<0&&(a=n.iadd(this.m)),a._forceRed(this)},x.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(void 0===e||e,this)},{buffer:19}],18:[function(e,t,r){var i;function n(e){this.rand=e}if(t.exports=function(e){return i||(i=new n(null)),i.generate(e)},(t.exports.Rand=n).prototype.generate=function(e){return this._rand(e)},n.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r>>24]^c[p>>>16&255]^h[m>>>8&255]^f[255&g]^t[v++],o=l[p>>>24]^c[m>>>16&255]^h[g>>>8&255]^f[255&d]^t[v++],s=l[m>>>24]^c[g>>>16&255]^h[d>>>8&255]^f[255&p]^t[v++],u=l[g>>>24]^c[d>>>16&255]^h[p>>>8&255]^f[255&m]^t[v++],d=a,p=o,m=s,g=u;return a=(i[d>>>24]<<24|i[p>>>16&255]<<16|i[m>>>8&255]<<8|i[255&g])^t[v++],o=(i[p>>>24]<<24|i[m>>>16&255]<<16|i[g>>>8&255]<<8|i[255&d])^t[v++],s=(i[m>>>24]<<24|i[g>>>16&255]<<16|i[d>>>8&255]<<8|i[255&p])^t[v++],u=(i[g>>>24]<<24|i[d>>>16&255]<<16|i[p>>>8&255]<<8|i[255&m])^t[v++],[a>>>=0,o>>>=0,s>>>=0,u>>>=0]}var h=[0,1,2,4,8,16,32,64,128,27,54],f=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var r=[],i=[],n=[[],[],[],[]],a=[[],[],[],[]],o=0,s=0,u=0;u<256;++u){var l=s^s<<1^s<<2^s<<3^s<<4;l=l>>>8^255&l^99;var c=e[i[r[o]=l]=o],h=e[c],f=e[h],d=257*e[l]^16843008*l;n[0][o]=d<<24|d>>>8,n[1][o]=d<<16|d>>>16,n[2][o]=d<<8|d>>>24,n[3][o]=d,d=16843009*f^65537*h^257*c^16843008*o,a[0][l]=d<<24|d>>>8,a[1][l]=d<<16|d>>>16,a[2][l]=d<<8|d>>>24,a[3][l]=d,0===o?o=s=1:(o=c^e[e[e[f^c]]],s^=e[e[s]])}return{SBOX:r,INV_SBOX:i,SUB_MIX:n,INV_SUB_MIX:a}}();function s(e){this._key=a(e),this._reset()}s.blockSize=16,s.keySize=32,s.prototype.blockSize=s.blockSize,s.prototype.keySize=s.keySize,s.prototype._reset=function(){for(var e=this._key,t=e.length,r=t+6,i=4*(r+1),n=[],a=0;a>>24,o=f.SBOX[o>>>24]<<24|f.SBOX[o>>>16&255]<<16|f.SBOX[o>>>8&255]<<8|f.SBOX[255&o],o^=h[a/t|0]<<24):6>>24]<<24|f.SBOX[o>>>16&255]<<16|f.SBOX[o>>>8&255]<<8|f.SBOX[255&o]),n[a]=n[a-t]^o}for(var s=[],u=0;u>>24]]^f.INV_SUB_MIX[1][f.SBOX[c>>>16&255]]^f.INV_SUB_MIX[2][f.SBOX[c>>>8&255]]^f.INV_SUB_MIX[3][f.SBOX[255&c]]}this._nRounds=r,this._keySchedule=n,this._invKeySchedule=s},s.prototype.encryptBlockRaw=function(e){return o(e=a(e),this._keySchedule,f.SUB_MIX,f.SBOX,this._nRounds)},s.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),r=n.allocUnsafe(16);return r.writeUInt32BE(t[0],0),r.writeUInt32BE(t[1],4),r.writeUInt32BE(t[2],8),r.writeUInt32BE(t[3],12),r},s.prototype.decryptBlock=function(e){var t=(e=a(e))[1];e[1]=e[3],e[3]=t;var r=o(e,this._invKeySchedule,f.INV_SUB_MIX,f.INV_SBOX,this._nRounds),i=n.allocUnsafe(16);return i.writeUInt32BE(r[0],0),i.writeUInt32BE(r[3],4),i.writeUInt32BE(r[2],8),i.writeUInt32BE(r[1],12),i},s.prototype.scrub=function(){i(this._keySchedule),i(this._invKeySchedule),i(this._key)},t.exports.AES=s},{"safe-buffer":143}],21:[function(e,t,r){var o=e("./aes"),l=e("safe-buffer").Buffer,s=e("cipher-base"),i=e("inherits"),c=e("./ghash"),n=e("buffer-xor"),h=e("./incr32");function a(e,t,r,i){s.call(this);var n=l.alloc(4,0);this._cipher=new o.AES(t);var a=this._cipher.encryptBlock(n);this._ghash=new c(a),r=function(e,t,r){if(12===t.length)return e._finID=l.concat([t,l.from([0,0,0,1])]),l.concat([t,l.from([0,0,0,2])]);var i=new c(r),n=t.length,a=n%16;i.update(t),a&&(a=16-a,i.update(l.alloc(a,0))),i.update(l.alloc(8,0));var o=8*n,s=l.alloc(8);s.writeUIntBE(o,0,8),i.update(s),e._finID=i.state;var u=l.from(e._finID);return h(u),u}(this,r,a),this._prev=l.from(r),this._cache=l.allocUnsafe(0),this._secCache=l.allocUnsafe(0),this._decrypt=i,this._alen=0,this._len=0,this._mode=e,this._authTag=null,this._called=!1}i(a,s),a.prototype._update=function(e){if(!this._called&&this._alen){var t=16-this._alen%16;t<16&&(t=l.alloc(t,0),this._ghash.update(t))}this._called=!0;var r=this._mode.encrypt(this,e);return this._decrypt?this._ghash.update(e):this._ghash.update(r),this._len+=e.length,r},a.prototype._final=function(){if(this._decrypt&&!this._authTag)throw new Error("Unsupported state or unable to authenticate data");var e=n(this._ghash.final(8*this._alen,8*this._len),this._cipher.encryptBlock(this._finID));if(this._decrypt&&function(e,t){var r=0;e.length!==t.length&&r++;for(var i=Math.min(e.length,t.length),n=0;n>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function o(e){this.h=e,this.state=i.alloc(16,0),this.cache=i.allocUnsafe(0)}o.prototype.ghash=function(e){for(var t=-1;++t>>1|(1&r[e-1])<<31;r[0]=r[0]>>>1,t&&(r[0]=r[0]^225<<24)}this.state=a(i)},o.prototype.update=function(e){var t;for(this.cache=i.concat([this.cache,e]);16<=this.cache.length;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},o.prototype.final=function(e,t){return this.cache.length&&this.ghash(i.concat([this.cache,n],16)),this.ghash(a([0,e,0,t])),this.state},t.exports=o},{"safe-buffer":143}],26:[function(e,t,r){t.exports=function(e){for(var t,r=e.length;r--;){if(255!==(t=e.readUInt8(r))){t++,e.writeUInt8(t,r);break}e.writeUInt8(0,r)}}},{}],27:[function(e,t,r){var n=e("buffer-xor");r.encrypt=function(e,t){var r=n(t,e._prev);return e._prev=e._cipher.encryptBlock(r),e._prev},r.decrypt=function(e,t){var r=e._prev;e._prev=t;var i=e._cipher.decryptBlock(t);return n(i,r)}},{"buffer-xor":48}],28:[function(e,t,r){var a=e("safe-buffer").Buffer,o=e("buffer-xor");function s(e,t,r){var i=t.length,n=o(t,e._cache);return e._cache=e._cache.slice(i),e._prev=a.concat([e._prev,r?t:n]),n}r.encrypt=function(e,t,r){for(var i,n=a.allocUnsafe(0);t.length;){if(0===e._cache.length&&(e._cache=e._cipher.encryptBlock(e._prev),e._prev=a.allocUnsafe(0)),!(e._cache.length<=t.length)){n=a.concat([n,s(e,t,r)]);break}i=e._cache.length,n=a.concat([n,s(e,t.slice(0,i),r)]),t=t.slice(i)}return n}},{"buffer-xor":48,"safe-buffer":143}],29:[function(e,t,r){var o=e("safe-buffer").Buffer;function s(e,t,r){for(var i,n,a=-1,o=0;++a<8;)i=t&1<<7-a?128:0,o+=(128&(n=e._cipher.encryptBlock(e._prev)[0]^i))>>a%8,e._prev=u(e._prev,r?i:n);return o}function u(e,t){var r=e.length,i=-1,n=o.allocUnsafe(e.length);for(e=o.concat([e,o.from([t])]);++i>7;return n}r.encrypt=function(e,t,r){for(var i=t.length,n=o.allocUnsafe(i),a=-1;++a=t)throw new Error("invalid sig")}t.exports=function(e,t,r,i,n){var a=m(r);if("ec"===a.type){if("ecdsa"!==i&&"ecdsa/rsa"!==i)throw new Error("wrong public key type");return function(e,t,r){var i=g[r.data.algorithm.curve.join(".")];if(!i)throw new Error("unknown curve "+r.data.algorithm.curve.join("."));var n=new p(i),a=r.data.subjectPrivateKey.data;return n.verify(t,e,a)}(e,t,a)}if("dsa"===a.type){if("dsa"!==i)throw new Error("wrong public key type");return function(e,t,r){var i=r.data.p,n=r.data.q,a=r.data.g,o=r.data.pub_key,s=m.signature.decode(e,"der"),u=s.s,l=s.r;v(u,n),v(l,n);var c=d.mont(i),h=u.invm(n);return 0===a.toRed(c).redPow(new d(t).mul(h).mod(n)).fromRed().mul(o.toRed(c).redPow(l.mul(h).mod(n)).fromRed()).mod(i).mod(n).cmp(l)}(e,t,a)}if("rsa"!==i&&"ecdsa/rsa"!==i)throw new Error("wrong public key type");t=f.concat([n,t]);for(var o=a.modulus.byteLength(),s=[1],u=0;t.length+s.length+2=r())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r().toString(16)+" bytes");return 0|e}function d(e,t){if(h.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return D(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return j(e).length;default:if(i)return D(e).length;t=(""+t).toLowerCase(),i=!0}}function p(e,t,r){var i=e[t];e[t]=e[r],e[r]=i}function m(e,t,r,i,n){if(0===e.length)return-1;if("string"==typeof r?(i=r,r=0):2147483647=e.length){if(n)return-1;r=e.length-1}else if(r<0){if(!n)return-1;r=0}if("string"==typeof t&&(t=h.from(t,i)),h.isBuffer(t))return 0===t.length?-1:g(e,t,r,i,n);if("number"==typeof t)return t&=255,h.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?n?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):g(e,[t],r,i,n);throw new TypeError("val must be string, number or Buffer")}function g(e,t,r,i,n){var a,o=1,s=e.length,u=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;s/=o=2,u/=2,r/=2}function l(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(n){var c=-1;for(a=r;a>>10&1023|55296),c=56320|1023&c),i.push(c),n+=h}return function(e){var t=e.length;if(t<=w)return String.fromCharCode.apply(String,e);var r="",i=0;for(;ithis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return T(this,t,r);case"utf8":case"utf-8":return _(this,t,r);case"ascii":return x(this,t,r);case"latin1":case"binary":return k(this,t,r);case"base64":return y(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,r);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}.apply(this,arguments)},h.prototype.equals=function(e){if(!h.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===h.compare(this,e)},h.prototype.inspect=function(){var e="",t=F.INSPECT_MAX_BYTES;return 0t&&(e+=" ... ")),""},h.prototype.compare=function(e,t,r,i,n){if(!h.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===i&&(i=0),void 0===n&&(n=this.length),t<0||r>e.length||i<0||n>this.length)throw new RangeError("out of range index");if(n<=i&&r<=t)return 0;if(n<=i)return-1;if(r<=t)return 1;if(this===e)return 0;for(var a=(n>>>=0)-(i>>>=0),o=(r>>>=0)-(t>>>=0),s=Math.min(a,o),u=this.slice(i,n),l=e.slice(t,r),c=0;cthis.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var a,o,s,u,l,c,h,f,d,p=!1;;)switch(i){case"hex":return v(this,e,t,r);case"utf8":case"utf-8":return f=t,d=r,L(D(e,(h=this).length-f),h,f,d);case"ascii":return b(this,e,t,r);case"latin1":case"binary":return b(this,e,t,r);case"base64":return u=this,l=t,c=r,L(j(e),u,l,c);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return o=t,s=r,L(function(e,t){for(var r,i,n,a=[],o=0;o>8,n=r%256,a.push(n),a.push(i);return a}(e,(a=this).length-o),a,o,s);default:if(p)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),p=!0}},h.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var w=4096;function x(e,t,r){var i="";r=Math.min(e.length,r);for(var n=t;ne.length)throw new RangeError("Index out of range")}function P(e,t,r,i){t<0&&(t=65535+t+1);for(var n=0,a=Math.min(e.length-r,2);n>>8*(i?n:1-n)}function C(e,t,r,i){t<0&&(t=4294967295+t+1);for(var n=0,a=Math.min(e.length-r,4);n>>8*(i?n:3-n)&255}function A(e,t,r,i,n,a){if(r+i>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function O(e,t,r,i,n){return n||A(e,0,r,4),a.write(e,t,r,i,23,4),r+4}function I(e,t,r,i,n){return n||A(e,0,r,8),a.write(e,t,r,i,52,8),r+8}h.prototype.slice=function(e,t){var r,i=this.length;if((e=~~e)<0?(e+=i)<0&&(e=0):i>>8):P(this,e,t,!0),t+2},h.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,2,65535,0),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},h.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,4,4294967295,0),h.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):C(this,e,t,!0),t+4},h.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,4,4294967295,0),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},h.prototype.writeIntLE=function(e,t,r,i){if(e=+e,t|=0,!i){var n=Math.pow(2,8*r-1);M(this,e,t,r,n-1,-n)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},h.prototype.writeIntBE=function(e,t,r,i){if(e=+e,t|=0,!i){var n=Math.pow(2,8*r-1);M(this,e,t,r,n-1,-n)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;0<=--a&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},h.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,1,127,-128),h.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},h.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,2,32767,-32768),h.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},h.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,2,32767,-32768),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},h.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,4,2147483647,-2147483648),h.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):C(this,e,t,!0),t+4},h.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},h.prototype.writeFloatLE=function(e,t,r){return O(this,e,t,!0,r)},h.prototype.writeFloatBE=function(e,t,r){return O(this,e,t,!1,r)},h.prototype.writeDoubleLE=function(e,t,r){return I(this,e,t,!0,r)},h.prototype.writeDoubleBE=function(e,t,r){return I(this,e,t,!1,r)},h.prototype.copy=function(e,t,r,i){if(r||(r=0),i||0===i||(i=this.length),t>=e.length&&(t=e.length),t||(t=0),0=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(a=t;a>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function j(e){return i.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(t,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function L(e,t,r,i){for(var n=0;n=t.length||n>=e.length);++n)t[n+r]=e[n];return n}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"base64-js":16,ieee754:101,isarray:105}],50:[function(e,t,r){var n=e("safe-buffer").Buffer,i=e("stream").Transform,a=e("string_decoder").StringDecoder;function o(e){i.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}e("inherits")(o,i),o.prototype.update=function(e,t,r){"string"==typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},o.prototype.setAutoPadding=function(){},o.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},o.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},o.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},o.prototype._transform=function(e,t,r){var i;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){i=e}finally{r(i)}},o.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},o.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},o.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var i=this._decoder.write(e);return r&&(i+=this._decoder.end()),i},t.exports=o},{inherits:103,"safe-buffer":143,stream:152,string_decoder:153}],51:[function(e,t,r){(function(e){function t(e){return Object.prototype.toString.call(e)}r.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===t(e)},r.isBoolean=function(e){return"boolean"==typeof e},r.isNull=function(e){return null===e},r.isNullOrUndefined=function(e){return null==e},r.isNumber=function(e){return"number"==typeof e},r.isString=function(e){return"string"==typeof e},r.isSymbol=function(e){return"symbol"==typeof e},r.isUndefined=function(e){return void 0===e},r.isRegExp=function(e){return"[object RegExp]"===t(e)},r.isObject=function(e){return"object"==typeof e&&null!==e},r.isDate=function(e){return"[object Date]"===t(e)},r.isError=function(e){return"[object Error]"===t(e)||e instanceof Error},r.isFunction=function(e){return"function"==typeof e},r.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},r.isBuffer=e.isBuffer}).call(this,{isBuffer:e("../../is-buffer/index.js")})},{"../../is-buffer/index.js":104}],52:[function(e,s,t){(function(a){var t=e("elliptic"),i=e("bn.js");s.exports=function(e){return new n(e)};var r={secp256k1:{name:"secp256k1",byteLength:32},secp224r1:{name:"p224",byteLength:28},prime256v1:{name:"p256",byteLength:32},prime192v1:{name:"p192",byteLength:24},ed25519:{name:"ed25519",byteLength:32},secp384r1:{name:"p384",byteLength:48},secp521r1:{name:"p521",byteLength:66}};function n(e){this.curveType=r[e],this.curveType||(this.curveType={name:e}),this.curve=new t.ec(this.curveType.name),this.keys=void 0}function o(e,t,r){Array.isArray(e)||(e=e.toArray());var i=new a(e);if(r&&i.length>>2),i=0,n=0;i>5]|=128<>>9<<4)]=t;for(var r=1732584193,i=-271733879,n=-1732584194,a=271733878,o=0;o>>32-t}(m(m(t,e),m(i,a)),n),r)}function h(e,t,r,i,n,a,o){return s(t&r|~t&i,e,t,n,a,o)}function f(e,t,r,i,n,a,o){return s(t&i|r&~i,e,t,n,a,o)}function d(e,t,r,i,n,a,o){return s(t^r^i,e,t,n,a,o)}function p(e,t,r,i,n,a,o){return s(r^(t|~i),e,t,n,a,o)}function m(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}t.exports=function(e){return i(e,n)}},{"./make-hash":54}],56:[function(e,t,r){"use strict";var i=e("inherits"),n=e("./legacy"),o=e("cipher-base"),s=e("safe-buffer").Buffer,a=e("create-hash/md5"),u=e("ripemd160"),l=e("sha.js"),c=s.alloc(128);function h(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var r="sha512"===e||"sha384"===e?128:64;(this._alg=e,(this._key=t).length>r)?t=("rmd160"===e?new u:l(e)).update(t).digest():t.length>>1];r=f.r28shl(r,a),i=f.r28shl(i,a),f.pc2(r,i,e.keys,n)}},u.prototype._update=function(e,t,r,i){var n=this._desState,a=f.readUInt32BE(e,t),o=f.readUInt32BE(e,t+4);f.ip(a,o,n.tmp,0),a=n.tmp[0],o=n.tmp[1],"encrypt"===this.type?this._encrypt(n,a,o,n.tmp,0):this._decrypt(n,a,o,n.tmp,0),a=n.tmp[0],o=n.tmp[1],f.writeUInt32BE(r,a,i),f.writeUInt32BE(r,o,i+4)},u.prototype._pad=function(e,t){for(var r=e.length-t,i=t;i>>0,a=h}f.rip(o,a,i,n)},u.prototype._decrypt=function(e,t,r,i,n){for(var a=r,o=t,s=e.keys.length-2;0<=s;s-=2){var u=e.keys[s],l=e.keys[s+1];f.expand(a,e.tmp,0),u^=e.tmp[0],l^=e.tmp[1];var c=f.substitute(u,l),h=a;a=(o^f.permute(c))>>>0,o=h}f.rip(a,o,i,n)}},{"../des":59,inherits:103,"minimalistic-assert":109}],63:[function(e,t,r){"use strict";var a=e("minimalistic-assert"),i=e("inherits"),n=e("../des"),o=n.Cipher,s=n.DES;function u(e,t){a.equal(t.length,24,"Invalid key length");var r=t.slice(0,8),i=t.slice(8,16),n=t.slice(16,24);this.ciphers="encrypt"===e?[s.create({type:"encrypt",key:r}),s.create({type:"decrypt",key:i}),s.create({type:"encrypt",key:n})]:[s.create({type:"decrypt",key:n}),s.create({type:"encrypt",key:i}),s.create({type:"decrypt",key:r})]}function l(e){o.call(this,e);var t=new u(this.type,this.options.key);this._edeState=t}i(l,o),(t.exports=l).create=function(e){return new l(e)},l.prototype._update=function(e,t,r,i){var n=this._edeState;n.ciphers[0]._update(e,t,r,i),n.ciphers[1]._update(r,i,r,i),n.ciphers[2]._update(r,i,r,i)},l.prototype._pad=s.prototype._pad,l.prototype._unpad=s.prototype._unpad},{"../des":59,inherits:103,"minimalistic-assert":109}],64:[function(e,t,r){"use strict";r.readUInt32BE=function(e,t){return(e[0+t]<<24|e[1+t]<<16|e[2+t]<<8|e[3+t])>>>0},r.writeUInt32BE=function(e,t,r){e[0+r]=t>>>24,e[1+r]=t>>>16&255,e[2+r]=t>>>8&255,e[3+r]=255&t},r.ip=function(e,t,r,i){for(var n=0,a=0,o=6;0<=o;o-=2){for(var s=0;s<=24;s+=8)n<<=1,n|=t>>>s+o&1;for(s=0;s<=24;s+=8)n<<=1,n|=e>>>s+o&1}for(o=6;0<=o;o-=2){for(s=1;s<=25;s+=8)a<<=1,a|=t>>>s+o&1;for(s=1;s<=25;s+=8)a<<=1,a|=e>>>s+o&1}r[i+0]=n>>>0,r[i+1]=a>>>0},r.rip=function(e,t,r,i){for(var n=0,a=0,o=0;o<4;o++)for(var s=24;0<=s;s-=8)n<<=1,n|=t>>>s+o&1,n<<=1,n|=e>>>s+o&1;for(o=4;o<8;o++)for(s=24;0<=s;s-=8)a<<=1,a|=t>>>s+o&1,a<<=1,a|=e>>>s+o&1;r[i+0]=n>>>0,r[i+1]=a>>>0},r.pc1=function(e,t,r,i){for(var n=0,a=0,o=7;5<=o;o--){for(var s=0;s<=24;s+=8)n<<=1,n|=t>>s+o&1;for(s=0;s<=24;s+=8)n<<=1,n|=e>>s+o&1}for(s=0;s<=24;s+=8)n<<=1,n|=t>>s+o&1;for(o=1;o<=3;o++){for(s=0;s<=24;s+=8)a<<=1,a|=t>>s+o&1;for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1}for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1;r[i+0]=n>>>0,r[i+1]=a>>>0},r.r28shl=function(e,t){return e<>>28-t};var u=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];r.pc2=function(e,t,r,i){for(var n=0,a=0,o=u.length>>>1,s=0;s>>u[s]&1;for(s=o;s>>u[s]&1;r[i+0]=n>>>0,r[i+1]=a>>>0},r.expand=function(e,t,r){var i=0,n=0;i=(1&e)<<5|e>>>27;for(var a=23;15<=a;a-=4)i<<=6,i|=e>>>a&63;for(a=11;3<=a;a-=4)n|=e>>>a&63,n<<=6;n|=(31&e)<<1|e>>>31,t[r+0]=i>>>0,t[r+1]=n>>>0};var n=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];r.substitute=function(e,t){for(var r=0,i=0;i<4;i++){r<<=4,r|=n[64*i+(e>>>18-6*i&63)]}for(i=0;i<4;i++){r<<=4,r|=n[256+64*i+(t>>>18-6*i&63)]}return r>>>0};var i=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];r.permute=function(e){for(var t=0,r=0;r>>i[r]&1;return t>>>0},r.padSplit=function(e,t,r){for(var i=e.toString(2);i.lengthe;)r.ishrn(1);if(r.isEven()&&r.iadd(u),r.testn(1)||r.iadd(l),t.cmp(l)){if(!t.cmp(c))for(;r.mod(h).cmp(f);)r.iadd(p)}else for(;r.mod(o).cmp(d);)r.iadd(p);if(g(i=r.shrn(1))&&g(r)&&v(i)&&v(r)&&s.test(i)&&s.test(r))return r}}},{"bn.js":17,"miller-rabin":108,randombytes:130}],68:[function(e,t,r){t.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},modp5:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},modp14:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},modp15:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},modp16:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},modp17:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},modp18:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}},{}],69:[function(e,t,r){"use strict";var i=r;i.version=e("../package.json").version,i.utils=e("./elliptic/utils"),i.rand=e("brorand"),i.curve=e("./elliptic/curve"),i.curves=e("./elliptic/curves"),i.ec=e("./elliptic/ec"),i.eddsa=e("./elliptic/eddsa")},{"../package.json":84,"./elliptic/curve":72,"./elliptic/curves":75,"./elliptic/ec":76,"./elliptic/eddsa":79,"./elliptic/utils":83,brorand:18}],70:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic").utils,S=n.getNAF,E=n.getJSF,h=n.assert;function a(e,t){this.type=e,this.p=new i(t.p,16),this.red=t.prime?i.red(t.prime):i.mont(this.p),this.zero=new i(0).toRed(this.red),this.one=new i(1).toRed(this.red),this.two=new i(2).toRed(this.red),this.n=t.n&&new i(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4);var r=this.n&&this.p.div(this.n);!r||0>1]):o.mixedAdd(n[-u-1>>1].neg()):0>1]):o.add(n[-u-1>>1].neg())}return"affine"===e.type?o.toP():o},a.prototype._wnafMulAdd=function(e,t,r,i,n){for(var a=this._wnafT1,o=this._wnafT2,s=this._wnafT3,u=0,l=0;l>1]:T<0&&(k=o[g][-T-1>>1].neg()),y="affine"===k.type?y.mixedAdd(k):y.add(k))}}for(l=0;l=Math.ceil((e.bitLength()+1)/t.step)},o.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],i=this,n=0;n":""},c.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&0===this.y.cmp(this.z)},c.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var i=this.curve._mulA(e),n=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=i.redAdd(t),o=a.redSub(r),s=i.redSub(t),u=n.redMul(o),l=a.redMul(s),c=n.redMul(s),h=o.redMul(a);return this.curve.point(u,l,h,c)},c.prototype._projDbl=function(){var e,t,r,i=this.x.redAdd(this.y).redSqr(),n=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var o=(l=this.curve._mulA(n)).redAdd(a);if(this.zOne)e=i.redSub(n).redSub(a).redMul(o.redSub(this.curve.two)),t=o.redMul(l.redSub(a)),r=o.redSqr().redSub(o).redSub(o);else{var s=this.z.redSqr(),u=o.redSub(s).redISub(s);e=i.redSub(n).redISub(a).redMul(u),t=o.redMul(l.redSub(a)),r=o.redMul(u)}}else{var l=n.redAdd(a);s=this.curve._mulC(this.c.redMul(this.z)).redSqr(),u=l.redSub(s).redSub(s);e=this.curve._mulC(i.redISub(l)).redMul(u),t=this.curve._mulC(l).redMul(n.redISub(a)),r=l.redMul(u)}return this.curve.point(e,t,r)},c.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},c.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),i=this.t.redMul(this.curve.dd).redMul(e.t),n=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),o=n.redSub(i),s=n.redAdd(i),u=r.redAdd(t),l=a.redMul(o),c=s.redMul(u),h=a.redMul(u),f=o.redMul(s);return this.curve.point(l,c,f,h)},c.prototype._projAdd=function(e){var t,r,i=this.z.redMul(e.z),n=i.redSqr(),a=this.x.redMul(e.x),o=this.y.redMul(e.y),s=this.curve.d.redMul(a).redMul(o),u=n.redSub(s),l=n.redAdd(s),c=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(o),h=i.redMul(u).redMul(c);return r=this.curve.twisted?(t=i.redMul(l).redMul(o.redSub(this.curve._mulA(a))),u.redMul(l)):(t=i.redMul(l).redMul(o.redSub(a)),this.curve._mulC(u).redMul(l)),this.curve.point(h,t,r)},c.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},c.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},c.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},c.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},c.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},c.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()},c.prototype.getY=function(){return this.normalize(),this.y.fromRed()},c.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},c.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),i=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),0<=r.cmp(this.curve.p))return!1;if(t.redIAdd(i),0===this.x.cmp(t))return!0}return!1},c.prototype.toP=c.prototype.normalize,c.prototype.mixedAdd=c.prototype.add},{"../../elliptic":69,"../curve":72,"bn.js":17,inherits:103}],72:[function(e,t,r){"use strict";var i=r;i.base=e("./base"),i.short=e("./short"),i.mont=e("./mont"),i.edwards=e("./edwards")},{"./base":70,"./edwards":71,"./mont":73,"./short":74}],73:[function(e,t,r){"use strict";var i=e("../curve"),n=e("bn.js"),a=e("inherits"),o=i.base,s=e("../../elliptic").utils;function u(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function l(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}a(u,o),(t.exports=u).prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),i=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===i.redSqrt().redSqr().cmp(i)},a(l,o.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(s.toArray(e,t),1)},u.prototype.point=function(e,t){return new l(this,e,t)},u.prototype.pointFromJSON=function(e){return l.fromJSON(this,e)},l.prototype.precompute=function(){},l.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},l.fromJSON=function(e,t){return new l(e,t[0],t[1]||e.one)},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},l.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),i=e.redMul(t),n=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(i,n)},l.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},l.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),i=this.x.redSub(this.z),n=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(r),o=n.redMul(i),s=t.z.redMul(a.redAdd(o).redSqr()),u=t.x.redMul(a.redISub(o).redSqr());return this.curve.point(s,u)},l.prototype.mul=function(e){for(var t=e.clone(),r=this,i=this.curve.point(null,null),n=[];0!==t.cmpn(0);t.iushrn(1))n.push(t.andln(1));for(var a=n.length-1;0<=a;a--)0===n[a]?(r=r.diffAdd(i,this),i=i.dbl()):(i=r.diffAdd(i,this),r=r.dbl());return i},l.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},l.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},l.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},l.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},l.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},{"../../elliptic":69,"../curve":72,"bn.js":17,inherits:103}],74:[function(e,t,r){"use strict";var i=e("../curve"),n=e("../../elliptic"),w=e("bn.js"),a=e("inherits"),o=i.base,s=n.utils.assert;function u(e){o.call(this,"short",e),this.a=new w(e.a,16).toRed(this.red),this.b=new w(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function l(e,t,r,i){o.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new w(t,16),this.y=new w(r,16),i&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function c(e,t,r,i){o.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===i?(this.x=this.curve.one,this.y=this.curve.one,this.z=new w(0)):(this.x=new w(t,16),this.y=new w(r,16),this.z=new w(i,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(u,o),(t.exports=u).prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new w(e.beta,16).toRed(this.red);else{var i=this._getEndoRoots(this.p);t=(t=i[0].cmp(i[1])<0?i[0]:i[1]).toRed(this.red)}if(e.lambda)r=new w(e.lambda,16);else{var n=this._getEndoRoots(this.n);0===this.g.mul(n[0]).x.cmp(this.g.x.redMul(t))?r=n[0]:(r=n[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map(function(e){return{a:new w(e.a,16),b:new w(e.b,16)}}):this._getEndoBasis(r)}}},u.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:w.mont(e),r=new w(2).toRed(t).redInvm(),i=r.redNeg(),n=new w(3).toRed(t).redNeg().redSqrt().redMul(r);return[i.redAdd(n).fromRed(),i.redSub(n).fromRed()]},u.prototype._getEndoBasis=function(e){for(var t,r,i,n,a,o,s,u,l,c=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,f=this.n.clone(),d=new w(1),p=new w(0),m=new w(0),g=new w(1),v=0;0!==h.cmpn(0);){var b=f.div(h);u=f.sub(b.mul(h)),l=m.sub(b.mul(d));var y=g.sub(b.mul(p));if(!i&&u.cmp(c)<0)t=s.neg(),r=d,i=u.neg(),n=l;else if(i&&2==++v)break;f=h,h=s=u,m=d,d=l,g=p,p=y}a=u.neg(),o=l;var _=i.sqr().add(n.sqr());return 0<=a.sqr().add(o.sqr()).cmp(_)&&(a=t,o=r),i.negative&&(i=i.neg(),n=n.neg()),a.negative&&(a=a.neg(),o=o.neg()),[{a:i,b:n},{a:a,b:o}]},u.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],i=t[1],n=i.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),o=n.mul(r.a),s=a.mul(i.a),u=n.mul(r.b),l=a.mul(i.b);return{k1:e.sub(o).sub(s),k2:u.add(l).neg()}},u.prototype.pointFromX=function(e,t){(e=new w(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),i=r.redSqrt();if(0!==i.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var n=i.fromRed().isOdd();return(t&&!n||!t&&n)&&(i=i.redNeg()),this.point(e,i)},u.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,i=this.a.redMul(t),n=t.redSqr().redMul(t).redIAdd(i).redIAdd(this.b);return 0===r.redSqr().redISub(n).cmpn(0)},u.prototype._endoWnafMulAdd=function(e,t,r){for(var i=this._endoWnafT1,n=this._endoWnafT2,a=0;a":""},l.prototype.isInfinity=function(){return this.inf},l.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),i=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,i)},l.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),i=e.redInvm(),n=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(i),a=n.redSqr().redISub(this.x.redAdd(this.x)),o=n.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,o)},l.prototype.getX=function(){return this.x.fromRed()},l.prototype.getY=function(){return this.y.fromRed()},l.prototype.mul=function(e){return e=new w(e,16),this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n):this.curve._wnafMulAdd(1,i,n,2)},l.prototype.jmulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n,!0):this.curve._wnafMulAdd(1,i,n,2,!0)},l.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},l.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,i=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(i)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(i)}}}return t},l.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(c,o.BasePoint),u.prototype.jpoint=function(e,t,r){return new c(this,e,t,r)},c.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),i=this.y.redMul(t).redMul(e);return this.curve.point(r,i)},c.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},c.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),i=this.x.redMul(t),n=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(r.redMul(this.z)),s=i.redSub(n),u=a.redSub(o);if(0===s.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=s.redSqr(),c=l.redMul(s),h=i.redMul(l),f=u.redSqr().redIAdd(c).redISub(h).redISub(h),d=u.redMul(h.redISub(f)).redISub(a.redMul(c)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(f,d,p)},c.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,i=e.x.redMul(t),n=this.y,a=e.y.redMul(t).redMul(this.z),o=r.redSub(i),s=n.redSub(a);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=o.redSqr(),l=u.redMul(o),c=r.redMul(u),h=s.redSqr().redIAdd(l).redISub(c).redISub(c),f=s.redMul(c.redISub(h)).redISub(n.redMul(l)),d=this.z.redMul(o);return this.curve.jpoint(h,f,d)},c.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},{"../../elliptic":69,"../curve":72,"bn.js":17,inherits:103}],75:[function(e,t,r){"use strict";var i,n=r,a=e("hash.js"),o=e("../elliptic"),s=o.utils.assert;function u(e){"short"===e.type?this.curve=new o.curve.short(e):"edwards"===e.type?this.curve=new o.curve.edwards(e):this.curve=new o.curve.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function l(t,r){Object.defineProperty(n,t,{configurable:!0,enumerable:!0,get:function(){var e=new u(r);return Object.defineProperty(n,t,{configurable:!0,enumerable:!0,value:e}),e}})}n.PresetCurve=u,l("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),l("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),l("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),l("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),l("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),l("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),l("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{i=e("./precomputed/secp256k1")}catch(e){i=void 0}l("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",i]})},{"../elliptic":69,"./precomputed/secp256k1":82,"hash.js":88}],76:[function(e,t,r){"use strict";var g=e("bn.js"),v=e("hmac-drbg"),a=e("../../elliptic"),d=a.utils.assert,i=e("./key"),b=e("./signature");function n(e){if(!(this instanceof n))return new n(e);"string"==typeof e&&(d(a.curves.hasOwnProperty(e),"Unknown curve "+e),e=a.curves[e]),e instanceof a.curves.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}(t.exports=n).prototype.keyPair=function(e){return new i(this,e)},n.prototype.keyFromPrivate=function(e,t){return i.fromPrivate(this,e,t)},n.prototype.keyFromPublic=function(e,t){return i.fromPublic(this,e,t)},n.prototype.genKeyPair=function(e){e||(e={});for(var t=new v({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||a.rand(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),i=this.n.sub(new g(2));;){var n=new g(t.generate(r));if(!(0>1;if(0<=o.cmp(this.curve.p.umod(this.curve.n))&&l)throw new Error("Unable to find sencond key candinate");o=l?this.curve.pointFromX(o.add(this.curve.n),u):this.curve.pointFromX(o,u);var c=t.r.invm(n),h=n.sub(a).mul(c).umod(n),f=s.mul(c).umod(n);return this.g.mulAdd(h,o,f)},n.prototype.getKeyRecoveryParam=function(e,t,r,i){if(null!==(t=new b(t,i)).recoveryParam)return t.recoveryParam;for(var n=0;n<4;n++){var a;try{a=this.recoverPubKey(e,t,n)}catch(e){continue}if(a.eq(r))return n}throw new Error("Unable to find valid recovery factor")}},{"../../elliptic":69,"./key":77,"./signature":78,"bn.js":17,"hmac-drbg":100}],77:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic").utils.assert;function a(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}(t.exports=a).fromPublic=function(e,t,r){return t instanceof a?t:new a(e,{pub:t,pubEnc:r})},a.fromPrivate=function(e,t,r){return t instanceof a?t:new a(e,{priv:t,privEnc:r})},a.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},a.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},a.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},a.prototype._importPrivate=function(e,t){this.priv=new i(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},a.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?n(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||n(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},a.prototype.derive=function(e){return e.mul(this.priv).getX()},a.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},a.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},a.prototype.inspect=function(){return""}},{"../../elliptic":69,"bn.js":17}],78:[function(e,t,r){"use strict";var s=e("bn.js"),u=e("../../elliptic").utils,i=u.assert;function n(e,t){if(e instanceof n)return e;this._importDER(e,t)||(i(e.r&&e.s,"Signature without r or s"),this.r=new s(e.r,16),this.s=new s(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function l(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;for(var i=15&r,n=0,a=0,o=t.place;a>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}(t.exports=n).prototype._importDER=function(e,t){e=u.toArray(e,t);var r=new l;if(48!==e[r.place++])return!1;if(c(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var i=c(e,r),n=e.slice(r.place,i+r.place);if(r.place+=i,2!==e[r.place++])return!1;var a=c(e,r);if(e.length!==a+r.place)return!1;var o=e.slice(r.place,a+r.place);return 0===n[0]&&128&n[1]&&(n=n.slice(1)),0===o[0]&&128&o[1]&&(o=o.slice(1)),this.r=new s(n),this.s=new s(o),!(this.recoveryParam=null)},n.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=o(t),r=o(r);!(r[0]||128&r[1]);)r=r.slice(1);var i=[2];h(i,t.length),(i=i.concat(t)).push(2),h(i,r.length);var n=i.concat(r),a=[48];return h(a,n.length),a=a.concat(n),u.encode(a,e)}},{"../../elliptic":69,"bn.js":17}],79:[function(e,t,r){"use strict";var i=e("hash.js"),n=e("../../elliptic"),a=n.utils,o=a.assert,u=a.parseBytes,s=e("./key"),l=e("./signature");function c(e){if(o("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof c))return new c(e);e=n.curves[e].curve;this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=i.sha512}(t.exports=c).prototype.sign=function(e,t){e=u(e);var r=this.keyFromSecret(t),i=this.hashInt(r.messagePrefix(),e),n=this.g.mul(i),a=this.encodePoint(n),o=this.hashInt(a,r.pubBytes(),e).mul(r.priv()),s=i.add(o).umod(this.curve.n);return this.makeSignature({R:n,S:s,Rencoded:a})},c.prototype.verify=function(e,t,r){e=u(e),t=this.makeSignature(t);var i=this.keyFromPublic(r),n=this.hashInt(t.Rencoded(),i.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(i.pub().mul(n)).eq(a)},c.prototype.hashInt=function(){for(var e=this.hash(),t=0;t>1)-1>1)-o:o,n.isubn(a)}else a=0;r.push(a);for(var s=0!==n.cmpn(0)&&0===n.andln(i-1)?t+1:1,u=1;ur&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},i.prototype.once=function(e,t){if(!u(t))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(e,i),r||(r=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},i.prototype.removeListener=function(e,t){var r,i,n,a;if(!u(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(n=(r=this._events[e]).length,i=-1,r===t||u(r.listener)&&r.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(l(r)){for(a=n;0=this._blockSize;){for(var n=this._blockOffset;n=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,i[n++]=e>>>16&255,i[n++]=e>>>8&255,i[n++]=255&e}else for(i[n++]=255&e,i[n++]=e>>>8&255,i[n++]=e>>>16&255,i[n++]=e>>>24&255,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0,a=8;athis.blockSize&&(e=(new this.Hash).update(e).digest()),n(e.length<=this.blockSize);for(var t=e.length;t>>3},r.g1_256=function(e){return i(e,17)^i(e,19)^e>>>10}},{"../utils":99}],99:[function(e,t,r){"use strict";var l=e("minimalistic-assert"),i=e("inherits");function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function n(e){return 1===e.length?"0"+e:e}function o(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}r.inherits=i,r.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i>8,o=255&n;a?r.push(a,o):r.push(o)}else for(i=0;i>>0}return a},r.split32=function(e,t){for(var r=new Array(4*e.length),i=0,n=0;i>>24,r[n+1]=a>>>16&255,r[n+2]=a>>>8&255,r[n+3]=255&a):(r[n+3]=a>>>24,r[n+2]=a>>>16&255,r[n+1]=a>>>8&255,r[n]=255&a)}return r},r.rotr32=function(e,t){return e>>>t|e<<32-t},r.rotl32=function(e,t){return e<>>32-t},r.sum32=function(e,t){return e+t>>>0},r.sum32_3=function(e,t,r){return e+t+r>>>0},r.sum32_4=function(e,t,r,i){return e+t+r+i>>>0},r.sum32_5=function(e,t,r,i,n){return e+t+r+i+n>>>0},r.sum64=function(e,t,r,i){var n=e[t],a=i+e[t+1]>>>0,o=(a>>0,e[t+1]=a},r.sum64_hi=function(e,t,r,i){return(t+i>>>0>>0},r.sum64_lo=function(e,t,r,i){return t+i>>>0},r.sum64_4_hi=function(e,t,r,i,n,a,o,s){var u=0,l=t;return u+=(l=l+i>>>0)>>0)>>0)>>0},r.sum64_4_lo=function(e,t,r,i,n,a,o,s){return t+i+a+s>>>0},r.sum64_5_hi=function(e,t,r,i,n,a,o,s,u,l){var c=0,h=t;return c+=(h=h+i>>>0)>>0)>>0)>>0)>>0},r.sum64_5_lo=function(e,t,r,i,n,a,o,s,u,l){return t+i+a+s+l>>>0},r.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},r.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},r.shr64_hi=function(e,t,r){return e>>>r},r.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},{inherits:103,"minimalistic-assert":109}],100:[function(e,t,r){"use strict";var i=e("hash.js"),o=e("minimalistic-crypto-utils"),n=e("minimalistic-assert");function a(e){if(!(this instanceof a))return new a(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),r=o.toArray(e.nonce,e.nonceEnc||"hex"),i=o.toArray(e.pers,e.persEnc||"hex");n(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,i)}(t.exports=a).prototype._init=function(e,t,r){var i=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var n=0;n=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},a.prototype.generate=function(e,t,r,i){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(i=r,r=t,t=null),r&&(r=o.toArray(r,i||"hex"),this._update(r));for(var n=[];n.length>1,c=-7,h=r?n-1:0,f=r?-1:1,d=e[t+h];for(h+=f,a=d&(1<<-c)-1,d>>=-c,c+=s;0>=-c,c+=i;0>1,f=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,d=i?0:a-1,p=i?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),2<=(t+=1<=o+h?f/u:f*Math.pow(2,1-h))*u&&(o++,u/=2),c<=o+h?(s=0,o=c):1<=o+h?(s=(t*u-1)*Math.pow(2,n),o+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,n),o=0));8<=n;e[r+d]=255&s,d+=p,s/=256,n-=8);for(o=o<>>32-t}function u(e,t,r,i,n,a,o){return s(e+(t&r|~t&i)+n+a|0,o)+t|0}function l(e,t,r,i,n,a,o){return s(e+(t&i|r&~i)+n+a|0,o)+t|0}function c(e,t,r,i,n,a,o){return s(e+(t^r^i)+n+a|0,o)+t|0}function h(e,t,r,i,n,a,o){return s(e+(r^(t|~i))+n+a|0,o)+t|0}e(i,r),i.prototype._update=function(){for(var e=o,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,i=this._b,n=this._c,a=this._d;i=h(i=h(i=h(i=h(i=c(i=c(i=c(i=c(i=l(i=l(i=l(i=l(i=u(i=u(i=u(i=u(i,n=u(n,a=u(a,r=u(r,i,n,a,e[0],3614090360,7),i,n,e[1],3905402710,12),r,i,e[2],606105819,17),a,r,e[3],3250441966,22),n=u(n,a=u(a,r=u(r,i,n,a,e[4],4118548399,7),i,n,e[5],1200080426,12),r,i,e[6],2821735955,17),a,r,e[7],4249261313,22),n=u(n,a=u(a,r=u(r,i,n,a,e[8],1770035416,7),i,n,e[9],2336552879,12),r,i,e[10],4294925233,17),a,r,e[11],2304563134,22),n=u(n,a=u(a,r=u(r,i,n,a,e[12],1804603682,7),i,n,e[13],4254626195,12),r,i,e[14],2792965006,17),a,r,e[15],1236535329,22),n=l(n,a=l(a,r=l(r,i,n,a,e[1],4129170786,5),i,n,e[6],3225465664,9),r,i,e[11],643717713,14),a,r,e[0],3921069994,20),n=l(n,a=l(a,r=l(r,i,n,a,e[5],3593408605,5),i,n,e[10],38016083,9),r,i,e[15],3634488961,14),a,r,e[4],3889429448,20),n=l(n,a=l(a,r=l(r,i,n,a,e[9],568446438,5),i,n,e[14],3275163606,9),r,i,e[3],4107603335,14),a,r,e[8],1163531501,20),n=l(n,a=l(a,r=l(r,i,n,a,e[13],2850285829,5),i,n,e[2],4243563512,9),r,i,e[7],1735328473,14),a,r,e[12],2368359562,20),n=c(n,a=c(a,r=c(r,i,n,a,e[5],4294588738,4),i,n,e[8],2272392833,11),r,i,e[11],1839030562,16),a,r,e[14],4259657740,23),n=c(n,a=c(a,r=c(r,i,n,a,e[1],2763975236,4),i,n,e[4],1272893353,11),r,i,e[7],4139469664,16),a,r,e[10],3200236656,23),n=c(n,a=c(a,r=c(r,i,n,a,e[13],681279174,4),i,n,e[0],3936430074,11),r,i,e[3],3572445317,16),a,r,e[6],76029189,23),n=c(n,a=c(a,r=c(r,i,n,a,e[9],3654602809,4),i,n,e[12],3873151461,11),r,i,e[15],530742520,16),a,r,e[2],3299628645,23),n=h(n,a=h(a,r=h(r,i,n,a,e[0],4096336452,6),i,n,e[7],1126891415,10),r,i,e[14],2878612391,15),a,r,e[5],4237533241,21),n=h(n,a=h(a,r=h(r,i,n,a,e[12],1700485571,6),i,n,e[3],2399980690,10),r,i,e[10],4293915773,15),a,r,e[1],2240044497,21),n=h(n,a=h(a,r=h(r,i,n,a,e[8],1873313359,6),i,n,e[15],4264355552,10),r,i,e[6],2734768916,15),a,r,e[13],1309151649,21),n=h(n,a=h(a,r=h(r,i,n,a,e[4],4149444226,6),i,n,e[11],3174756917,10),r,i,e[2],718787259,15),a,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+i|0,this._c=this._c+n|0,this._d=this._d+a|0},i.prototype._digest=function(){this._block[this._blockOffset++]=128,56=this._blockSize;){for(var n=this._blockOffset;n>8,o=255&n;a?r.push(a,o):r.push(o)}return r},i.zero2=n,i.toHex=a,i.encode=function(e,t){return"hex"===t?a(e):e}},{}],111:[function(e,t,r){t.exports={"2.16.840.1.101.3.4.1.1":"aes-128-ecb","2.16.840.1.101.3.4.1.2":"aes-128-cbc","2.16.840.1.101.3.4.1.3":"aes-128-ofb","2.16.840.1.101.3.4.1.4":"aes-128-cfb","2.16.840.1.101.3.4.1.21":"aes-192-ecb","2.16.840.1.101.3.4.1.22":"aes-192-cbc","2.16.840.1.101.3.4.1.23":"aes-192-ofb","2.16.840.1.101.3.4.1.24":"aes-192-cfb","2.16.840.1.101.3.4.1.41":"aes-256-ecb","2.16.840.1.101.3.4.1.42":"aes-256-cbc","2.16.840.1.101.3.4.1.43":"aes-256-ofb","2.16.840.1.101.3.4.1.44":"aes-256-cfb"}},{}],112:[function(e,t,r){"use strict";var i=e("asn1.js");r.certificate=e("./certificate");var n=i.define("RSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("modulus").int(),this.key("publicExponent").int(),this.key("privateExponent").int(),this.key("prime1").int(),this.key("prime2").int(),this.key("exponent1").int(),this.key("exponent2").int(),this.key("coefficient").int())});r.RSAPrivateKey=n;var a=i.define("RSAPublicKey",function(){this.seq().obj(this.key("modulus").int(),this.key("publicExponent").int())});r.RSAPublicKey=a;var o=i.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(s),this.key("subjectPublicKey").bitstr())});r.PublicKey=o;var s=i.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("none").null_().optional(),this.key("curve").objid().optional(),this.key("params").seq().obj(this.key("p").int(),this.key("q").int(),this.key("g").int()).optional())}),u=i.define("PrivateKeyInfo",function(){this.seq().obj(this.key("version").int(),this.key("algorithm").use(s),this.key("subjectPrivateKey").octstr())});r.PrivateKey=u;var l=i.define("EncryptedPrivateKeyInfo",function(){this.seq().obj(this.key("algorithm").seq().obj(this.key("id").objid(),this.key("decrypt").seq().obj(this.key("kde").seq().obj(this.key("id").objid(),this.key("kdeparams").seq().obj(this.key("salt").octstr(),this.key("iters").int())),this.key("cipher").seq().obj(this.key("algo").objid(),this.key("iv").octstr()))),this.key("subjectPrivateKey").octstr())});r.EncryptedPrivateKey=l;var c=i.define("DSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("p").int(),this.key("q").int(),this.key("g").int(),this.key("pub_key").int(),this.key("priv_key").int())});r.DSAPrivateKey=c,r.DSAparam=i.define("DSAparam",function(){this.int()});var h=i.define("ECPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").optional().explicit(0).use(f),this.key("publicKey").optional().explicit(1).bitstr())});r.ECPrivateKey=h;var f=i.define("ECParameters",function(){this.choice({namedCurve:this.objid()})});r.signature=i.define("signature",function(){this.seq().obj(this.key("r").int(),this.key("s").int())})},{"./certificate":113,"asn1.js":2}],113:[function(e,t,r){"use strict";var i=e("asn1.js"),n=i.define("Time",function(){this.choice({utcTime:this.utctime(),generalTime:this.gentime()})}),a=i.define("AttributeTypeValue",function(){this.seq().obj(this.key("type").objid(),this.key("value").any())}),o=i.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional())}),s=i.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(o),this.key("subjectPublicKey").bitstr())}),u=i.define("RelativeDistinguishedName",function(){this.setof(a)}),l=i.define("RDNSequence",function(){this.seqof(u)}),c=i.define("Name",function(){this.choice({rdnSequence:this.use(l)})}),h=i.define("Validity",function(){this.seq().obj(this.key("notBefore").use(n),this.key("notAfter").use(n))}),f=i.define("Extension",function(){this.seq().obj(this.key("extnID").objid(),this.key("critical").bool().def(!1),this.key("extnValue").octstr())}),d=i.define("TBSCertificate",function(){this.seq().obj(this.key("version").explicit(0).int(),this.key("serialNumber").int(),this.key("signature").use(o),this.key("issuer").use(c),this.key("validity").use(h),this.key("subject").use(c),this.key("subjectPublicKeyInfo").use(s),this.key("issuerUniqueID").implicit(1).bitstr().optional(),this.key("subjectUniqueID").implicit(2).bitstr().optional(),this.key("extensions").explicit(3).seqof(f).optional())}),p=i.define("X509Certificate",function(){this.seq().obj(this.key("tbsCertificate").use(d),this.key("signatureAlgorithm").use(o),this.key("signatureValue").bitstr())});t.exports=p},{"asn1.js":2}],114:[function(e,t,r){(function(f){var d=/Proc-Type: 4,ENCRYPTED\n\r?DEK-Info: AES-((?:128)|(?:192)|(?:256))-CBC,([0-9A-H]+)\n\r?\n\r?([0-9A-z\n\r\+\/\=]+)\n\r?/m,p=/^-----BEGIN ((?:.* KEY)|CERTIFICATE)-----\n/m,m=/^-----BEGIN ((?:.* KEY)|CERTIFICATE)-----\n\r?([0-9A-z\n\r\+\/\=]+)\n\r?-----END \1-----$/m,g=e("evp_bytestokey"),v=e("browserify-aes");t.exports=function(e,t){var r,i=e.toString(),n=i.match(d);if(n){var a="aes"+n[1],o=new f(n[2],"hex"),s=new f(n[3].replace(/\r?\n/g,""),"base64"),u=g(t,o.slice(0,8),parseInt(n[1],10)).key,l=[],c=v.createDecipheriv(a,u,o);l.push(c.update(s)),l.push(c.final()),r=f.concat(l)}else{var h=i.match(m);r=new f(h[2].replace(/\r?\n/g,""),"base64")}return{tag:i.match(p)[1],data:r}}}).call(this,e("buffer").Buffer)},{"browserify-aes":22,buffer:49,evp_bytestokey:86}],115:[function(t,r,e){(function(h){var s=t("./asn1"),f=t("./aesid.json"),u=t("./fixProc"),d=t("browserify-aes"),p=t("pbkdf2");function e(e){var t;"object"!=typeof e||h.isBuffer(e)||(t=e.passphrase,e=e.key),"string"==typeof e&&(e=new h(e));var r,i,n=u(e,t),a=n.tag,o=n.data;switch(a){case"CERTIFICATE":i=s.certificate.decode(o,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(i||(i=s.PublicKey.decode(o,"der")),r=i.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return s.RSAPublicKey.decode(i.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return i.subjectPrivateKey=i.subjectPublicKey,{type:"ec",data:i};case"1.2.840.10040.4.1":return i.algorithm.params.pub_key=s.DSAparam.decode(i.subjectPublicKey.data,"der"),{type:"dsa",data:i.algorithm.params};default:throw new Error("unknown key id "+r)}throw new Error("unknown key type "+a);case"ENCRYPTED PRIVATE KEY":o=function(e,t){var r=e.algorithm.decrypt.kde.kdeparams.salt,i=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),n=f[e.algorithm.decrypt.cipher.algo.join(".")],a=e.algorithm.decrypt.cipher.iv,o=e.subjectPrivateKey,s=parseInt(n.split("-")[1],10)/8,u=p.pbkdf2Sync(t,r,i,s),l=d.createDecipheriv(n,u,a),c=[];return c.push(l.update(o)),c.push(l.final()),h.concat(c)}(o=s.EncryptedPrivateKey.decode(o,"der"),t);case"PRIVATE KEY":switch(r=(i=s.PrivateKey.decode(o,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return s.RSAPrivateKey.decode(i.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:i.algorithm.curve,privateKey:s.ECPrivateKey.decode(i.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return i.algorithm.params.priv_key=s.DSAparam.decode(i.subjectPrivateKey,"der"),{type:"dsa",params:i.algorithm.params};default:throw new Error("unknown key id "+r)}throw new Error("unknown key type "+a);case"RSA PUBLIC KEY":return s.RSAPublicKey.decode(o,"der");case"RSA PRIVATE KEY":return s.RSAPrivateKey.decode(o,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:s.DSAPrivateKey.decode(o,"der")};case"EC PRIVATE KEY":return{curve:(o=s.ECPrivateKey.decode(o,"der")).parameters.value,privateKey:o.privateKey};default:throw new Error("unknown key type "+a)}}(r.exports=e).signature=s.signature}).call(this,t("buffer").Buffer)},{"./aesid.json":111,"./asn1":112,"./fixProc":114,"browserify-aes":22,buffer:49,pbkdf2:117}],116:[function(e,t,l){(function(n){function a(e,t){for(var r=0,i=e.length-1;0<=i;i--){var n=e[i];"."===n?e.splice(i,1):".."===n?(e.splice(i,1),r++):r&&(e.splice(i,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,o=function(e){return t.exec(e).slice(1)};function s(e,t){if(e.filter)return e.filter(t);for(var r=[],i=0;in?t=i(t):t.lengtho||0<=new l(t).cmp(a.modulus))throw new Error("decryption error");n=r?m(new l(t),a):d(t,a);var s=new c(o-n.length);if(s.fill(0),n=c.concat([s,n],o),4===i)return function(e,t){e.modulus;var r=e.modulus.byteLength(),i=(t.length,p("sha1").update(new c("")).digest()),n=i.length;if(0!==t[0])throw new Error("decryption error");var a=t.slice(1,n+1),o=t.slice(n+1),s=f(a,h(o,n)),u=f(o,h(s,r-n-1));if(function(e,t){e=new c(e),t=new c(t);var r=0,i=e.length;e.length!==t.length&&(r++,i=Math.min(e.length,t.length));var n=-1;for(;++n=t.length){a++;break}var o=t.slice(2,n-1);t.slice(n-1,n);("0002"!==i.toString("hex")&&!r||"0001"!==i.toString("hex")&&r)&&a++;o.length<8&&a++;if(a)throw new Error("decryption error");return t.slice(n)}(0,n,r);if(3===i)return n;throw new Error("unknown padding")}}).call(this,e("buffer").Buffer)},{"./mgf":125,"./withPublic":128,"./xor":129,"bn.js":17,"browserify-rsa":40,buffer:49,"create-hash":53,"parse-asn1":115}],127:[function(e,t,r){(function(f){var o=e("parse-asn1"),d=e("randombytes"),p=e("create-hash"),m=e("./mgf"),g=e("./xor"),v=e("bn.js"),s=e("./withPublic"),u=e("browserify-rsa");t.exports=function(e,t,r){var i;i=e.padding?e.padding:r?1:4;var n,a=o(e);if(4===i)n=function(e,t){var r=e.modulus.byteLength(),i=t.length,n=p("sha1").update(new f("")).digest(),a=n.length,o=2*a;if(r-o-2t.highWaterMark&&(t.highWaterMark=function(e){return u<=e?e=u:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function c(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(y("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?g(h,e):h(e))}function h(e){y("emit readable"),e.emit("readable"),w(e)}function d(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.highWaterMark||t.ended))return y("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?k(this):c(this),null;if(0===(e=l(e,t))&&t.ended)return 0===t.length&&k(this),null;var i,n=t.needReadable;return y("need readable",n),(0===t.length||t.length-e>>32-t}function p(e,t,r,i,n,a,o,s){return d(e+(t^r^i)+a+o|0,s)+n|0}function m(e,t,r,i,n,a,o,s){return d(e+(t&r|~t&i)+a+o|0,s)+n|0}function g(e,t,r,i,n,a,o,s){return d(e+((t|~r)^i)+a+o|0,s)+n|0}function v(e,t,r,i,n,a,o,s){return d(e+(t&i|r&~i)+a+o|0,s)+n|0}function b(e,t,r,i,n,a,o,s){return d(e+(t^(r|~i))+a+o|0,s)+n|0}e(i,r),i.prototype._update=function(){for(var e=new Array(16),t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,i=this._b,n=this._c,a=this._d,o=this._e;o=p(o,r=p(r,i,n,a,o,e[0],0,11),i,n=d(n,10),a,e[1],0,14),i=p(i=d(i,10),n=p(n,a=p(a,o,r,i,n,e[2],0,15),o,r=d(r,10),i,e[3],0,12),a,o=d(o,10),r,e[4],0,5),a=p(a=d(a,10),o=p(o,r=p(r,i,n,a,o,e[5],0,8),i,n=d(n,10),a,e[6],0,7),r,i=d(i,10),n,e[7],0,9),r=p(r=d(r,10),i=p(i,n=p(n,a,o,r,i,e[8],0,11),a,o=d(o,10),r,e[9],0,13),n,a=d(a,10),o,e[10],0,14),n=p(n=d(n,10),a=p(a,o=p(o,r,i,n,a,e[11],0,15),r,i=d(i,10),n,e[12],0,6),o,r=d(r,10),i,e[13],0,7),o=m(o=d(o,10),r=p(r,i=p(i,n,a,o,r,e[14],0,9),n,a=d(a,10),o,e[15],0,8),i,n=d(n,10),a,e[7],1518500249,7),i=m(i=d(i,10),n=m(n,a=m(a,o,r,i,n,e[4],1518500249,6),o,r=d(r,10),i,e[13],1518500249,8),a,o=d(o,10),r,e[1],1518500249,13),a=m(a=d(a,10),o=m(o,r=m(r,i,n,a,o,e[10],1518500249,11),i,n=d(n,10),a,e[6],1518500249,9),r,i=d(i,10),n,e[15],1518500249,7),r=m(r=d(r,10),i=m(i,n=m(n,a,o,r,i,e[3],1518500249,15),a,o=d(o,10),r,e[12],1518500249,7),n,a=d(a,10),o,e[0],1518500249,12),n=m(n=d(n,10),a=m(a,o=m(o,r,i,n,a,e[9],1518500249,15),r,i=d(i,10),n,e[5],1518500249,9),o,r=d(r,10),i,e[2],1518500249,11),o=m(o=d(o,10),r=m(r,i=m(i,n,a,o,r,e[14],1518500249,7),n,a=d(a,10),o,e[11],1518500249,13),i,n=d(n,10),a,e[8],1518500249,12),i=g(i=d(i,10),n=g(n,a=g(a,o,r,i,n,e[3],1859775393,11),o,r=d(r,10),i,e[10],1859775393,13),a,o=d(o,10),r,e[14],1859775393,6),a=g(a=d(a,10),o=g(o,r=g(r,i,n,a,o,e[4],1859775393,7),i,n=d(n,10),a,e[9],1859775393,14),r,i=d(i,10),n,e[15],1859775393,9),r=g(r=d(r,10),i=g(i,n=g(n,a,o,r,i,e[8],1859775393,13),a,o=d(o,10),r,e[1],1859775393,15),n,a=d(a,10),o,e[2],1859775393,14),n=g(n=d(n,10),a=g(a,o=g(o,r,i,n,a,e[7],1859775393,8),r,i=d(i,10),n,e[0],1859775393,13),o,r=d(r,10),i,e[6],1859775393,6),o=g(o=d(o,10),r=g(r,i=g(i,n,a,o,r,e[13],1859775393,5),n,a=d(a,10),o,e[11],1859775393,12),i,n=d(n,10),a,e[5],1859775393,7),i=v(i=d(i,10),n=v(n,a=g(a,o,r,i,n,e[12],1859775393,5),o,r=d(r,10),i,e[1],2400959708,11),a,o=d(o,10),r,e[9],2400959708,12),a=v(a=d(a,10),o=v(o,r=v(r,i,n,a,o,e[11],2400959708,14),i,n=d(n,10),a,e[10],2400959708,15),r,i=d(i,10),n,e[0],2400959708,14),r=v(r=d(r,10),i=v(i,n=v(n,a,o,r,i,e[8],2400959708,15),a,o=d(o,10),r,e[12],2400959708,9),n,a=d(a,10),o,e[4],2400959708,8),n=v(n=d(n,10),a=v(a,o=v(o,r,i,n,a,e[13],2400959708,9),r,i=d(i,10),n,e[3],2400959708,14),o,r=d(r,10),i,e[7],2400959708,5),o=v(o=d(o,10),r=v(r,i=v(i,n,a,o,r,e[15],2400959708,6),n,a=d(a,10),o,e[14],2400959708,8),i,n=d(n,10),a,e[5],2400959708,6),i=b(i=d(i,10),n=v(n,a=v(a,o,r,i,n,e[6],2400959708,5),o,r=d(r,10),i,e[2],2400959708,12),a,o=d(o,10),r,e[4],2840853838,9),a=b(a=d(a,10),o=b(o,r=b(r,i,n,a,o,e[0],2840853838,15),i,n=d(n,10),a,e[5],2840853838,5),r,i=d(i,10),n,e[9],2840853838,11),r=b(r=d(r,10),i=b(i,n=b(n,a,o,r,i,e[7],2840853838,6),a,o=d(o,10),r,e[12],2840853838,8),n,a=d(a,10),o,e[2],2840853838,13),n=b(n=d(n,10),a=b(a,o=b(o,r,i,n,a,e[10],2840853838,12),r,i=d(i,10),n,e[14],2840853838,5),o,r=d(r,10),i,e[1],2840853838,12),o=b(o=d(o,10),r=b(r,i=b(i,n,a,o,r,e[3],2840853838,13),n,a=d(a,10),o,e[8],2840853838,14),i,n=d(n,10),a,e[11],2840853838,11),i=b(i=d(i,10),n=b(n,a=b(a,o,r,i,n,e[6],2840853838,8),o,r=d(r,10),i,e[15],2840853838,5),a,o=d(o,10),r,e[13],2840853838,6),a=d(a,10);var s=this._a,u=this._b,l=this._c,c=this._d,h=this._e;h=b(h,s=b(s,u,l,c,h,e[5],1352829926,8),u,l=d(l,10),c,e[14],1352829926,9),u=b(u=d(u,10),l=b(l,c=b(c,h,s,u,l,e[7],1352829926,9),h,s=d(s,10),u,e[0],1352829926,11),c,h=d(h,10),s,e[9],1352829926,13),c=b(c=d(c,10),h=b(h,s=b(s,u,l,c,h,e[2],1352829926,15),u,l=d(l,10),c,e[11],1352829926,15),s,u=d(u,10),l,e[4],1352829926,5),s=b(s=d(s,10),u=b(u,l=b(l,c,h,s,u,e[13],1352829926,7),c,h=d(h,10),s,e[6],1352829926,7),l,c=d(c,10),h,e[15],1352829926,8),l=b(l=d(l,10),c=b(c,h=b(h,s,u,l,c,e[8],1352829926,11),s,u=d(u,10),l,e[1],1352829926,14),h,s=d(s,10),u,e[10],1352829926,14),h=v(h=d(h,10),s=b(s,u=b(u,l,c,h,s,e[3],1352829926,12),l,c=d(c,10),h,e[12],1352829926,6),u,l=d(l,10),c,e[6],1548603684,9),u=v(u=d(u,10),l=v(l,c=v(c,h,s,u,l,e[11],1548603684,13),h,s=d(s,10),u,e[3],1548603684,15),c,h=d(h,10),s,e[7],1548603684,7),c=v(c=d(c,10),h=v(h,s=v(s,u,l,c,h,e[0],1548603684,12),u,l=d(l,10),c,e[13],1548603684,8),s,u=d(u,10),l,e[5],1548603684,9),s=v(s=d(s,10),u=v(u,l=v(l,c,h,s,u,e[10],1548603684,11),c,h=d(h,10),s,e[14],1548603684,7),l,c=d(c,10),h,e[15],1548603684,7),l=v(l=d(l,10),c=v(c,h=v(h,s,u,l,c,e[8],1548603684,12),s,u=d(u,10),l,e[12],1548603684,7),h,s=d(s,10),u,e[4],1548603684,6),h=v(h=d(h,10),s=v(s,u=v(u,l,c,h,s,e[9],1548603684,15),l,c=d(c,10),h,e[1],1548603684,13),u,l=d(l,10),c,e[2],1548603684,11),u=g(u=d(u,10),l=g(l,c=g(c,h,s,u,l,e[15],1836072691,9),h,s=d(s,10),u,e[5],1836072691,7),c,h=d(h,10),s,e[1],1836072691,15),c=g(c=d(c,10),h=g(h,s=g(s,u,l,c,h,e[3],1836072691,11),u,l=d(l,10),c,e[7],1836072691,8),s,u=d(u,10),l,e[14],1836072691,6),s=g(s=d(s,10),u=g(u,l=g(l,c,h,s,u,e[6],1836072691,6),c,h=d(h,10),s,e[9],1836072691,14),l,c=d(c,10),h,e[11],1836072691,12),l=g(l=d(l,10),c=g(c,h=g(h,s,u,l,c,e[8],1836072691,13),s,u=d(u,10),l,e[12],1836072691,5),h,s=d(s,10),u,e[2],1836072691,14),h=g(h=d(h,10),s=g(s,u=g(u,l,c,h,s,e[10],1836072691,13),l,c=d(c,10),h,e[0],1836072691,13),u,l=d(l,10),c,e[4],1836072691,7),u=m(u=d(u,10),l=m(l,c=g(c,h,s,u,l,e[13],1836072691,5),h,s=d(s,10),u,e[8],2053994217,15),c,h=d(h,10),s,e[6],2053994217,5),c=m(c=d(c,10),h=m(h,s=m(s,u,l,c,h,e[4],2053994217,8),u,l=d(l,10),c,e[1],2053994217,11),s,u=d(u,10),l,e[3],2053994217,14),s=m(s=d(s,10),u=m(u,l=m(l,c,h,s,u,e[11],2053994217,14),c,h=d(h,10),s,e[15],2053994217,6),l,c=d(c,10),h,e[0],2053994217,14),l=m(l=d(l,10),c=m(c,h=m(h,s,u,l,c,e[5],2053994217,6),s,u=d(u,10),l,e[12],2053994217,9),h,s=d(s,10),u,e[2],2053994217,12),h=m(h=d(h,10),s=m(s,u=m(u,l,c,h,s,e[13],2053994217,9),l,c=d(c,10),h,e[9],2053994217,12),u,l=d(l,10),c,e[7],2053994217,5),u=p(u=d(u,10),l=m(l,c=m(c,h,s,u,l,e[10],2053994217,15),h,s=d(s,10),u,e[14],2053994217,8),c,h=d(h,10),s,e[12],0,8),c=p(c=d(c,10),h=p(h,s=p(s,u,l,c,h,e[15],0,5),u,l=d(l,10),c,e[10],0,12),s,u=d(u,10),l,e[4],0,9),s=p(s=d(s,10),u=p(u,l=p(l,c,h,s,u,e[1],0,12),c,h=d(h,10),s,e[5],0,5),l,c=d(c,10),h,e[8],0,14),l=p(l=d(l,10),c=p(c,h=p(h,s,u,l,c,e[7],0,6),s,u=d(u,10),l,e[6],0,8),h,s=d(s,10),u,e[2],0,13),h=p(h=d(h,10),s=p(s,u=p(u,l,c,h,s,e[13],0,6),l,c=d(c,10),h,e[14],0,5),u,l=d(l,10),c,e[0],0,15),u=p(u=d(u,10),l=p(l,c=p(c,h,s,u,l,e[3],0,13),h,s=d(s,10),u,e[9],0,11),c,h=d(h,10),s,e[11],0,11),c=d(c,10);var f=this._b+n+c|0;this._b=this._c+a+h|0,this._c=this._d+o+s|0,this._d=this._e+r+u|0,this._e=this._a+i+l|0,this._a=f},i.prototype._digest=function(){this._block[this._blockOffset++]=128,56=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var i=4294967295&r,n=(r-i)/4294967296;this._block.writeUInt32BE(n,this._blockSize-8),this._block.writeUInt32BE(i,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=i},{"safe-buffer":143}],145:[function(e,t,r){(r=t.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t}).sha=e("./sha"),r.sha1=e("./sha1"),r.sha224=e("./sha224"),r.sha256=e("./sha256"),r.sha384=e("./sha384"),r.sha512=e("./sha512")},{"./sha":146,"./sha1":147,"./sha224":148,"./sha256":149,"./sha384":150,"./sha512":151}],146:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,v=[1518500249,1859775393,-1894007588,-899497514],o=new Array(80);function s(){this.init(),this._w=o,n.call(this,64,56)}i(s,n),s.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},s.prototype._update=function(e){for(var t,r,i,n,a,o,s=this._w,u=0|this._a,l=0|this._b,c=0|this._c,h=0|this._d,f=0|this._e,d=0;d<16;++d)s[d]=e.readInt32BE(4*d);for(;d<80;++d)s[d]=s[d-3]^s[d-8]^s[d-14]^s[d-16];for(var p=0;p<80;++p){var m=~~(p/20),g=0|((o=u)<<5|o>>>27)+(i=l,n=c,a=h,0===(r=m)?i&n|~i&a:2===r?i&n|i&a|n&a:i^n^a)+f+s[p]+v[m];f=h,h=c,c=(t=l)<<30|t>>>2,l=u,u=g}this._a=u+this._a|0,this._b=l+this._b|0,this._c=c+this._c|0,this._d=h+this._d|0,this._e=f+this._e|0},s.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},t.exports=s},{"./hash":144,inherits:103,"safe-buffer":143}],147:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,b=[1518500249,1859775393,-1894007588,-899497514],o=new Array(80);function s(){this.init(),this._w=o,n.call(this,64,56)}i(s,n),s.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},s.prototype._update=function(e){for(var t,r,i,n,a,o,s,u=this._w,l=0|this._a,c=0|this._b,h=0|this._c,f=0|this._d,d=0|this._e,p=0;p<16;++p)u[p]=e.readInt32BE(4*p);for(;p<80;++p)u[p]=(t=u[p-3]^u[p-8]^u[p-14]^u[p-16])<<1|t>>>31;for(var m=0;m<80;++m){var g=~~(m/20),v=0|((s=l)<<5|s>>>27)+(n=c,a=h,o=f,0===(i=g)?n&a|~n&o:2===i?n&a|n&o|a&o:n^a^o)+d+u[m]+b[g];d=f,f=h,h=(r=c)<<30|r>>>2,c=l,l=v}this._a=l+this._a|0,this._b=c+this._b|0,this._c=h+this._c|0,this._d=f+this._d|0,this._e=d+this._e|0},s.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},t.exports=s},{"./hash":144,inherits:103,"safe-buffer":143}],148:[function(e,t,r){var i=e("inherits"),n=e("./sha256"),a=e("./hash"),o=e("safe-buffer").Buffer,s=new Array(64);function u(){this.init(),this._w=s,a.call(this,64,56)}i(u,n),u.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},u.prototype._hash=function(){var e=o.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},t.exports=u},{"./hash":144,"./sha256":149,inherits:103,"safe-buffer":143}],149:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,w=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],o=new Array(64);function s(){this.init(),this._w=o,n.call(this,64,56)}i(s,n),s.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},s.prototype._update=function(e){for(var t,r,i,n,a,o,s,u=this._w,l=0|this._a,c=0|this._b,h=0|this._c,f=0|this._d,d=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,v=0;v<16;++v)u[v]=e.readInt32BE(4*v);for(;v<64;++v)u[v]=0|(((r=u[v-2])>>>17|r<<15)^(r>>>19|r<<13)^r>>>10)+u[v-7]+(((t=u[v-15])>>>7|t<<25)^(t>>>18|t<<14)^t>>>3)+u[v-16];for(var b=0;b<64;++b){var y=g+(((s=d)>>>6|s<<26)^(s>>>11|s<<21)^(s>>>25|s<<7))+((o=m)^d&(p^o))+w[b]+u[b]|0,_=0|(((a=l)>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((i=l)&(n=c)|h&(i|n));g=m,m=p,p=d,d=f+y|0,f=h,h=c,c=l,l=y+_|0}this._a=l+this._a|0,this._b=c+this._b|0,this._c=h+this._c|0,this._d=f+this._d|0,this._e=d+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},s.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},t.exports=s},{"./hash":144,inherits:103,"safe-buffer":143}],150:[function(e,t,r){var i=e("inherits"),n=e("./sha512"),a=e("./hash"),o=e("safe-buffer").Buffer,s=new Array(160);function u(){this.init(),this._w=s,a.call(this,128,112)}i(u,n),u.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},u.prototype._hash=function(){var i=o.allocUnsafe(48);function e(e,t,r){i.writeInt32BE(e,r),i.writeInt32BE(t,r+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),i},t.exports=u},{"./hash":144,"./sha512":151,inherits:103,"safe-buffer":143}],151:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,ee=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],o=new Array(160);function s(){this.init(),this._w=o,n.call(this,128,112)}function te(e,t,r){return r^e&(t^r)}function re(e,t,r){return e&t|r&(e|t)}function ie(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function ne(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function ae(e,t){return e>>>0>>0?1:0}i(s,n),s.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},s.prototype._update=function(e){for(var t,r,i,n,a,o,s,u,l=this._w,c=0|this._ah,h=0|this._bh,f=0|this._ch,d=0|this._dh,p=0|this._eh,m=0|this._fh,g=0|this._gh,v=0|this._hh,b=0|this._al,y=0|this._bl,_=0|this._cl,w=0|this._dl,x=0|this._el,k=0|this._fl,T=0|this._gl,S=0|this._hl,E=0;E<32;E+=2)l[E]=e.readInt32BE(4*E),l[E+1]=e.readInt32BE(4*E+4);for(;E<160;E+=2){var M=l[E-30],P=l[E-30+1],C=((s=M)>>>1|(u=P)<<31)^(s>>>8|u<<24)^s>>>7,A=((a=P)>>>1|(o=M)<<31)^(a>>>8|o<<24)^(a>>>7|o<<25);M=l[E-4],P=l[E-4+1];var O=((i=M)>>>19|(n=P)<<13)^(n>>>29|i<<3)^i>>>6,I=((t=P)>>>19|(r=M)<<13)^(r>>>29|t<<3)^(t>>>6|r<<26),R=l[E-14],D=l[E-14+1],j=l[E-32],L=l[E-32+1],z=A+D|0,F=C+R+ae(z,A)|0;F=(F=F+O+ae(z=z+I|0,I)|0)+j+ae(z=z+L|0,L)|0,l[E]=F,l[E+1]=z}for(var B=0;B<160;B+=2){F=l[B],z=l[B+1];var N=re(c,h,f),U=re(b,y,_),X=ie(c,b),q=ie(b,c),H=ne(p,x),W=ne(x,p),G=ee[B],V=ee[B+1],Y=te(p,m,g),J=te(x,k,T),K=S+W|0,Z=v+H+ae(K,S)|0;Z=(Z=(Z=Z+Y+ae(K=K+J|0,J)|0)+G+ae(K=K+V|0,V)|0)+F+ae(K=K+z|0,z)|0;var Q=q+U|0,$=X+N+ae(Q,q)|0;v=g,S=T,g=m,T=k,m=p,k=x,p=d+Z+ae(x=w+K|0,w)|0,d=f,w=_,f=h,_=y,h=c,y=b,c=Z+$+ae(b=K+Q|0,K)|0}this._al=this._al+b|0,this._bl=this._bl+y|0,this._cl=this._cl+_|0,this._dl=this._dl+w|0,this._el=this._el+x|0,this._fl=this._fl+k|0,this._gl=this._gl+T|0,this._hl=this._hl+S|0,this._ah=this._ah+c+ae(this._al,b)|0,this._bh=this._bh+h+ae(this._bl,y)|0,this._ch=this._ch+f+ae(this._cl,_)|0,this._dh=this._dh+d+ae(this._dl,w)|0,this._eh=this._eh+p+ae(this._el,x)|0,this._fh=this._fh+m+ae(this._fl,k)|0,this._gh=this._gh+g+ae(this._gl,T)|0,this._hh=this._hh+v+ae(this._hl,S)|0},s.prototype._hash=function(){var i=a.allocUnsafe(64);function e(e,t,r){i.writeInt32BE(e,r),i.writeInt32BE(t,r+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),i},t.exports=s},{"./hash":144,inherits:103,"safe-buffer":143}],152:[function(e,t,r){t.exports=i;var c=e("events").EventEmitter;function i(){c.call(this)}e("inherits")(i,c),i.Readable=e("readable-stream/readable.js"),i.Writable=e("readable-stream/writable.js"),i.Duplex=e("readable-stream/duplex.js"),i.Transform=e("readable-stream/transform.js"),i.PassThrough=e("readable-stream/passthrough.js"),(i.Stream=i).prototype.pipe=function(t,e){var r=this;function i(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function n(){r.readable&&r.resume&&r.resume()}r.on("data",i),t.on("drain",n),t._isStdio||e&&!1===e.end||(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,t.end())}function s(){a||(a=!0,"function"==typeof t.destroy&&t.destroy())}function u(e){if(l(),0===c.listenerCount(this,"error"))throw e}function l(){r.removeListener("data",i),t.removeListener("drain",n),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",u),t.removeListener("error",u),r.removeListener("end",l),r.removeListener("close",l),t.removeListener("close",l)}return r.on("error",u),t.on("error",u),r.on("end",l),r.on("close",l),t.on("close",l),t.emit("pipe",r),t}},{events:85,inherits:103,"readable-stream/duplex.js":132,"readable-stream/passthrough.js":138,"readable-stream/readable.js":139,"readable-stream/transform.js":140,"readable-stream/writable.js":141}],153:[function(e,t,r){var i=e("buffer").Buffer,n=i.isEncoding||function(e){switch(e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};var a=r.StringDecoder=function(e){switch(this.encoding=(e||"utf8").toLowerCase().replace(/[-_]/,""),function(e){if(e&&!n(e))throw new Error("Unknown encoding: "+e)}(e),this.encoding){case"utf8":this.surrogateSize=3;break;case"ucs2":case"utf16le":this.surrogateSize=2,this.detectIncompleteChar=s;break;case"base64":this.surrogateSize=3,this.detectIncompleteChar=u;break;default:return void(this.write=o)}this.charBuffer=new i(6),this.charReceived=0,this.charLength=0};function o(e){return e.toString(this.encoding)}function s(e){this.charReceived=e.length%2,this.charLength=this.charReceived?2:0}function u(e){this.charReceived=e.length%3,this.charLength=this.charReceived?3:0}a.prototype.write=function(e){for(var t="";this.charLength;){var r=e.length>=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,r),this.charReceived+=r,this.charReceived>5==6){this.charLength=2;break}if(t<=2&&r>>4==14){this.charLength=3;break}if(t<=3&&r>>3==30){this.charLength=4;break}}this.charReceived=t},a.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var r=this.charReceived,i=this.charBuffer,n=this.encoding;t+=i.slice(0,r).toString(n)}return t}},{buffer:49}],154:[function(e,t,r){(function(r){function i(e){try{if(!r.localStorage)return!1}catch(e){return!1}var t=r.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}t.exports=function(e,t){if(i("noDeprecation"))return e;var r=!1;return function(){if(!r){if(i("throwDeprecation"))throw new Error(t);i("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],155:[function(require,module,exports){var indexOf=require("indexof"),Object_keys=function(e){if(Object.keys)return Object.keys(e);var t=[];for(var r in e)t.push(r);return t},forEach=function(e,t){if(e.forEach)return e.forEach(t);for(var r=0;r>2)*(r+3>>2)*8;case p:case m:case c:case g:return(t+3>>2)*(r+3>>2)*16;case ne:case oe:return Math.floor((Math.max(t,8)*Math.max(r,8)*4+7)/8);case ae:case se:return Math.floor((Math.max(t,16)*Math.max(r,8)*2+7)/8);case v:case n:return Math.floor((t+3)/4)*Math.floor((r+3)/4)*16;case b:case a:return Math.floor((t+4)/5)*Math.floor((r+3)/4)*16;case y:case o:return Math.floor((t+4)/5)*Math.floor((r+4)/5)*16;case _:case s:return Math.floor((t+5)/6)*Math.floor((r+4)/5)*16;case w:case u:return Math.floor((t+5)/6)*Math.floor((r+5)/6)*16;case x:case O:return Math.floor((t+7)/8)*Math.floor((r+4)/5)*16;case k:case I:return Math.floor((t+7)/8)*Math.floor((r+5)/6)*16;case T:case R:return Math.floor((t+7)/8)*Math.floor((r+7)/8)*16;case S:case D:return Math.floor((t+9)/10)*Math.floor((r+4)/5)*16;case E:case j:return Math.floor((t+9)/10)*Math.floor((r+5)/6)*16;case M:case L:return Math.floor((t+9)/10)*Math.floor((r+7)/8)*16;case P:case z:return Math.floor((t+9)/10)*Math.floor((r+9)/10)*16;case C:case F:return Math.floor((t+11)/12)*Math.floor((r+9)/10)*16;case A:case B:return Math.floor((t+11)/12)*Math.floor((r+11)/12)*16;default:return 0}}(t.exports=h).prototype.init=function(e,t,r,i,n,a,o,s){this.src=e,this.width=i,this.height=n,this.data=t,this.type=r,this.levels=a,this.internalFormat=o,this.isCompressedImage=!0,this.crunch=s,this.preserveSource=!0;var u=this.complete;return this.complete=!!t,!u&&this.complete&&this.onload&&this.onload({target:this}),this},h.prototype.dispose=function(){this.data=null},h.prototype.generateWebGLTexture=function(e){if(null===this.data)throw"Trying to create a second (or more) webgl texture from the same CompressedImage : "+this.src;for(var t=this.width,r=this.height,i=this.levels,n=0,a=0;a>=1)<1&&(t=1),(r>>=1)<1&&(r=1),n+=o}1>8&255,e>>16&255,e>>24&255)}(i)}var n=1;t[G]&U&&(n=Math.max(1,t[J]));var a=t[Y],o=t[V],s=t[W]+4,u=new Uint8Array(e,s);return this.init(this.src,u,"DDS",a,o,n,r)},h.prototype._loadASTC=function(e){var t=new Int8Array(e,0,Se);if(new Uint32Array(e.slice(0,4))!=Ee)throw"Invalid magic number in ASTC header";for(var r=[v,b,y,_,w,x,k,T,S,E,M,P,C,A],i=e.byteLength-Se,n=new Uint8Array([t[7],t[8],t[9],0]),a=new Uint8Array([t[10],t[11],t[12],0]),o=new Uint32Array(n.buffer)[0],s=new Uint32Array(a.buffer)[0],u=0,l=0;l 0.0) {\n c.rgb /= c.a;\n\n vec3 rgb = pow(c.rgb, vec3(1. / gamma));\n rgb = mix(vec3(.5), mix(vec3(dot(vec3(.2125, .7154, .0721), rgb)), rgb, saturation), contrast);\n rgb.r *= red;\n rgb.g *= green;\n rgb.b *= blue;\n c.rgb = rgb * brightness;\n\n c.rgb *= c.a;\n }\n\n gl_FragColor = c * alpha;\n}\n"),Object.assign(this,{gamma:1,saturation:1,contrast:1,brightness:1,red:1,green:1,blue:1,alpha:1},e)}return t&&(e.__proto__=t),((e.prototype=Object.create(t&&t.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.gamma=Math.max(this.gamma,1e-4),this.uniforms.saturation=this.saturation,this.uniforms.contrast=this.contrast,this.uniforms.brightness=this.brightness,this.uniforms.red=this.red,this.uniforms.green=this.green,this.uniforms.blue=this.blue,this.uniforms.alpha=this.alpha,e.applyFilter(this,t,r,i)},e}(f.Filter),d=function(i){function e(e,t,r){void 0===e&&(e=4),void 0===t&&(t=3),void 0===r&&(r=!1),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}",r?"\nvarying vec2 vTextureCoord;\nuniform sampler2D uSampler;\n\nuniform vec2 uOffset;\nuniform vec4 filterClamp;\n\nvoid main(void)\n{\n vec4 color = vec4(0.0);\n\n // Sample top left pixel\n color += texture2D(uSampler, clamp(vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y + uOffset.y), filterClamp.xy, filterClamp.zw));\n\n // Sample top right pixel\n color += texture2D(uSampler, clamp(vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y + uOffset.y), filterClamp.xy, filterClamp.zw));\n\n // Sample bottom right pixel\n color += texture2D(uSampler, clamp(vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y - uOffset.y), filterClamp.xy, filterClamp.zw));\n\n // Sample bottom left pixel\n color += texture2D(uSampler, clamp(vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y - uOffset.y), filterClamp.xy, filterClamp.zw));\n\n // Average\n color *= 0.25;\n\n gl_FragColor = color;\n}\n":"\nvarying vec2 vTextureCoord;\nuniform sampler2D uSampler;\n\nuniform vec2 uOffset;\n\nvoid main(void)\n{\n vec4 color = vec4(0.0);\n\n // Sample top left pixel\n color += texture2D(uSampler, vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y + uOffset.y));\n\n // Sample top right pixel\n color += texture2D(uSampler, vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y + uOffset.y));\n\n // Sample bottom right pixel\n color += texture2D(uSampler, vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y - uOffset.y));\n\n // Sample bottom left pixel\n color += texture2D(uSampler, vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y - uOffset.y));\n\n // Average\n color *= 0.25;\n\n gl_FragColor = color;\n}"),this.uniforms.uOffset=new Float32Array(2),this._pixelSize=new f.Point,this.pixelSize=1,this._clamp=r,this._kernels=null,Array.isArray(e)?this.kernels=e:(this._blur=e,this.quality=t)}i&&(e.__proto__=i);var t={kernels:{configurable:!0},clamp:{configurable:!0},pixelSize:{configurable:!0},quality:{configurable:!0},blur:{configurable:!0}};return((e.prototype=Object.create(i&&i.prototype)).constructor=e).prototype.apply=function(e,t,r,i){var n,a=this.pixelSize.x/t.size.width,o=this.pixelSize.y/t.size.height;if(1===this._quality||0===this._blur)n=this._kernels[0]+.5,this.uniforms.uOffset[0]=n*a,this.uniforms.uOffset[1]=n*o,e.applyFilter(this,t,r,i);else{for(var s,u=e.getRenderTarget(!0),l=t,c=u,h=this._quality-1,f=0;f threshold) {\n gl_FragColor = color;\n } else {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\n }\n}\n"),this.threshold=e}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={threshold:{configurable:!0}};return r.threshold.get=function(){return this.uniforms.threshold},r.threshold.set=function(e){this.uniforms.threshold=e},Object.defineProperties(e.prototype,r),e}(f.Filter),i=function(o){function e(e){o.call(this,s,"uniform sampler2D uSampler;\nvarying vec2 vTextureCoord;\n\nuniform sampler2D bloomTexture;\nuniform float bloomScale;\nuniform float brightness;\n\nvoid main() {\n vec4 color = texture2D(uSampler, vTextureCoord);\n color.rgb *= brightness;\n vec4 bloomColor = vec4(texture2D(bloomTexture, vTextureCoord).rgb, 0.0);\n bloomColor.rgb *= bloomScale;\n gl_FragColor = color + bloomColor;\n}\n"),"number"==typeof e&&(e={threshold:e}),e=Object.assign({threshold:.5,bloomScale:1,brightness:1,kernels:null,blur:8,quality:4,pixelSize:1,resolution:f.settings.RESOLUTION},e),this.bloomScale=e.bloomScale,this.brightness=e.brightness;var t=e.kernels,r=e.blur,i=e.quality,n=e.pixelSize,a=e.resolution;this._extractFilter=new u(e.threshold),this._extractFilter.resolution=a,this._blurFilter=t?new d(t):new d(r,i),this.pixelSize=n,this.resolution=a}o&&(e.__proto__=o);var t={resolution:{configurable:!0},threshold:{configurable:!0},kernels:{configurable:!0},blur:{configurable:!0},quality:{configurable:!0},pixelSize:{configurable:!0}};return((e.prototype=Object.create(o&&o.prototype)).constructor=e).prototype.apply=function(e,t,r,i,n){var a=e.getRenderTarget(!0);this._extractFilter.apply(e,t,a,!0,n);var o=e.getRenderTarget(!0);this._blurFilter.apply(e,a,o,!0,n),this.uniforms.bloomScale=this.bloomScale,this.uniforms.brightness=this.brightness,this.uniforms.bloomTexture=o,e.applyFilter(this,t,r,i),e.returnRenderTarget(o),e.returnRenderTarget(a)},t.resolution.get=function(){return this._resolution},t.resolution.set=function(e){this._resolution=e,this._extractFilter&&(this._extractFilter.resolution=e),this._blurFilter&&(this._blurFilter.resolution=e)},t.threshold.get=function(){return this._extractFilter.threshold},t.threshold.set=function(e){this._extractFilter.threshold=e},t.kernels.get=function(){return this._blurFilter.kernels},t.kernels.set=function(e){this._blurFilter.kernels=e},t.blur.get=function(){return this._blurFilter.blur},t.blur.set=function(e){this._blurFilter.blur=e},t.quality.get=function(){return this._blurFilter.quality},t.quality.set=function(e){this._blurFilter.quality=e},t.pixelSize.get=function(){return this._blurFilter.pixelSize},t.pixelSize.set=function(e){this._blurFilter.pixelSize=e},Object.defineProperties(e.prototype,t),e}(f.Filter),n=function(t){function e(e){void 0===e&&(e=8),t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\n\nuniform vec4 filterArea;\nuniform float pixelSize;\nuniform sampler2D uSampler;\n\nvec2 mapCoord( vec2 coord )\n{\n coord *= filterArea.xy;\n coord += filterArea.zw;\n\n return coord;\n}\n\nvec2 unmapCoord( vec2 coord )\n{\n coord -= filterArea.zw;\n coord /= filterArea.xy;\n\n return coord;\n}\n\nvec2 pixelate(vec2 coord, vec2 size)\n{\n return floor( coord / size ) * size;\n}\n\nvec2 getMod(vec2 coord, vec2 size)\n{\n return mod( coord , size) / size;\n}\n\nfloat character(float n, vec2 p)\n{\n p = floor(p*vec2(4.0, -4.0) + 2.5);\n\n if (clamp(p.x, 0.0, 4.0) == p.x)\n {\n if (clamp(p.y, 0.0, 4.0) == p.y)\n {\n if (int(mod(n/exp2(p.x + 5.0*p.y), 2.0)) == 1) return 1.0;\n }\n }\n return 0.0;\n}\n\nvoid main()\n{\n vec2 coord = mapCoord(vTextureCoord);\n\n // get the rounded color..\n vec2 pixCoord = pixelate(coord, vec2(pixelSize));\n pixCoord = unmapCoord(pixCoord);\n\n vec4 color = texture2D(uSampler, pixCoord);\n\n // determine the character to use\n float gray = (color.r + color.g + color.b) / 3.0;\n\n float n = 65536.0; // .\n if (gray > 0.2) n = 65600.0; // :\n if (gray > 0.3) n = 332772.0; // *\n if (gray > 0.4) n = 15255086.0; // o\n if (gray > 0.5) n = 23385164.0; // &\n if (gray > 0.6) n = 15252014.0; // 8\n if (gray > 0.7) n = 13199452.0; // @\n if (gray > 0.8) n = 11512810.0; // #\n\n // get the mod..\n vec2 modd = getMod(coord, vec2(pixelSize));\n\n gl_FragColor = color * character( n, vec2(-1.0) + modd * 2.0);\n\n}\n"),this.size=e}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={size:{configurable:!0}};return r.size.get=function(){return this.uniforms.pixelSize},r.size.set=function(e){this.uniforms.pixelSize=e},Object.defineProperties(e.prototype,r),e}(f.Filter),a=function(t){function e(e){void 0===e&&(e={}),t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec4 filterArea;\n\nuniform float transformX;\nuniform float transformY;\nuniform vec3 lightColor;\nuniform float lightAlpha;\nuniform vec3 shadowColor;\nuniform float shadowAlpha;\n\nvoid main(void) {\n vec2 transform = vec2(1.0 / filterArea) * vec2(transformX, transformY);\n vec4 color = texture2D(uSampler, vTextureCoord);\n float light = texture2D(uSampler, vTextureCoord - transform).a;\n float shadow = texture2D(uSampler, vTextureCoord + transform).a;\n\n color.rgb = mix(color.rgb, lightColor, clamp((color.a - light) * lightAlpha, 0.0, 1.0));\n color.rgb = mix(color.rgb, shadowColor, clamp((color.a - shadow) * shadowAlpha, 0.0, 1.0));\n gl_FragColor = vec4(color.rgb * color.a, color.a);\n}\n"),this.uniforms.lightColor=new Float32Array(3),this.uniforms.shadowColor=new Float32Array(3),e=Object.assign({rotation:45,thickness:2,lightColor:16777215,lightAlpha:.7,shadowColor:0,shadowAlpha:.7},e),this.rotation=e.rotation,this.thickness=e.thickness,this.lightColor=e.lightColor,this.lightAlpha=e.lightAlpha,this.shadowColor=e.shadowColor,this.shadowAlpha=e.shadowAlpha}t&&(e.__proto__=t);var r={rotation:{configurable:!0},thickness:{configurable:!0},lightColor:{configurable:!0},lightAlpha:{configurable:!0},shadowColor:{configurable:!0},shadowAlpha:{configurable:!0}};return((e.prototype=Object.create(t&&t.prototype)).constructor=e).prototype._updateTransform=function(){this.uniforms.transformX=this._thickness*Math.cos(this._angle),this.uniforms.transformY=this._thickness*Math.sin(this._angle)},r.rotation.get=function(){return this._angle/f.DEG_TO_RAD},r.rotation.set=function(e){this._angle=e*f.DEG_TO_RAD,this._updateTransform()},r.thickness.get=function(){return this._thickness},r.thickness.set=function(e){this._thickness=e,this._updateTransform()},r.lightColor.get=function(){return f.utils.rgb2hex(this.uniforms.lightColor)},r.lightColor.set=function(e){f.utils.hex2rgb(e,this.uniforms.lightColor)},r.lightAlpha.get=function(){return this.uniforms.lightAlpha},r.lightAlpha.set=function(e){this.uniforms.lightAlpha=e},r.shadowColor.get=function(){return f.utils.rgb2hex(this.uniforms.shadowColor)},r.shadowColor.set=function(e){f.utils.hex2rgb(e,this.uniforms.shadowColor)},r.shadowAlpha.get=function(){return this.uniforms.shadowAlpha},r.shadowAlpha.set=function(e){this.uniforms.shadowAlpha=e},Object.defineProperties(e.prototype,r),e}(f.Filter),o=f.filters,l=o.BlurXFilter,c=o.BlurYFilter,h=o.AlphaFilter,p=function(o){function e(e,t,r,i){var n,a;void 0===e&&(e=2),void 0===t&&(t=4),void 0===r&&(r=f.settings.RESOLUTION),void 0===i&&(i=5),o.call(this),"number"==typeof e?a=n=e:e instanceof f.Point?(n=e.x,a=e.y):Array.isArray(e)&&(n=e[0],a=e[1]),this.blurXFilter=new l(n,t,r,i),this.blurYFilter=new c(a,t,r,i),this.blurYFilter.blendMode=f.BLEND_MODES.SCREEN,this.defaultFilter=new h}o&&(e.__proto__=o);var t={blur:{configurable:!0},blurX:{configurable:!0},blurY:{configurable:!0}};return((e.prototype=Object.create(o&&o.prototype)).constructor=e).prototype.apply=function(e,t,r){var i=e.getRenderTarget(!0);this.defaultFilter.apply(e,t,r),this.blurXFilter.apply(e,t,i),this.blurYFilter.apply(e,i,r),e.returnRenderTarget(i)},t.blur.get=function(){return this.blurXFilter.blur},t.blur.set=function(e){this.blurXFilter.blur=this.blurYFilter.blur=e},t.blurX.get=function(){return this.blurXFilter.blur},t.blurX.set=function(e){this.blurXFilter.blur=e},t.blurY.get=function(){return this.blurYFilter.blur},t.blurY.set=function(e){this.blurYFilter.blur=e},Object.defineProperties(e.prototype,t),e}(f.Filter),m=function(i){function e(e,t,r){i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","uniform float radius;\nuniform float strength;\nuniform vec2 center;\nuniform sampler2D uSampler;\nvarying vec2 vTextureCoord;\n\nuniform vec4 filterArea;\nuniform vec4 filterClamp;\nuniform vec2 dimensions;\n\nvoid main()\n{\n vec2 coord = vTextureCoord * filterArea.xy;\n coord -= center * dimensions.xy;\n float distance = length(coord);\n if (distance < radius) {\n float percent = distance / radius;\n if (strength > 0.0) {\n coord *= mix(1.0, smoothstep(0.0, radius / distance, percent), strength * 0.75);\n } else {\n coord *= mix(1.0, pow(percent, 1.0 + strength * 0.75) * radius / distance, 1.0 - percent);\n }\n }\n coord += center * dimensions.xy;\n coord /= filterArea.xy;\n vec2 clampedCoord = clamp(coord, filterClamp.xy, filterClamp.zw);\n vec4 color = texture2D(uSampler, clampedCoord);\n if (coord != clampedCoord) {\n color *= max(0.0, 1.0 - length(coord - clampedCoord));\n }\n\n gl_FragColor = color;\n}\n"),this.uniforms.dimensions=new Float32Array(2),this.center=e||[.5,.5],this.radius="number"==typeof t?t:100,this.strength="number"==typeof r?r:1}i&&(e.__proto__=i);var t={radius:{configurable:!0},strength:{configurable:!0},center:{configurable:!0}};return((e.prototype=Object.create(i&&i.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.dimensions[0]=t.sourceFrame.width,this.uniforms.dimensions[1]=t.sourceFrame.height,e.applyFilter(this,t,r,i)},t.radius.get=function(){return this.uniforms.radius},t.radius.set=function(e){this.uniforms.radius=e},t.strength.get=function(){return this.uniforms.strength},t.strength.set=function(e){this.uniforms.strength=e},t.center.get=function(){return this.uniforms.center},t.center.set=function(e){this.uniforms.center=e},Object.defineProperties(e.prototype,t),e}(f.Filter),g=function(i){function e(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=1),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform sampler2D colorMap;\nuniform float _mix;\nuniform float _size;\nuniform float _sliceSize;\nuniform float _slicePixelSize;\nuniform float _sliceInnerSize;\nvoid main() {\n vec4 color = texture2D(uSampler, vTextureCoord.xy);\n\n vec4 adjusted;\n if (color.a > 0.0) {\n color.rgb /= color.a;\n float innerWidth = _size - 1.0;\n float zSlice0 = min(floor(color.b * innerWidth), innerWidth);\n float zSlice1 = min(zSlice0 + 1.0, innerWidth);\n float xOffset = _slicePixelSize * 0.5 + color.r * _sliceInnerSize;\n float s0 = xOffset + (zSlice0 * _sliceSize);\n float s1 = xOffset + (zSlice1 * _sliceSize);\n float yOffset = _sliceSize * 0.5 + color.g * (1.0 - _sliceSize);\n vec4 slice0Color = texture2D(colorMap, vec2(s0,yOffset));\n vec4 slice1Color = texture2D(colorMap, vec2(s1,yOffset));\n float zOffset = fract(color.b * innerWidth);\n adjusted = mix(slice0Color, slice1Color, zOffset);\n\n color.rgb *= color.a;\n }\n gl_FragColor = vec4(mix(color, adjusted, _mix).rgb, color.a);\n\n}"),this._size=0,this._sliceSize=0,this._slicePixelSize=0,this._sliceInnerSize=0,this._scaleMode=null,this._nearest=!1,this.nearest=t,this.mix=r,this.colorMap=e}i&&(e.__proto__=i);var t={colorSize:{configurable:!0},colorMap:{configurable:!0},nearest:{configurable:!0}};return((e.prototype=Object.create(i&&i.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms._mix=this.mix,e.applyFilter(this,t,r,i)},t.colorSize.get=function(){return this._size},t.colorMap.get=function(){return this._colorMap},t.colorMap.set=function(e){e instanceof f.Texture||(e=f.Texture.from(e)),e&&e.baseTexture&&(e.baseTexture.scaleMode=this._scaleMode,e.baseTexture.mipmap=!1,this._size=e.height,this._sliceSize=1/this._size,this._slicePixelSize=this._sliceSize/this._size,this._sliceInnerSize=this._slicePixelSize*(this._size-1),this.uniforms._size=this._size,this.uniforms._sliceSize=this._sliceSize,this.uniforms._slicePixelSize=this._slicePixelSize,this.uniforms._sliceInnerSize=this._sliceInnerSize,this.uniforms.colorMap=e),this._colorMap=e},t.nearest.get=function(){return this._nearest},t.nearest.set=function(e){this._nearest=e,this._scaleMode=e?f.SCALE_MODES.NEAREST:f.SCALE_MODES.LINEAR;var t=this._colorMap;t&&t.baseTexture&&(t.baseTexture._glTextures={},t.baseTexture.scaleMode=this._scaleMode,t.baseTexture.mipmap=!1,t._updateID++,t.baseTexture.emit("update",t.baseTexture))},e.prototype.updateColorMap=function(){var e=this._colorMap;e&&e.baseTexture&&(e._updateID++,e.baseTexture.emit("update",e.baseTexture),this.colorMap=e)},e.prototype.destroy=function(e){this._colorMap&&this._colorMap.destroy(e),i.prototype.destroy.call(this)},Object.defineProperties(e.prototype,t),e}(f.Filter),v=function(i){function e(e,t,r){void 0===e&&(e=16711680),void 0===t&&(t=0),void 0===r&&(r=.4),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec3 originalColor;\nuniform vec3 newColor;\nuniform float epsilon;\nvoid main(void) {\n vec4 currentColor = texture2D(uSampler, vTextureCoord);\n vec3 colorDiff = originalColor - (currentColor.rgb / max(currentColor.a, 0.0000000001));\n float colorDistance = length(colorDiff);\n float doReplace = step(colorDistance, epsilon);\n gl_FragColor = vec4(mix(currentColor.rgb, (newColor + colorDiff) * currentColor.a, doReplace), currentColor.a);\n}\n"),this.uniforms.originalColor=new Float32Array(3),this.uniforms.newColor=new Float32Array(3),this.originalColor=e,this.newColor=t,this.epsilon=r}i&&(e.__proto__=i),(e.prototype=Object.create(i&&i.prototype)).constructor=e;var t={originalColor:{configurable:!0},newColor:{configurable:!0},epsilon:{configurable:!0}};return t.originalColor.set=function(e){var t=this.uniforms.originalColor;"number"==typeof e?(f.utils.hex2rgb(e,t),this._originalColor=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._originalColor=f.utils.rgb2hex(t))},t.originalColor.get=function(){return this._originalColor},t.newColor.set=function(e){var t=this.uniforms.newColor;"number"==typeof e?(f.utils.hex2rgb(e,t),this._newColor=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._newColor=f.utils.rgb2hex(t))},t.newColor.get=function(){return this._newColor},t.epsilon.set=function(e){this.uniforms.epsilon=e},t.epsilon.get=function(){return this.uniforms.epsilon},Object.defineProperties(e.prototype,t),e}(f.Filter),b=function(i){function e(e,t,r){void 0===t&&(t=200),void 0===r&&(r=200),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying mediump vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform vec2 texelSize;\nuniform float matrix[9];\n\nvoid main(void)\n{\n vec4 c11 = texture2D(uSampler, vTextureCoord - texelSize); // top left\n vec4 c12 = texture2D(uSampler, vec2(vTextureCoord.x, vTextureCoord.y - texelSize.y)); // top center\n vec4 c13 = texture2D(uSampler, vec2(vTextureCoord.x + texelSize.x, vTextureCoord.y - texelSize.y)); // top right\n\n vec4 c21 = texture2D(uSampler, vec2(vTextureCoord.x - texelSize.x, vTextureCoord.y)); // mid left\n vec4 c22 = texture2D(uSampler, vTextureCoord); // mid center\n vec4 c23 = texture2D(uSampler, vec2(vTextureCoord.x + texelSize.x, vTextureCoord.y)); // mid right\n\n vec4 c31 = texture2D(uSampler, vec2(vTextureCoord.x - texelSize.x, vTextureCoord.y + texelSize.y)); // bottom left\n vec4 c32 = texture2D(uSampler, vec2(vTextureCoord.x, vTextureCoord.y + texelSize.y)); // bottom center\n vec4 c33 = texture2D(uSampler, vTextureCoord + texelSize); // bottom right\n\n gl_FragColor =\n c11 * matrix[0] + c12 * matrix[1] + c13 * matrix[2] +\n c21 * matrix[3] + c22 * matrix[4] + c23 * matrix[5] +\n c31 * matrix[6] + c32 * matrix[7] + c33 * matrix[8];\n\n gl_FragColor.a = c22.a;\n}\n"),this.uniforms.texelSize=new Float32Array(2),this.uniforms.matrix=new Float32Array(9),void 0!==e&&(this.matrix=e),this.width=t,this.height=r}i&&(e.__proto__=i),(e.prototype=Object.create(i&&i.prototype)).constructor=e;var t={matrix:{configurable:!0},width:{configurable:!0},height:{configurable:!0}};return t.matrix.get=function(){return this.uniforms.matrix},t.matrix.set=function(e){var r=this;e.forEach(function(e,t){return r.uniforms.matrix[t]=e})},t.width.get=function(){return 1/this.uniforms.texelSize[0]},t.width.set=function(e){this.uniforms.texelSize[0]=1/e},t.height.get=function(){return 1/this.uniforms.texelSize[1]},t.height.set=function(e){this.uniforms.texelSize[1]=1/e},Object.defineProperties(e.prototype,t),e}(f.Filter),y=function(e){function t(){e.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\n\nvoid main(void)\n{\n float lum = length(texture2D(uSampler, vTextureCoord.xy).rgb);\n\n gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);\n\n if (lum < 1.00)\n {\n if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0)\n {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n }\n }\n\n if (lum < 0.75)\n {\n if (mod(gl_FragCoord.x - gl_FragCoord.y, 10.0) == 0.0)\n {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n }\n }\n\n if (lum < 0.50)\n {\n if (mod(gl_FragCoord.x + gl_FragCoord.y - 5.0, 10.0) == 0.0)\n {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n }\n }\n\n if (lum < 0.3)\n {\n if (mod(gl_FragCoord.x - gl_FragCoord.y - 5.0, 10.0) == 0.0)\n {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n }\n }\n}\n")}return e&&(t.__proto__=e),(t.prototype=Object.create(e&&e.prototype)).constructor=t}(f.Filter),_=function(t){function e(e){t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\n\nuniform vec4 filterArea;\nuniform vec2 dimensions;\n\nconst float SQRT_2 = 1.414213;\n\nconst float light = 1.0;\n\nuniform float curvature;\nuniform float lineWidth;\nuniform float lineContrast;\nuniform bool verticalLine;\nuniform float noise;\nuniform float noiseSize;\n\nuniform float vignetting;\nuniform float vignettingAlpha;\nuniform float vignettingBlur;\n\nuniform float seed;\nuniform float time;\n\nfloat rand(vec2 co) {\n return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453);\n}\n\nvoid main(void)\n{\n vec2 pixelCoord = vTextureCoord.xy * filterArea.xy;\n vec2 coord = pixelCoord / dimensions;\n\n vec2 dir = vec2(coord - vec2(0.5, 0.5));\n\n float _c = curvature > 0. ? curvature : 1.;\n float k = curvature > 0. ?(length(dir * dir) * 0.25 * _c * _c + 0.935 * _c) : 1.;\n vec2 uv = dir * k;\n\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n vec3 rgb = gl_FragColor.rgb;\n\n\n if (noise > 0.0 && noiseSize > 0.0)\n {\n pixelCoord.x = floor(pixelCoord.x / noiseSize);\n pixelCoord.y = floor(pixelCoord.y / noiseSize);\n float _noise = rand(pixelCoord * noiseSize * seed) - 0.5;\n rgb += _noise * noise;\n }\n\n if (lineWidth > 0.0) {\n float v = (verticalLine ? uv.x * dimensions.x : uv.y * dimensions.y) * min(1.0, 2.0 / lineWidth ) / _c;\n float j = 1. + cos(v * 1.2 - time) * 0.5 * lineContrast;\n rgb *= j;\n float segment = verticalLine ? mod((dir.x + .5) * dimensions.x, 4.) : mod((dir.y + .5) * dimensions.y, 4.);\n rgb *= 0.99 + ceil(segment) * 0.015;\n }\n\n if (vignetting > 0.0)\n {\n float outter = SQRT_2 - vignetting * SQRT_2;\n float darker = clamp((outter - length(dir) * SQRT_2) / ( 0.00001 + vignettingBlur * SQRT_2), 0.0, 1.0);\n rgb *= darker + (1.0 - darker) * (1.0 - vignettingAlpha);\n }\n\n gl_FragColor.rgb = rgb;\n}\n"),this.uniforms.dimensions=new Float32Array(2),this.time=0,this.seed=0,Object.assign(this,{curvature:1,lineWidth:1,lineContrast:.25,verticalLine:!1,noise:0,noiseSize:1,seed:0,vignetting:.3,vignettingAlpha:1,vignettingBlur:.3,time:0},e)}t&&(e.__proto__=t);var r={curvature:{configurable:!0},lineWidth:{configurable:!0},lineContrast:{configurable:!0},verticalLine:{configurable:!0},noise:{configurable:!0},noiseSize:{configurable:!0},vignetting:{configurable:!0},vignettingAlpha:{configurable:!0},vignettingBlur:{configurable:!0}};return((e.prototype=Object.create(t&&t.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.dimensions[0]=t.sourceFrame.width,this.uniforms.dimensions[1]=t.sourceFrame.height,this.uniforms.seed=this.seed,this.uniforms.time=this.time,e.applyFilter(this,t,r,i)},r.curvature.set=function(e){this.uniforms.curvature=e},r.curvature.get=function(){return this.uniforms.curvature},r.lineWidth.set=function(e){this.uniforms.lineWidth=e},r.lineWidth.get=function(){return this.uniforms.lineWidth},r.lineContrast.set=function(e){this.uniforms.lineContrast=e},r.lineContrast.get=function(){return this.uniforms.lineContrast},r.verticalLine.set=function(e){this.uniforms.verticalLine=e},r.verticalLine.get=function(){return this.uniforms.verticalLine},r.noise.set=function(e){this.uniforms.noise=e},r.noise.get=function(){return this.uniforms.noise},r.noiseSize.set=function(e){this.uniforms.noiseSize=e},r.noiseSize.get=function(){return this.uniforms.noiseSize},r.vignetting.set=function(e){this.uniforms.vignetting=e},r.vignetting.get=function(){return this.uniforms.vignetting},r.vignettingAlpha.set=function(e){this.uniforms.vignettingAlpha=e},r.vignettingAlpha.get=function(){return this.uniforms.vignettingAlpha},r.vignettingBlur.set=function(e){this.uniforms.vignettingBlur=e},r.vignettingBlur.get=function(){return this.uniforms.vignettingBlur},Object.defineProperties(e.prototype,r),e}(f.Filter),w=function(r){function e(e,t){void 0===e&&(e=1),void 0===t&&(t=5),r.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying vec2 vTextureCoord;\nvarying vec4 vColor;\n\nuniform vec4 filterArea;\nuniform sampler2D uSampler;\n\nuniform float angle;\nuniform float scale;\n\nfloat pattern()\n{\n float s = sin(angle), c = cos(angle);\n vec2 tex = vTextureCoord * filterArea.xy;\n vec2 point = vec2(\n c * tex.x - s * tex.y,\n s * tex.x + c * tex.y\n ) * scale;\n return (sin(point.x) * sin(point.y)) * 4.0;\n}\n\nvoid main()\n{\n vec4 color = texture2D(uSampler, vTextureCoord);\n float average = (color.r + color.g + color.b) / 3.0;\n gl_FragColor = vec4(vec3(average * 10.0 - 5.0 + pattern()), color.a);\n}\n"),this.scale=e,this.angle=t}r&&(e.__proto__=r),(e.prototype=Object.create(r&&r.prototype)).constructor=e;var t={scale:{configurable:!0},angle:{configurable:!0}};return t.scale.get=function(){return this.uniforms.scale},t.scale.set=function(e){this.uniforms.scale=e},t.angle.get=function(){return this.uniforms.angle},t.angle.set=function(e){this.uniforms.angle=e},Object.defineProperties(e.prototype,t),e}(f.Filter),x=function(h){function e(e){e&&e.constructor!==Object&&(console.warn("DropShadowFilter now uses options instead of (rotation, distance, blur, color, alpha)"),e={rotation:e},void 0!==arguments[1]&&(e.distance=arguments[1]),void 0!==arguments[2]&&(e.blur=arguments[2]),void 0!==arguments[3]&&(e.color=arguments[3]),void 0!==arguments[4]&&(e.alpha=arguments[4])),e=Object.assign({rotation:45,distance:5,color:0,alpha:.5,shadowOnly:!1,kernels:null,blur:2,quality:3,pixelSize:1,resolution:f.settings.RESOLUTION},e),h.call(this);var t=e.kernels,r=e.blur,i=e.quality,n=e.pixelSize,a=e.resolution;this._tintFilter=new f.Filter("attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform float alpha;\nuniform vec3 color;\nvoid main(void){\n vec4 sample = texture2D(uSampler, vTextureCoord);\n\n // Un-premultiply alpha before applying the color\n if (sample.a > 0.0) {\n sample.rgb /= sample.a;\n }\n\n // Premultiply alpha again\n sample.rgb = color.rgb * sample.a;\n\n // alpha user alpha\n sample *= alpha;\n\n gl_FragColor = sample;\n}"),this._tintFilter.uniforms.color=new Float32Array(4),this._tintFilter.resolution=a,this._blurFilter=t?new d(t):new d(r,i),this.pixelSize=n,this.resolution=a,this.targetTransform=new f.Matrix;var o=e.shadowOnly,s=e.rotation,u=e.distance,l=e.alpha,c=e.color;this.shadowOnly=o,this.rotation=s,this.distance=u,this.alpha=l,this.color=c,this._updatePadding()}h&&(e.__proto__=h);var t={resolution:{configurable:!0},distance:{configurable:!0},rotation:{configurable:!0},alpha:{configurable:!0},color:{configurable:!0},kernels:{configurable:!0},blur:{configurable:!0},quality:{configurable:!0},pixelSize:{configurable:!0}};return((e.prototype=Object.create(h&&h.prototype)).constructor=e).prototype.apply=function(e,t,r,i){var n=e.getRenderTarget();n.transform=this.targetTransform,this._tintFilter.apply(e,t,n,!0),n.transform=null,this._blurFilter.apply(e,n,r,i),!0!==this.shadowOnly&&e.applyFilter(this,t,r,!1),e.returnRenderTarget(n)},e.prototype._updatePadding=function(){this.padding=this.distance+2*this.blur},e.prototype._updateTargetTransform=function(){this.targetTransform.tx=this.distance*Math.cos(this.angle),this.targetTransform.ty=this.distance*Math.sin(this.angle)},t.resolution.get=function(){return this._resolution},t.resolution.set=function(e){this._resolution=e,this._tintFilter&&(this._tintFilter.resolution=e),this._blurFilter&&(this._blurFilter.resolution=e)},t.distance.get=function(){return this._distance},t.distance.set=function(e){this._distance=e,this._updatePadding(),this._updateTargetTransform()},t.rotation.get=function(){return this.angle/f.DEG_TO_RAD},t.rotation.set=function(e){this.angle=e*f.DEG_TO_RAD,this._updateTargetTransform()},t.alpha.get=function(){return this._tintFilter.uniforms.alpha},t.alpha.set=function(e){this._tintFilter.uniforms.alpha=e},t.color.get=function(){return f.utils.rgb2hex(this._tintFilter.uniforms.color)},t.color.set=function(e){f.utils.hex2rgb(e,this._tintFilter.uniforms.color)},t.kernels.get=function(){return this._blurFilter.kernels},t.kernels.set=function(e){this._blurFilter.kernels=e},t.blur.get=function(){return this._blurFilter.blur},t.blur.set=function(e){this._blurFilter.blur=e,this._updatePadding()},t.quality.get=function(){return this._blurFilter.quality},t.quality.set=function(e){this._blurFilter.quality=e},t.pixelSize.get=function(){return this._blurFilter.pixelSize},t.pixelSize.set=function(e){this._blurFilter.pixelSize=e},Object.defineProperties(e.prototype,t),e}(f.Filter),k=function(t){function e(e){void 0===e&&(e=5),t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform float strength;\nuniform vec4 filterArea;\n\n\nvoid main(void)\n{\n\tvec2 onePixel = vec2(1.0 / filterArea);\n\n\tvec4 color;\n\n\tcolor.rgb = vec3(0.5);\n\n\tcolor -= texture2D(uSampler, vTextureCoord - onePixel) * strength;\n\tcolor += texture2D(uSampler, vTextureCoord + onePixel) * strength;\n\n\tcolor.rgb = vec3((color.r + color.g + color.b) / 3.0);\n\n\tfloat alpha = texture2D(uSampler, vTextureCoord).a;\n\n\tgl_FragColor = vec4(color.rgb * alpha, alpha);\n}\n"),this.strength=e}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={strength:{configurable:!0}};return r.strength.get=function(){return this.uniforms.strength},r.strength.set=function(e){this.uniforms.strength=e},Object.defineProperties(e.prototype,r),e}(f.Filter),T=function(t){function e(e){void 0===e&&(e={}),t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","// precision highp float;\n\nvarying vec2 vTextureCoord;\nuniform sampler2D uSampler;\n\nuniform vec4 filterArea;\nuniform vec4 filterClamp;\nuniform vec2 dimensions;\nuniform float aspect;\n\nuniform sampler2D displacementMap;\nuniform float offset;\nuniform float sinDir;\nuniform float cosDir;\nuniform int fillMode;\n\nuniform float seed;\nuniform vec2 red;\nuniform vec2 green;\nuniform vec2 blue;\n\nconst int TRANSPARENT = 0;\nconst int ORIGINAL = 1;\nconst int LOOP = 2;\nconst int CLAMP = 3;\nconst int MIRROR = 4;\n\nvoid main(void)\n{\n vec2 coord = (vTextureCoord * filterArea.xy) / dimensions;\n\n if (coord.x > 1.0 || coord.y > 1.0) {\n return;\n }\n\n float cx = coord.x - 0.5;\n float cy = (coord.y - 0.5) * aspect;\n float ny = (-sinDir * cx + cosDir * cy) / aspect + 0.5;\n\n // displacementMap: repeat\n // ny = ny > 1.0 ? ny - 1.0 : (ny < 0.0 ? 1.0 + ny : ny);\n\n // displacementMap: mirror\n ny = ny > 1.0 ? 2.0 - ny : (ny < 0.0 ? -ny : ny);\n\n vec4 dc = texture2D(displacementMap, vec2(0.5, ny));\n\n float displacement = (dc.r - dc.g) * (offset / filterArea.x);\n\n coord = vTextureCoord + vec2(cosDir * displacement, sinDir * displacement * aspect);\n\n if (fillMode == CLAMP) {\n coord = clamp(coord, filterClamp.xy, filterClamp.zw);\n } else {\n if( coord.x > filterClamp.z ) {\n if (fillMode == ORIGINAL) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n } else if (fillMode == LOOP) {\n coord.x -= filterClamp.z;\n } else if (fillMode == MIRROR) {\n coord.x = filterClamp.z * 2.0 - coord.x;\n } else {\n gl_FragColor = vec4(0., 0., 0., 0.);\n return;\n }\n } else if( coord.x < filterClamp.x ) {\n if (fillMode == ORIGINAL) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n } else if (fillMode == LOOP) {\n coord.x += filterClamp.z;\n } else if (fillMode == MIRROR) {\n coord.x *= -filterClamp.z;\n } else {\n gl_FragColor = vec4(0., 0., 0., 0.);\n return;\n }\n }\n\n if( coord.y > filterClamp.w ) {\n if (fillMode == ORIGINAL) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n } else if (fillMode == LOOP) {\n coord.y -= filterClamp.w;\n } else if (fillMode == MIRROR) {\n coord.y = filterClamp.w * 2.0 - coord.y;\n } else {\n gl_FragColor = vec4(0., 0., 0., 0.);\n return;\n }\n } else if( coord.y < filterClamp.y ) {\n if (fillMode == ORIGINAL) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n } else if (fillMode == LOOP) {\n coord.y += filterClamp.w;\n } else if (fillMode == MIRROR) {\n coord.y *= -filterClamp.w;\n } else {\n gl_FragColor = vec4(0., 0., 0., 0.);\n return;\n }\n }\n }\n\n gl_FragColor.r = texture2D(uSampler, coord + red * (1.0 - seed * 0.4) / filterArea.xy).r;\n gl_FragColor.g = texture2D(uSampler, coord + green * (1.0 - seed * 0.3) / filterArea.xy).g;\n gl_FragColor.b = texture2D(uSampler, coord + blue * (1.0 - seed * 0.2) / filterArea.xy).b;\n gl_FragColor.a = texture2D(uSampler, coord).a;\n}\n"),this.uniforms.dimensions=new Float32Array(2),e=Object.assign({slices:5,offset:100,direction:0,fillMode:0,average:!1,seed:0,red:[0,0],green:[0,0],blue:[0,0],minSize:8,sampleSize:512},e),this.direction=e.direction,this.red=e.red,this.green=e.green,this.blue=e.blue,this.offset=e.offset,this.fillMode=e.fillMode,this.average=e.average,this.seed=e.seed,this.minSize=e.minSize,this.sampleSize=e.sampleSize,this._canvas=document.createElement("canvas"),this._canvas.width=4,this._canvas.height=this.sampleSize,this.texture=f.Texture.fromCanvas(this._canvas,f.SCALE_MODES.NEAREST),this._slices=0,this.slices=e.slices}t&&(e.__proto__=t);var r={sizes:{configurable:!0},offsets:{configurable:!0},slices:{configurable:!0},direction:{configurable:!0},red:{configurable:!0},green:{configurable:!0},blue:{configurable:!0}};return((e.prototype=Object.create(t&&t.prototype)).constructor=e).prototype.apply=function(e,t,r,i){var n=t.sourceFrame.width,a=t.sourceFrame.height;this.uniforms.dimensions[0]=n,this.uniforms.dimensions[1]=a,this.uniforms.aspect=a/n,this.uniforms.seed=this.seed,this.uniforms.offset=this.offset,this.uniforms.fillMode=this.fillMode,e.applyFilter(this,t,r,i)},e.prototype._randomizeSizes=function(){var e=this._sizes,t=this._slices-1,r=this.sampleSize,i=Math.min(this.minSize/r,.9/this._slices);if(this.average){for(var n=this._slices,a=1,o=0;o>0,i=e[t];e[t]=e[r],e[r]=i}},e.prototype._randomizeOffsets=function(){for(var e=0;e>0,t,1+o>>0),n+=o}r.baseTexture.update(),this.uniforms.displacementMap=r},r.sizes.set=function(e){for(var t=Math.min(this._slices,e.length),r=0;rthis._maxColors)throw"Length of replacements ("+i+") exceeds the maximum colors length ("+this._maxColors+")";t[3*i]=-1;for(var n=0;n 0.5) then: 1 - 2 * (1 - dst) * (1 - src)\n return vec3((dst.x <= 0.5) ? (2.0 * src.x * dst.x) : (1.0 - 2.0 * (1.0 - dst.x) * (1.0 - src.x)),\n (dst.y <= 0.5) ? (2.0 * src.y * dst.y) : (1.0 - 2.0 * (1.0 - dst.y) * (1.0 - src.y)),\n (dst.z <= 0.5) ? (2.0 * src.z * dst.z) : (1.0 - 2.0 * (1.0 - dst.z) * (1.0 - src.z)));\n}\n\n\nvoid main()\n{\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n vec3 color = gl_FragColor.rgb;\n\n if (sepia > 0.0)\n {\n float gray = (color.x + color.y + color.z) / 3.0;\n vec3 grayscale = vec3(gray);\n\n color = Overlay(SEPIA_RGB, grayscale);\n\n color = grayscale + sepia * (color - grayscale);\n }\n\n vec2 coord = vTextureCoord * filterArea.xy / dimensions.xy;\n\n if (vignetting > 0.0)\n {\n float outter = SQRT_2 - vignetting * SQRT_2;\n vec2 dir = vec2(vec2(0.5, 0.5) - coord);\n dir.y *= dimensions.y / dimensions.x;\n float darker = clamp((outter - length(dir) * SQRT_2) / ( 0.00001 + vignettingBlur * SQRT_2), 0.0, 1.0);\n color.rgb *= darker + (1.0 - darker) * (1.0 - vignettingAlpha);\n }\n\n if (scratchDensity > seed && scratch != 0.0)\n {\n float phase = seed * 256.0;\n float s = mod(floor(phase), 2.0);\n float dist = 1.0 / scratchDensity;\n float d = distance(coord, vec2(seed * dist, abs(s - seed * dist)));\n if (d < seed * 0.6 + 0.4)\n {\n highp float period = scratchDensity * 10.0;\n\n float xx = coord.x * period + phase;\n float aa = abs(mod(xx, 0.5) * 4.0);\n float bb = mod(floor(xx / 0.5), 2.0);\n float yy = (1.0 - bb) * aa + bb * (2.0 - aa);\n\n float kk = 2.0 * period;\n float dw = scratchWidth / dimensions.x * (0.75 + seed);\n float dh = dw * kk;\n\n float tine = (yy - (2.0 - dh));\n\n if (tine > 0.0) {\n float _sign = sign(scratch);\n\n tine = s * tine / period + scratch + 0.1;\n tine = clamp(tine + 1.0, 0.5 + _sign * 0.5, 1.5 + _sign * 0.5);\n\n color.rgb *= tine;\n }\n }\n }\n\n if (noise > 0.0 && noiseSize > 0.0)\n {\n vec2 pixelCoord = vTextureCoord.xy * filterArea.xy;\n pixelCoord.x = floor(pixelCoord.x / noiseSize);\n pixelCoord.y = floor(pixelCoord.y / noiseSize);\n // vec2 d = pixelCoord * noiseSize * vec2(1024.0 + seed * 512.0, 1024.0 - seed * 512.0);\n // float _noise = snoise(d) * 0.5;\n float _noise = rand(pixelCoord * noiseSize * seed) - 0.5;\n color += _noise * noise;\n }\n\n gl_FragColor.rgb = color;\n}\n"),this.uniforms.dimensions=new Float32Array(2),"number"==typeof e?(this.seed=e,e=null):this.seed=t,Object.assign(this,{sepia:.3,noise:.3,noiseSize:1,scratch:.5,scratchDensity:.3,scratchWidth:1,vignetting:.3,vignettingAlpha:1,vignettingBlur:.3},e)}r&&(e.__proto__=r);var t={sepia:{configurable:!0},noise:{configurable:!0},noiseSize:{configurable:!0},scratch:{configurable:!0},scratchDensity:{configurable:!0},scratchWidth:{configurable:!0},vignetting:{configurable:!0},vignettingAlpha:{configurable:!0},vignettingBlur:{configurable:!0}};return((e.prototype=Object.create(r&&r.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.dimensions[0]=t.sourceFrame.width,this.uniforms.dimensions[1]=t.sourceFrame.height,this.uniforms.seed=this.seed,e.applyFilter(this,t,r,i)},t.sepia.set=function(e){this.uniforms.sepia=e},t.sepia.get=function(){return this.uniforms.sepia},t.noise.set=function(e){this.uniforms.noise=e},t.noise.get=function(){return this.uniforms.noise},t.noiseSize.set=function(e){this.uniforms.noiseSize=e},t.noiseSize.get=function(){return this.uniforms.noiseSize},t.scratch.set=function(e){this.uniforms.scratch=e},t.scratch.get=function(){return this.uniforms.scratch},t.scratchDensity.set=function(e){this.uniforms.scratchDensity=e},t.scratchDensity.get=function(){return this.uniforms.scratchDensity},t.scratchWidth.set=function(e){this.uniforms.scratchWidth=e},t.scratchWidth.get=function(){return this.uniforms.scratchWidth},t.vignetting.set=function(e){this.uniforms.vignetting=e},t.vignetting.get=function(){return this.uniforms.vignetting},t.vignettingAlpha.set=function(e){this.uniforms.vignettingAlpha=e},t.vignettingAlpha.get=function(){return this.uniforms.vignettingAlpha},t.vignettingBlur.set=function(e){this.uniforms.vignettingBlur=e},t.vignettingBlur.get=function(){return this.uniforms.vignettingBlur},Object.defineProperties(e.prototype,t),e}(f.Filter),A=function(a){function o(e,t,r){void 0===e&&(e=1),void 0===t&&(t=0),void 0===r&&(r=.1);var i=Math.max(r*o.MAX_SAMPLES,o.MIN_SAMPLES),n=(2*Math.PI/i).toFixed(7);a.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\n\nuniform vec2 thickness;\nuniform vec4 outlineColor;\nuniform vec4 filterClamp;\n\nconst float DOUBLE_PI = 3.14159265358979323846264 * 2.;\n\nvoid main(void) {\n vec4 ownColor = texture2D(uSampler, vTextureCoord);\n vec4 curColor;\n float maxAlpha = 0.;\n vec2 displaced;\n for (float angle = 0.; angle <= DOUBLE_PI; angle += ${angleStep}) {\n displaced.x = vTextureCoord.x + thickness.x * cos(angle);\n displaced.y = vTextureCoord.y + thickness.y * sin(angle);\n curColor = texture2D(uSampler, clamp(displaced, filterClamp.xy, filterClamp.zw));\n maxAlpha = max(maxAlpha, curColor.a);\n }\n float resultAlpha = max(maxAlpha, ownColor.a);\n gl_FragColor = vec4((ownColor.rgb + outlineColor.rgb * (1. - ownColor.a)) * resultAlpha, resultAlpha);\n}\n".replace(/\$\{angleStep\}/,n)),this.uniforms.thickness=new Float32Array([0,0]),this.thickness=e,this.uniforms.outlineColor=new Float32Array([0,0,0,1]),this.color=t,this.quality=r}a&&(o.__proto__=a);var e={color:{configurable:!0}};return((o.prototype=Object.create(a&&a.prototype)).constructor=o).prototype.apply=function(e,t,r,i){this.uniforms.thickness[0]=this.thickness/t.size.width,this.uniforms.thickness[1]=this.thickness/t.size.height,e.applyFilter(this,t,r,i)},e.color.get=function(){return f.utils.rgb2hex(this.uniforms.outlineColor)},e.color.set=function(e){f.utils.hex2rgb(e,this.uniforms.outlineColor)},Object.defineProperties(o.prototype,e),o}(f.Filter);A.MIN_SAMPLES=1,A.MAX_SAMPLES=100;var O=function(t){function e(e){void 0===e&&(e=10),t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying vec2 vTextureCoord;\n\nuniform vec2 size;\nuniform sampler2D uSampler;\n\nuniform vec4 filterArea;\n\nvec2 mapCoord( vec2 coord )\n{\n coord *= filterArea.xy;\n coord += filterArea.zw;\n\n return coord;\n}\n\nvec2 unmapCoord( vec2 coord )\n{\n coord -= filterArea.zw;\n coord /= filterArea.xy;\n\n return coord;\n}\n\nvec2 pixelate(vec2 coord, vec2 size)\n{\n\treturn floor( coord / size ) * size;\n}\n\nvoid main(void)\n{\n vec2 coord = mapCoord(vTextureCoord);\n\n coord = pixelate(coord, size);\n\n coord = unmapCoord(coord);\n\n gl_FragColor = texture2D(uSampler, coord);\n}\n"),this.size=e}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={size:{configurable:!0}};return r.size.get=function(){return this.uniforms.size},r.size.set=function(e){"number"==typeof e&&(e=[e,e]),this.uniforms.size=e},Object.defineProperties(e.prototype,r),e}(f.Filter),I=function(n){function e(e,t,r,i){void 0===e&&(e=0),void 0===t&&(t=[0,0]),void 0===r&&(r=5),void 0===i&&(i=-1),n.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec4 filterArea;\n\nuniform float uRadian;\nuniform vec2 uCenter;\nuniform float uRadius;\nuniform int uKernelSize;\n\nconst int MAX_KERNEL_SIZE = 2048;\n\nvoid main(void)\n{\n vec4 color = texture2D(uSampler, vTextureCoord);\n\n if (uKernelSize == 0)\n {\n gl_FragColor = color;\n return;\n }\n\n float aspect = filterArea.y / filterArea.x;\n vec2 center = uCenter.xy / filterArea.xy;\n float gradient = uRadius / filterArea.x * 0.3;\n float radius = uRadius / filterArea.x - gradient * 0.5;\n int k = uKernelSize - 1;\n\n vec2 coord = vTextureCoord;\n vec2 dir = vec2(center - coord);\n float dist = length(vec2(dir.x, dir.y * aspect));\n\n float radianStep = uRadian;\n if (radius >= 0.0 && dist > radius) {\n float delta = dist - radius;\n float gap = gradient;\n float scale = 1.0 - abs(delta / gap);\n if (scale <= 0.0) {\n gl_FragColor = color;\n return;\n }\n radianStep *= scale;\n }\n radianStep /= float(k);\n\n float s = sin(radianStep);\n float c = cos(radianStep);\n mat2 rotationMatrix = mat2(vec2(c, -s), vec2(s, c));\n\n for(int i = 0; i < MAX_KERNEL_SIZE - 1; i++) {\n if (i == k) {\n break;\n }\n\n coord -= center;\n coord.y *= aspect;\n coord = rotationMatrix * coord;\n coord.y /= aspect;\n coord += center;\n\n vec4 sample = texture2D(uSampler, coord);\n\n // switch to pre-multiplied alpha to correctly blur transparent images\n // sample.rgb *= sample.a;\n\n color += sample;\n }\n\n gl_FragColor = color / float(uKernelSize);\n}\n"),this._angle=0,this.angle=e,this.center=t,this.kernelSize=r,this.radius=i}n&&(e.__proto__=n);var t={angle:{configurable:!0},center:{configurable:!0},radius:{configurable:!0}};return((e.prototype=Object.create(n&&n.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.uKernelSize=0!==this._angle?this.kernelSize:0,e.applyFilter(this,t,r,i)},t.angle.set=function(e){this._angle=e,this.uniforms.uRadian=e*Math.PI/180},t.angle.get=function(){return this._angle},t.center.get=function(){return this.uniforms.uCenter},t.center.set=function(e){this.uniforms.uCenter=e},t.radius.get=function(){return this.uniforms.uRadius},t.radius.set=function(e){(e<0||e===1/0)&&(e=-1),this.uniforms.uRadius=e},Object.defineProperties(e.prototype,t),e}(f.Filter),R=function(t){function e(e){t.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\n\nuniform vec4 filterArea;\nuniform vec4 filterClamp;\nuniform vec2 dimensions;\n\nuniform bool mirror;\nuniform float boundary;\nuniform vec2 amplitude;\nuniform vec2 waveLength;\nuniform vec2 alpha;\nuniform float time;\n\nfloat rand(vec2 co) {\n return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453);\n}\n\nvoid main(void)\n{\n vec2 pixelCoord = vTextureCoord.xy * filterArea.xy;\n vec2 coord = pixelCoord / dimensions;\n\n if (coord.y < boundary) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n }\n\n float k = (coord.y - boundary) / (1. - boundary + 0.0001);\n float areaY = boundary * dimensions.y / filterArea.y;\n float v = areaY + areaY - vTextureCoord.y;\n float y = mirror ? v : vTextureCoord.y;\n\n float _amplitude = ((amplitude.y - amplitude.x) * k + amplitude.x ) / filterArea.x;\n float _waveLength = ((waveLength.y - waveLength.x) * k + waveLength.x) / filterArea.y;\n float _alpha = (alpha.y - alpha.x) * k + alpha.x;\n\n float x = vTextureCoord.x + cos(v * 6.28 / _waveLength - time) * _amplitude;\n x = clamp(x, filterClamp.x, filterClamp.z);\n\n vec4 color = texture2D(uSampler, vec2(x, y));\n\n gl_FragColor = color * _alpha;\n}\n"),this.uniforms.amplitude=new Float32Array(2),this.uniforms.waveLength=new Float32Array(2),this.uniforms.alpha=new Float32Array(2),this.uniforms.dimensions=new Float32Array(2),Object.assign(this,{mirror:!0,boundary:.5,amplitude:[0,20],waveLength:[30,100],alpha:[1,1],time:0},e)}t&&(e.__proto__=t);var r={mirror:{configurable:!0},boundary:{configurable:!0},amplitude:{configurable:!0},waveLength:{configurable:!0},alpha:{configurable:!0}};return((e.prototype=Object.create(t&&t.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.dimensions[0]=t.sourceFrame.width,this.uniforms.dimensions[1]=t.sourceFrame.height,this.uniforms.time=this.time,e.applyFilter(this,t,r,i)},r.mirror.set=function(e){this.uniforms.mirror=e},r.mirror.get=function(){return this.uniforms.mirror},r.boundary.set=function(e){this.uniforms.boundary=e},r.boundary.get=function(){return this.uniforms.boundary},r.amplitude.set=function(e){this.uniforms.amplitude[0]=e[0],this.uniforms.amplitude[1]=e[1]},r.amplitude.get=function(){return this.uniforms.amplitude},r.waveLength.set=function(e){this.uniforms.waveLength[0]=e[0],this.uniforms.waveLength[1]=e[1]},r.waveLength.get=function(){return this.uniforms.waveLength},r.alpha.set=function(e){this.uniforms.alpha[0]=e[0],this.uniforms.alpha[1]=e[1]},r.alpha.get=function(){return this.uniforms.alpha},Object.defineProperties(e.prototype,r),e}(f.Filter),D=function(i){function e(e,t,r){void 0===e&&(e=[-10,0]),void 0===t&&(t=[0,10]),void 0===r&&(r=[0,0]),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","precision mediump float;\n\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform vec4 filterArea;\nuniform vec2 red;\nuniform vec2 green;\nuniform vec2 blue;\n\nvoid main(void)\n{\n gl_FragColor.r = texture2D(uSampler, vTextureCoord + red/filterArea.xy).r;\n gl_FragColor.g = texture2D(uSampler, vTextureCoord + green/filterArea.xy).g;\n gl_FragColor.b = texture2D(uSampler, vTextureCoord + blue/filterArea.xy).b;\n gl_FragColor.a = texture2D(uSampler, vTextureCoord).a;\n}\n"),this.red=e,this.green=t,this.blue=r}i&&(e.__proto__=i),(e.prototype=Object.create(i&&i.prototype)).constructor=e;var t={red:{configurable:!0},green:{configurable:!0},blue:{configurable:!0}};return t.red.get=function(){return this.uniforms.red},t.red.set=function(e){this.uniforms.red=e},t.green.get=function(){return this.uniforms.green},t.green.set=function(e){this.uniforms.green=e},t.blue.get=function(){return this.uniforms.blue},t.blue.set=function(e){this.uniforms.blue=e},Object.defineProperties(e.prototype,t),e}(f.Filter),j=function(i){function e(e,t,r){void 0===e&&(e=[0,0]),void 0===t&&(t={}),void 0===r&&(r=0),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec4 filterArea;\nuniform vec4 filterClamp;\n\nuniform vec2 center;\n\nuniform float amplitude;\nuniform float wavelength;\n// uniform float power;\nuniform float brightness;\nuniform float speed;\nuniform float radius;\n\nuniform float time;\n\nconst float PI = 3.14159;\n\nvoid main()\n{\n float halfWavelength = wavelength * 0.5 / filterArea.x;\n float maxRadius = radius / filterArea.x;\n float currentRadius = time * speed / filterArea.x;\n\n float fade = 1.0;\n\n if (maxRadius > 0.0) {\n if (currentRadius > maxRadius) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n }\n fade = 1.0 - pow(currentRadius / maxRadius, 2.0);\n }\n\n vec2 dir = vec2(vTextureCoord - center / filterArea.xy);\n dir.y *= filterArea.y / filterArea.x;\n float dist = length(dir);\n\n if (dist <= 0.0 || dist < currentRadius - halfWavelength || dist > currentRadius + halfWavelength) {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n }\n\n vec2 diffUV = normalize(dir);\n\n float diff = (dist - currentRadius) / halfWavelength;\n\n float p = 1.0 - pow(abs(diff), 2.0);\n\n // float powDiff = diff * pow(p, 2.0) * ( amplitude * fade );\n float powDiff = 1.25 * sin(diff * PI) * p * ( amplitude * fade );\n\n vec2 offset = diffUV * powDiff / filterArea.xy;\n\n // Do clamp :\n vec2 coord = vTextureCoord + offset;\n vec2 clampedCoord = clamp(coord, filterClamp.xy, filterClamp.zw);\n vec4 color = texture2D(uSampler, clampedCoord);\n if (coord != clampedCoord) {\n color *= max(0.0, 1.0 - length(coord - clampedCoord));\n }\n\n // No clamp :\n // gl_FragColor = texture2D(uSampler, vTextureCoord + offset);\n\n color.rgb *= 1.0 + (brightness - 1.0) * p * fade;\n\n gl_FragColor = color;\n}\n"),this.center=e,Array.isArray(t)&&(console.warn("Deprecated Warning: ShockwaveFilter params Array has been changed to options Object."),t={}),t=Object.assign({amplitude:30,wavelength:160,brightness:1,speed:500,radius:-1},t),this.amplitude=t.amplitude,this.wavelength=t.wavelength,this.brightness=t.brightness,this.speed=t.speed,this.radius=t.radius,this.time=r}i&&(e.__proto__=i);var t={center:{configurable:!0},amplitude:{configurable:!0},wavelength:{configurable:!0},brightness:{configurable:!0},speed:{configurable:!0},radius:{configurable:!0}};return((e.prototype=Object.create(i&&i.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.time=this.time,e.applyFilter(this,t,r,i)},t.center.get=function(){return this.uniforms.center},t.center.set=function(e){this.uniforms.center=e},t.amplitude.get=function(){return this.uniforms.amplitude},t.amplitude.set=function(e){this.uniforms.amplitude=e},t.wavelength.get=function(){return this.uniforms.wavelength},t.wavelength.set=function(e){this.uniforms.wavelength=e},t.brightness.get=function(){return this.uniforms.brightness},t.brightness.set=function(e){this.uniforms.brightness=e},t.speed.get=function(){return this.uniforms.speed},t.speed.set=function(e){this.uniforms.speed=e},t.radius.get=function(){return this.uniforms.radius},t.radius.set=function(e){this.uniforms.radius=e},Object.defineProperties(e.prototype,t),e}(f.Filter),L=function(i){function e(e,t,r){void 0===t&&(t=0),void 0===r&&(r=1),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform sampler2D uLightmap;\nuniform vec4 filterArea;\nuniform vec2 dimensions;\nuniform vec4 ambientColor;\nvoid main() {\n vec4 diffuseColor = texture2D(uSampler, vTextureCoord);\n vec2 lightCoord = (vTextureCoord * filterArea.xy) / dimensions;\n vec4 light = texture2D(uLightmap, lightCoord);\n vec3 ambient = ambientColor.rgb * ambientColor.a;\n vec3 intensity = ambient + light.rgb;\n vec3 finalColor = diffuseColor.rgb * intensity;\n gl_FragColor = vec4(finalColor, diffuseColor.a);\n}\n"),this.uniforms.dimensions=new Float32Array(2),this.uniforms.ambientColor=new Float32Array([0,0,0,r]),this.texture=e,this.color=t}i&&(e.__proto__=i);var t={texture:{configurable:!0},color:{configurable:!0},alpha:{configurable:!0}};return((e.prototype=Object.create(i&&i.prototype)).constructor=e).prototype.apply=function(e,t,r,i){this.uniforms.dimensions[0]=t.sourceFrame.width,this.uniforms.dimensions[1]=t.sourceFrame.height,e.applyFilter(this,t,r,i)},t.texture.get=function(){return this.uniforms.uLightmap},t.texture.set=function(e){this.uniforms.uLightmap=e},t.color.set=function(e){var t=this.uniforms.ambientColor;"number"==typeof e?(f.utils.hex2rgb(e,t),this._color=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],this._color=f.utils.rgb2hex(t))},t.color.get=function(){return this._color},t.alpha.get=function(){return this.uniforms.ambientColor[3]},t.alpha.set=function(e){this.uniforms.ambientColor[3]=e},Object.defineProperties(e.prototype,t),e}(f.Filter),z=function(n){function e(e,t,r,i){void 0===e&&(e=100),void 0===t&&(t=600),void 0===r&&(r=null),void 0===i&&(i=null),n.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform float blur;\nuniform float gradientBlur;\nuniform vec2 start;\nuniform vec2 end;\nuniform vec2 delta;\nuniform vec2 texSize;\n\nfloat random(vec3 scale, float seed)\n{\n return fract(sin(dot(gl_FragCoord.xyz + seed, scale)) * 43758.5453 + seed);\n}\n\nvoid main(void)\n{\n vec4 color = vec4(0.0);\n float total = 0.0;\n\n float offset = random(vec3(12.9898, 78.233, 151.7182), 0.0);\n vec2 normal = normalize(vec2(start.y - end.y, end.x - start.x));\n float radius = smoothstep(0.0, 1.0, abs(dot(vTextureCoord * texSize - start, normal)) / gradientBlur) * blur;\n\n for (float t = -30.0; t <= 30.0; t++)\n {\n float percent = (t + offset - 0.5) / 30.0;\n float weight = 1.0 - abs(percent);\n vec4 sample = texture2D(uSampler, vTextureCoord + delta / texSize * percent * radius);\n sample.rgb *= sample.a;\n color += sample * weight;\n total += weight;\n }\n\n color /= total;\n color.rgb /= color.a + 0.00001;\n\n gl_FragColor = color;\n}\n"),this.uniforms.blur=e,this.uniforms.gradientBlur=t,this.uniforms.start=r||new f.Point(0,window.innerHeight/2),this.uniforms.end=i||new f.Point(600,window.innerHeight/2),this.uniforms.delta=new f.Point(30,30),this.uniforms.texSize=new f.Point(window.innerWidth,window.innerHeight),this.updateDelta()}n&&(e.__proto__=n);var t={blur:{configurable:!0},gradientBlur:{configurable:!0},start:{configurable:!0},end:{configurable:!0}};return((e.prototype=Object.create(n&&n.prototype)).constructor=e).prototype.updateDelta=function(){this.uniforms.delta.x=0,this.uniforms.delta.y=0},t.blur.get=function(){return this.uniforms.blur},t.blur.set=function(e){this.uniforms.blur=e},t.gradientBlur.get=function(){return this.uniforms.gradientBlur},t.gradientBlur.set=function(e){this.uniforms.gradientBlur=e},t.start.get=function(){return this.uniforms.start},t.start.set=function(e){this.uniforms.start=e,this.updateDelta()},t.end.get=function(){return this.uniforms.end},t.end.set=function(e){this.uniforms.end=e,this.updateDelta()},Object.defineProperties(e.prototype,t),e}(f.Filter),F=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),((t.prototype=Object.create(e&&e.prototype)).constructor=t).prototype.updateDelta=function(){var e=this.uniforms.end.x-this.uniforms.start.x,t=this.uniforms.end.y-this.uniforms.start.y,r=Math.sqrt(e*e+t*t);this.uniforms.delta.x=e/r,this.uniforms.delta.y=t/r},t}(z),B=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),((t.prototype=Object.create(e&&e.prototype)).constructor=t).prototype.updateDelta=function(){var e=this.uniforms.end.x-this.uniforms.start.x,t=this.uniforms.end.y-this.uniforms.start.y,r=Math.sqrt(e*e+t*t);this.uniforms.delta.x=-t/r,this.uniforms.delta.y=e/r},t}(z),N=function(n){function e(e,t,r,i){void 0===e&&(e=100),void 0===t&&(t=600),void 0===r&&(r=null),void 0===i&&(i=null),n.call(this),this.tiltShiftXFilter=new F(e,t,r,i),this.tiltShiftYFilter=new B(e,t,r,i)}n&&(e.__proto__=n);var t={blur:{configurable:!0},gradientBlur:{configurable:!0},start:{configurable:!0},end:{configurable:!0}};return((e.prototype=Object.create(n&&n.prototype)).constructor=e).prototype.apply=function(e,t,r){var i=e.getRenderTarget(!0);this.tiltShiftXFilter.apply(e,t,i),this.tiltShiftYFilter.apply(e,i,r),e.returnRenderTarget(i)},t.blur.get=function(){return this.tiltShiftXFilter.blur},t.blur.set=function(e){this.tiltShiftXFilter.blur=this.tiltShiftYFilter.blur=e},t.gradientBlur.get=function(){return this.tiltShiftXFilter.gradientBlur},t.gradientBlur.set=function(e){this.tiltShiftXFilter.gradientBlur=this.tiltShiftYFilter.gradientBlur=e},t.start.get=function(){return this.tiltShiftXFilter.start},t.start.set=function(e){this.tiltShiftXFilter.start=this.tiltShiftYFilter.start=e},t.end.get=function(){return this.tiltShiftXFilter.end},t.end.set=function(e){this.tiltShiftXFilter.end=this.tiltShiftYFilter.end=e},Object.defineProperties(e.prototype,t),e}(f.Filter),U=function(i){function e(e,t,r){void 0===e&&(e=200),void 0===t&&(t=4),void 0===r&&(r=20),i.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform float radius;\nuniform float angle;\nuniform vec2 offset;\nuniform vec4 filterArea;\n\nvec2 mapCoord( vec2 coord )\n{\n coord *= filterArea.xy;\n coord += filterArea.zw;\n\n return coord;\n}\n\nvec2 unmapCoord( vec2 coord )\n{\n coord -= filterArea.zw;\n coord /= filterArea.xy;\n\n return coord;\n}\n\nvec2 twist(vec2 coord)\n{\n coord -= offset;\n\n float dist = length(coord);\n\n if (dist < radius)\n {\n float ratioDist = (radius - dist) / radius;\n float angleMod = ratioDist * ratioDist * angle;\n float s = sin(angleMod);\n float c = cos(angleMod);\n coord = vec2(coord.x * c - coord.y * s, coord.x * s + coord.y * c);\n }\n\n coord += offset;\n\n return coord;\n}\n\nvoid main(void)\n{\n\n vec2 coord = mapCoord(vTextureCoord);\n\n coord = twist(coord);\n\n coord = unmapCoord(coord);\n\n gl_FragColor = texture2D(uSampler, coord );\n\n}\n"),this.radius=e,this.angle=t,this.padding=r}i&&(e.__proto__=i),(e.prototype=Object.create(i&&i.prototype)).constructor=e;var t={offset:{configurable:!0},radius:{configurable:!0},angle:{configurable:!0}};return t.offset.get=function(){return this.uniforms.offset},t.offset.set=function(e){this.uniforms.offset=e},t.radius.get=function(){return this.uniforms.radius},t.radius.set=function(e){this.uniforms.radius=e},t.angle.get=function(){return this.uniforms.angle},t.angle.set=function(e){this.uniforms.angle=e},Object.defineProperties(e.prototype,t),e}(f.Filter),X=function(n){function e(e,t,r,i){void 0===e&&(e=.1),void 0===t&&(t=[0,0]),void 0===r&&(r=0),void 0===i&&(i=-1),n.call(this,"attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}","varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec4 filterArea;\n\nuniform vec2 uCenter;\nuniform float uStrength;\nuniform float uInnerRadius;\nuniform float uRadius;\n\nconst float MAX_KERNEL_SIZE = 32.0;\n\n// author: http://byteblacksmith.com/improvements-to-the-canonical-one-liner-glsl-rand-for-opengl-es-2-0/\nhighp float rand(vec2 co, float seed) {\n const highp float a = 12.9898, b = 78.233, c = 43758.5453;\n highp float dt = dot(co + seed, vec2(a, b)), sn = mod(dt, 3.14159);\n return fract(sin(sn) * c + seed);\n}\n\nvoid main() {\n\n float minGradient = uInnerRadius * 0.3;\n float innerRadius = (uInnerRadius + minGradient * 0.5) / filterArea.x;\n\n float gradient = uRadius * 0.3;\n float radius = (uRadius - gradient * 0.5) / filterArea.x;\n\n float countLimit = MAX_KERNEL_SIZE;\n\n vec2 dir = vec2(uCenter.xy / filterArea.xy - vTextureCoord);\n float dist = length(vec2(dir.x, dir.y * filterArea.y / filterArea.x));\n\n float strength = uStrength;\n\n float delta = 0.0;\n float gap;\n if (dist < innerRadius) {\n delta = innerRadius - dist;\n gap = minGradient;\n } else if (radius >= 0.0 && dist > radius) { // radius < 0 means it's infinity\n delta = dist - radius;\n gap = gradient;\n }\n\n if (delta > 0.0) {\n float normalCount = gap / filterArea.x;\n delta = (normalCount - delta) / normalCount;\n countLimit *= delta;\n strength *= delta;\n if (countLimit < 1.0)\n {\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n return;\n }\n }\n\n // randomize the lookup values to hide the fixed number of samples\n float offset = rand(vTextureCoord, 0.0);\n\n float total = 0.0;\n vec4 color = vec4(0.0);\n\n dir *= strength;\n\n for (float t = 0.0; t < MAX_KERNEL_SIZE; t++) {\n float percent = (t + offset) / MAX_KERNEL_SIZE;\n float weight = 4.0 * (percent - percent * percent);\n vec2 p = vTextureCoord + dir * percent;\n vec4 sample = texture2D(uSampler, p);\n\n // switch to pre-multiplied alpha to correctly blur transparent images\n // sample.rgb *= sample.a;\n\n color += sample * weight;\n total += weight;\n\n if (t > countLimit){\n break;\n }\n }\n\n color /= total;\n // switch back from pre-multiplied alpha\n // color.rgb /= color.a + 0.00001;\n\n gl_FragColor = color;\n}\n"),this.center=t,this.strength=e,this.innerRadius=r,this.radius=i}n&&(e.__proto__=n),(e.prototype=Object.create(n&&n.prototype)).constructor=e;var t={center:{configurable:!0},strength:{configurable:!0},innerRadius:{configurable:!0},radius:{configurable:!0}};return t.center.get=function(){return this.uniforms.uCenter},t.center.set=function(e){this.uniforms.uCenter=e},t.strength.get=function(){return this.uniforms.uStrength},t.strength.set=function(e){this.uniforms.uStrength=e},t.innerRadius.get=function(){return this.uniforms.uInnerRadius},t.innerRadius.set=function(e){this.uniforms.uInnerRadius=e},t.radius.get=function(){return this.uniforms.uRadius},t.radius.set=function(e){(e<0||e===1/0)&&(e=-1),this.uniforms.uRadius=e},Object.defineProperties(e.prototype,t),e}(f.Filter);return e.AdjustmentFilter=t,e.AdvancedBloomFilter=i,e.AsciiFilter=n,e.BevelFilter=a,e.BloomFilter=p,e.BulgePinchFilter=m,e.ColorMapFilter=g,e.ColorReplaceFilter=v,e.ConvolutionFilter=b,e.CrossHatchFilter=y,e.CRTFilter=_,e.DotFilter=w,e.DropShadowFilter=x,e.EmbossFilter=k,e.GlitchFilter=T,e.GlowFilter=S,e.GodrayFilter=E,e.KawaseBlurFilter=d,e.MotionBlurFilter=M,e.MultiColorReplaceFilter=P,e.OldFilmFilter=C,e.OutlineFilter=A,e.PixelateFilter=O,e.RadialBlurFilter=I,e.ReflectionFilter=R,e.RGBSplitFilter=D,e.ShockwaveFilter=j,e.SimpleLightmapFilter=L,e.TiltShiftFilter=N,e.TiltShiftAxisFilter=z,e.TiltShiftXFilter=F,e.TiltShiftYFilter=B,e.TwistFilter=U,e.ZoomBlurFilter=X,e}({},PIXI),pixi_projection,pixi_projection;Object.assign(PIXI.filters,this?this.__filters:__filters),this.PIXI=this.PIXI||{},function(d,v){"use strict";var f,p=function(){function f(e,t,r){this.value=e,this.time=t,this.next=null,this.isStepped=!1,this.ease=r?"function"==typeof r?r:d.ParticleUtils.generateEase(r):null}return f.createList=function(e){if("list"in e){var t=e.list,r=void 0,i=void 0,n=t[0],a=n.value,o=n.time;if(i=r=new f("string"==typeof a?d.ParticleUtils.hexToRGB(a):a,o,e.ease),2o.time;)n=o,o=e[++a];u=(u-n.time)/(o.time-n.time);var l=f.hexToRGB(n.value),c=f.hexToRGB(o.value),h={r:(c.r-l.r)*u+l.r,g:(c.g-l.g)*u+l.g,b:(c.b-l.b)*u+l.b};i.next=new p(h,s/t),i=i.next}return r};var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function t(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var n=function(){function e(e){void 0===e&&(e=!1),this.current=null,this.next=null,this.isColor=!!e,this.interpolate=null,this.ease=null}return e.prototype.reset=function(e){this.current=e,this.next=e.next,this.next&&1<=this.next.time?this.interpolate=this.isColor?a:r:e.isStepped?this.interpolate=this.isColor?l:u:this.interpolate=this.isColor?s:o,this.ease=this.current.ease},e}();function r(e){return this.ease&&(e=this.ease(e)),(this.next.value-this.current.value)*e+this.current.value}function a(e){this.ease&&(e=this.ease(e));var t=this.current.value,r=this.next.value,i=(r.r-t.r)*e+t.r,n=(r.g-t.g)*e+t.g,a=(r.b-t.b)*e+t.b;return d.ParticleUtils.combineRGBComponents(i,n,a)}function o(e){for(this.ease&&(e=this.ease(e));e>this.next.time;)this.current=this.next,this.next=this.next.next;return e=(e-this.current.time)/(this.next.time-this.current.time),(this.next.value-this.current.value)*e+this.current.value}function s(e){for(this.ease&&(e=this.ease(e));e>this.next.time;)this.current=this.next,this.next=this.next.next;e=(e-this.current.time)/(this.next.time-this.current.time);var t=this.current.value,r=this.next.value,i=(r.r-t.r)*e+t.r,n=(r.g-t.g)*e+t.g,a=(r.b-t.b)*e+t.b;return d.ParticleUtils.combineRGBComponents(i,n,a)}function u(e){for(this.ease&&(e=this.ease(e));this.next&&e>this.next.time;)this.current=this.next,this.next=this.next.next;return this.current.value}function l(e){for(this.ease&&(e=this.ease(e));this.next&&e>this.next.time;)this.current=this.next,this.next=this.next.next;var t=this.current.value;return d.ParticleUtils.combineRGBComponents(t.r,t.g,t.b)}var c,h=function(r){function i(e){var t=r.call(this)||this;return t.emitter=e,t.anchor.x=t.anchor.y=.5,t.velocity=new v.Point,t.rotationSpeed=0,t.rotationAcceleration=0,t.maxLife=0,t.age=0,t.ease=null,t.extraData=null,t.alphaList=new n,t.speedList=new n,t.speedMultiplier=1,t.acceleration=new v.Point,t.maxSpeed=NaN,t.scaleList=new n,t.scaleMultiplier=1,t.colorList=new n(!0),t._doAlpha=!1,t._doScale=!1,t._doSpeed=!1,t._doAcceleration=!1,t._doColor=!1,t._doNormalMovement=!1,t._oneOverLife=0,t.next=null,t.prev=null,t.init=t.init,t.Particle_init=i.prototype.init,t.update=t.update,t.Particle_update=i.prototype.update,t.Sprite_destroy=r.prototype.destroy,t.Particle_destroy=i.prototype.destroy,t.applyArt=t.applyArt,t.kill=t.kill,t}return t(i,r),i.prototype.init=function(){this.age=0,this.velocity.x=this.speedList.current.value*this.speedMultiplier,this.velocity.y=0,d.ParticleUtils.rotatePoint(this.rotation,this.velocity),this.noRotation?this.rotation=0:this.rotation*=d.ParticleUtils.DEG_TO_RADS,this.rotationSpeed*=d.ParticleUtils.DEG_TO_RADS,this.rotationAcceleration*=d.ParticleUtils.DEG_TO_RADS,this.alpha=this.alphaList.current.value,this.scale.x=this.scale.y=this.scaleList.current.value,this._doAlpha=!!this.alphaList.current.next,this._doSpeed=!!this.speedList.current.next,this._doScale=!!this.scaleList.current.next,this._doColor=!!this.colorList.current.next,this._doAcceleration=0!==this.acceleration.x||0!==this.acceleration.y,this._doNormalMovement=this._doSpeed||0!==this.speedList.current.value||this._doAcceleration,this._oneOverLife=1/this.maxLife;var e=this.colorList.current.value;this.tint=d.ParticleUtils.combineRGBComponents(e.r,e.g,e.b),this.visible=!0},i.prototype.applyArt=function(e){this.texture=e||v.Texture.EMPTY},i.prototype.update=function(e){if(this.age+=e,this.age>=this.maxLife||this.age<0)return this.kill(),-1;var t=this.age*this._oneOverLife;if(this.ease&&(t=4==this.ease.length?this.ease(t,0,1,1):this.ease(t)),this._doAlpha&&(this.alpha=this.alphaList.interpolate(t)),this._doScale){var r=this.scaleList.interpolate(t)*this.scaleMultiplier;this.scale.x=this.scale.y=r}if(this._doNormalMovement){var i=void 0,n=void 0;if(this._doSpeed){var a=this.speedList.interpolate(t)*this.speedMultiplier;d.ParticleUtils.normalize(this.velocity),d.ParticleUtils.scaleBy(this.velocity,a),i=this.velocity.x*e,n=this.velocity.y*e}else if(this._doAcceleration){var o=this.velocity.x,s=this.velocity.y;if(this.velocity.x+=this.acceleration.x*e,this.velocity.y+=this.acceleration.y*e,this.maxSpeed){var u=d.ParticleUtils.length(this.velocity);u>this.maxSpeed&&d.ParticleUtils.scaleBy(this.velocity,this.maxSpeed/u)}i=(o+this.velocity.x)/2*e,n=(s+this.velocity.y)/2*e}else i=this.velocity.x*e,n=this.velocity.y*e;this.position.x+=i,this.position.y+=n}if(this._doColor&&(this.tint=this.colorList.interpolate(t)),0!==this.rotationAcceleration){var l=this.rotationSpeed+this.rotationAcceleration*e;this.rotation+=(this.rotationSpeed+l)/2*e,this.rotationSpeed=l}else 0!==this.rotationSpeed?this.rotation+=this.rotationSpeed*e:this.acceleration&&!this.noRotation&&(this.rotation=Math.atan2(this.velocity.y,this.velocity.x));return t},i.prototype.kill=function(){this.emitter.recycle(this)},i.prototype.destroy=function(){this.parent&&this.parent.removeChild(this),this.Sprite_destroy(),this.emitter=this.velocity=this.colorList=this.scaleList=this.alphaList=this.speedList=this.ease=this.next=this.prev=null},i.parseArt=function(e){var t;for(t=e.length;0<=t;--t)"string"==typeof e[t]&&(e[t]=v.Texture.fromImage(e[t]));if(d.ParticleUtils.verbose)for(t=e.length-1;0=this.maxParticles)this._spawnTimer+=this._frequency;else{var u=void 0;if(u=this.minLifetime==this.maxLifetime?this.minLifetime:Math.random()*(this.maxLifetime-this.minLifetime)+this.minLifetime,-this._spawnTimer=this.spawnChance)){var d=void 0;if(this._poolFirst?(d=this._poolFirst,this._poolFirst=this._poolFirst.next,d.next=null):d=new this.particleConstructor(this),1this.duration&&(this.loop?this.elapsed=this.elapsed%this.duration:this.elapsed=this.duration-1e-6);var r=this.elapsed*this.framerate+1e-7|0;this.texture=this.textures[r]||v.Texture.EMPTY}return t},e.prototype.destroy=function(){this.Particle_destroy(),this.textures=null},e.parseArt=function(e){for(var t,r,i,n,a,o=[],s=0;s>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.log2=function(e){var t,r;return t=+(65535>>=t))<<3,t|=r=+(15<(e>>>=r))<<2,(t|=r=+(3<(e>>>=r))<<1)|(e>>>=r)>>1},t.getIntersectionFactor=function(e,t,r,i,n){var a=t.x-e.x,o=r.x-i.x,s=r.x-e.x,u=t.y-e.y,l=r.y-i.y,c=r.y-e.y,h=a*l-u*o;if(Math.abs(h)<1e-7)return n.x=a,n.y=u,0;var f=(s*l-c*o)/h,d=(a*c-u*s)/h;return d<1e-6||-1e-6=this.size&&this.flush(),e._texture._uvs&&e._texture.baseTexture&&(this.sprites[this.currentIndex++]=e)},e.prototype.flush=function(){if(0!==this.currentIndex){var e,t,r,i=this.renderer.gl,n=this.MAX_TEXTURES,a=R.utils.nextPow2(this.currentIndex),o=R.utils.log2(a),s=this.buffers[o],u=this.sprites,l=this.groups,c=s.float32View,h=s.uint32View,f=0,d=null,p=1,m=0,g=l[0],v=O[u[0]._texture.baseTexture.premultipliedAlpha?1:0][u[0].blendMode];for(g.textureCount=0,g.start=0,g.blend=v,I++,r=0;rt[s]&&(i=t[s]),at[s+1]&&(n=t[s+1]),of[l]){u=h[s];h[s]=h[l],h[l]=u;var c=f[s];f[s]=f[l],f[l]=c}if(t[0]=h[0].x,t[1]=h[0].y,t[2]=h[1].x,t[3]=h[1].y,t[4]=h[2].x,t[5]=h[2].y,t[6]=h[3].x,t[7]=h[3].y,(h[3].x-h[2].x)*(h[1].y-h[2].y)-(h[1].x-h[2].x)*(h[3].y-h[2].y)<0)return t[4]=h[3].x,void(t[5]=h[3].y)}},e}();e.Surface=t}(pixi_projection||(pixi_projection={})),function(e){var T=new PIXI.Matrix,n=new PIXI.Rectangle,S=new PIXI.Point,t=function(t){function e(){var e=t.call(this)||this;return e.distortion=new PIXI.Point,e}return __extends(e,t),e.prototype.clear=function(){this.distortion.set(0,0)},e.prototype.apply=function(e,t){t=t||new PIXI.Point;var r=this.distortion,i=e.x*e.y;return t.x=e.x+r.x*i,t.y=e.y+r.y*i,t},e.prototype.applyInverse=function(e,t){t=t||new PIXI.Point;var r=e.x,i=e.y,n=this.distortion.x,a=this.distortion.y;if(0==n)t.x=r,t.y=i/(1+a*r);else if(0==a)t.y=i,t.x=r/(1+n*i);else{var o=.5*(i*n-r*a+1)/a,s=o*o+r/a;if(s<=1e-5)return void t.set(NaN,NaN);t.x=0 vFrame.z ||\n pixels.y < vFrame.y || pixels.y > vFrame.w) {\n uv.x = vTrans1.x * surface2.x + vTrans1.y * surface2.y + vTrans1.z;\n uv.y = vTrans2.x * surface2.x + vTrans2.y * surface2.y + vTrans2.z;\n pixels = uv * samplerSize[0];\n \n if (pixels.x < vFrame.x || pixels.x > vFrame.z ||\n pixels.y < vFrame.y || pixels.y > vFrame.w) {\n discard;\n }\n}\n\nvec4 edge;\nedge.xy = clamp(pixels - vFrame.xy + 0.5, vec2(0.0, 0.0), vec2(1.0, 1.0));\nedge.zw = clamp(vFrame.zw - pixels + 0.5, vec2(0.0, 0.0), vec2(1.0, 1.0));\n\nfloat alpha = 1.0; //edge.x * edge.y * edge.z * edge.w;\nvec4 rColor = vColor * alpha;\n\nfloat textureId = floor(vTextureId+0.5);\nvec4 color;\nvec2 textureCoord = uv;\n%forloop%\ngl_FragColor = color * rColor;\n}",e.defUniforms={worldTransform:new Float32Array([1,0,0,0,1,0,0,0,1]),distortion:new Float32Array([0,0])},e}return __extends(e,t),e.prototype.getUniforms=function(e){var t=e.proj;this.shader;return null!==t.surface?t.uniforms:null!==t._activeProjection?t._activeProjection.uniforms:this.defUniforms},e.prototype.createVao=function(e){var t=this.shader.attributes;this.vertSize=14,this.vertByteSize=4*this.vertSize;var r=this.renderer.gl,i=this.renderer.createVao().addIndex(this.indexBuffer).addAttribute(e,t.aVertexPosition,r.FLOAT,!1,this.vertByteSize,0).addAttribute(e,t.aTrans1,r.FLOAT,!1,this.vertByteSize,8).addAttribute(e,t.aTrans2,r.FLOAT,!1,this.vertByteSize,20).addAttribute(e,t.aFrame,r.FLOAT,!1,this.vertByteSize,32).addAttribute(e,t.aColor,r.UNSIGNED_BYTE,!0,this.vertByteSize,48);return t.aTextureId&&i.addAttribute(e,t.aTextureId,r.FLOAT,!1,this.vertByteSize,52),i},e.prototype.fillVertices=function(e,t,r,i,n,a){for(var o=i.vertexData,s=i._texture,u=(s.orig.width,s.orig.height,i._anchor._x,i._anchor._y,s._frame),l=i.aTrans,c=0;c<4;c++)e[r]=o[2*c],e[r+1]=o[2*c+1],e[r+2]=l.a,e[r+3]=l.c,e[r+4]=l.tx,e[r+5]=l.b,e[r+6]=l.d,e[r+7]=l.ty,e[r+8]=u.x,e[r+9]=u.y,e[r+10]=u.x+u.width,e[r+11]=u.y+u.height,t[r+12]=n,e[r+13]=a,r+=14},e}((pixi_projection||(pixi_projection={})).webgl.MultiTextureSpriteRenderer);PIXI.WebGLRenderer.registerPlugin("sprite_bilinear",t)}(),function(e){var t=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.size=100,e.MAX_TEXTURES_LOCAL=1,e.shaderVert="precision highp float;\nattribute vec2 aVertexPosition;\nattribute vec3 aTrans1;\nattribute vec3 aTrans2;\nattribute vec4 aFrame;\nattribute vec4 aColor;\nattribute float aTextureId;\n\nuniform mat3 projectionMatrix;\nuniform mat3 worldTransform;\n\nvarying vec2 vTextureCoord;\nvarying vec3 vTrans1;\nvarying vec3 vTrans2;\nvarying vec4 vFrame;\nvarying vec4 vColor;\nvarying float vTextureId;\n\nvoid main(void){\n gl_Position.xyw = projectionMatrix * worldTransform * vec3(aVertexPosition, 1.0);\n gl_Position.z = 0.0;\n \n vTextureCoord = aVertexPosition;\n vTrans1 = aTrans1;\n vTrans2 = aTrans2;\n vTextureId = aTextureId;\n vColor = aColor;\n vFrame = aFrame;\n}\n",e.shaderFrag="precision highp float;\nvarying vec2 vTextureCoord;\nvarying vec3 vTrans1;\nvarying vec3 vTrans2;\nvarying vec4 vFrame;\nvarying vec4 vColor;\nvarying float vTextureId;\n\nuniform sampler2D uSamplers[%count%];\nuniform vec2 samplerSize[%count%]; \nuniform vec4 params;\n\nvoid main(void){\nvec2 surface;\n\nfloat vx = vTextureCoord.x;\nfloat vy = vTextureCoord.y;\nfloat aleph = params.x;\nfloat bet = params.y;\nfloat A = params.z;\nfloat B = params.w;\n\nif (aleph == 0.0) {\n\tsurface.y = vy / (1.0 + vx * bet);\n\tsurface.x = vx;\n}\nelse if (bet == 0.0) {\n\tsurface.x = vx / (1.0 + vy * aleph);\n\tsurface.y = vy;\n} else {\n\tsurface.x = vx * (bet + 1.0) / (bet + 1.0 + vy * aleph);\n\tsurface.y = vy * (aleph + 1.0) / (aleph + 1.0 + vx * bet);\n}\n\nvec2 uv;\nuv.x = vTrans1.x * surface.x + vTrans1.y * surface.y + vTrans1.z;\nuv.y = vTrans2.x * surface.x + vTrans2.y * surface.y + vTrans2.z;\n\nvec2 pixels = uv * samplerSize[0];\n\nvec4 edge;\nedge.xy = clamp(pixels - vFrame.xy + 0.5, vec2(0.0, 0.0), vec2(1.0, 1.0));\nedge.zw = clamp(vFrame.zw - pixels + 0.5, vec2(0.0, 0.0), vec2(1.0, 1.0));\n\nfloat alpha = edge.x * edge.y * edge.z * edge.w;\nvec4 rColor = vColor * alpha;\n\nfloat textureId = floor(vTextureId+0.5);\nvec4 color;\nvec2 textureCoord = uv;\n%forloop%\ngl_FragColor = color * rColor;\n}",e.defUniforms={worldTransform:new Float32Array([1,0,0,0,1,0,0,0,1]),distortion:new Float32Array([0,0])},e}return __extends(e,t),e.prototype.getUniforms=function(e){var t=e.proj;this.shader;return null!==t.surface?t.uniforms:null!==t._activeProjection?t._activeProjection.uniforms:this.defUniforms},e.prototype.createVao=function(e){var t=this.shader.attributes;this.vertSize=14,this.vertByteSize=4*this.vertSize;var r=this.renderer.gl,i=this.renderer.createVao().addIndex(this.indexBuffer).addAttribute(e,t.aVertexPosition,r.FLOAT,!1,this.vertByteSize,0).addAttribute(e,t.aTrans1,r.FLOAT,!1,this.vertByteSize,8).addAttribute(e,t.aTrans2,r.FLOAT,!1,this.vertByteSize,20).addAttribute(e,t.aFrame,r.FLOAT,!1,this.vertByteSize,32).addAttribute(e,t.aColor,r.UNSIGNED_BYTE,!0,this.vertByteSize,48);return t.aTextureId&&i.addAttribute(e,t.aTextureId,r.FLOAT,!1,this.vertByteSize,52),i},e.prototype.fillVertices=function(e,t,r,i,n,a){for(var o=i.vertexData,s=i._texture,u=(s.orig.width,s.orig.height,i._anchor._x,i._anchor._y,s._frame),l=i.aTrans,c=0;c<4;c++)e[r]=o[2*c],e[r+1]=o[2*c+1],e[r+2]=l.a,e[r+3]=l.c,e[r+4]=l.tx,e[r+5]=l.b,e[r+6]=l.d,e[r+7]=l.ty,e[r+8]=u.x,e[r+9]=u.y,e[r+10]=u.x+u.width,e[r+11]=u.y+u.height,t[r+12]=n,e[r+13]=a,r+=14},e}((pixi_projection||(pixi_projection={})).webgl.MultiTextureSpriteRenderer);PIXI.WebGLRenderer.registerPlugin("sprite_strange",t)}(),function(e){var T=new PIXI.Matrix,n=new PIXI.Rectangle,S=new PIXI.Point,t=function(t){function e(){var e=t.call(this)||this;return e.params=[0,0,NaN,NaN],e}return __extends(e,t),e.prototype.clear=function(){var e=this.params;e[0]=0,e[1]=0,e[2]=NaN,e[3]=NaN},e.prototype.setAxisX=function(e,t,r){var i=e.x,n=e.y,a=Math.sqrt(i*i+n*n),o=r.rotation;0!==o&&(r.skew._x-=o,r.skew._y+=o,r.rotation=0),r.skew.y=Math.atan2(n,i);var s=this.params;s[2]=0!==t?-a*t:NaN,this._calc01()},e.prototype.setAxisY=function(e,t,r){var i=e.x,n=e.y,a=Math.sqrt(i*i+n*n),o=r.rotation;0!==o&&(r.skew._x-=o,r.skew._y+=o,r.rotation=0),r.skew.x=-Math.atan2(n,i)+Math.PI/2;var s=this.params;s[3]=0!==t?-a*t:NaN,this._calc01()},e.prototype._calc01=function(){var e=this.params;if(isNaN(e[2]))e[1]=0,isNaN(e[3])?e[0]=0:e[0]=1/e[3];else if(isNaN(e[3]))e[0]=0,e[1]=1/e[2];else{var t=1-e[2]*e[3];e[0]=(1-e[2])/t,e[1]=(1-e[3])/t}},e.prototype.apply=function(e,t){t=t||new PIXI.Point;var r=this.params[0],i=this.params[1],n=this.params[2],a=this.params[3],o=e.x,s=e.y;if(0===r)t.y=s*(1+o*i),t.x=o;else if(0===i)t.x=o*(1+s*r),t.y=s;else{var u=n*a-s*o;t.x=n*o*(a+s)/u,t.y=a*s*(n+o)/u}return t},e.prototype.applyInverse=function(e,t){t=t||new PIXI.Point;var r=this.params[0],i=this.params[1],n=(this.params[2],this.params[3],e.x),a=e.y;return 0===r?(t.y=a/(1+n*i),t.x=n):0===i?(t.x=n*(1+a*r),t.y=a):(t.x=n*(i+1)/(i+1+a*r),t.y=a*(r+1)/(r+1+n*i)),t},e.prototype.mapSprite=function(e,t,r){var i=e.texture;return n.x=-e.anchor.x*i.orig.width,n.y=-e.anchor.y*i.orig.height,n.width=i.orig.width,n.height=i.orig.height,this.mapQuad(n,t,r||e.transform)},e.prototype.mapQuad=function(e,t,r){var i=-e.x/e.width,n=-e.y/e.height,a=(1-e.x)/e.width,o=(1-e.y)/e.height,s=t[0].x*(1-i)+t[1].x*i,u=t[0].y*(1-i)+t[1].y*i,l=t[0].x*(1-a)+t[1].x*a,c=t[0].y*(1-a)+t[1].y*a,h=t[3].x*(1-i)+t[2].x*i,f=t[3].y*(1-i)+t[2].y*i,d=t[3].x*(1-a)+t[2].x*a,p=t[3].y*(1-a)+t[2].y*a,m=s*(1-n)+h*n,g=u*(1-n)+f*n,v=l*(1-n)+d*n,b=c*(1-n)+p*n,y=s*(1-o)+h*o,_=u*(1-o)+f*o,w=l*(1-o)+d*o,x=c*(1-o)+p*o,k=T;return k.tx=m,k.ty=g,k.a=v-m,k.b=b-g,k.c=y-m,k.d=_-g,S.set(w,x),k.applyInverse(S,S),r.setFromMatrix(k),this},e.prototype.fillUniforms=function(e){var t=this.params,r=e.params||new Float32Array([0,0,0,0]);(e.params=r)[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3]},e}(e.Surface);e.StrangeSurface=t}(pixi_projection||(pixi_projection={})),function(e){PIXI.Sprite.prototype.convertTo2s=function(){this.proj||(this.pluginName="sprite_bilinear",this.aTrans=new PIXI.Matrix,this.calculateVertices=e.Sprite2s.prototype.calculateVertices,this.calculateTrimmedVertices=e.Sprite2s.prototype.calculateTrimmedVertices,this._calculateBounds=e.Sprite2s.prototype._calculateBounds,PIXI.Container.prototype.convertTo2s.call(this))},PIXI.Container.prototype.convertTo2s=function(){this.proj||(this.proj=new e.Projection2d(this.transform),Object.defineProperty(this,"worldTransform",{get:function(){return this.proj},enumerable:!0,configurable:!0}))},PIXI.Container.prototype.convertSubtreeTo2s=function(){this.convertTo2s();for(var e=0;e=a.TRANSFORM_STEP.PROJ?(i||this.displayObjectUpdateTransform(),this.proj.affine?this.transform.worldTransform.applyInverse(e,r):this.proj.world.applyInverse(e,r)):(this.parent?r=this.parent.worldTransform.applyInverse(e,r):r.copy(e),n===a.TRANSFORM_STEP.NONE?r:this.transform.localTransform.applyInverse(r,r))},Object.defineProperty(e.prototype,"worldTransform",{get:function(){return this.proj.affine?this.transform.worldTransform:this.proj.world},enumerable:!0,configurable:!0}),e}(PIXI.Container);a.Container2d=e,a.container2dToLocal=e.prototype.toLocal}(pixi_projection||(pixi_projection={})),function(e){var u,t,v=PIXI.Point,r=[1,0,0,0,1,0,0,0,1];(t=u=e.AFFINE||(e.AFFINE={}))[t.NONE=0]="NONE",t[t.FREE=1]="FREE",t[t.AXIS_X=2]="AXIS_X",t[t.AXIS_Y=3]="AXIS_Y",t[t.POINT=4]="POINT",t[t.AXIS_XR=5]="AXIS_XR";var i=function(){function e(e){this.floatArray=null,this.mat3=new Float64Array(e||r)}return Object.defineProperty(e.prototype,"a",{get:function(){return this.mat3[0]/this.mat3[8]},set:function(e){this.mat3[0]=e*this.mat3[8]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"b",{get:function(){return this.mat3[1]/this.mat3[8]},set:function(e){this.mat3[1]=e*this.mat3[8]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"c",{get:function(){return this.mat3[3]/this.mat3[8]},set:function(e){this.mat3[3]=e*this.mat3[8]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"d",{get:function(){return this.mat3[4]/this.mat3[8]},set:function(e){this.mat3[4]=e*this.mat3[8]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"tx",{get:function(){return this.mat3[6]/this.mat3[8]},set:function(e){this.mat3[6]=e*this.mat3[8]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ty",{get:function(){return this.mat3[7]/this.mat3[8]},set:function(e){this.mat3[7]=e*this.mat3[8]},enumerable:!0,configurable:!0}),e.prototype.set=function(e,t,r,i,n,a){var o=this.mat3;return o[0]=e,o[1]=t,o[2]=0,o[3]=r,o[4]=i,o[5]=0,o[6]=n,o[7]=a,o[8]=1,this},e.prototype.toArray=function(e,t){this.floatArray||(this.floatArray=new Float32Array(9));var r=t||this.floatArray,i=this.mat3;return e?(r[0]=i[0],r[1]=i[1],r[2]=i[2],r[3]=i[3],r[4]=i[4],r[5]=i[5],r[6]=i[6],r[7]=i[7]):(r[0]=i[0],r[1]=i[3],r[2]=i[6],r[3]=i[1],r[4]=i[4],r[5]=i[7],r[6]=i[2],r[7]=i[5]),r[8]=i[8],r},e.prototype.apply=function(e,t){t=t||new PIXI.Point;var r=this.mat3,i=e.x,n=e.y,a=1/(r[2]*i+r[5]*n+r[8]);return t.x=a*(r[0]*i+r[3]*n+r[6]),t.y=a*(r[1]*i+r[4]*n+r[7]),t},e.prototype.translate=function(e,t){var r=this.mat3;return r[0]+=e*r[2],r[1]+=t*r[2],r[3]+=e*r[5],r[4]+=t*r[5],r[6]+=e*r[8],r[7]+=t*r[8],this},e.prototype.scale=function(e,t){var r=this.mat3;return r[0]*=e,r[1]*=t,r[3]*=e,r[4]*=t,r[6]*=e,r[7]*=t,this},e.prototype.scaleAndTranslate=function(e,t,r,i){var n=this.mat3;n[0]=e*n[0]+r*n[2],n[1]=t*n[1]+i*n[2],n[3]=e*n[3]+r*n[5],n[4]=t*n[4]+i*n[5],n[6]=e*n[6]+r*n[8],n[7]=t*n[7]+i*n[8]},e.prototype.applyInverse=function(e,t){t=t||new v;var r=this.mat3,i=e.x,n=e.y,a=r[0],o=r[3],s=r[6],u=r[1],l=r[4],c=r[7],h=r[2],f=r[5],d=r[8],p=(d*l-c*f)*i+(-d*o+s*f)*n+(c*o-s*l),m=(-d*u+c*h)*i+(d*a-s*h)*n+(-c*a+s*u),g=(f*u-l*h)*i+(-f*a+o*h)*n+(l*a-o*u);return t.x=p/g,t.y=m/g,t},e.prototype.invert=function(){var e=this.mat3,t=e[0],r=e[1],i=e[2],n=e[3],a=e[4],o=e[5],s=e[6],u=e[7],l=e[8],c=l*a-o*u,h=-l*n+o*s,f=u*n-a*s,d=t*c+r*h+i*f;return d&&(d=1/d,e[0]=c*d,e[1]=(-l*r+i*u)*d,e[2]=(o*r-i*a)*d,e[3]=h*d,e[4]=(l*t-i*s)*d,e[5]=(-o*t+i*n)*d,e[6]=f*d,e[7]=(-u*t+r*s)*d,e[8]=(a*t-r*n)*d),this},e.prototype.identity=function(){var e=this.mat3;return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,this},e.prototype.clone=function(){return new e(this.mat3)},e.prototype.copyTo=function(e){var t=this.mat3,r=e.mat3;return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r[4]=t[4],r[5]=t[5],r[6]=t[6],r[7]=t[7],r[8]=t[8],e},e.prototype.copyTo2dOr3d=function(e){return this.copyTo(e)},e.prototype.copy=function(e,t,r){var i=this.mat3,n=1/i[8],a=i[6]*n,o=i[7]*n;if(e.a=(i[0]-i[2]*a)*n,e.b=(i[1]-i[2]*o)*n,e.c=(i[3]-i[5]*a)*n,e.d=(i[4]-i[5]*o)*n,e.tx=a,e.ty=o,2<=t){var s=e.a*e.d-e.b*e.c;r||(s=Math.abs(s)),t===u.POINT?(s=0>0,0!==f._cycle&&f._cycle===f._totalTime/o&&m<=e&&f._cycle--,f._time=f._totalTime-f._cycle*o,f._yoyo&&0!=(1&f._cycle)&&(f._time=v-f._time,(h=f._yoyoEase||f.vars.yoyoEase)&&(f._yoyoEase||(!0!==h||f._initted?f._yoyoEase=h=!0===h?f._ease:h instanceof Ease?h:Ease.map[h]:(h=f.vars.ease,f._yoyoEase=h=h?h instanceof Ease?h:"function"==typeof h?new Ease(h,f.vars.easeParams):Ease.map[h]||y.defaultEase:y.defaultEase)),f.ratio=h?1-h.getRatio((v-f._time)/v):0)),f._time>v?f._time=v:f._time<0&&(f._time=0)),f._easeType&&!h?(s=f._time/v,(1===(u=f._easeType)||3===u&&.5<=s)&&(s=1-s),3===u&&(s*=2),1===(l=f._easePower)?s*=s:2===l?s*=s*s:3===l?s*=s*s*s:4===l&&(s*=s*s*s*s),f.ratio=1===u?1-s:2===u?s:f._time/v<.5?s/2:1-s/2):h||(f.ratio=f._ease.getRatio(f._time/v))),p!==f._time||r||g!==f._cycle){if(!f._initted){if(f._init(),!f._initted||f._gc)return;if(!r&&f._firstPT&&(!1!==f.vars.lazy&&f._duration||f.vars.lazy&&!f._duration))return f._time=p,f._totalTime=m,f._rawPrevTime=b,f._cycle=g,w.lazyTweens.push(f),void(f._lazy=[e,t]);!f._time||i||h?i&&this._ease._calcEnd&&!h&&(f.ratio=f._ease.getRatio(0===f._time?0:1)):f.ratio=f._ease.getRatio(f._time/v)}for(!1!==f._lazy&&(f._lazy=!1),f._active||!f._paused&&f._time!==p&&0<=e&&(f._active=!0),0===m&&(2===f._initted&&0e._startTime;u._timeline;)l&&u._timeline.smoothChildTiming?u.totalTime(u._totalTime,!0):u._gc&&u._enabled(!0,!1),u=u._timeline;return c},r.remove=function(e){if(e instanceof h){this._remove(e,!1);var t=e._timeline=e.vars.useFrames?h._rootFramesTimeline:h._rootTimeline;return e._startTime=(e._paused?e._pauseTime:t._time)-(e._reversed?e.totalDuration()-e._totalTime:e._totalTime)/e._timeScale,this}if(e instanceof Array||e&&e.push&&d(e)){for(var r=e.length;-1<--r;)this.remove(e[r]);return this}return"string"==typeof e?this.removeLabel(e):this.kill(null,e)},r._remove=function(e,t){return f.prototype._remove.call(this,e,t),this._last?this._time>this.duration()&&(this._time=this._duration,this._totalTime=this._totalDuration):this._time=this._totalTime=this._duration=this._totalDuration=0,this},r.append=function(e,t){return this.add(e,this._parseTimeOrLabel(null,t,!0,e))},r.insert=r.insertMultiple=function(e,t,r,i){return this.add(e,t||0,r,i)},r.appendMultiple=function(e,t,r,i){return this.add(e,this._parseTimeOrLabel(null,t,!0,e),r,i)},r.addLabel=function(e,t){return this._labels[e]=this._parseTimeOrLabel(t),this},r.addPause=function(e,t,r,i){var n=p.delayedCall(0,a,r,i||this);return n.vars.onComplete=n.vars.onReverseComplete=t,n.data="isPause",this._hasPause=!0,this.add(n,e)},r.removeLabel=function(e){return delete this._labels[e],this},r.getLabelTime=function(e){return null!=this._labels[e]?this._labels[e]:-1},r._parseTimeOrLabel=function(e,t,r,i){var n,a;if(i instanceof h&&i.timeline===this)this.remove(i);else if(i&&(i instanceof Array||i.push&&d(i)))for(a=i.length;-1<--a;)i[a]instanceof h&&i[a].timeline===this&&this.remove(i[a]);if(n="number"!=typeof e||t?99999999999=e&&!u;)i._duration||"isPause"===i.data&&0h._time;)u.render(u._reversed?u.totalDuration()-(e-u._startTime)*u._timeScale:(e-u._startTime)*u._timeScale,t,r),u=u._prev;u=null,h.pause(),h._pauseTime=c}i._reversed?i.render((i._dirty?i.totalDuration():i._totalDuration)-(e-i._startTime)*i._timeScale,t,r):i.render((e-i._startTime)*i._timeScale,t,r)}i=a}h._onUpdate&&(t||(v.length&&b(),h._callback("onUpdate"))),o&&(h._gc||p!==h._startTime&&m===h._timeScale||(0===h._time||d>=h.totalDuration())&&(n&&(v.length&&b(),h._timeline.autoRemoveChildren&&h._enabled(!1,!1),h._active=!1),!t&&h.vars[o]&&h._callback(o)))}},r._hasPausedChild=function(){for(var e=this._first;e;){if(e._paused||e instanceof m&&e._hasPausedChild())return!0;e=e._next}return!1},r.getChildren=function(e,t,r,i){i=i||-9999999999;for(var n=[],a=this._first,o=0;a;)a._startTime=r&&(n._startTime+=e),n=n._next;if(t)for(i in a)a[i]>=r&&(a[i]+=e);return this._uncache(!0)},r._kill=function(e,t){if(!e&&!t)return this._enabled(!1,!1);for(var r=t?this.getTweensOf(t):this.getChildren(!0,!0,!1),i=r.length,n=!1;-1<--i;)r[i]._kill(e,t)&&(n=!0);return n},r.clear=function(e){var t=this.getChildren(!1,!0,!0),r=t.length;for(this._time=this._totalTime=0;-1<--r;)t[r]._enabled(!1,!1);return!1!==e&&(this._labels={}),this._uncache(!0)},r.invalidate=function(){for(var e=this._first;e;)e.invalidate(),e=e._next;return h.prototype.invalidate.call(this)},r._enabled=function(e,t){if(e===this._gc)for(var r=this._first;r;)r._enabled(e,!0),r=r._next;return f.prototype._enabled.call(this,e,t)},r.totalTime=function(e,t,r){this._forcingPlayhead=!0;var i=h.prototype.totalTime.apply(this,arguments);return this._forcingPlayhead=!1,i},r.duration=function(e){return arguments.length?(0!==this.duration()&&0!==e&&this.timeScale(this._duration/e),this):(this._dirty&&this.totalDuration(),this._duration)},r.totalDuration=function(e){if(arguments.length)return e&&this.totalDuration()?this.timeScale(this._totalDuration/e):this;if(this._dirty){for(var t,r,i=0,n=this,a=n._last,o=999999999999;a;)t=a._prev,a._dirty&&a.totalDuration(),a._startTime>o&&n._sortChildren&&!a._paused&&!n._calculatingDuration?(n._calculatingDuration=1,n.add(a,a._startTime-a._delay),n._calculatingDuration=0):o=a._startTime,a._startTime<0&&!a._paused&&(i-=a._startTime,n._timeline.smoothChildTiming&&(n._startTime+=a._startTime/n._timeScale,n._time-=a._startTime,n._totalTime-=a._startTime,n._rawPrevTime-=a._startTime),n.shiftChildren(-a._startTime,!1,-9999999999),o=0),i<(r=a._startTime+a._totalDuration/a._timeScale)&&(i=r),a=t;n._duration=n._totalDuration=i,n._dirty=!1}return this._totalDuration},r.paused=function(e){if(!1===e&&this._paused)for(var t=this._first;t;)t._startTime===this._time&&"isPause"===t.data&&(t._rawPrevTime=0),t=t._next;return h.prototype.paused.apply(this,arguments)},r.usesFrames=function(){for(var e=this._timeline;e._timeline;)e=e._timeline;return e===h._rootFramesTimeline},r.rawTime=function(e){return e&&(this._paused||this._repeat&&0>0,f._cycle&&f._cycle===f._totalTime/u&&g<=e&&f._cycle--,f._time=f._totalTime-f._cycle*u,f._yoyo&&1&f._cycle&&(f._time=m-f._time),f._time>m?e=(f._time=m)+1e-4:f._time<0?f._time=e=0:e=f._time));if(f._hasPause&&!f._forcingPlayhead&&!t){if(d<(e=f._time)||f._repeat&&w!==f._cycle)for(i=f._first;i&&i._startTime<=e&&!l;)i._duration||"isPause"!==i.data||i.ratio||0===i._startTime&&0===f._rawPrevTime||(l=i),i=i._next;else for(i=f._last;i&&i._startTime>=e&&!l;)i._duration||"isPause"===i.data&&0f._time;)l.render(l._reversed?l.totalDuration()-(e-l._startTime)*l._timeScale:(e-l._startTime)*l._timeScale,t,r),l=l._prev;l=null,f.pause(),f._pauseTime=h}i._reversed?i.render((i._dirty?i.totalDuration():i._totalDuration)-(e-i._startTime)*i._timeScale,t,r):i.render((e-i._startTime)*i._timeScale,t,r)}i=a}f._onUpdate&&(t||(C.length&&A(),f._callback("onUpdate"))),o&&(f._locked||f._gc||v!==f._startTime&&b===f._timeScale||(0===f._time||p>=f.totalDuration())&&(n&&(C.length&&A(),f._timeline.autoRemoveChildren&&f._enabled(!1,!1),f._active=!1),!t&&f.vars[o]&&f._callback(o)))}else g!==f._totalTime&&f._onUpdate&&(t||f._callback("onUpdate"))},n.getActive=function(e,t,r){var i,n,a=[],o=this.getChildren(e||null==e,t||null==e,!!r),s=0,u=o.length;for(i=0;ie)return r[t].name;return null},n.getLabelBefore=function(e){null==e&&(e=this._time);for(var t=this.getLabelsArray(),r=t.length;-1<--r;)if(t[r].time>0||6)-1,h=[],f=[];for(r in e)p(e[r],o,t);for(n=o.length,i=0;i>0]=f,s[a]=l,u=0,f=[]);return{length:l,lengths:s,segments:h}}(this._beziers,this._timeRes);this._length=f.length,this._lengths=f.lengths,this._segments=f.segments,this._l1=this._li=this._s1=this._si=0,this._l2=this._lengths[0],this._curSeg=this._segments[0],this._s2=this._curSeg[0],this._prec=1/this._curSeg.length}if(h=this._autoRotate)for(this._initialRotations=[],h[0]instanceof Array||(this._autoRotate=h=[h]),a=h.length;-1<--a;){for(o=0;o<3;o++)i=h[a][o],this._func[i]="function"==typeof e[i]&&e[i.indexOf("set")||"function"!=typeof e["get"+i.substr(3)]?i:"get"+i.substr(3)];i=h[a][2],this._initialRotations[a]=(this._func[i]?this._func[i].call(this._target):this._target[i])||0,this._overwriteProps.push(i)}return this._startRatio=r.vars.runBackwards?1:0,!0},set:function(e){var t,r,i,n,a,o,s,u,l,c,h,f=this._segCount,d=this._func,p=this._target,m=e!==this._startRatio;if(this._timeRes){if(l=this._lengths,c=this._curSeg,h=e*this._length,i=this._li,h>this._l2&&i=h;);0===i&&hthis._s2&&i=h;);0===i&&h>0)*(1/f))*f;for(r=1-o,i=this._props.length;-1<--i;)n=this._props[i],s=(o*o*(a=this._beziers[n][t]).da+3*r*(o*a.ca+r*a.ba))*o+a.a,this._mod[n]&&(s=this._mod[n](s,p)),d[n]?p[n](s):p[n]=s;if(this._autoRotate){var g,v,b,y,_,w,x,k=this._autoRotate;for(i=k.length;-1<--i;)n=k[i][2],w=k[i][3]||0,x=!0===k[i][4]?1:T,a=this._beziers[k[i][0]],g=this._beziers[k[i][1]],a&&g&&(a=a[t],g=g[t],v=a.a+(a.b-a.a)*o,v+=((y=a.b+(a.c-a.b)*o)-v)*o,y+=(a.c+(a.d-a.c)*o-y)*o,b=g.a+(g.b-g.a)*o,b+=((_=g.b+(g.c-g.b)*o)-b)*o,_+=(g.c+(g.d-g.c)*o-_)*o,s=m?Math.atan2(_-b,y-v)*x+w:this._initialRotations[i],this._mod[n]&&(s=this._mod[n](s,p)),d[n]?p[n](s):p[n]=s)}}}),e=g.prototype,g.bezierThrough=d,g.cubicToQuadratic=S,g._autoCSS=!0,g.quadraticToCubic=function(e,t,r){return new b(e,(2*t+e)/3,(2*t+r)/3,r)},g._cssRegister=function(){var e=r.CSSPlugin;if(e){var t=e._internals,d=t._parseToProxy,p=t._setPluginRatio,m=t.CSSPropTween;t._registerComplexSpecialProp("bezier",{parser:function(e,t,r,i,n,a){t instanceof Array&&(t={values:t}),a=new g;var o,s,u,l=t.values,c=l.length-1,h=[],f={};if(c<0)return n;for(o=0;o<=c;o++)u=d(e,l[o],i,n,a,c!==o),h[o]=u.end;for(s in t)f[s]=t[s];return f.values=h,(n=new m(e,"bezier",0,0,u.pt,2)).data=u,n.plugin=a,n.setRatio=p,0===f.autoRotate&&(f.autoRotate=!0),!f.autoRotate||f.autoRotate instanceof Array||(o=!0===f.autoRotate?0:Number(f.autoRotate),f.autoRotate=null!=u.end.left?[["left","top","rotation",o,!1]]:null!=u.end.x&&[["x","y","rotation",o,!1]]),f.autoRotate&&(i._transform||i._enableTransforms(!1),u.autoRotate=i._target._gsTransform,u.proxy.rotation=u.autoRotate.rotation||0,i._overwriteProps.push("rotation")),a._onInitTween(u.proxy,f,i._tween),n}})}},e._mod=function(e){for(var t,r=this._overwriteProps,i=r.length;-1<--i;)(t=e[r[i]])&&"function"==typeof t&&(this._mod[r[i]]=t)},e._kill=function(e){var t,r,i=this._props;for(t in this._beziers)if(t in e)for(delete this._beziers[t],delete this._func[t],r=i.length;-1<--r;)i[r]===t&&i.splice(r,1);if(i=this._autoRotate)for(r=i.length;-1<--r;)e[i[r][2]]&&i.splice(r,1);return this._super._kill.call(this,e)},_gsScope._gsDefine("plugins.CSSPlugin",["plugins.TweenPlugin","TweenLite"],function(a,N){var p,T,S,m,U=function(){a.call(this,"css"),this._overwriteProps.length=0,this.setRatio=U.prototype.setRatio},l=_gsScope._gsDefine.globals,g={},e=U.prototype=new a("css");(e.constructor=U).version="2.1.3",U.API=2,U.defaultTransformPerspective=0,U.defaultSkewType="compensated",U.defaultSmoothOrigin=!0,e="px",U.suffixMap={top:e,right:e,bottom:e,left:e,width:e,height:e,fontSize:e,padding:e,margin:e,perspective:e,lineHeight:""};var M,v,b,z,y,E,P,C,t,r,A=/(?:\-|\.|\b)(\d|\.|e\-)+/g,O=/(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,_=/(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,n=/(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b),?/gi,c=/(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,I=/(?:\d|\-|\+|=|#|\.)*/g,R=/opacity *= *([^)]*)/i,w=/opacity:([^;]*)/i,o=/alpha\(opacity *=.+?\)/i,x=/^(rgb|hsl)/,s=/([A-Z])/g,u=/-([a-z])/gi,k=/(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,h=function(e,t){return t.toUpperCase()},d=/(?:Left|Right|Width)/i,f=/(M11|M12|M21|M22)=[\d\-\.e]+/gi,D=/progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,j=/,(?=[^\)]*(?:\(|$))/gi,L=/[\s,\(]/i,F=Math.PI/180,X=180/Math.PI,B={},i={style:{}},q=_gsScope.document||{createElement:function(){return i}},H=function(e,t){var r=q.createElementNS?q.createElementNS(t||"http://www.w3.org/1999/xhtml",e):q.createElement(e);return r.style?r:q.createElement(e)},W=H("div"),G=H("img"),V=U._internals={_specialProps:g},Y=(_gsScope.navigator||{}).userAgent||"",J=(t=Y.indexOf("Android"),r=H("a"),b=-1!==Y.indexOf("Safari")&&-1===Y.indexOf("Chrome")&&(-1===t||3>16,e>>8&255,255&e];else{if(","===e.charAt(e.length-1)&&(e=e.substr(0,e.length-1)),me[e])r=me[e];else if("#"===e.charAt(0))4===e.length&&(e="#"+(i=e.charAt(1))+i+(n=e.charAt(2))+n+(a=e.charAt(3))+a),r=[(e=parseInt(e.substr(1),16))>>16,e>>8&255,255&e];else if("hsl"===e.substr(0,3))if(r=f=e.match(A),t){if(-1!==e.indexOf("="))return e.match(O)}else o=Number(r[0])%360/360,s=Number(r[1])/100,i=2*(u=Number(r[2])/100)-(n=u<=.5?u*(s+1):u+s-u*s),3i--)for(;++ii--)for(;++i>0];return i.parse(e,o,n,a)}},xe=(V._setPluginRatio=function(e){this.plugin.setRatio(e);for(var t,r,i,n,a,o=this.data,s=o.proxy,u=o.firstMPT;u;)t=s[u.v],u.r?t=u.r(t):t<1e-6&&-1e-6s.length?u.length:s.length,o=0;oa.pr;)o=o._next;(a._prev=o?o._prev:u)?a._prev._next=a:s=a,(a._next=o)?o._prev=a:u=a,a=l}this._firstPT=s}return!0},e.parse=function(e,t,r,i){var n,a,o,s,u,l,c,h,f,d,p=e.style;for(n in t){if(l=t[n],a=g[n],"function"!=typeof l||a&&a.allowFunc||(l=l(C,P)),a)r=a.parse(e,l,n,this,r,i,t);else{if("--"===n.substr(0,2)){this._tween._propLookup[n]=this._addTween.call(this._tween,e.style,"setProperty",re(e).getPropertyValue(n)+"",l+"",n,!1,n);continue}u=ie(e,n,S)+"",f="string"==typeof l,"color"===n||"fill"===n||"stroke"===n||-1!==n.indexOf("Color")||f&&x.test(l)?(f||(l=(3<(l=ve(l)).length?"rgba(":"rgb(")+l.join(",")+")"),r=Se(p,n,u,l,!0,"transparent",r,0,i)):f&&L.test(l)?r=Se(p,n,u,l,!0,null,r,0,i):(c=(o=parseFloat(u))||0===o?u.substr((o+"").length):"",""!==u&&"auto"!==u||(c="width"===n||"height"===n?(o=ce(e,n,S),"px"):"left"===n||"top"===n?(o=ae(e,n,S),"px"):(o="opacity"!==n?0:1,"")),""===(h=(d=f&&"="===l.charAt(1))?(s=parseInt(l.charAt(0)+"1",10),l=l.substr(2),s*=parseFloat(l),l.replace(I,"")):(s=parseFloat(l),f?l.replace(I,""):""))&&(h=n in T?T[n]:c),l=s||0===s?(d?s+o:s)+h:t[n],c!==h&&(""===h&&"lineHeight"!==n||(s||0===s)&&o&&(o=ne(e,n,o,c),"%"===h?(o/=ne(e,n,100,"%")/100,!0!==t.strictUnits&&(u=o+"%")):"em"===h||"rem"===h||"vw"===h||"vh"===h?o/=ne(e,n,1,h):"px"!==h&&(s=ne(e,n,s,h),h="px"),d&&(s||0===s)&&(l=s+o+h))),d&&(s+=o),!o&&0!==o||!s&&0!==s?void 0!==p[n]&&(l||l+""!="NaN"&&null!=l)?(r=new ke(p,n,s||o||0,0,r,-1,n,!1,0,u,l)).xs0="none"!==l||"display"!==n&&-1===n.indexOf("Style")?l:u:Z("invalid "+n+" tween value: "+t[n]):(r=new ke(p,n,o,s-o,r,0,n,!1!==M&&("px"===h||"zIndex"===n),0,u,l)).xs0=h)}i&&r&&!r.plugin&&(r.plugin=i)}return r},e.setRatio=function(e){var t,r,i,n=this._firstPT;if(1!==e||this._tween._time!==this._tween._duration&&0!==this._tween._time)if(e||this._tween._time!==this._tween._duration&&0!==this._tween._time||-1e-6===this._tween._rawPrevTime)for(;n;){if(t=n.c*e+n.s,n.r?t=n.r(t):t<1e-6&&-1e-6this._p3?this._calcEnd?1===e?0:1-(e=(e-this._p3)/this._p1)*e:t+(e-t)*(e=(e-this._p3)/this._p1)*e*e*e:this._calcEnd?1:t},p.ease=new p(.7,.7),m.config=p.config=function(e,t,r){return new p(e,t,r)},(m=(r=u("easing.SteppedEase",function(e,t){e=e||1,this._p1=1/e,this._p2=e+(t?0:1),this._p3=t?1:0},!0)).prototype=new g).constructor=r,m.getRatio=function(e){return e<0?e=0:1<=e&&(e=.999999999),((this._p2*e|0)+this._p3)*this._p1},m.config=r.config=function(e,t){return new r(e,t)},(m=(i=u("easing.ExpoScaleEase",function(e,t,r){this._p1=Math.log(t/e),this._p2=t-e,this._p3=e,this._ease=r},!0)).prototype=new g).constructor=i,m.getRatio=function(e){return this._ease&&(e=this._ease.getRatio(e)),(this._p3*Math.exp(this._p1*e)-this._p3)/this._p2},m.config=i.config=function(e,t,r){return new i(e,t,r)},(m=(t=u("easing.RoughEase",function(e){for(var t,r,i,n,a,o,s=(e=e||{}).taper||"none",u=[],l=0,c=0|(e.points||20),h=c,f=!1!==e.randomize,d=!0===e.clamp,p=e.template instanceof g?e.template:null,m="number"==typeof e.strength?.4*e.strength:.4;-1<--h;)t=f?Math.random():1/c*h,r=p?p.getRatio(t):t,i="none"===s?m:"out"===s?(n=1-t)*n*m:"in"===s?t*t*m:t<.5?(n=2*t)*n*.5*m:(n=2*(1-t))*n*.5*m,f?r+=Math.random()*i-.5*i:h%2?r+=.5*i:r-=.5*i,d&&(1t.t){for(;t.next&&e>=t.t;)t=t.next;t=t.prev}else for(;t.prev&&e<=t.t;)t=t.prev;return(this._prev=t).v+(e-t.t)/t.gap*t.c},m.config=function(e){return new t(e)},t.ease=new t,h("Bounce",l("BounceOut",function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}),l("BounceIn",function(e){return(e=1-e)<1/2.75?1-7.5625*e*e:e<2/2.75?1-(7.5625*(e-=1.5/2.75)*e+.75):e<2.5/2.75?1-(7.5625*(e-=2.25/2.75)*e+.9375):1-(7.5625*(e-=2.625/2.75)*e+.984375)}),l("BounceInOut",function(e){var t=e<.5;return(e=t?1-2*e:2*e-1)<1/2.75?e*=7.5625*e:e=e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375,t?.5*(1-e):.5*e+.5})),h("Circ",l("CircOut",function(e){return Math.sqrt(1-(e-=1)*e)}),l("CircIn",function(e){return-(Math.sqrt(1-e*e)-1)}),l("CircInOut",function(e){return(e*=2)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1)})),h("Elastic",(e=function(e,t,r){var i=u("easing."+e,function(e,t){this._p1=1<=e?e:1,this._p2=(t||r)/(e<1?e:1),this._p3=this._p2/o*(Math.asin(1/this._p1)||0),this._p2=o/this._p2},!0),n=i.prototype=new g;return n.constructor=i,n.getRatio=t,n.config=function(e,t){return new i(e,t)},i})("ElasticOut",function(e){return this._p1*Math.pow(2,-10*e)*Math.sin((e-this._p3)*this._p2)+1},.3),e("ElasticIn",function(e){return-this._p1*Math.pow(2,10*(e-=1))*Math.sin((e-this._p3)*this._p2)},.3),e("ElasticInOut",function(e){return(e*=2)<1?this._p1*Math.pow(2,10*(e-=1))*Math.sin((e-this._p3)*this._p2)*-.5:this._p1*Math.pow(2,-10*(e-=1))*Math.sin((e-this._p3)*this._p2)*.5+1},.45)),h("Expo",l("ExpoOut",function(e){return 1-Math.pow(2,-10*e)}),l("ExpoIn",function(e){return Math.pow(2,10*(e-1))-.001}),l("ExpoInOut",function(e){return(e*=2)<1?.5*Math.pow(2,10*(e-1)):.5*(2-Math.pow(2,-10*(e-1)))})),h("Sine",l("SineOut",function(e){return Math.sin(e*s)}),l("SineIn",function(e){return 1-Math.cos(e*s)}),l("SineInOut",function(e){return-.5*(Math.cos(Math.PI*e)-1)})),u("easing.EaseLookup",{find:function(e){return g.map[e]}},!0),c(n.SlowMo,"SlowMo","ease,"),c(t,"RoughEase","ease,"),c(r,"SteppedEase","ease,"),d},!0)}),_gsScope._gsDefine&&_gsScope._gsQueue.pop()(),function(f,d){"use strict";var p={},i=f.document,m=f.GreenSockGlobals=f.GreenSockGlobals||f,e=m[d];if(e)return"undefined"!=typeof module&&module.exports&&(module.exports=e);var t,r,n,g,v,a,o,b=function(e){var t,r=e.split("."),i=m;for(t=0;t=r&&ethis._duration?this._duration:e,t)):this._time},n.totalTime=function(e,t,r){if(v||g.wake(),!arguments.length)return this._totalTime;if(this._timeline){if(e<0&&!r&&(e+=this.totalDuration()),this._timeline.smoothChildTiming){this._dirty&&this.totalDuration();var i=this._totalDuration,n=this._timeline;if(ia;)n=n._prev;return n?(e._next=n._next,n._next=e):(e._next=this._first,this._first=e),e._next?e._next._prev=e:this._last=e,e._prev=n,this._recent=e,this._timeline&&this._uncache(!0),this},n._remove=function(e,t){return e.timeline===this&&(t||e._enabled(!1,!0),e._prev?e._prev._next=e._next:this._first===e&&(this._first=e._next),e._next?e._next._prev=e._prev:this._last===e&&(this._last=e._prev),e._next=e._prev=e.timeline=null,e===this._recent&&(this._recent=this._last),this._timeline&&this._uncache(!0)),this},n.render=function(e,t,r){var i,n=this._first;for(this._totalTime=this._time=this._rawPrevTime=e;n;)i=n._next,(n._active||e>=n._startTime&&!n._paused&&!n._gc)&&(n._reversed?n.render((n._dirty?n.totalDuration():n._totalDuration)-(e-n._startTime)*n._timeScale,t,r):n.render((e-n._startTime)*n._timeScale,t,r)),n=i},n.rawTime=function(){return v||g.wake(),this._totalTime};var j=T("TweenLite",function(e,t,r){if(I.call(this,t,r),this.render=j.prototype.render,null==e)throw"Cannot tween a null target.";this.target=e="string"!=typeof e?e:j.selector(e)||e;var i,n,a,o=e.jquery||e.length&&e!==f&&e[0]&&(e[0]===f||e[0].nodeType&&e[0].style&&!e.nodeType),s=this.vars.overwrite;if(this._overwrite=s=null==s?K[j.defaultOverwrite]:"number"==typeof s?s>>0:K[s],(o||e instanceof Array||e.push&&w(e))&&"number"!=typeof e[0])for(this._targets=a=u(e),this._propLookup=[],this._siblings=[],i=0;i=$){for(r in $=g.frame+(parseInt(j.autoSleep,10)||120),V){for(e=(t=V[r].tweens).length;-1<--e;)t[e]._gc&&t.splice(e,1);0===t.length&&delete V[r]}if((!(r=Q._first)||r._paused)&&j.autoSleep&&!Z._first&&1===g._listeners.tick.length){for(;r&&r._paused;)r=r._next;r||g.sleep()}}},g.addEventListener("tick",I._updateRoot);var te=function(e,t,r){var i,n,a=e._gsTweenID;if(V[a||(e._gsTweenID=a="t"+Y++)]||(V[a]={target:e,tweens:[]}),t&&((i=V[a].tweens)[n=i.length]=t,r))for(;-1<--n;)i[n]===t&&i.splice(n,1);return V[a].tweens},re=function(e,t,r,i){var n,a,o=e.vars.onOverwrite;return o&&(n=o(e,t,r,i)),(o=j.onOverwrite)&&(a=o(e,t,r,i)),!1!==n&&!1!==a},ie=function(e,t,r,i,n){var a,o,s,u;if(1===i||4<=i){for(u=n.length,a=0;ac&&((d||!s._initted)&&c-s._startTime<=2e-8||(h[f++]=s)));for(a=f;-1<--a;)if(u=(s=h[a])._firstPT,2===i&&s._kill(r,e,t)&&(o=!0),2!==i||!s._firstPT&&s._initted&&u){if(2!==i&&!re(s,t))continue;s._enabled(!1,!1)&&(o=!0)}return o},ne=function(e,t,r){for(var i=e._timeline,n=i._timeScale,a=e._startTime;i._timeline;){if(a+=i._startTime,n*=i._timeScale,i._paused)return-100;i=i._timeline}return t<(a/=n)?a-t:r&&a===t||!e._initted&&a-t<2e-8?y:(a+=e.totalDuration()/e._timeScale/n)>t+y?0:a-t-y};n._init=function(){var e,t,r,i,n,a,o=this.vars,s=this._overwrittenProps,u=this._duration,l=!!o.immediateRender,c=o.ease,h=this._startAt;if(o.startAt){for(i in h&&(h.render(-1,!0),h.kill()),n={},o.startAt)n[i]=o.startAt[i];if(n.data="isStart",n.overwrite=!1,n.immediateRender=!0,n.lazy=l&&!1!==o.lazy,n.startAt=n.delay=null,n.onUpdate=o.onUpdate,n.onUpdateParams=o.onUpdateParams,n.onUpdateScope=o.onUpdateScope||o.callbackScope||this,this._startAt=j.to(this.target||{},0,n),l)if(0s.pr;)i=i._next;(s._prev=i?i._prev:a)?s._prev._next=s:n=s,(s._next=i)?i._prev=s:a=s,s=o}s=t._firstPT=n}for(;s;)s.pg&&"function"==typeof s.t[e]&&s.t[e]()&&(r=!0),s=s._next;return r},ae.activate=function(e){for(var t=e.length;-1<--t;)e[t].API===ae.API&&(G[(new e[t])._propName]=e[t]);return!0},s.plugin=function(e){if(!(e&&e.propName&&e.init&&e.API))throw"illegal plugin definition.";var t,r=e.propName,i=e.priority||0,n=e.overwriteProps,a={init:"_onInitTween",set:"setRatio",kill:"_kill",round:"_mod",mod:"_mod",initAll:"_onInitAllProps"},o=T("plugins."+r.charAt(0).toUpperCase()+r.substr(1)+"Plugin",function(){ae.call(this,r,i),this._overwriteProps=n||[]},!0===e.global),s=o.prototype=new ae(r);for(t in(s.constructor=o).API=e.API,a)"function"==typeof e[t]&&(s[a[t]]=e[t]);return o.version=e.version,ae.activate([o]),o},t=f._gsQueue){for(r=0;r>0,f._cycle&&f._cycle===f._totalTime/u&&g<=e&&f._cycle--,f._time=f._totalTime-f._cycle*u,f._yoyo&&1&f._cycle&&(f._time=m-f._time),f._time>m?e=(f._time=m)+1e-4:f._time<0?f._time=e=0:e=f._time));if(f._hasPause&&!f._forcingPlayhead&&!t){if(d<(e=f._time)||f._repeat&&w!==f._cycle)for(i=f._first;i&&i._startTime<=e&&!l;)i._duration||"isPause"!==i.data||i.ratio||0===i._startTime&&0===f._rawPrevTime||(l=i),i=i._next;else for(i=f._last;i&&i._startTime>=e&&!l;)i._duration||"isPause"===i.data&&0f._time;)l.render(l._reversed?l.totalDuration()-(e-l._startTime)*l._timeScale:(e-l._startTime)*l._timeScale,t,r),l=l._prev;l=null,f.pause(),f._pauseTime=h}i._reversed?i.render((i._dirty?i.totalDuration():i._totalDuration)-(e-i._startTime)*i._timeScale,t,r):i.render((e-i._startTime)*i._timeScale,t,r)}i=a}f._onUpdate&&(t||(C.length&&A(),f._callback("onUpdate"))),o&&(f._locked||f._gc||v!==f._startTime&&b===f._timeScale||(0===f._time||p>=f.totalDuration())&&(n&&(C.length&&A(),f._timeline.autoRemoveChildren&&f._enabled(!1,!1),f._active=!1),!t&&f.vars[o]&&f._callback(o)))}else g!==f._totalTime&&f._onUpdate&&(t||f._callback("onUpdate"))},n.getActive=function(e,t,r){var i,n,a=[],o=this.getChildren(e||null==e,t||null==e,!!r),s=0,u=o.length;for(i=0;ie)return r[t].name;return null},n.getLabelBefore=function(e){null==e&&(e=this._time);for(var t=this.getLabelsArray(),r=t.length;-1<--r;)if(t[r].timee._startTime;u._timeline;)l&&u._timeline.smoothChildTiming?u.totalTime(u._totalTime,!0):u._gc&&u._enabled(!0,!1),u=u._timeline;return c},r.remove=function(e){if(e instanceof h){this._remove(e,!1);var t=e._timeline=e.vars.useFrames?h._rootFramesTimeline:h._rootTimeline;return e._startTime=(e._paused?e._pauseTime:t._time)-(e._reversed?e.totalDuration()-e._totalTime:e._totalTime)/e._timeScale,this}if(e instanceof Array||e&&e.push&&d(e)){for(var r=e.length;-1<--r;)this.remove(e[r]);return this}return"string"==typeof e?this.removeLabel(e):this.kill(null,e)},r._remove=function(e,t){return f.prototype._remove.call(this,e,t),this._last?this._time>this.duration()&&(this._time=this._duration,this._totalTime=this._totalDuration):this._time=this._totalTime=this._duration=this._totalDuration=0,this},r.append=function(e,t){return this.add(e,this._parseTimeOrLabel(null,t,!0,e))},r.insert=r.insertMultiple=function(e,t,r,i){return this.add(e,t||0,r,i)},r.appendMultiple=function(e,t,r,i){return this.add(e,this._parseTimeOrLabel(null,t,!0,e),r,i)},r.addLabel=function(e,t){return this._labels[e]=this._parseTimeOrLabel(t),this},r.addPause=function(e,t,r,i){var n=p.delayedCall(0,a,r,i||this);return n.vars.onComplete=n.vars.onReverseComplete=t,n.data="isPause",this._hasPause=!0,this.add(n,e)},r.removeLabel=function(e){return delete this._labels[e],this},r.getLabelTime=function(e){return null!=this._labels[e]?this._labels[e]:-1},r._parseTimeOrLabel=function(e,t,r,i){var n,a;if(i instanceof h&&i.timeline===this)this.remove(i);else if(i&&(i instanceof Array||i.push&&d(i)))for(a=i.length;-1<--a;)i[a]instanceof h&&i[a].timeline===this&&this.remove(i[a]);if(n="number"!=typeof e||t?99999999999=e&&!u;)i._duration||"isPause"===i.data&&0h._time;)u.render(u._reversed?u.totalDuration()-(e-u._startTime)*u._timeScale:(e-u._startTime)*u._timeScale,t,r),u=u._prev;u=null,h.pause(),h._pauseTime=c}i._reversed?i.render((i._dirty?i.totalDuration():i._totalDuration)-(e-i._startTime)*i._timeScale,t,r):i.render((e-i._startTime)*i._timeScale,t,r)}i=a}h._onUpdate&&(t||(v.length&&b(),h._callback("onUpdate"))),o&&(h._gc||p!==h._startTime&&m===h._timeScale||(0===h._time||d>=h.totalDuration())&&(n&&(v.length&&b(),h._timeline.autoRemoveChildren&&h._enabled(!1,!1),h._active=!1),!t&&h.vars[o]&&h._callback(o)))}},r._hasPausedChild=function(){for(var e=this._first;e;){if(e._paused||e instanceof m&&e._hasPausedChild())return!0;e=e._next}return!1},r.getChildren=function(e,t,r,i){i=i||-9999999999;for(var n=[],a=this._first,o=0;a;)a._startTime=r&&(n._startTime+=e),n=n._next;if(t)for(i in a)a[i]>=r&&(a[i]+=e);return this._uncache(!0)},r._kill=function(e,t){if(!e&&!t)return this._enabled(!1,!1);for(var r=t?this.getTweensOf(t):this.getChildren(!0,!0,!1),i=r.length,n=!1;-1<--i;)r[i]._kill(e,t)&&(n=!0);return n},r.clear=function(e){var t=this.getChildren(!1,!0,!0),r=t.length;for(this._time=this._totalTime=0;-1<--r;)t[r]._enabled(!1,!1);return!1!==e&&(this._labels={}),this._uncache(!0)},r.invalidate=function(){for(var e=this._first;e;)e.invalidate(),e=e._next;return h.prototype.invalidate.call(this)},r._enabled=function(e,t){if(e===this._gc)for(var r=this._first;r;)r._enabled(e,!0),r=r._next;return f.prototype._enabled.call(this,e,t)},r.totalTime=function(e,t,r){this._forcingPlayhead=!0;var i=h.prototype.totalTime.apply(this,arguments);return this._forcingPlayhead=!1,i},r.duration=function(e){return arguments.length?(0!==this.duration()&&0!==e&&this.timeScale(this._duration/e),this):(this._dirty&&this.totalDuration(),this._duration)},r.totalDuration=function(e){if(arguments.length)return e&&this.totalDuration()?this.timeScale(this._totalDuration/e):this;if(this._dirty){for(var t,r,i=0,n=this,a=n._last,o=999999999999;a;)t=a._prev,a._dirty&&a.totalDuration(),a._startTime>o&&n._sortChildren&&!a._paused&&!n._calculatingDuration?(n._calculatingDuration=1,n.add(a,a._startTime-a._delay),n._calculatingDuration=0):o=a._startTime,a._startTime<0&&!a._paused&&(i-=a._startTime,n._timeline.smoothChildTiming&&(n._startTime+=a._startTime/n._timeScale,n._time-=a._startTime,n._totalTime-=a._startTime,n._rawPrevTime-=a._startTime),n.shiftChildren(-a._startTime,!1,-9999999999),o=0),i<(r=a._startTime+a._totalDuration/a._timeScale)&&(i=r),a=t;n._duration=n._totalDuration=i,n._dirty=!1}return this._totalDuration},r.paused=function(e){if(!1===e&&this._paused)for(var t=this._first;t;)t._startTime===this._time&&"isPause"===t.data&&(t._rawPrevTime=0),t=t._next;return h.prototype.paused.apply(this,arguments)},r.usesFrames=function(){for(var e=this._timeline;e._timeline;)e=e._timeline;return e===h._rootFramesTimeline},r.rawTime=function(e){return e&&(this._paused||this._repeat&&0+~]|"+L+")"+L+"*"),H=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),W=new RegExp(B),G=new RegExp("^"+z+"$"),V={ID:new RegExp("^#("+z+")"),CLASS:new RegExp("^\\.("+z+")"),TAG:new RegExp("^("+z+"|[*])"),ATTR:new RegExp("^"+F),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+j+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,Q=/[+~]/,$=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ee=function(e,t,r){var i="0x"+t-65536;return i!=i||r?t:i<0?String.fromCharCode(65536+i):String.fromCharCode(i>>10|55296,1023&i|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,re=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ie=function(){x()},ne=be(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{I.apply(t=R.call(b.childNodes),b.childNodes),t[b.childNodes.length].nodeType}catch(e){I={apply:t.length?function(e,t){O.apply(e,R.call(t))}:function(e,t){for(var r=e.length,i=0;e[r++]=t[i++];);e.length=r-1}}}function ae(e,t,r,i){var n,a,o,s,u,l,c,h=t&&t.ownerDocument,f=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==f&&9!==f&&11!==f)return r;if(!i&&((t?t.ownerDocument||t:b)!==k&&x(t),t=t||k,T)){if(11!==f&&(u=Z.exec(e)))if(n=u[1]){if(9===f){if(!(o=t.getElementById(n)))return r;if(o.id===n)return r.push(o),r}else if(h&&(o=h.getElementById(n))&&v(t,o)&&o.id===n)return r.push(o),r}else{if(u[2])return I.apply(r,t.getElementsByTagName(e)),r;if((n=u[3])&&d.getElementsByClassName&&t.getElementsByClassName)return I.apply(r,t.getElementsByClassName(n)),r}if(d.qsa&&!M[e+" "]&&(!g||!g.test(e))){if(1!==f)h=t,c=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(te,re):t.setAttribute("id",s=S),a=(l=p(e)).length;a--;)l[a]="#"+s+" "+ve(l[a]);c=l.join(","),h=Q.test(e)&&me(t.parentNode)||t}if(c)try{return I.apply(r,h.querySelectorAll(c)),r}catch(e){}finally{s===S&&t.removeAttribute("id")}}}return m(e.replace(U,"$1"),t,r,i)}function oe(){var i=[];return function e(t,r){return i.push(t+" ")>_.cacheLength&&delete e[i.shift()],e[t+" "]=r}}function se(e){return e[S]=!0,e}function ue(e){var t=k.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){for(var r=e.split("|"),i=r.length;i--;)_.attrHandle[r[i]]=t}function ce(e,t){var r=t&&e,i=r&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(i)return i;if(r)for(;r=r.nextSibling;)if(r===t)return-1;return e?1:-1}function he(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function fe(r){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===r}}function de(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ne(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function pe(o){return se(function(a){return a=+a,se(function(e,t){for(var r,i=o([],e.length,a),n=i.length;n--;)e[r=i[n]]&&(e[r]=!(t[r]=e[r]))})})}function me(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in d=ae.support={},n=ae.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},x=ae.setDocument=function(e){var t,r,i=e?e.ownerDocument||e:b;return i!==k&&9===i.nodeType&&i.documentElement&&(o=(k=i).documentElement,T=!n(k),b!==k&&(r=k.defaultView)&&r.top!==r&&(r.addEventListener?r.addEventListener("unload",ie,!1):r.attachEvent&&r.attachEvent("onunload",ie)),d.attributes=ue(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ue(function(e){return e.appendChild(k.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(k.getElementsByClassName),d.getById=ue(function(e){return o.appendChild(e).id=S,!k.getElementsByName||!k.getElementsByName(S).length}),d.getById?(_.filter.ID=function(e){var t=e.replace($,ee);return function(e){return e.getAttribute("id")===t}},_.find.ID=function(e,t){if(void 0!==t.getElementById&&T){var r=t.getElementById(e);return r?[r]:[]}}):(_.filter.ID=function(e){var r=e.replace($,ee);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===r}},_.find.ID=function(e,t){if(void 0!==t.getElementById&&T){var r,i,n,a=t.getElementById(e);if(a){if((r=a.getAttributeNode("id"))&&r.value===e)return[a];for(n=t.getElementsByName(e),i=0;a=n[i++];)if((r=a.getAttributeNode("id"))&&r.value===e)return[a]}return[]}}),_.find.TAG=d.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var r,i=[],n=0,a=t.getElementsByTagName(e);if("*"!==e)return a;for(;r=a[n++];)1===r.nodeType&&i.push(r);return i},_.find.CLASS=d.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&T)return t.getElementsByClassName(e)},s=[],g=[],(d.qsa=K.test(k.querySelectorAll))&&(ue(function(e){o.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+L+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+L+"*(?:value|"+j+")"),e.querySelectorAll("[id~="+S+"-]").length||g.push("~="),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||g.push(".#.+[+~]")}),ue(function(e){e.innerHTML="";var t=k.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+L+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),o.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(d.matchesSelector=K.test(c=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ue(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",B)}),g=g.length&&new RegExp(g.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(o.compareDocumentPosition),v=t||K.test(o.contains)?function(e,t){var r=9===e.nodeType?e.documentElement:e,i=t&&t.parentNode;return e===i||!(!i||1!==i.nodeType||!(r.contains?r.contains(i):e.compareDocumentPosition&&16&e.compareDocumentPosition(i)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},P=t?function(e,t){if(e===t)return l=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===r?e===k||e.ownerDocument===b&&v(b,e)?-1:t===k||t.ownerDocument===b&&v(b,t)?1:u?D(u,e)-D(u,t):0:4&r?-1:1)}:function(e,t){if(e===t)return l=!0,0;var r,i=0,n=e.parentNode,a=t.parentNode,o=[e],s=[t];if(!n||!a)return e===k?-1:t===k?1:n?-1:a?1:u?D(u,e)-D(u,t):0;if(n===a)return ce(e,t);for(r=e;r=r.parentNode;)o.unshift(r);for(r=t;r=r.parentNode;)s.unshift(r);for(;o[i]===s[i];)i++;return i?ce(o[i],s[i]):o[i]===b?-1:s[i]===b?1:0}),k},ae.matches=function(e,t){return ae(e,null,null,t)},ae.matchesSelector=function(e,t){if((e.ownerDocument||e)!==k&&x(e),t=t.replace(H,"='$1']"),d.matchesSelector&&T&&!M[t+" "]&&(!s||!s.test(t))&&(!g||!g.test(t)))try{var r=c.call(e,t);if(r||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,ee),e[3]=(e[3]||e[4]||e[5]||"").replace($,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||ae.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&ae.error(e[0]),e},PSEUDO:function(e){var t,r=!e[6]&&e[2];return V.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":r&&W.test(r)&&(t=p(r,!0))&&(t=r.indexOf(")",r.length-t)-r.length)&&(e[0]=e[0].slice(0,t),e[2]=r.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace($,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=f[e+" "];return t||(t=new RegExp("(^|"+L+")"+e+"("+L+"|$)"))&&f(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(r,i,n){return function(e){var t=ae.attr(e,r);return null==t?"!="===i:!i||(t+="","="===i?t===n:"!="===i?t!==n:"^="===i?n&&0===t.indexOf(n):"*="===i?n&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function C(e,r,i){return b(r)?S.grep(e,function(e,t){return!!r.call(e,t,e)!==i}):r.nodeType?S.grep(e,function(e){return e===r!==i}):"string"!=typeof r?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,r){var i,n;if(!e)return this;if(r=r||A,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):b(e)?void 0!==r.ready?r.ready(e):e(S):S.makeArray(e,this);if(!(i="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:O.exec(e))||!i[1]&&t)return!t||t.jquery?(t||r).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:T,!0)),P.test(i[1])&&S.isPlainObject(t))for(i in t)b(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(n=T.getElementById(i[2]))&&(this[0]=n,this.length=1),this}).prototype=S.fn,A=S(T);var I=/^(?:parents|prev(?:Until|All))/,R={children:!0,contents:!0,next:!0,prev:!0};function D(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}S.fn.extend({has:function(e){var t=S(e,this),r=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]+)/i,ce=/^$|^module$|\/(?:java|ecma)script/i,he={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function fe(e,t){var r;return r=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&M(e,t)?S.merge([e],r):r}function de(e,t){for(var r=0,i=e.length;rx",v.noCloneChecked=!!pe.cloneNode(!0).lastChild.defaultValue;var be=T.documentElement,ye=/^key/,_e=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,we=/^([^.]*)(?:\.(.+)|)/;function xe(){return!0}function ke(){return!1}function Te(){try{return T.activeElement}catch(e){}}function Se(e,t,r,i,n,a){var o,s;if("object"==typeof t){for(s in"string"!=typeof r&&(i=i||r,r=void 0),t)Se(e,s,r,i,t[s],a);return e}if(null==i&&null==n?(n=r,i=r=void 0):null==n&&("string"==typeof r?(n=i,i=void 0):(n=i,i=r,r=void 0)),!1===n)n=ke;else if(!n)return e;return 1===a&&(o=n,(n=function(e){return S().off(e),o.apply(this,arguments)}).guid=o.guid||(o.guid=S.guid++)),e.each(function(){S.event.add(this,t,n,i,r)})}S.event={global:{},add:function(t,e,r,i,n){var a,o,s,u,l,c,h,f,d,p,m,g=J.get(t);if(g)for(r.handler&&(r=(a=r).handler,n=a.selector),n&&S.find.matchesSelector(be,n),r.guid||(r.guid=S.guid++),(u=g.events)||(u=g.events={}),(o=g.handle)||(o=g.handle=function(e){return void 0!==S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(j)||[""]).length;l--;)d=m=(s=we.exec(e[l])||[])[1],p=(s[2]||"").split(".").sort(),d&&(h=S.event.special[d]||{},d=(n?h.delegateType:h.bindType)||d,h=S.event.special[d]||{},c=S.extend({type:d,origType:m,data:i,handler:r,guid:r.guid,selector:n,needsContext:n&&S.expr.match.needsContext.test(n),namespace:p.join(".")},a),(f=u[d])||((f=u[d]=[]).delegateCount=0,h.setup&&!1!==h.setup.call(t,i,p,o)||t.addEventListener&&t.addEventListener(d,o)),h.add&&(h.add.call(t,c),c.handler.guid||(c.handler.guid=r.guid)),n?f.splice(f.delegateCount++,0,c):f.push(c),S.event.global[d]=!0)},remove:function(e,t,r,i,n){var a,o,s,u,l,c,h,f,d,p,m,g=J.hasData(e)&&J.get(e);if(g&&(u=g.events)){for(l=(t=(t||"").match(j)||[""]).length;l--;)if(d=m=(s=we.exec(t[l])||[])[1],p=(s[2]||"").split(".").sort(),d){for(h=S.event.special[d]||{},f=u[d=(i?h.delegateType:h.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=a=f.length;a--;)c=f[a],!n&&m!==c.origType||r&&r.guid!==c.guid||s&&!s.test(c.namespace)||i&&i!==c.selector&&("**"!==i||!c.selector)||(f.splice(a,1),c.selector&&f.delegateCount--,h.remove&&h.remove.call(e,c));o&&!f.length&&(h.teardown&&!1!==h.teardown.call(e,p,g.handle)||S.removeEvent(e,d,g.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],r,i,!0);S.isEmptyObject(u)&&J.remove(e,"handle events")}},dispatch:function(e){var t,r,i,n,a,o,s=S.event.fix(e),u=new Array(arguments.length),l=(J.get(this,"events")||{})[s.type]||[],c=S.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,Me=/\s*$/g;function Ae(e,t){return M(e,"table")&&M(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Oe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Ie(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Re(e,t){var r,i,n,a,o,s,u,l;if(1===t.nodeType){if(J.hasData(e)&&(a=J.access(e),o=J.set(t,a),l=a.events))for(n in delete o.handle,o.events={},l)for(r=0,i=l[n].length;r")},clone:function(e,t,r){var i,n,a,o,s,u,l,c=e.cloneNode(!0),h=S.contains(e.ownerDocument,e);if(!(v.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(o=fe(c),i=0,n=(a=fe(e)).length;i").prop({charset:r.scriptCharset,src:r.url}).on("load error",n=function(e){i.remove(),n=null,e&&t("error"===e.type?404:200,e.type)}),T.head.appendChild(i[0])},abort:function(){n&&n()}}});var Xt,qt=[],Ht=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=qt.pop()||S.expando+"_"+_t++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,r){var i,n,a,o=!1!==e.jsonp&&(Ht.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ht.test(e.data)&&"data");if(o||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=b(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,o?e[o]=e[o].replace(Ht,"$1"+i):!1!==e.jsonp&&(e.url+=(wt.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return a||S.error(i+" was not called"),a[0]},e.dataTypes[0]="json",n=k[i],k[i]=function(){a=arguments},r.always(function(){void 0===n?S(k).removeProp(i):k[i]=n,e[i]&&(e.jsonpCallback=t.jsonpCallback,qt.push(i)),a&&b(n)&&n(a[0]),a=n=void 0}),"script"}),v.createHTMLDocument=((Xt=T.implementation.createHTMLDocument("").body).innerHTML="
",2===Xt.childNodes.length),S.parseHTML=function(e,t,r){return"string"!=typeof e?[]:("boolean"==typeof t&&(r=t,t=!1),t||(v.createHTMLDocument?((i=(t=T.implementation.createHTMLDocument("")).createElement("base")).href=T.location.href,t.head.appendChild(i)):t=T),a=!r&&[],(n=P.exec(e))?[t.createElement(n[1])]:(n=ve([e],t,a),a&&a.length&&S(a).remove(),S.merge([],n.childNodes)));var i,n,a},S.fn.load=function(e,t,r){var i,n,a,o=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(i):e)}).always(r&&function(e,t){o.each(function(){r.apply(this,a||[e.responseText,t,e])})}),this},S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,r){var i,n,a,o,s,u,l=S.css(e,"position"),c=S(e),h={};"static"===l&&(e.style.position="relative"),s=c.offset(),a=S.css(e,"top"),u=S.css(e,"left"),n=("absolute"===l||"fixed"===l)&&-1<(a+u).indexOf("auto")?(o=(i=c.position()).top,i.left):(o=parseFloat(a)||0,parseFloat(u)||0),b(t)&&(t=t.call(e,r,S.extend({},s))),null!=t.top&&(h.top=t.top-s.top+o),null!=t.left&&(h.left=t.left-s.left+n),"using"in t?t.using.call(e,h):c.css(h)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,r,i=this[0];return i?i.getClientRects().length?(e=i.getBoundingClientRect(),r=i.ownerDocument.defaultView,{top:e.top+r.pageYOffset,left:e.left+r.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,r,i=this[0],n={top:0,left:0};if("fixed"===S.css(i,"position"))t=i.getBoundingClientRect();else{for(t=this.offset(),r=i.ownerDocument,e=i.offsetParent||r.documentElement;e&&(e===r.body||e===r.documentElement)&&"static"===S.css(e,"position");)e=e.parentNode;e&&e!==i&&1===e.nodeType&&((n=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),n.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-n.top-S.css(i,"marginTop",!0),left:t.left-n.left-S.css(i,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===S.css(e,"position");)e=e.offsetParent;return e||be})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,n){var a="pageYOffset"===n;S.fn[t]=function(e){return X(this,function(e,t,r){var i;if(y(e)?i=e:9===e.nodeType&&(i=e.defaultView),void 0===r)return i?i[n]:e[t];i?i.scrollTo(a?i.pageXOffset:r,a?r:i.pageYOffset):e[t]=r},t,e,arguments.length)}}),S.each(["top","left"],function(e,r){S.cssHooks[r]=Ne(v.pixelPosition,function(e,t){if(t)return t=Be(e,r),Le.test(t)?S(e).position()[r]+"px":t})}),S.each({Height:"height",Width:"width"},function(o,s){S.each({padding:"inner"+o,content:s,"":"outer"+o},function(i,a){S.fn[a]=function(e,t){var r=arguments.length&&(i||"boolean"!=typeof e),n=i||(!0===e||!0===t?"margin":"border");return X(this,function(e,t,r){var i;return y(e)?0===a.indexOf("outer")?e["inner"+o]:e.document.documentElement["client"+o]:9===e.nodeType?(i=e.documentElement,Math.max(e.body["scroll"+o],i["scroll"+o],e.body["offset"+o],i["offset"+o],i["client"+o])):void 0===r?S.css(e,t,n):S.style(e,t,r,n)},s,r?e:void 0,r)}})}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,r){S.fn[r]=function(e,t){return 0>>0,i=(r*=i)>>>0,i+=4294967296*(r-=i)}return 2.3283064365386963e-10*(i>>>0)}}();t.next=function(){var e=2091639*t.s0+2.3283064365386963e-10*t.c;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=0|e)},t.c=1,t.s0=r(" "),t.s1=r(" "),t.s2=r(" "),t.s0-=r(e),t.s0<0&&(t.s0+=1),t.s1-=r(e),t.s1<0&&(t.s1+=1),t.s2-=r(e),t.s2<0&&(t.s2+=1),r=null}function o(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function i(e,t){var r=new a(e),i=t&&t.state,n=r.next;return n.int32=function(){return 4294967296*r.next()|0},n.double=function(){return n()+11102230246251565e-32*(2097152*n()|0)},n.quick=n,i&&("object"==typeof i&&o(i,r),n.state=function(){return o(r,{})}),n}t&&t.exports?t.exports=i:r&&r.amd?r(function(){return i}):this.alea=i}(0,"object"==typeof t&&t,"function"==typeof define&&define)},{}],16:[function(e,t,r){!function(e,t,r){function a(e){var n=this,t="";n.next=function(){var e=n.b,t=n.c,r=n.d,i=n.a;return e=e<<25^e>>>7^t,t=t-r|0,r=r<<24^r>>>8^i,i=i-e|0,n.b=e=e<<20^e>>>12^t,n.c=t=t-r|0,n.d=r<<16^t>>>16^i,n.a=i-e|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,e===Math.floor(e)?(n.a=e/4294967296|0,n.b=0|e):t+=e;for(var r=0;r>>0)/4294967296};return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,i&&("object"==typeof i&&o(i,r),n.state=function(){return o(r,{})}),n}t&&t.exports?t.exports=i:r&&r.amd?r(function(){return i}):this.tychei=i}(0,"object"==typeof t&&t,"function"==typeof define&&define)},{}],17:[function(e,t,r){!function(e,t,r){function a(e){var t=this,r="";t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(0|e)?t.x=e:r+=e;for(var i=0;i>>0)/4294967296};return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,i&&("object"==typeof i&&o(i,r),n.state=function(){return o(r,{})}),n}t&&t.exports?t.exports=i:r&&r.amd?r(function(){return i}):this.xor128=i}(0,"object"==typeof t&&t,"function"==typeof define&&define)},{}],18:[function(e,t,r){!function(e,t,r){function a(e){var a=this;a.next=function(){var e,t,r=a.w,i=a.X,n=a.i;return a.w=r=r+1640531527|0,t=i[n+34&127],e=i[n=n+1&127],t^=t<<13,e^=e<<17,t^=t>>>15,e^=e>>>12,t=i[n]=t^e,a.i=n,t+(r^r>>>16)|0},function(e,t){var r,i,n,a,o,s=[],u=128;for(t===(0|t)?(i=t,t=null):(t+="\0",i=0,u=Math.max(u,t.length)),n=0,a=-32;a>>15,i^=i<<4,i^=i>>>13,0<=a&&(o=o+1640531527|0,n=0==(r=s[127&a]^=i+o)?n+1:0);for(128<=n&&(s[127&(t&&t.length||0)]=-1),n=127,a=512;0>>15,r^=r>>>12,s[n]=i^r;e.w=o,e.X=s,e.i=n}(a,e)}function o(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function i(e,t){null==e&&(e=+new Date);var r=new a(e),i=t&&t.state,n=function(){return(r.next()>>>0)/4294967296};return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,i&&(i.X&&o(i,r),n.state=function(){return o(r,{})}),n}t&&t.exports?t.exports=i:r&&r.amd?r(function(){return i}):this.xor4096=i}(0,"object"==typeof t&&t,"function"==typeof define&&define)},{}],19:[function(e,t,r){!function(e,t,r){function a(e){var n=this;n.next=function(){var e,t,r=n.x,i=n.i;return e=r[i],t=(e^=e>>>7)^e<<24,t^=(e=r[i+1&7])^e>>>10,t^=(e=r[i+3&7])^e>>>3,t^=(e=r[i+4&7])^e<<7,e=r[i+7&7],t^=(e^=e<<13)^e<<9,r[i]=t,n.i=i+1&7,t},function(e,t){var r,i=[];if(t===(0|t))i[0]=t;else for(t=""+t,r=0;r>>0)/4294967296};return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,i&&(i.x&&o(i,r),n.state=function(){return o(r,{})}),n}t&&t.exports?t.exports=i:r&&r.amd?r(function(){return i}):this.xorshift7=i}(0,"object"==typeof t&&t,"function"==typeof define&&define)},{}],20:[function(e,t,r){!function(e,t,r){function a(e){var t=this,r="";t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^e^e<<1)|0},t.x=0,t.y=0,t.z=0,t.w=0,e===((t.v=0)|e)?t.x=e:r+=e;for(var i=0;i>>4),t.next()}function o(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function i(e,t){var r=new a(e),i=t&&t.state,n=function(){return(r.next()>>>0)/4294967296};return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,i&&("object"==typeof i&&o(i,r),n.state=function(){return o(r,{})}),n}t&&t.exports?t.exports=i:r&&r.amd?r(function(){return i}):this.xorwow=i}(0,"object"==typeof t&&t,"function"==typeof define&&define)},{}],21:[function(t,r,e){!function(s,u){var l,c=this,h=256,f=6,d="random",p=u.pow(h,f),m=u.pow(2,52),g=2*m,v=h-1;function e(e,t,r){var i=[],n=_(function e(t,r){var i,n=[],a=typeof t;if(r&&"object"==a)for(i in t)try{n.push(e(t[i],r-1))}catch(e){}return n.length?n:"string"==a?t:t+"\0"}((t=1==t?{entropy:!0}:t||{}).entropy?[e,w(s)]:null==e?function(){try{var e;return l&&(e=l.randomBytes)?e=e(h):(e=new Uint8Array(h),(c.crypto||c.msCrypto).getRandomValues(e)),w(e)}catch(e){var t=c.navigator,r=t&&t.plugins;return[+new Date,c,r,c.screen,w(s)]}}():e,3),i),a=new b(i),o=function(){for(var e=a.g(f),t=p,r=0;e>>=1;return(e+r)/t};return o.int32=function(){return 0|a.g(4)},o.quick=function(){return a.g(4)/4294967296},o.double=o,_(w(a.S),s),(t.pass||r||function(e,t,r,i){return i&&(i.S&&y(i,a),e.state=function(){return y(a,{})}),r?(u[d]=e,t):e})(o,n,"global"in t?t.global:this==u,t.state)}function b(e){var t,r=e.length,o=this,i=0,n=o.i=o.j=0,a=o.S=[];for(r||(e=[r++]);iMath.PI?h-r:r}function g(e){return e-h*Math.floor(e/h)}t.exports={UP:a,DOWN:o,LEFT:s,RIGHT:0,NORTH:u,SOUTH:l,WEST:c,EAST:0,PI_2:h,PI_QUARTER:f,PI_HALF:d,toDegrees:function(e){return e*i},toRadians:function(e){return e*n},isAngleBetween:function(e,t,r){if(((r-t)%h+h)%h>=Math.PI){var i=t;t=r,r=i}return t<=r?t<=e&&e<=r:t<=e||e<=r},differenceAnglesSign:p,differenceAngles:m,shortestAngle:function(e,t){return m(t,e)*p(t,e)+e},normalize:g,angleTwoPoints:function(){return 4===arguments.length?Math.atan2(arguments[3]-arguments[1],arguments[2]-arguments[0]):Math.atan2(arguments[1].y-arguments[0].y,arguments[1].x-arguments[0].x)},distanceTwoPoints:function(){return 2===arguments.length?Math.sqrt(Math.pow(arguments[1].x-arguments[0].x,2)+Math.pow(arguments[1].y-arguments[0].y,2)):Math.sqrt(Math.pow(arguments[2]-arguments[0],2)+Math.pow(arguments[3]-arguments[1],2))},distanceTwoPointsSquared:function(){return 2===arguments.length?Math.pow(arguments[1].x-arguments[0].x,2)+Math.pow(arguments[1].y-arguments[0].y,2):Math.pow(arguments[2]-arguments[0],2)+Math.pow(arguments[3]-arguments[1],2)},closestAngle:function(e){var t=m(e,s),r=m(e,0),i=m(e,a),n=m(e,o);return t<=r&&t<=i&&t<=n?s:r<=i&&r<=n?0:i<=n?a:o},equals:function(e,t,r){return r?m(e,t)>16)+e*(r>>16)<<16|i*(t>>8&255)+e*(r>>8&255)<<8|i*(255&t)+e*(255&r)},random:function(e,t){function r(){return s.range(e,t)}var i=s.pick([{r:1,g:1,b:1},{r:1,g:1,b:0},{r:1,g:0,b:1},{r:0,g:1,b:1},{r:1,g:0,b:0},{r:0,g:1,b:0},{r:0,g:0,b:1}]);return e=e||0,t=t||255,this.rgbToHex(i.r?r():0,i.g?r():0,i.b?r():0)},randomHSL:function(e,t,r,i,n,a){var o={h:s.range(e,t),s:s.range(r,i,!0),l:s.range(n,a,!0)};return this.hslToHex(o)},randomGoldenRatioHSL:function(e,t,r){for(var i=s.get(1,!0),n=[],a=0;a=this.time?(this.parent.x=t.end,this.toX=null,this.parent.emit("bounce-x-end",this.parent)):this.parent.x=this.ease(t.time,t.start,t.delta,this.time),this.parent.dirty=!0}if(this.toY){var r=this.toY;r.time+=e,this.parent.emit("moved",{viewport:this.parent,type:"bounce-y"}),r.time>=this.time?(this.parent.y=r.end,this.toY=null,this.parent.emit("bounce-y-end",this.parent)):this.parent.y=this.ease(r.time,r.start,r.delta,this.time),this.parent.dirty=!0}}}},{key:"calcUnderflowX",value:function(){var e=void 0;switch(this.underflowX){case-1:e=0;break;case 1:e=this.parent.screenWidth-this.parent.screenWorldWidth;break;default:e=(this.parent.screenWidth-this.parent.screenWorldWidth)/2}return e}},{key:"calcUnderflowY",value:function(){var e=void 0;switch(this.underflowY){case-1:e=0;break;case 1:e=this.parent.screenHeight-this.parent.screenWorldHeight;break;default:e=(this.parent.screenHeight-this.parent.screenWorldHeight)/2}return e}},{key:"bounce",value:function(){if(!this.paused){var e=void 0,t=this.parent.plugins.decelerate;t&&(t.x||t.y)&&(t.x&&t.percentChangeX===t.friction||t.y&&t.percentChangeY===t.friction)&&(((e=this.parent.OOB()).left&&this.left||e.right&&this.right)&&(t.percentChangeX=this.friction),(e.top&&this.top||e.bottom&&this.bottom)&&(t.percentChangeY=this.friction));var r=this.parent.plugins.drag||{},i=this.parent.plugins.pinch||{};if(t=t||{},!(r.active||i.active||this.toX&&this.toY||t.x&&t.y)){var n=(e=e||this.parent.OOB()).cornerPoint;if(!this.toX&&!t.x){var a=null;e.left&&this.left?a=this.parent.screenWorldWidththis.maxWidth&&(this.parent.fitWidth(this.maxWidth),e=this.parent.worldScreenWidth,t=this.parent.worldScreenHeight,this.parent.emit("zoomed",{viewport:this.parent,type:"clamp-zoom"})),this.minHeight&&tthis.maxHeight&&(this.parent.fitHeight(this.maxHeight),this.parent.emit("zoomed",{viewport:this.parent,type:"clamp-zoom"}))}}}]),i}()},{"./plugin":9}],3:[function(e,t,r){"use strict";var n=function(){function i(e,t){for(var r=0;r(!0===this.right?this.parent.worldWidth:this.right)&&(this.parent.x=-(!0===this.right?this.parent.worldWidth:this.right)*this.parent.scale.x+this.parent.screenWidth,t=!(e.x=0));t&&this.parent.emit("moved",{viewport:this.parent,type:"clamp-x"})}if(null!==this.top||null!==this.bottom){var r=void 0;if(this.parent.screenWorldHeight(!0===this.bottom?this.parent.worldHeight:this.bottom)&&(this.parent.y=-(!0===this.bottom?this.parent.worldHeight:this.bottom)*this.parent.scale.y+this.parent.screenHeight,r=!(e.y=0));r&&this.parent.emit("moved",{viewport:this.parent,type:"clamp-y"})}}}}]),i}()},{"./plugin":9,"./utils":12}],4:[function(e,t,r){"use strict";var n=function(){function i(e,t){for(var r=0;r=e-100){var s=e-o.time;this.x=(this.parent.x-o.x)/s,this.y=(this.parent.y-o.y)/s,this.percentChangeX=this.percentChangeY=this.friction;break}}}catch(e){r=!0,i=e}finally{try{!t&&a.return&&a.return()}finally{if(r)throw i}}}}},{key:"activate",value:function(e){void 0!==(e=e||{}).x&&(this.x=e.x,this.percentChangeX=this.friction),void 0!==e.y&&(this.y=e.y,this.percentChangeY=this.friction)}},{key:"update",value:function(e){if(!this.paused){var t=void 0;this.x&&(this.parent.x+=this.x*e,this.x*=this.percentChangeX,Math.abs(this.x)this.parent.worldWidth&&(this.parent.x=-this.parent.worldWidth*this.parent.scale.x+this.parent.screenWidth,e.x=0);if("x"!==this.clampWheel)if(this.parent.screenWorldHeightthis.parent.worldHeight&&(this.parent.y=-this.parent.worldHeight*this.parent.scale.y+this.parent.screenHeight,e.y=0)}},{key:"active",get:function(){return this.moved}}]),i}()},{"./plugin":9,"./utils":12}],6:[function(e,t,r){"use strict";var i=function(){function i(e,t){for(var r=0;rthis.radius))return;var i=Math.atan2(this.target.y-e.y,this.target.x-e.x);t=this.target.x-Math.cos(i)*this.radius,r=this.target.y-Math.sin(i)*this.radius}if(this.speed){var n=t-e.x,a=r-e.y;if(n||a){var o=Math.atan2(r-e.y,t-e.x),s=Math.cos(o)*this.speed,u=Math.sin(o)*this.speed,l=Math.abs(s)>Math.abs(n)?t:e.x+s,c=Math.abs(u)>Math.abs(a)?r:e.y+u;this.parent.moveCenter(l,c),this.parent.emit("moved",{viewport:this.parent,type:"follow"})}}else this.parent.moveCenter(t,r),this.parent.emit("moved",{viewport:this.parent,type:"follow"})}}}]),n}()},{"./plugin":9}],7:[function(e,t,r){"use strict";var n=function(){function i(e,t){for(var r=0;r=this.radiusSquared){var n=Math.atan2(i.y-r,i.x-t);this.linear?(this.horizontal=Math.round(Math.cos(n))*this.speed*this.reverse*.06,this.vertical=Math.round(Math.sin(n))*this.speed*this.reverse*.06):(this.horizontal=Math.cos(n)*this.speed*this.reverse*.06,this.vertical=Math.sin(n)*this.speed*this.reverse*.06)}else this.horizontal&&this.decelerateHorizontal(),this.vertical&&this.decelerateVertical(),this.horizontal=this.vertical=0}else a.exists(this.left)&&tthis.right?this.horizontal=-1*this.reverse*this.speed*.06:(this.decelerateHorizontal(),this.horizontal=0),a.exists(this.top)&&rthis.bottom?this.vertical=-1*this.reverse*this.speed*.06:(this.decelerateVertical(),this.vertical=0)}}},{key:"decelerateHorizontal",value:function(){var e=this.parent.plugins.decelerate;this.horizontal&&e&&!this.noDecelerate&&e.activate({x:this.horizontal*this.speed*this.reverse/(1e3/60)})}},{key:"decelerateVertical",value:function(){var e=this.parent.plugins.decelerate;this.vertical&&e&&!this.noDecelerate&&e.activate({y:this.vertical*this.speed*this.reverse/(1e3/60)})}},{key:"up",value:function(){this.horizontal&&this.decelerateHorizontal(),this.vertical&&this.decelerateVertical(),this.horizontal=this.vertical=null}},{key:"update",value:function(){if(!this.paused&&(this.horizontal||this.vertical)){var e=this.parent.center;this.horizontal&&(e.x+=this.horizontal*this.speed),this.vertical&&(e.y+=this.vertical*this.speed),this.parent.moveCenter(e),this.parent.emit("moved",{viewport:this.parent,type:"mouse-edges"})}}}]),i}()},{"./plugin":9,"./utils":12}],8:[function(e,t,r){"use strict";var n=function(){function i(e,t){for(var r=0;r=this.time)this.parent.scale.set(this.x_scale,this.y_scale),this.removeOnComplete&&this.parent.removePlugin("snap-zoom"),this.parent.emit("snap-zoom-end",this.parent),this.snapping=null;else{var i=this.snapping;this.parent.scale.x=this.ease(i.time,i.startX,i.deltaX,this.time),this.parent.scale.y=this.ease(i.time,i.startY,i.deltaY,this.time)}var n=this.parent.plugins["clamp-zoom"];n&&n.clamp(),this.noMove||(this.center?this.parent.moveCenter(this.center):this.parent.moveCenter(t))}}else this.parent.scale.x===this.x_scale&&this.parent.scale.y===this.y_scale||this.createSnapping()}}},{key:"resume",value:function(){this.snapping=null,function e(t,r,i){null===t&&(t=Function.prototype);var n=Object.getOwnPropertyDescriptor(t,r);if(void 0===n){var a=Object.getPrototypeOf(t);return null===a?void 0:e(a,r,i)}if("value"in n)return n.value;var o=n.get;return void 0!==o?o.call(i):void 0}(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"resume",this).call(this)}}]),i}()},{"./plugin":9,"./utils":12}],11:[function(e,t,r){"use strict";var i=function(){function i(e,t){for(var r=0;rthis.time)r=!0,i=this.startX+this.deltaX,n=this.startY+this.deltaY;else{var a=this.ease(t.time,0,1,this.time);i=this.startX+this.deltaX*a,n=this.startY+this.deltaY*a}this.topLeft?this.parent.moveCorner(i,n):this.parent.moveCenter(i,n),this.parent.emit("moved",{viewport:this.parent,type:"snap"}),r&&(this.removeOnComplete&&this.parent.removePlugin("snap"),this.parent.emit("snap-end",this.parent),this.snapping=null)}else{var o=this.topLeft?this.parent.corner:this.parent.center;o.x===this.x&&o.y===this.y||this.snapStart()}}}]),a}()},{"./plugin":9,"./utils":12}],12:[function(e,t,r){"use strict";var i=e("penner");function n(e){return null!=e}t.exports={exists:n,defaults:function(e,t){return null!=e?e:t},ease:function(e,t){return n(e)?"function"==typeof e?e:"string"==typeof e?i[e]:void 0:i[t]}}},{penner:15}],13:[function(e,t,r){"use strict";var i=function(){function i(e,t){for(var r=0;r=this.threshold}},{key:"move",value:function(e){if(!this.pause){var t=!0,r=!1,i=void 0;try{for(var n,a=this.pluginsList[Symbol.iterator]();!(t=(n=a.next()).done);t=!0){n.value.move(e)}}catch(e){r=!0,i=e}finally{try{!t&&a.return&&a.return()}finally{if(r)throw i}}if(this.clickedAvailable){var o=e.data.global.x-this.last.x,s=e.data.global.y-this.last.y;(this.checkThreshold(o)||this.checkThreshold(s))&&(this.clickedAvailable=!1)}}}},{key:"up",value:function(e){if(!this.pause){if(e.data.originalEvent instanceof MouseEvent&&0==e.data.originalEvent.button&&(this.leftDown=!1),"mouse"!==e.data.pointerType)for(var t=0;tthis._worldWidth,e.top=this.top<0,e.bottom=this.bottom>this._worldHeight,e.cornerPoint={x:this._worldWidth*this.scale.x-this._screenWidth,y:this._worldHeight*this.scale.y-this._screenHeight},e}},{key:"countDownPointers",value:function(){return(this.leftDown?1:0)+this.touches.length}},{key:"getTouchPointers",value:function(){var e=[],t=this.trackedPointers;for(var r in t){var i=t[r];-1!==this.touches.indexOf(i.pointerId)&&e.push(i)}return e}},{key:"getPointers",value:function(){var e=[],t=this.trackedPointers;for(var r in t)e.push(t[r]);return e}},{key:"_reset",value:function(){this.plugins.bounce&&(this.plugins.bounce.reset(),this.plugins.bounce.bounce()),this.plugins.decelerate&&this.plugins.decelerate.reset(),this.plugins.snap&&this.plugins.snap.reset(),this.plugins.clamp&&this.plugins.clamp.update(),this.plugins["clamp-zoom"]&&this.plugins["clamp-zoom"].clamp(),this.dirty=!0}},{key:"removePlugin",value:function(e){this.plugins[e]&&(this.plugins[e]=null,this.emit(e+"-remove"),this.pluginsSort())}},{key:"pausePlugin",value:function(e){this.plugins[e]&&this.plugins[e].pause()}},{key:"resumePlugin",value:function(e){this.plugins[e]&&this.plugins[e].resume()}},{key:"pluginsSort",value:function(){var e=!0,t=!(this.pluginsList=[]),r=void 0;try{for(var i,n=g[Symbol.iterator]();!(e=(i=n.next()).done);e=!0){var a=i.value;this.plugins[a]&&this.pluginsList.push(this.plugins[a])}}catch(e){t=!0,r=e}finally{try{!e&&n.return&&n.return()}finally{if(t)throw r}}}},{key:"drag",value:function(e){return this.plugins.drag=new a(this,e),this.pluginsSort(),this}},{key:"clamp",value:function(e){return this.plugins.clamp=new s(this,e),this.pluginsSort(),this}},{key:"decelerate",value:function(e){return this.plugins.decelerate=new l(this,e),this.pluginsSort(),this}},{key:"bounce",value:function(e){return this.plugins.bounce=new c(this,e),this.pluginsSort(),this}},{key:"pinch",value:function(e){return this.plugins.pinch=new o(this,e),this.pluginsSort(),this}},{key:"snap",value:function(e,t,r){return this.plugins.snap=new h(this,e,t,r),this.pluginsSort(),this}},{key:"follow",value:function(e,t){return this.plugins.follow=new d(this,e,t),this.pluginsSort(),this}},{key:"wheel",value:function(e){return this.plugins.wheel=new p(this,e),this.pluginsSort(),this}},{key:"clampZoom",value:function(e){return this.plugins["clamp-zoom"]=new u(this,e),this.pluginsSort(),this}},{key:"mouseEdges",value:function(e){return this.plugins["mouse-edges"]=new m(this,e),this.pluginsSort(),this}},{key:"screenWidth",get:function(){return this._screenWidth},set:function(e){this._screenWidth=e}},{key:"screenHeight",get:function(){return this._screenHeight},set:function(e){this._screenHeight=e}},{key:"worldWidth",get:function(){return this._worldWidth?this._worldWidth:this.width},set:function(e){this._worldWidth=e,this.resizePlugins()}},{key:"worldHeight",get:function(){return this._worldHeight?this._worldHeight:this.height},set:function(e){this._worldHeight=e,this.resizePlugins()}},{key:"worldScreenWidth",get:function(){return this._screenWidth/this.scale.x}},{key:"worldScreenHeight",get:function(){return this._screenHeight/this.scale.y}},{key:"screenWorldWidth",get:function(){return this._worldWidth*this.scale.x}},{key:"screenWorldHeight",get:function(){return this._worldHeight*this.scale.y}},{key:"center",get:function(){return{x:this.worldScreenWidth/2-this.x/this.scale.x,y:this.worldScreenHeight/2-this.y/this.scale.y}},set:function(e){this.moveCenter(e)}},{key:"corner",get:function(){return{x:-this.x/this.scale.x,y:-this.y/this.scale.y}},set:function(e){this.moveCorner(e)}},{key:"right",get:function(){return-this.x/this.scale.x+this.worldScreenWidth},set:function(e){this.x=-e*this.scale.x+this.screenWidth,this._reset()}},{key:"left",get:function(){return-this.x/this.scale.x},set:function(e){this.x=-e*this.scale.x,this._reset()}},{key:"top",get:function(){return-this.y/this.scale.y},set:function(e){this.y=-e*this.scale.y,this._reset()}},{key:"bottom",get:function(){return-this.y/this.scale.y+this.worldScreenHeight},set:function(e){this.y=-e*this.scale.y+this.screenHeight,this._reset()}},{key:"dirty",get:function(){return this._dirty},set:function(e){this._dirty=e}},{key:"forceHitArea",get:function(){return this._forceHitArea},set:function(e){e?(this._forceHitArea=e,this.hitArea=e):(this._forceHitArea=!1,this.hitArea=new PIXI.Rectangle(0,0,this.worldWidth,this.worldHeight))}},{key:"pause",get:function(){return this._pause},set:function(e){(this._pause=e)&&(this.touches=[],this.leftDown=!1)}}]),r}();PIXI.extras.Viewport=v,t.exports=v},{"./bounce":1,"./clamp":3,"./clamp-zoom":2,"./decelerate":4,"./drag":5,"./follow":6,"./mouse-edges":7,"./pinch":8,"./snap":11,"./snap-zoom":10,"./utils":12,"./wheel":14}],14:[function(e,t,r){"use strict";var n=function(){function i(e,t){for(var r=0;rt&&(r[i]=this.hyphenate(r[i]).join("­"));return r.join("")},t.prototype.hyphenate=function(e){var t,r,i,n,a,o,s,u,l,c=[],h=[],f=e.toLowerCase(),d=Math.max,p=this.trie,m=[""];if(this.exceptions.hasOwnProperty(f))return e.match(this.exceptions[f]).slice(1);if(-1!==e.indexOf("­"))return[e];for(t=(e="_"+e+"_").toLowerCase().split(""),r=e.split(""),s=t.length,i=0;ithis.leftMin&&i