bullet.release.asm-34d2d331.js 993 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. System.register(['./_commonjsHelpers-ac46539f.js'], (function (exports) {
  2. 'use strict';
  3. var createCommonjsModule;
  4. return {
  5. setters: [function (module) {
  6. createCommonjsModule = module.c;
  7. }],
  8. execute: (function () {
  9. var bullet_release_asm = createCommonjsModule(function (module, exports) {
  10. var Bullet = (() => {
  11. var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
  12. return (
  13. function(Bullet = {}) {
  14. var Module=typeof Bullet!="undefined"?Bullet:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject;});var moduleOverrides=Object.assign({},Module);var ENVIRONMENT_IS_WEB=true;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readBinary;{if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src;}if(_scriptDir){scriptDirectory=_scriptDir;}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1);}else {scriptDirectory="";}}Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])Module["arguments"];if(Module["thisProgram"])Module["thisProgram"];if(Module["quit"])Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536);},Module:function(binary){},Instance:function(module,info){this.exports=(
  15. // EMSCRIPTEN_START_ASM
  16. function instantiate(Da){function c(d){d.set=function(a,b){this[a]=b;};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a;}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a<j;a+=4){g=f[o.charCodeAt(a+1)];h=f[o.charCodeAt(a+2)];m[i++]=f[o.charCodeAt(a)]<<2|g>>4;if(i<k)m[i++]=g<<4|h>>2;if(i<k)m[i++]=h<<6|f[o.charCodeAt(a+3)];}}function p(q){l(e,1024,"UXVhdF96AFZlYzNfegBFbXB0eQBSaWdpZEJvZHlfc2V0R3Jhdml0eQBEeW5hbWljc1dvcmxkX3NldEdyYXZpdHkAVHJhbnNmb3JtX3NldElkZW50aXR5AEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0VGFyZ2V0VmVsb2NpdHkASGluZ2VDb25zdHJhaW50X3NldE1vdG9yVmVsb2NpdHkAUmlnaWRCb2R5X3NldEFuZ3VsYXJWZWxvY2l0eQBSaWdpZEJvZHlfZ2V0QW5ndWxhclZlbG9jaXR5AFJpZ2lkQm9keV9zZXRMaW5lYXJWZWxvY2l0eQBSaWdpZEJvZHlfZ2V0TGluZWFyVmVsb2NpdHkAQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRPdmVybGFwUmVjb3ZlcnkASGluZ2VDb25zdHJhaW50X3NldEFuZ3VsYXJPbmx5AER5bmFtaWNzV29ybGRfcmVtb3ZlUmlnaWRCb2R5AER5bmFtaWNzV29ybGRfYWRkUmlnaWRCb2R5AFR5cGVkQ29uc3RyYWludF9nZXRGaXhlZEJvZHkAUXVhdF95AFZlYzNfeQBCb3gAU2ltcGxleFNoYXBlX2FkZFZlcnRleABDb2xsaXNpb25PYmplY3Rfc2V0VXNlckluZGV4AENvbGxpc2lvbk9iamVjdF9nZXRVc2VySW5kZXgAQ29uZVNoYXBlX3NldENvbmVVcEluZGV4AFF1YXRfeABWZWMzX3gAUmlnaWRCb2R5X25ldwBIaW5nZUNvbnN0cmFpbnRfbmV3AEZpeGVkQ29uc3RyYWludF9uZXcAUDJQQ29uc3RyYWludF9uZXcAR2VuZXJpYzZEb2ZTcHJpbmcyQ29uc3RyYWludF9uZXcAQ29sbGlzaW9uT2JqZWN0X25ldwBRdWF0X25ldwBTZXF1ZW50aWFsSW1wdWxzZUNvbnN0cmFpbnRTb2x2ZXJfbmV3AEJveENoYXJhY3RlckNvbnRyb2xsZXJfbmV3AENhcHN1bGVDaGFyYWN0ZXJDb250cm9sbGVyX25ldwBDb2xsaXNpb25EaXNwYXRjaGVyX25ldwBUcmFuc2Zvcm1fbmV3AGNjTWF0ZXJpYWxfbmV3AFRyaWFuZ2xlTWVzaF9uZXcARGJ2dEJyb2FkcGhhc2VfbmV3AEJveFNoYXBlX25ldwBTaW1wbGV4U2hhcGVfbmV3AEN5bGluZGVyU2hhcGVfbmV3AFRlcnJhaW5TaGFwZV9uZXcAQ29udmV4VHJpYW5nbGVNZXNoU2hhcGVfbmV3AFNjYWxlZEJ2aFRyaWFuZ2xlTWVzaFNoYXBlX25ldwBTcGhlcmVTaGFwZV9uZXcAQ29uZVNoYXBlX25ldwBTdGF0aWNQbGFuZVNoYXBlX25ldwBDYXBzdWxlU2hhcGVfbmV3AGNjQ29tcG91bmRTaGFwZV9uZXcAY2NEaXNjcmV0ZUR5bmFtaWNzV29ybGRfbmV3AEJveENoYXJhY3RlckNvbnRyb2xsZXJEZXNjX25ldwBDYXBzdWxlQ2hhcmFjdGVyQ29udHJvbGxlckRlc2NfbmV3AFZlYzNfbmV3AERlYnVnRHJhdwBRdWF0X3cAb25TaGFwZUhpdEV4dABDb2xsaXNpb25Xb3JsZF9yYXlUZXN0AENvbGxpc2lvbldvcmxkX2NvbnZleFN3ZWVwVGVzdABwcmVkaWN0aXZlIGNvbnZleFN3ZWVwVGVzdABDb250cm9sbGVySGl0UmVwb3J0AHVuc2lnbmVkIHNob3J0AGlzbGFuZFVuaW9uRmluZEFuZFF1aWNrU29ydABQZXJzaXN0ZW50TWFuaWZvbGRfZ2V0Q29udGFjdFBvaW50AEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0RXF1aWxpYnJpdW1Qb2ludABEeW5hbWljc1dvcmxkX3JlbW92ZUNvbnN0cmFpbnQARHluYW1pY3NXb3JsZF9hZGRDb25zdHJhaW50AHVuc2lnbmVkIGludABCb3hDaGFyYWN0ZXJDb250cm9sbGVyX3NldEhhbGZTaWRlRXh0ZW50AEJveENoYXJhY3RlckNvbnRyb2xsZXJfc2V0SGFsZkZvcndhcmRFeHRlbnQAaW1wbGVtZW50AFN0YXRpY1BsYW5lU2hhcGVfc2V0UGxhbmVDb25zdGFudABIaW5nZUNvbnN0cmFpbnRfc2V0TGltaXQAR2VuZXJpYzZEb2ZTcHJpbmcyQ29uc3RyYWludF9zZXRMaW1pdABDaGFyYWN0ZXJDb250cm9sbGVyX3NldFNsb3BlTGltaXQAUmF5Q2FsbGJhY2tfaGFzSGl0AENvbnZleENhbGxiYWNrX2hhc0hpdABDYXBzdWxlQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRIZWlnaHQAQ29uZVNoYXBlX3NldEhlaWdodABCb3hDaGFyYWN0ZXJDb250cm9sbGVyX3NldEhhbGZIZWlnaHQAQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRDb250YWN0T2Zmc2V0AENoYXJhY3RlckNvbnRyb2xsZXJfc2V0U3RlcE9mZnNldABjY0Nsb3Nlc3RSYXlDYWxsYmFja19yZXNldABjY0FsbFJheUNhbGxiYWNrX3Jlc2V0AGNjQ2xvc2VzdENvbnZleENhbGxiYWNrX3Jlc2V0AGNjQWxsQ29udmV4Q2FsbGJhY2tfcmVzZXQAUXVhdF9zZXQAY2NNYXRlcmlhbF9zZXQAVmVjM19zZXQASGluZ2VDb25zdHJhaW50X3NldE1vdG9yVGFyZ2V0AEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0U2Vydm9UYXJnZXQAX19kZXN0cnVjdABDaGFyYWN0ZXJDb250cm9sbGVyX2dldEdob3N0T2JqZWN0AENvbnRyb2xsZXJTaGFwZUhpdF9nZXRIaXRDb2xsaXNpb25PYmplY3QAQ29sbGlzaW9uV29ybGRfcmVtb3ZlQ29sbGlzaW9uT2JqZWN0AENvbGxpc2lvbldvcmxkX2FkZENvbGxpc2lvbk9iamVjdABDb2xsaXNpb25PYmplY3RfaXNTdGF0aWNPYmplY3QAQ29sbGlzaW9uT2JqZWN0X2lzS2luZW1hdGljT2JqZWN0AENvbGxpc2lvbk9iamVjdF9pc1N0YXRpY09yS2luZW1hdGljT2JqZWN0AGZsb2F0AGludF9hcnJheV9hdABWZWMzX2FycmF5X2F0AHVpbnQ2NF90AENhcHN1bGVDaGFyYWN0ZXJDb250cm9sbGVyX3NldFJhZGl1cwBDb25lU2hhcGVfc2V0UmFkaXVzAENvbGxpc2lvbk9iamVjdF9zZXRDY2RTd2VwdFNwaGVyZVJhZGl1cwBTcGhlcmVTaGFwZV9zZXRVbnNjYWxlZFJhZGl1cwBzb2x2ZUNvbnN0cmFpbnRzAEJveFNoYXBlX3NldFVuc2NhbGVkSGFsZkV4dGVudHMAUGVyc2lzdGVudE1hbmlmb2xkX2dldE51bUNvbnRhY3RzAGNyZWF0ZVByZWRpY3RpdmVDb250YWN0cwBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldFN0aWZmbmVzcwBidENvbXBvdW5kQ29tcG91bmRMZWFmQ2FsbGJhY2s6OlByb2Nlc3MAUmlnaWRCb2R5X3NldE1hc3MAY2NBbGxSYXlDYWxsYmFja19nZXRDb2xsaXNpb25TaGFwZVB0cnMAY2NBbGxDb252ZXhDYWxsYmFja19nZXRDb2xsaXNpb25TaGFwZVB0cnMAZGlzcGF0Y2hBbGxDb2xsaXNpb25QYWlycwBidEhhc2hlZE92ZXJsYXBwaW5nUGFpckNhY2hlOjpwcm9jZXNzQWxsT3ZlcmxhcHBpbmdQYWlycwBjYWxjdWxhdGVPdmVybGFwcGluZ1BhaXJzAFJpZ2lkQm9keV9zZXRNYXNzUHJvcHMAQ29udHJvbGxlckhpdF9nZXRIaXRXb3JsZFBvcwB1cGRhdGVBY3Rpb25zAHNvbHZlR3JvdXBDYWNoZUZyaWVuZGx5SXRlcmF0aW9ucwBDb252ZXhJbnRlcm5hbFNoYXBlX2dldEltcGxpY2l0U2hhcGVEaW1lbnNpb25zAGludGVncmF0ZVRyYW5zZm9ybXMAUmlnaWRCb2R5X3NldEZsYWdzAGNjQ2xvc2VzdFJheUNhbGxiYWNrX3NldEZsYWdzAGNjQWxsUmF5Q2FsbGJhY2tfc2V0RmxhZ3MAUmlnaWRCb2R5X2dldEZsYWdzAENvbGxpc2lvbk9iamVjdF9zZXRDb2xsaXNpb25GbGFncwBDb2xsaXNpb25PYmplY3RfZ2V0Q29sbGlzaW9uRmxhZ3MAQ29tcG91bmRTaGFwZV9nZXROdW1DaGlsZFNoYXBlcwBjbGVhckxpbmVzAGZsdXNoTGluZXMASGluZ2VDb25zdHJhaW50X3NldEZyYW1lcwBGaXhlZENvbnN0cmFpbnRfc2V0RnJhbWVzAEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0RnJhbWVzAFJpZ2lkQm9keV9jbGVhckZvcmNlcwBwcm9jZXNzSXNsYW5kcwBjYWxjdWxhdGVTaW11bGF0aW9uSXNsYW5kcwBSaWdpZEJvZHlfc2V0U2xlZXBpbmdUaHJlc2hvbGRzAHJlbGVhc2UgcHJlZGljdGl2ZSBjb250YWN0IG1hbmlmb2xkcwBEaXNwYXRjaGVyX2dldE51bU1hbmlmb2xkcwBzeW5jUGh5c2ljc1RvR3JhcGhpY3MAdXBkYXRlQWFiYnMAY2NDbG9zZXN0UmF5Q2FsbGJhY2tfZ2V0Q29sbGlzaW9uU2hhcGVQdHIAY2NDbG9zZXN0Q29udmV4Q2FsbGJhY2tfZ2V0Q29sbGlzaW9uU2hhcGVQdHIASGluZ2VDb25zdHJhaW50X2VuYWJsZU1vdG9yAEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfZW5hYmxlTW90b3IAUmlnaWRCb2R5X3NldEFuZ3VsYXJGYWN0b3IAUmlnaWRCb2R5X3NldExpbmVhckZhY3RvcgBEZWJ1Z0RyYXdfc2V0Q29udGFjdFBvaW50Q29sb3IARGVidWdEcmF3X3NldENvbnN0cmFpbnRMaW1pdENvbG9yAERlYnVnRHJhd19zZXRXYW50c0RlYWN0aXZhdGlvbk9iamVjdENvbG9yAERlYnVnRHJhd19zZXREaXNhYmxlZERlYWN0aXZhdGlvbk9iamVjdENvbG9yAERlYnVnRHJhd19zZXREaXNhYmxlZFNpbXVsYXRpb25PYmplY3RDb2xvcgBEZWJ1Z0RyYXdfc2V0RGVhY3RpdmVPYmplY3RDb2xvcgBEZWJ1Z0RyYXdfc2V0QWN0aXZlT2JqZWN0Q29sb3IARGVidWdEcmF3X3NldEFBQkJDb2xvcgBDb250cm9sbGVySGl0X2dldEhpdE1vdGlvbkRpcgBDb2xsaXNpb25Xb3JsZF9zZXREZWJ1Z0RyYXdlcgBDb2xsaXNpb25TaGFwZV9zZXRVc2VyUG9pbnRlcgBEcmF3V3JhcHBlcgBDb250cm9sbGVySGl0UmVwb3J0V3JhcHBlcgBNb3Rpb25TdGF0ZVdyYXBwZXIAdW5zaWduZWQgY2hhcgBjY01vdGlvblN0YXRlX3NldHVwAHNvbHZlR3JvdXBDYWNoZUZyaWVuZGx5U2V0dXAAc29sdmVHcm91cABDeWxpbmRlclNoYXBlX3VwZGF0ZVByb3AAQ2Fwc3VsZVNoYXBlX3VwZGF0ZVByb3AAY2NEaXNjcmV0ZUR5bmFtaWNzV29ybGRfc2V0QWxsb3dTbGVlcABHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldFNlcnZvAGFwcGx5IHNwZWN1bGF0aXZlIGNvbnRhY3QgcmVzdGl0dXRpb24AcHJlZGljdFVuY29uc3RyYWludE1vdGlvbgBDaGFyYWN0ZXJDb250cm9sbGVyX2dldFBvc2l0aW9uAG5vdGlmeU9uRGVzdHJ1Y3Rpb24AcGVyZm9ybURpc2NyZXRlQ29sbGlzaW9uRGV0ZWN0aW9uAER5bmFtaWNzV29ybGRfcmVtb3ZlQWN0aW9uAER5bmFtaWNzV29ybGRfYWRkQWN0aW9uAFRyYW5zZm9ybV9zZXRSb3RhdGlvbgBUcmFuc2Zvcm1fZ2V0Um90YXRpb24AT3ZlcmZsb3cgaW4gQUFCQiwgb2JqZWN0IHJlbW92ZWQgZnJvbSBzaW11bGF0aW9uAER5bmFtaWNzV29ybGRfc3RlcFNpbXVsYXRpb24AaW50ZXJuYWxTaW5nbGVTdGVwU2ltdWxhdGlvbgBDaGFyYWN0ZXJDb250cm9sbGVyX3NldENvbGxpc2lvbgBidENvbnZleENvbmNhdmVDb2xsaXNpb25BbGdvcml0aG06OnByb2Nlc3NDb2xsaXNpb24AQ29sbGlzaW9uU2hhcGVfc2V0TWFyZ2luAFRyYW5zZm9ybV9nZXRPcmlnaW4AVHJhbnNmb3JtX2dldFJvdGF0aW9uQW5kT3JpZ2luAE1vdGlvblN0YXRlX3NldFdvcmxkVHJhbnNmb3JtAFJpZ2lkQm9keV9nZXRXb3JsZFRyYW5zZm9ybQBDb2xsaXNpb25PYmplY3RfZ2V0V29ybGRUcmFuc2Zvcm0ATW90aW9uU3RhdGVfZ2V0V29ybGRUcmFuc2Zvcm0AQ29tcG91bmRTaGFwZV91cGRhdGVDaGlsZFRyYW5zZm9ybQBib29sAGVtc2NyaXB0ZW46OnZhbABEaXNwYXRjaGVyX2dldE1hbmlmb2xkQnlJbmRleEludGVybmFsAFN0YXRpY1BsYW5lU2hhcGVfZ2V0UGxhbmVOb3JtYWwAQ29udHJvbGxlckhpdF9nZXRIaXRXb3JsZE5vcm1hbABDb2xsaXNpb25PYmplY3Rfc2V0TWF0ZXJpYWwAQ29sbGlzaW9uU2hhcGVfc2V0TWF0ZXJpYWwAQ29sbGlzaW9uT2JqZWN0X3NldElnbm9yZUNvbGxpc2lvbkNoZWNrAEJ2aFRyaWFuZ2xlTWVzaFNoYXBlX3NldE9wdGltaXplZEJ2aABCdmhUcmlhbmdsZU1lc2hTaGFwZV9nZXRPcHRpbWl6ZWRCdmgAQ29udHJvbGxlckhpdF9nZXRIaXRNb3Rpb25MZW5ndGgAQ29udmV4VHJpbWVzaAB1bnNpZ25lZCBsb25nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X2VuYWJsZVNwcmluZwBDQ0QgbW90aW9uIGNsYW1waW5nAFJpZ2lkQm9keV9zZXREYW1waW5nAEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0RGFtcGluZwBSaWdpZEJvZHlfd2FudHNTbGVlcGluZwBDb2xsaXNpb25PYmplY3RfaXNTbGVlcGluZwBDb2xsaXNpb25TaGFwZV9zZXRMb2NhbFNjYWxpbmcAaW50X2FycmF5X3NpemUAVHlwZWRDb25zdHJhaW50X3NldERiZ0RyYXdTaXplAFR5cGVkQ29uc3RyYWludF9nZXREYmdEcmF3U2l6ZQBDaGFyYWN0ZXJDb250cm9sbGVyX21vdmUAQ29sbGlzaW9uT2JqZWN0X2lzQWN0aXZlAFJpZ2lkQm9keV9hcHBseVRvcnF1ZQBfc2FmZV9kZWxldGUAQ29sbGlzaW9uT2JqZWN0X2FjdGl2YXRlAFJpZ2lkQm9keV9jbGVhclN0YXRlAFJpZ2lkQm9keV9nZXRNb3Rpb25TdGF0ZQBDb2xsaXNpb25PYmplY3RfZ2V0QWN0aXZhdGlvblN0YXRlAHVwZGF0ZUFjdGl2YXRpb25TdGF0ZQBDb2xsaXNpb25PYmplY3RfZm9yY2VBY3RpdmF0aW9uU3RhdGUAUmlnaWRCb2R5X2FwcGx5SW1wdWxzZQBIaW5nZUNvbnN0cmFpbnRfc2V0TWF4TW90b3JJbXB1bHNlAENvbnRyb2xsZXJTaGFwZUhpdF9nZXRIaXRTaGFwZQBDb2xsaXNpb25PYmplY3Rfc2V0Q29sbGlzaW9uU2hhcGUAQ29sbGlzaW9uT2JqZWN0X2dldENvbGxpc2lvblNoYXBlAENoYXJhY3RlckNvbnRyb2xsZXJfZ2V0Q29sbGlzaW9uU2hhcGUAQ2Fwc3VsZVNoYXBlAENvbXBvdW5kU2hhcGVfZ2V0Q2hpbGRTaGFwZQBDb21wb3VuZFNoYXBlX3JlbW92ZUNoaWxkU2hhcGUAQ29tcG91bmRTaGFwZV9hZGRDaGlsZFNoYXBlAENvbmUAb25EZWJ1Z0RyYXdMaW5lAGJ0Q29udmV4VHJpYW5nbGVDYWxsYmFjazo6cHJvY2Vzc1RyaWFuZ2xlAFRyaWFuZ2xlTWVzaF9hZGRUcmlhbmdsZQBkb3VibGUAX2ZyZWUARGVidWdEcmF3X3NldERlYnVnTW9kZQBEZWJ1Z0RyYXdfZ2V0RGVidWdNb2RlAFJpZ2lkQm9keV9hcHBseUZvcmNlAEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0TWF4TW90b3JGb3JjZQBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldEJvdW5jZQBDb2xsaXNpb25TaGFwZV9pc0NvbXBvdW5kAGNvbnZleFN3ZWVwQ29tcG91bmQAZXh0ZW5kAENvbGxpc2lvbldvcmxkX2RlYnVnRHJhd1dvcmxkAGNjQ2xvc2VzdFJheUNhbGxiYWNrX2dldEhpdFBvaW50V29ybGQAY2NBbGxSYXlDYWxsYmFja19nZXRIaXRQb2ludFdvcmxkAGNjQ2xvc2VzdENvbnZleENhbGxiYWNrX2dldEhpdFBvaW50V29ybGQAY2NBbGxDb252ZXhDYWxsYmFja19nZXRIaXRQb2ludFdvcmxkAGNjQ2xvc2VzdFJheUNhbGxiYWNrX2dldEhpdE5vcm1hbFdvcmxkAGNjQWxsUmF5Q2FsbGJhY2tfZ2V0SGl0Tm9ybWFsV29ybGQAY2NDbG9zZXN0Q29udmV4Q2FsbGJhY2tfZ2V0SGl0Tm9ybWFsV29ybGQAY2NBbGxDb252ZXhDYWxsYmFja19nZXRIaXROb3JtYWxXb3JsZABDb2xsaXNpb25PYmplY3Rfc2V0Q2NkTW90aW9uVGhyZXNob2xkAENvbGxpc2lvbk9iamVjdF9zZXRDb250YWN0UHJvY2Vzc2luZ1RocmVzaG9sZABSaWdpZEJvZHlfZ2V0TGluZWFyU2xlZXBpbmdUaHJlc2hvbGQAVHlwZWRDb25zdHJhaW50X3NldE1heEltcHVsc2VUaHJlc2hvbGQAdm9pZABfbWFsbG9jAERlZmF1bHRDb2xsaXNpb25Db25maWd1cmF0aW9uX3N0YXRpYwBjY0Nsb3Nlc3RSYXlDYWxsYmFja19zdGF0aWMAY2NBbGxSYXlDYWxsYmFja19zdGF0aWMAY2NDbG9zZXN0Q29udmV4Q2FsbGJhY2tfc3RhdGljAGNjQWxsQ29udmV4Q2FsbGJhY2tfc3RhdGljAEVtcHR5U2hhcGVfc3RhdGljAENvbGxpc2lvblNoYXBlX2dldEFhYmIAYnRJbnRJbmRleERhdGEAYnRNZXNoUGFydERhdGEAYnRHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50RGF0YQBidFNob3J0SW50SW5kZXhUcmlwbGV0RGF0YQBidENoYXJJbmRleFRyaXBsZXREYXRhAGJ0UmlnaWRCb2R5RmxvYXREYXRhAGJ0UG9pbnQyUG9pbnRDb25zdHJhaW50RmxvYXREYXRhAGJ0SGluZ2VDb25zdHJhaW50RmxvYXREYXRhAGJ0VHlwZWRDb25zdHJhaW50RmxvYXREYXRhAGJ0Q29sbGlzaW9uT2JqZWN0RmxvYXREYXRhAGJ0UXVhbnRpemVkQnZoRmxvYXREYXRhAGJ0RHluYW1pY3NXb3JsZEZsb2F0RGF0YQBidFZlY3RvcjNGbG9hdERhdGEAYnRCdmhTdWJ0cmVlSW5mb0RhdGEAYnRDeWxpbmRlclNoYXBlRGF0YQBidENvbGxpc2lvblNoYXBlRGF0YQBidENvbnZleEludGVybmFsU2hhcGVEYXRhAGJ0VHJpYW5nbGVNZXNoU2hhcGVEYXRhAGJ0U2NhbGVkVHJpYW5nbGVNZXNoU2hhcGVEYXRhAGJ0Q29uZVNoYXBlRGF0YQBidFN0YXRpY1BsYW5lU2hhcGVEYXRhAGJ0Q2Fwc3VsZVNoYXBlRGF0YQBidENvbXBvdW5kU2hhcGVEYXRhAGJ0VmVjdG9yM0RvdWJsZURhdGEAYnRRdWFudGl6ZWRCdmhOb2RlRGF0YQBidE9wdGltaXplZEJ2aE5vZGVEYXRhAGJ0U3RyaWRpbmdNZXNoSW50ZXJmYWNlRGF0YQBidENvbXBvdW5kU2hhcGVDaGlsZERhdGEAQ29sbGlzaW9uU2hhcGVfY2FsY3VsYXRlTG9jYWxJbmVydGlhAEN5bGluZGVyWQBTRU5TT1IAU0NBTEVEQlZIVFJJQU5HTEVNRVNIAFNQSEVSRQBTVEFUSUNQTEFORQBIRUlHSFRGSUVMRABQMlBDb25zdHJhaW50X3NldFBpdm90QgBNYW5pZm9sZFBvaW50X2dldF9tX2xvY2FsUG9pbnRCAE1hbmlmb2xkUG9pbnRfZ2V0X21fcG9zaXRpb25Xb3JsZE9uQgBNYW5pZm9sZFBvaW50X2dldF9tX25vcm1hbFdvcmxkT25CAFAyUENvbnN0cmFpbnRfc2V0UGl2b3RBAE1hbmlmb2xkUG9pbnRfZ2V0X21fbG9jYWxQb2ludEEATWFuaWZvbGRQb2ludF9nZXRfbV9wb3NpdGlvbldvcmxkT25BAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50NjRfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50NjRfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGJ0QlVfU2ltcGxleDF0bzQAX3dyaXRlX2YzMgBfcmVhZF9mMzIAUGVyc2lzdGVudE1hbmlmb2xkX2dldEJvZHkxAE1hbmlmb2xkUG9pbnRfZ2V0X21faW5kZXgxAE1hbmlmb2xkUG9pbnRfZ2V0U2hhcGUxAFBlcnNpc3RlbnRNYW5pZm9sZF9nZXRCb2R5MABNYW5pZm9sZFBvaW50X2dldF9tX2luZGV4MABNYW5pZm9sZFBvaW50X2dldFNoYXBlMABQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBJZiB5b3UgY2FuIHJlcHJvZHVjZSB0aGlzLCBwbGVhc2UgZW1haWwgYnVnc0Bjb250aW51b3VzcGh5c2ljcy5jb20KAFRoYW5rcy4KAFBsZWFzZSBpbmNsdWRlIGFib3ZlIGluZm9ybWF0aW9uLCB5b3VyIFBsYXRmb3JtLCB2ZXJzaW9uIG9mIE9TLgoATjJjYzI2Y2NDbG9zZXN0UmF5UmVzdWx0Q2FsbGJhY2tFAE4xNmJ0Q29sbGlzaW9uV29ybGQyNENsb3Nlc3RSYXlSZXN1bHRDYWxsYmFja0UATjE2YnRDb2xsaXNpb25Xb3JsZDE3UmF5UmVzdWx0Q2FsbGJhY2tFAE4yY2MyNmNjQWxsSGl0c1JheVJlc3VsdENhbGxiYWNrRQBOMTZidENvbGxpc2lvbldvcmxkMjRBbGxIaXRzUmF5UmVzdWx0Q2FsbGJhY2tFAE4yY2MyOWNjQ2xvc2VzdENvbnZleFJlc3VsdENhbGxiYWNrRQBOMTZidENvbGxpc2lvbldvcmxkMjdDbG9zZXN0Q29udmV4UmVzdWx0Q2FsbGJhY2tFAE4xNmJ0Q29sbGlzaW9uV29ybGQyMENvbnZleFJlc3VsdENhbGxiYWNrRQBOMmNjMjljY0FsbEhpdHNDb252ZXhSZXN1bHRDYWxsYmFja0UATjE2YnRDb2xsaXNpb25Xb3JsZDI3QWxsSGl0c0NvbnZleFJlc3VsdENhbGxiYWNrRQBOMmNjMTVjY0NvbXBvdW5kU2hhcGVFADEzYnRNb3Rpb25TdGF0ZQAxMWJ0RGVidWdEcmF3ADEyYnRJRGVidWdEcmF3AFAxMWJ0RGVidWdEcmF3AFBLMTFidERlYnVnRHJhdwBpaQB2AHZpAFAxMmJ0SURlYnVnRHJhdwB2aWkAdmlpaWlpADE4YnREZWJ1Z0RyYXdXcmFwcGVyAE4xMGVtc2NyaXB0ZW43d3JhcHBlckkxMWJ0RGVidWdEcmF3RUUATjEwZW1zY3JpcHRlbjhpbnRlcm5hbDExV3JhcHBlckJhc2VFAFAxOGJ0RGVidWdEcmF3V3JhcHBlcgBQSzE4YnREZWJ1Z0RyYXdXcmFwcGVyAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWkATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUAaWlpaQAyMWJ0Q29udHJvbGxlckhpdFJlcG9ydAAyNWJ0VXNlckNvbnRyb2xsZXJIaXRSZXBvcnQAUDIxYnRDb250cm9sbGVySGl0UmVwb3J0AFBLMjFidENvbnRyb2xsZXJIaXRSZXBvcnQAdmlpaWkAMjhidENvbnRyb2xsZXJIaXRSZXBvcnRXcmFwcGVyAE4xMGVtc2NyaXB0ZW43d3JhcHBlckkyMWJ0Q29udHJvbGxlckhpdFJlcG9ydEVFAFAyOGJ0Q29udHJvbGxlckhpdFJlcG9ydFdyYXBwZXIAUEsyOGJ0Q29udHJvbGxlckhpdFJlcG9ydFdyYXBwZXIATjJjYzEzY2NNb3Rpb25TdGF0ZUUAUE4yY2MxM2NjTW90aW9uU3RhdGVFAFBLTjJjYzEzY2NNb3Rpb25TdGF0ZUUAdmlpaQAyMGNjTW90aW9uU3RhdGVXcmFwcGVyAE4xMGVtc2NyaXB0ZW43d3JhcHBlcklOMmNjMTNjY01vdGlvblN0YXRlRUVFAFAyMGNjTW90aW9uU3RhdGVXcmFwcGVyAFBLMjBjY01vdGlvblN0YXRlV3JhcHBlcgBmaWkAdmlpZgBpaWZmZgB2aWlmZmYAaWlmZmZmAHZpaWZmZmYAaWlpaWlpAHZpaWZmZmZmAHZpaWZmAGlpaWlpaWkAdmlpaWZmAHZpaWlmAHZpaWZpAGlpZgB2aWlmZmkAaWlmZgBpaWlmAGlpaWlpZmZmAHZpaWlpaWkAaWlpaWkAdmlpaWZmZgBpaWlmZmYAaWlmaQB2aWlpaWlpZgB2aWlmaWYAaWlpaWZmAGlpZmZmaWlpZmYAaWlmZmZpaWlmZmYAAAAAAAAAAPguAACgAQAAoQEAAKIBAACjAQAApAEAAKUBAACmAQAApwEAAKgBAACpAQAAqgEAAKsBAACsAQAArQEAADE2YnREYnZ0QnJvYWRwaGFzZQAyMWJ0QnJvYWRwaGFzZUludGVyZmFjZQAACHcAANcuAAAwdwAAxC4AAPAuAAAAAAAAWC8AAK4BAACvAQAAsAEAALEBAACyAQAAswEAALQBAAAxOGJ0RGJ2dFRyZWVDb2xsaWRlcgBONmJ0RGJ2dDhJQ29sbGlkZUUACHcAAD0vAAAwdwAAKC8AAFAvAAAAAAAAoC8AAK4BAAC1AQAAtgEAALcBAACyAQAAswEAALQBAAAxOUJyb2FkcGhhc2VSYXlUZXN0ZXIAAAAwdwAAiC8AAFAvAAAAAAAA6C8AAK4BAAC4AQAAtgEAALkBAACyAQAAswEAALQBAAAyMEJyb2FkcGhhc2VBYWJiVGVzdGVyAAAwdwAA0C8AAFAvAAAAAAAAqDAAALwBAAC9AQAAvgEAAL8BAADAAQAAwQEAAMIBAADDAQAAxAEAAMUBAADGAQAAxwEAAMgBAADJAQAAygEAAMsBAADMAQAAMjhidEhhc2hlZE92ZXJsYXBwaW5nUGFpckNhY2hlADIyYnRPdmVybGFwcGluZ1BhaXJDYWNoZQAyNWJ0T3ZlcmxhcHBpbmdQYWlyQ2FsbGJhY2sACHcAAHgwAAAwdwAAXzAAAJQwAAAwdwAAQDAAAJwwAAAAAAAAVDEAAM0BAADOAQAAzwEAAFpOMjhidEhhc2hlZE92ZXJsYXBwaW5nUGFpckNhY2hlMTljbGVhblByb3h5RnJvbVBhaXJzRVAxN2J0QnJvYWRwaGFzZVByb3h5UDEyYnREaXNwYXRjaGVyRTE3Q2xlYW5QYWlyQ2FsbGJhY2sAMTdidE92ZXJsYXBDYWxsYmFjawAAAAh3AAA2MQAAMHcAAMgwAABMMQAAAAAAAPgxAADNAQAA0AEAANEBAABaTjI4YnRIYXNoZWRPdmVybGFwcGluZ1BhaXJDYWNoZTM3cmVtb3ZlT3ZlcmxhcHBpbmdQYWlyc0NvbnRhaW5pbmdQcm94eUVQMTdidEJyb2FkcGhhc2VQcm94eVAxMmJ0RGlzcGF0Y2hlckUxOFJlbW92ZVBhaXJDYWxsYmFjawAAAAAwdwAAdDEAAEwxAAAxMmJ0RGlzcGF0Y2hlcgAACHcAAAQyAAAAAAAAfDIAANMBAADUAQAA1QEAANYBAADXAQAA2AEAANkBAADaAQAA2wEAANwBAADdAQAA3gEAAN8BAADgAQAA4QEAAOIBAAAyMWJ0Q29sbGlzaW9uRGlzcGF0Y2hlcgAwdwAAZDIAABQyAAAAAAAAuDIAAM0BAADjAQAA5AEAADIzYnRDb2xsaXNpb25QYWlyQ2FsbGJhY2sAAAAwdwAAnDIAAEwxAAAAAAAA/DIAAOUBAADmAQAA5wEAAOgBAADpAQAA6gEAAOsBAAAxN2J0Q29sbGlzaW9uT2JqZWN0AAh3AADoMgAAAAAAAFQzAADsAQAA7QEAAO4BAADvAQAA8AEAAPEBAADyAQAA8wEAAPQBAAD1AQAA9gEAAPcBAAD4AQAAMTZidENvbGxpc2lvbldvcmxkAAAIdwAAQDMAAAAAAACYMwAA+QEAAPoBAAD7AQAA/AEAAP0BAABOMTJidENvbnZleENhc3QxMENhc3RSZXN1bHRFAAAAAAh3AAB4MwAAAAAAAEw0AAD+AQAA/wEAAAACAAABAgAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyMXJheVRlc3RTaW5nbGVJbnRlcm5hbEVSSzExYnRUcmFuc2Zvcm1TMl9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzE3UmF5UmVzdWx0Q2FsbGJhY2tFRTI5QnJpZGdlVHJpYW5nbGVSYXljYXN0Q2FsbGJhY2sAADB3AAC4MwAAkFoAAAAAAAD8NAAArgEAAAICAAC2AQAAAwIAALIBAACzAQAAtAEAAFpOMTZidENvbGxpc2lvbldvcmxkMjFyYXlUZXN0U2luZ2xlSW50ZXJuYWxFUksxMWJ0VHJhbnNmb3JtUzJfUEsyNGJ0Q29sbGlzaW9uT2JqZWN0V3JhcHBlclJOU18xN1JheVJlc3VsdENhbGxiYWNrRUU5UmF5VGVzdGVyAAAAMHcAAHw0AABQLwAAAAAAAKg1AABFAQAABAIAAAUCAAAGAgAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyMXJheVRlc3RTaW5nbGVJbnRlcm5hbEVSSzExYnRUcmFuc2Zvcm1TMl9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzE3UmF5UmVzdWx0Q2FsbGJhY2tFRTE1TG9jYWxJbmZvQWRkZXIyAAAAADB3AAAgNQAAOHgAAAAAAAB8NgAA/gEAAAcCAAAIAgAACQIAAFpOMTZidENvbGxpc2lvbldvcmxkMjVvYmplY3RRdWVyeVNpbmdsZUludGVybmFsRVBLMTNidENvbnZleFNoYXBlUksxMWJ0VHJhbnNmb3JtUzVfUEsyNGJ0Q29sbGlzaW9uT2JqZWN0V3JhcHBlclJOU18yMENvbnZleFJlc3VsdENhbGxiYWNrRWZFMzJCcmlkZ2VUcmlhbmdsZUNvbnZleGNhc3RDYWxsYmFjawAAMHcAAMw1AAC8WgAAAAAAAFQ3AAD+AQAACgIAAAgCAAALAgAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyNW9iamVjdFF1ZXJ5U2luZ2xlSW50ZXJuYWxFUEsxM2J0Q29udmV4U2hhcGVSSzExYnRUcmFuc2Zvcm1TNV9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzIwQ29udmV4UmVzdWx0Q2FsbGJhY2tFZkUzMkJyaWRnZVRyaWFuZ2xlQ29udmV4Y2FzdENhbGxiYWNrXzAAAAAAMHcAAKA2AAC8WgAAAAAAACw4AACuAQAADAIAALYBAAANAgAAsgEAALMBAAC0AQAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyNW9iamVjdFF1ZXJ5U2luZ2xlSW50ZXJuYWxFUEsxM2J0Q29udmV4U2hhcGVSSzExYnRUcmFuc2Zvcm1TNV9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzIwQ29udmV4UmVzdWx0Q2FsbGJhY2tFZkUyMmJ0Q29tcG91bmRMZWFmQ2FsbGJhY2sAAAAAMHcAAIQ3AABQLwAAAAAAADA5AABTAQAADgIAAA8CAAAQAgAAWlpOMTZidENvbGxpc2lvbldvcmxkMjVvYmplY3RRdWVyeVNpbmdsZUludGVybmFsRVBLMTNidENvbnZleFNoYXBlUksxMWJ0VHJhbnNmb3JtUzVfUEsyNGJ0Q29sbGlzaW9uT2JqZWN0V3JhcHBlclJOU18yMENvbnZleFJlc3VsdENhbGxiYWNrRWZFTjIyYnRDb21wb3VuZExlYWZDYWxsYmFjazEyUHJvY2Vzc0NoaWxkRWlTNV9QSzE2YnRDb2xsaXNpb25TaGFwZUUxNExvY2FsSW5mb0FkZGVyAAAwdwAAUDgAANB4AAAAAAAAsDkAABECAAASAgAAEwIAADE5YnRTaW5nbGVSYXlDYWxsYmFjawAyM2J0QnJvYWRwaGFzZVJheUNhbGxiYWNrADI0YnRCcm9hZHBoYXNlQWFiYkNhbGxiYWNrAAAIdwAAgDkAADB3AABmOQAAnDkAADB3AABQOQAApDkAAAAAAADoOQAAEQIAABQCAAAVAgAAMjFidFNpbmdsZVN3ZWVwQ2FsbGJhY2sAMHcAANA5AACkOQAAAAAAADQ6AAAWAgAAFwIAABgCAAAZAgAA/P///zQ6AAAaAgAAGwIAABwCAAAxN0RlYnVnRHJhd2NhbGxiYWNrAIx3AAAgOgAAAAAAAAIAAABIVQAAAgAAAHRVAAACBAAAAAAAAMQ6AAAdAgAAHgIAAEsBAABLAQAASwEAAAAAAADMOgAAHwIAACACAABLAQAASwEAAEsBAAAzMGJ0QWN0aXZhdGluZ0NvbGxpc2lvbkFsZ29yaXRobQAyMGJ0Q29sbGlzaW9uQWxnb3JpdGhtAAh3AACtOgAAMHcAAIw6AADEOgAAAAAAADA7AAAhAgAAIgIAACMCAAAAAAAAWDsAACQCAAAlAgAAJgIAACcCAAAoAgAATjIzYnRDb252ZXhDb252ZXhBbGdvcml0aG0xMENyZWF0ZUZ1bmNFADB3AAAIOwAAREIAADIzYnRDb252ZXhDb252ZXhBbGdvcml0aG0AAAAwdwAAPDsAAMw6AAAAAAAAQDwAACkCAAAqAgAAKwIAACwCAAAtAgAAWk4yM2J0Q29udmV4Q29udmV4QWxnb3JpdGhtMTZwcm9jZXNzQ29sbGlzaW9uRVBLMjRidENvbGxpc2lvbk9iamVjdFdyYXBwZXJTMl9SSzE2YnREaXNwYXRjaGVySW5mb1AxNmJ0TWFuaWZvbGRSZXN1bHRFMTNidER1bW15UmVzdWx0AE4zNmJ0RGlzY3JldGVDb2xsaXNpb25EZXRlY3RvckludGVyZmFjZTZSZXN1bHRFAAAAAAh3AAAFPAAAMHcAAIA7AAA4PAAAAAAAAPg8AAApAgAALgIAAC8CAAAwAgAAMQIAAFpOMjNidENvbnZleENvbnZleEFsZ29yaXRobTE2cHJvY2Vzc0NvbGxpc2lvbkVQSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUzJfUksxNmJ0RGlzcGF0Y2hlckluZm9QMTZidE1hbmlmb2xkUmVzdWx0RTIxYnRXaXRob3V0TWFyZ2luUmVzdWx0AAAAADB3AABoPAAAODwAAAAAAAA8PQAAKQIAADICAAAzAgAANAIAADUCAAAyNGJ0UGVydHVyYmVkQ29udGFjdFJlc3VsdAAAMHcAACA9AADkRQAAAAAAAJw9AAA2AgAANwIAADgCAAA5AgAAOgIAAAAAAADEPQAAOwIAADwCAAA9AgAAMzNidENvbnZleENvbmNhdmVDb2xsaXNpb25BbGdvcml0aG0AMHcAAHg9AADMOgAAMjRidENvbnZleFRyaWFuZ2xlQ2FsbGJhY2sAADB3AACoPQAASFUAAAAAAABsPgAAPgIAAD8CAABAAgAAYgEAAGMBAABkAQAAQQIAAEICAABDAgAARAIAAGkBAABFAgAARgIAAEcCAABIAgAAbgEAAEkCAABKAgAASwIAAEwCAABNAgAATgIAAE8CAABQAgAAUQIAAFICAABTAgAAVAIAAFUCAABWAgAAVwIAAFgCAAAxNWJ0VHJpYW5nbGVTaGFwZQAAADB3AABYPgAAmFIAAAAAAAAsPwAA/gEAAFkCAABaAgAAWk4zM2J0Q29udmV4Q29uY2F2ZUNvbGxpc2lvbkFsZ29yaXRobTIxY2FsY3VsYXRlVGltZU9mSW1wYWN0RVAxN2J0Q29sbGlzaW9uT2JqZWN0UzFfUksxNmJ0RGlzcGF0Y2hlckluZm9QMTZidE1hbmlmb2xkUmVzdWx0RTMxTG9jYWxUcmlhbmdsZVNwaGVyZUNhc3RDYWxsYmFjawAAADB3AACMPgAASFUAAAAAAAB0PwAAWwIAAFwCAABdAgAAXgIAAF8CAAAyOGJ0Q29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0AADB3AABUPwAAzDoAAAAAAADAPwAArgEAAGACAAC2AQAAYQIAALIBAACzAQAAtAEAADIyYnRDb21wb3VuZExlYWZDYWxsYmFjawAAAAAwdwAApD8AAFAvAAAAAAAAEEAAAGICAABjAgAAZAIAAGUCAABmAgAAMzZidENvbXBvdW5kQ29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0AADB3AADoPwAAdD8AAAAAAABkQAAArgEAAGcCAABoAgAAaQIAALIBAACzAQAAtAEAADMwYnRDb21wb3VuZENvbXBvdW5kTGVhZkNhbGxiYWNrAAAAADB3AABAQAAAUC8AAAAAAADIQAAAagIAAGsCAABsAgAAMTZidEJveEJveERldGVjdG9yADM2YnREaXNjcmV0ZUNvbGxpc2lvbkRldGVjdG9ySW50ZXJmYWNlAAAACHcAAJdAAAAwdwAAhEAAAMBAAAAAAAAAEEEAAG0CAABuAgAAbwIAAHACAABxAgAAMjZidEJveEJveENvbGxpc2lvbkFsZ29yaXRobQAAAAAwdwAA8EAAAMw6AAAAAAAAXEEAAHICAABzAgAAdAIAAHUCAAB2AgAAMzFidENvbnZleFBsYW5lQ29sbGlzaW9uQWxnb3JpdGhtAAAAMHcAADhBAADEOgAAAAAAANBBAAB3AgAAeAIAAHkCAAB6AgAAewIAAHwCAAAzMWJ0RGVmYXVsdENvbGxpc2lvbkNvbmZpZ3VyYXRpb24AMjRidENvbGxpc2lvbkNvbmZpZ3VyYXRpb24AAAAACHcAAKpBAAAwdwAAiEEAAMhBAAAAAAAATEIAAH0CAAB+AgAAfwIAAE4zM2J0Q29udmV4Q29uY2F2ZUNvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAMzBidENvbGxpc2lvbkFsZ29yaXRobUNyZWF0ZUZ1bmMAAAh3AAAiQgAAMHcAAPBBAABEQgAAAAAAAKhCAAB9AgAAgAIAAIECAABOMzNidENvbnZleENvbmNhdmVDb2xsaXNpb25BbGdvcml0aG0xN1N3YXBwZWRDcmVhdGVGdW5jRQAAAAAwdwAAbEIAAERCAAAAAAAA+EIAAH0CAACCAgAAgwIAAE4yOGJ0Q29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0xMENyZWF0ZUZ1bmNFAAAAADB3AADIQgAAREIAAAAAAABQQwAAfQIAAIQCAACFAgAATjM2YnRDb21wb3VuZENvbXBvdW5kQ29sbGlzaW9uQWxnb3JpdGhtMTBDcmVhdGVGdW5jRQAAAAAwdwAAGEMAAERCAAAAAAAApEMAAH0CAACGAgAAhwIAAE4yOGJ0Q29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0xN1N3YXBwZWRDcmVhdGVGdW5jRQAwdwAAcEMAAERCAAAAAAAA6EMAAH0CAACIAgAAiQIAAE4xNmJ0RW1wdHlBbGdvcml0aG0xMENyZWF0ZUZ1bmNFAAAAADB3AADEQwAAREIAAAAAAAA8RAAAfQIAAIoCAACLAgAATjMyYnRTcGhlcmVTcGhlcmVDb2xsaXNpb25BbGdvcml0aG0xMENyZWF0ZUZ1bmNFAAAAADB3AAAIRAAAREIAAAAAAACQRAAAfQIAAIwCAACNAgAATjM0YnRTcGhlcmVUcmlhbmdsZUNvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAADB3AABcRAAAREIAAAAAAADcRAAAfQIAAI4CAACPAgAATjI2YnRCb3hCb3hDb2xsaXNpb25BbGdvcml0aG0xMENyZWF0ZUZ1bmNFAAAwdwAAsEQAAERCAAAAAAAALEUAAH0CAACQAgAAkQIAAE4zMWJ0Q29udmV4UGxhbmVDb2xsaXNpb25BbGdvcml0aG0xMENyZWF0ZUZ1bmNFADB3AAD8RAAAREIAAAAAAABoRQAAHQIAAJICAACTAgAAlAIAAJUCAAAxNmJ0RW1wdHlBbGdvcml0aG0AADB3AABURQAAxDoAAAAAAACsRQAAlgIAAJcCAACYAgAAmQIAAJoCAAAyM2J0SGFzaGVkU2ltcGxlUGFpckNhY2hlAAAACHcAAJBFAAAAAAAA5EUAACkCAACbAgAAMwIAADQCAACcAgAAMTZidE1hbmlmb2xkUmVzdWx0AAAwdwAA0EUAADg8AAAAAAAAMEYAAJ0CAACeAgAAnwIAAKACAAChAgAAMzJidFNwaGVyZVNwaGVyZUNvbGxpc2lvbkFsZ29yaXRobQAAMHcAAAxGAADMOgAAAAAAAIBGAACiAgAAowIAAKQCAAClAgAApgIAADM0YnRTcGhlcmVUcmlhbmdsZUNvbGxpc2lvbkFsZ29yaXRobQAAAAAwdwAAWEYAAMw6AAAAAAAAvEYAAGoCAACnAgAAqAIAADIyU3BoZXJlVHJpYW5nbGVEZXRlY3RvcgAAAAAwdwAAoEYAAMBAAAAAAAAAYEcAAD4CAACpAgAAqgIAAGIBAABjAQAAZAEAAKsCAABCAgAArAIAAK0CAABpAQAArgIAAEYCAABHAgAASAIAAG4BAACvAgAAsAIAAEsCAACxAgAATQIAALICAACzAgAAUAIAALQCAAC1AgAAtgIAALcCAAC4AgAAuQIAALoCAAC7AgAAMTBidEJveFNoYXBlAAAAADB3AABQRwAAmFIAAAAAgD8AAIC/");l(e,18318,"gD8AAIC/");l(e,18350,"gD8AAIC/AAAAAAAAAAABAAAAAgAAAAAAAAABAAAAAgAAAAMAAAAEAAAABAAAAAUAAAAGAAAAAQAAAAIAAAADAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAFAAAABgAAAAcAAAAHAAAAAAAAAExIAAC8AgAAvQIAAL4CAAC/AgAAwAIAAMECAADCAgAAMTRidFF1YW50aXplZEJ2aAAAAAAIdwAAOEgAAAAAAADMSAAAwwIAAMQCAADFAgAAYgEAAGMBAABkAQAAxgIAAMcCAADIAgAAyQIAAGkBAADKAgAAywIAAMwCAADNAgAAbgEAAM4CAADPAgAA0AIAANECAADSAgAAMjJidEJ2aFRyaWFuZ2xlTWVzaFNoYXBlAAAAADB3AACwSAAA4FYAAAAAAAB0SQAA0wIAANQCAADVAgAAWk4yMmJ0QnZoVHJpYW5nbGVNZXNoU2hhcGUxNHBlcmZvcm1SYXljYXN0RVAxOGJ0VHJpYW5nbGVDYWxsYmFja1JLOWJ0VmVjdG9yM1M0X0UyMU15Tm9kZU92ZXJsYXBDYWxsYmFjawAyMWJ0Tm9kZU92ZXJsYXBDYWxsYmFjawAIdwAAVEkAADB3AADsSAAAbEkAAAAAAAAISgAA0wIAANYCAADXAgAAWk4yMmJ0QnZoVHJpYW5nbGVNZXNoU2hhcGUxN3BlcmZvcm1Db252ZXhjYXN0RVAxOGJ0VHJpYW5nbGVDYWxsYmFja1JLOWJ0VmVjdG9yM1M0X1M0X1M0X0UyMU15Tm9kZU92ZXJsYXBDYWxsYmFjawAAAAAwdwAAlEkAAGxJAAAAAAAAmEoAANMCAADYAgAA2QIAAFpOSzIyYnRCdmhUcmlhbmdsZU1lc2hTaGFwZTE5cHJvY2Vzc0FsbFRyaWFuZ2xlc0VQMThidFRyaWFuZ2xlQ2FsbGJhY2tSSzlidFZlY3RvcjNTNF9FMjFNeU5vZGVPdmVybGFwQ2FsbGJhY2sAAAAwdwAAKEoAAGxJAAAAAAAAHEsAANoCAADbAgAA3AIAAGIBAABjAQAAZAEAAN0CAABCAgAA3gIAAN8CAADgAgAA4QIAAEYCAADiAgAA4wIAAG4BAABJAgAA5AIAAEsCAADlAgAATQIAAOYCAADnAgAAMTRidENhcHN1bGVTaGFwZQAAAAAwdwAACEsAALBMAAAxNmJ0Q29sbGlzaW9uU2hhcGUAAAh3AAAoSwAAAAAAAKhLAABfAQAA6AIAAGEBAABiAQAAYwEAAGQBAABlAQAAZgEAAGcBAABoAQAAaQEAAGoBAABrAQAAbAEAAG0BAABuAQAAbwEAAHABAAAxNWJ0Q29tcG91bmRTaGFwZQAAADB3AACUSwAAPEsAAAAAAAAoTAAA2gIAAOkCAADqAgAAYgEAAGMBAABkAQAA6wIAAEICAADsAgAA7QIAAO4CAABFAgAARgIAAO8CAADwAgAAbgEAAPECAADyAgAASwIAAPMCAABNAgAA5gIAAOcCAAAxMWJ0Q29uZVNoYXBlAAAAMHcAABhMAACwTAAAAAAAALBMAADaAgAA9AIAAOoCAABiAQAAYwEAAGQBAABBAgAAQgIAAEsBAABLAQAAaQEAAEUCAABGAgAARwIAAEgCAABuAQAASQIAAEsBAABLAgAASwEAAE0CAADmAgAA5wIAADIxYnRDb252ZXhJbnRlcm5hbFNoYXBlADB3AACYTAAAME0AAAAAAAAwTQAA2gIAAPUCAABLAQAAYgEAAGMBAABkAQAASwEAAEsBAABLAQAASwEAAGkBAABLAQAASwEAAPYCAAD3AgAAbgEAAEsBAABLAQAASwIAAEsBAABLAQAASwEAAEsBAAAxM2J0Q29udmV4U2hhcGUAMHcAACBNAAA8SwAAAAAAANxNAAA+AgAA+AIAAPkCAABiAQAAYwEAAGQBAAD6AgAA+wIAAPwCAAD9AgAAaQEAAEUCAABGAgAARwIAAEgCAABuAQAA/gIAAP8CAABLAgAAAAMAAE0CAADmAgAA5wIAAFACAAABAwAAAgMAAAMDAAAEAwAABQMAAAYDAAAHAwAAMjVidENvbnZleFRyaWFuZ2xlTWVzaFNoYXBlADB3AADATQAAzFIAAAAAAAAcTgAACAMAAAkDAAAKAwAAMjZMb2NhbFN1cHBvcnRWZXJ0ZXhDYWxsYmFjawAAAAAwdwAA/E0AAHRVAAAAAAAApE4AANoCAAALAwAADAMAAGIBAABjAQAAZAEAAA0DAABCAgAADgMAAA8DAAAQAwAAEQMAAEYCAAASAwAAEwMAAG4BAAAUAwAAFQMAAEsCAAAWAwAATQIAAOYCAADnAgAAFwMAADE1YnRDeWxpbmRlclNoYXBlAAAAMHcAAJBOAACwTAAAAAAAABBPAAAYAwAAGQMAAEsBAABiAQAAYwEAAGQBAABLAQAASwEAAEsBAABLAQAAaQEAAMoCAADLAgAA9gIAAPcCAABuAQAASwEAADE0YnRDb25jYXZlU2hhcGUAAAAAMHcAAPxOAAA8SwAAAAAAAHhPAAAaAwAAGwMAABwDAABiAQAAYwEAAGQBAAAdAwAAHgMAAB8DAAAgAwAAaQEAAMoCAADLAgAA9gIAAPcCAABuAQAAIQMAADEyYnRFbXB0eVNoYXBlAAAwdwAAaE8AABBPAAAAAAAA8E8AACIDAAAjAwAAJAMAAGIBAABjAQAAZAEAACUDAAAmAwAAJwMAACgDAABpAQAAygIAAMsCAAD2AgAA9wIAAG4BAAApAwAAKgMAADI1YnRIZWlnaHRmaWVsZFRlcnJhaW5TaGFwZQAwdwAA1E8AABBPAAAAAAAAOFAAACsDAAAsAwAAvgIAAL8CAADAAgAAwQIAAMICAAAtAwAAMTRidE9wdGltaXplZEJ2aAAAAAAwdwAAJFAAAExIAAAAAAAAvFAAAAgDAAAuAwAALwMAAFpOMTRidE9wdGltaXplZEJ2aDVidWlsZEVQMjNidFN0cmlkaW5nTWVzaEludGVyZmFjZWJSSzlidFZlY3RvcjNTNF9FMjlRdWFudGl6ZWROb2RlVHJpYW5nbGVDYWxsYmFjawAwdwAAWFAAAHRVAAAAAAAAOFEAAAgDAAAwAwAAMQMAAFpOMTRidE9wdGltaXplZEJ2aDVidWlsZEVQMjNidFN0cmlkaW5nTWVzaEludGVyZmFjZWJSSzlidFZlY3RvcjNTNF9FMjBOb2RlVHJpYW5nbGVDYWxsYmFjawAAMHcAANxQAAB0VQAAAAAAAGxRAAAyAwAAMwMAADE4YnRDb252ZXhQb2x5aGVkcm9uAAAAAAh3AABUUQAAAAAAAJhSAAA+AgAANAMAAOoCAABiAQAAYwEAAGQBAABBAgAAQgIAAPwCAABLAQAAaQEAAEUCAABGAgAARwIAAEgCAABuAQAASQIAADUDAABLAgAANgMAAE0CAADmAgAA5wIAAFACAABLAQAASwEAAEsBAABLAQAASwEAAEsBAABLAQAAAAAAAMxSAAA+AgAANwMAAPkCAABiAQAAYwEAAGQBAAA4AwAAQgIAAPwCAABLAQAAaQEAAEUCAABGAgAARwIAAEgCAABuAQAASQIAADUDAABLAgAANgMAAE0CAADmAgAA5wIAAFACAABLAQAASwEAAEsBAABLAQAASwEAAEsBAABLAQAAMjNidFBvbHloZWRyYWxDb252ZXhTaGFwZQAAADB3AAB8UgAAsEwAADM0YnRQb2x5aGVkcmFsQ29udmV4QWFiYkNhY2hpbmdTaGFwZQAAAAAwdwAApFIAAJhSAAAAAAAARFMAADkDAAA6AwAAOwMAAGIBAABjAQAAZAEAADwDAAA9AwAAPgMAAD8DAABpAQAAygIAAMsCAABAAwAAQQMAAG4BAABCAwAAMjhidFNjYWxlZEJ2aFRyaWFuZ2xlTWVzaFNoYXBlAAAwdwAAJFMAABBPAAAAAAAAgFMAAP4BAABDAwAARAMAADI0YnRTY2FsZWRUcmlhbmdsZUNhbGxiYWNrAAAwdwAAZFMAAEhVAAAAAAAAAFQAANoCAABFAwAARgMAAGIBAABjAQAAZAEAAEECAABCAgAARwMAAEgDAABpAQAASQMAAEoDAABHAgAASAIAAG4BAABLAwAATAMAAEsCAABNAwAATQIAAOYCAADnAgAAMTNidFNwaGVyZVNoYXBlADB3AADwUwAAsEwAAAAAAABwVAAATgMAAE8DAABQAwAAYgEAAGMBAABkAQAAUQMAAFIDAABTAwAAVAMAAGkBAADKAgAAywIAAFUDAABWAwAAbgEAAFcDAAAxOGJ0U3RhdGljUGxhbmVTaGFwZQAAAAAwdwAAWFQAABBPAAAAAAAAGFUAAD4CAABYAwAAWQMAAGIBAABjAQAAZAEAADgDAABCAgAA/AIAAFoDAABpAQAARQIAAEYCAABHAgAASAIAAG4BAABJAgAANQMAAEsCAAA2AwAATQIAAOYCAADnAgAAUAIAAFsDAABcAwAAXQMAAF4DAABfAwAAYAMAAGEDAABiAwAAMTZidEJVX1NpbXBsZXgxdG80AAAwdwAABFUAAMxSAAABAAAAAwAAAAYAAAAxOGJ0VHJpYW5nbGVDYWxsYmFjawAAAAAIdwAAMFUAADMxYnRJbnRlcm5hbFRyaWFuZ2xlSW5kZXhDYWxsYmFjawAAAAh3AABQVQAAMjNidFN0cmlkaW5nTWVzaEludGVyZmFjZQAAAAh3AAB8VQAAAAAAAARWAABjAwAAZAMAAGUDAABmAwAAZwMAAGgDAABpAwAAagMAAGsDAABsAwAAbQMAAG4DAABvAwAAcAMAAHEDAAAyNmJ0VHJpYW5nbGVJbmRleFZlcnRleEFycmF5AAAAADB3AADkVQAAmFUAAAAAAABoVgAAcgMAAHMDAABlAwAAZgMAAGcDAABoAwAAaQMAAGoDAAB0AwAAdQMAAG0DAABuAwAAbwMAAHADAABxAwAAMTRidFRyaWFuZ2xlTWVzaAAAAAAwdwAAVFYAAARWAAAAAAAA4FYAAHYDAAB3AwAAxQIAAGIBAABjAQAAZAEAAHgDAADHAgAAyAIAAHkDAABpAQAAygIAAMsCAAD2AgAA9wIAAG4BAAB6AwAAzwIAANACAAAxOWJ0VHJpYW5nbGVNZXNoU2hhcGUAAAAwdwAAyFYAABBPAAAAAAAAaFcAAAgDAAB7AwAAfAMAAFpOSzE5YnRUcmlhbmdsZU1lc2hTaGFwZTE5cHJvY2Vzc0FsbFRyaWFuZ2xlc0VQMThidFRyaWFuZ2xlQ2FsbGJhY2tSSzlidFZlY3RvcjNTNF9FMTZGaWx0ZXJlZENhbGxiYWNrAAAAMHcAAABXAAB0VQAAAAAAAKBXAAD+AQAAfQMAAH4DAAAyMVN1cHBvcnRWZXJ0ZXhDYWxsYmFjawAwdwAAiFcAAEhVAAAAAAAA4FcAAH8DAACAAwAAgQMAADI3YnRDb250aW51b3VzQ29udmV4Q29sbGlzaW9uAAAAMHcAAMBXAAA4WAAAAAAAABxYAAApAgAAggMAAIMDAACEAwAAhQMAADE2YnRQb2ludENvbGxlY3RvcgAAMHcAAAhYAAA4PAAAMTJidENvbnZleENhc3QAAAh3AAAoWAAAAAAAAGhYAAB/AwAAhgMAAIcDAAAxNWJ0R2prQ29udmV4Q2FzdAAAADB3AABUWAAAOFgAAAEAAAACAAAAAAAAAAIAAAAAAAAAAQAAAAAAAADsWAAAigMAAIsDAACMAwAAMzBidEdqa0VwYVBlbmV0cmF0aW9uRGVwdGhTb2x2ZXIAMzBidENvbnZleFBlbmV0cmF0aW9uRGVwdGhTb2x2ZXIAAAAIdwAAwVgAADB3AACgWAAA5FgAAAAAAAAgWQAAagIAAI0DAACOAwAAMTdidEdqa1BhaXJEZXRlY3RvcgAwdwAADFkAAMBAAAAAAAAAZFkAAIoDAACPAwAAkAMAADMzYnRNaW5rb3dza2lQZW5ldHJhdGlvbkRlcHRoU29sdmVyADB3AABAWQAA5FgAAAAAAAA4WgAAKQIAAJEDAACSAwAAkwMAAJQDAABaTjMzYnRNaW5rb3dza2lQZW5ldHJhdGlvbkRlcHRoU29sdmVyMTJjYWxjUGVuRGVwdGhFUjIyYnRWb3Jvbm9pU2ltcGxleFNvbHZlclBLMTNidENvbnZleFNoYXBlUzRfUksxMWJ0VHJhbnNmb3JtUzdfUjlidFZlY3RvcjNTOV9TOV9QMTJidElEZWJ1Z0RyYXdFMjBidEludGVybWVkaWF0ZVJlc3VsdAAAMHcAAIxZAAA4PAAAAAAAAJBaAAD+AQAAlQMAAAACAABLAQAAAAAAALxaAAD+AQAAlgMAAAgCAABLAQAAMjVidFRyaWFuZ2xlUmF5Y2FzdENhbGxiYWNrADB3AAB0WgAASFUAADI4YnRUcmlhbmdsZUNvbnZleGNhc3RDYWxsYmFjawAAMHcAAJxaAABIVQAAAAAAAPhaAAB/AwAAlwMAAJgDAAAyMmJ0U3Vic2ltcGxleENvbnZleENhc3QAAAAAMHcAANxaAAA4WAAAAAAAAExbAACZAwAAmgMAAJsDAACcAwAAnQMAAJ4DAACfAwAAoAMAAKEDAACiAwAAowMAADE3YnRGaXhlZENvbnN0cmFpbnQAMHcAADhbAACwWwAAAAAAALBbAACkAwAApQMAAJsDAACcAwAAnQMAAJ4DAACfAwAAoAMAAKEDAACiAwAAowMAADMwYnRHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50AAAAADB3AACMWwAAnF0AAAEAAAACAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAEAAAAAAAAAAQAAAAEAAAACAAAAAgAAAAAAAABEXAAApAMAAKYDAACnAwAAnAMAAKgDAACpAwAAnwMAAKoDAACrAwAArAMAAK0DAACuAwAAMTdidEhpbmdlQ29uc3RyYWludAAwdwAAMFwAAJxdAAAAAAAApFwAAKQDAACvAwAAsAMAAJwDAACxAwAAsgMAAJ8DAACzAwAAtAMAALUDAAC2AwAAtwMAADIzYnRQb2ludDJQb2ludENvbnN0cmFpbnQAAAAwdwAAiFwAAJxdAAAAAAAAMF0AALsDAAC8AwAAvQMAAL4DAAC/AwAAwAMAAMEDAADCAwAAwwMAAMQDAADFAwAAxgMAAMcDAAAzNWJ0U2VxdWVudGlhbEltcHVsc2VDb25zdHJhaW50U29sdmVyADE4YnRDb25zdHJhaW50U29sdmVyAAAIdwAAEl0AADB3AADsXAAAKF0AAAAAAACcXQAApAMAAMkDAADKAwAAnAMAAEsBAABLAQAAnwMAAEsBAABLAQAAywMAAMwDAAAxN2J0VHlwZWRDb25zdHJhaW50ADEzYnRUeXBlZE9iamVjdAAIdwAAhF0AAIx3AABwXQAAAAAAAAEAAACUXQAAAgQAAAAAAADoXQAAzQMAAM4DAADnAQAA6AEAAM8DAADQAwAA0QMAADExYnRSaWdpZEJvZHkAAAAwdwAA2F0AAPwyAAAAAAAAKF4AANIDAADTAwAA1AMAANUDAAAyNWJ0U2ltdWxhdGlvbklzbGFuZE1hbmFnZXIACHcAAAxeAAAAAAAALF8AANYDAADXAwAA7gEAAO8BAADwAQAA8QEAANgDAADzAQAA9AEAANkDAADaAwAA9wEAANsDAADcAwAA3QMAAN4DAADfAwAA4AMAAOEDAADiAwAA4wMAAOQDAADlAwAA5gMAAOcDAADoAwAA6QMAAOoDAADrAwAA7AMAAO0DAADuAwAA7wMAAPADAADxAwAA8gMAAPMDAAD0AwAA9QMAAPYDAAD3AwAA+AMAAPkDAAD6AwAA+wMAAPwDAAD9AwAAMjNidERpc2NyZXRlRHluYW1pY3NXb3JsZAAxNWJ0RHluYW1pY3NXb3JsZAAwdwAADl8AAFQzAAAwdwAA9F4AACBfAAAAAAAAoF8AAP4DAAD/AwAAAAQAADI3SW5wbGFjZVNvbHZlcklzbGFuZENhbGxiYWNrAE4yNWJ0U2ltdWxhdGlvbklzbGFuZE1hbmFnZXIxNElzbGFuZENhbGxiYWNrRQAIdwAAal8AADB3AABMXwAAmF8AAAAAAADsXwAAUwEAAAEEAAACBAAAAwQAADM0YnRDbG9zZXN0Tm90TWVDb252ZXhSZXN1bHRDYWxsYmFjawAAAAAwdwAAxF8AANh4AAAAAAAA3GAAAAQEAAAFBAAA7gEAAO8BAADwAQAA8QEAANgDAADzAQAA9AEAANkDAADaAwAA9wEAANsDAADcAwAA3QMAAN4DAADfAwAA4AMAAOEDAADiAwAA4wMAAOQDAADlAwAA5gMAAOcDAADoAwAA6QMAAOoDAADrAwAA7AMAAO0DAADuAwAA7wMAAPADAADxAwAA8gMAAPMDAAD0AwAA9QMAAPYDAAD3AwAABgQAAPkDAAD6AwAABwQAAPwDAAD9AwAATjJjYzIzY2NEaXNjcmV0ZUR5bmFtaWNzV29ybGRFAAAwdwAAvGAAACxfAAAAAAAAQGEAAAgEAAAJBAAACgQAAE4yY2MyM2NjT3ZlcmxhcEZpbHRlckNhbGxiYWNrRQAyM2J0T3ZlcmxhcEZpbHRlckNhbGxiYWNrAAAAAAh3AAAbYQAAMHcAAPxgAAA4YQAAAAAAAIBhAAALBAAADAQAAA0EAAAOBAAADwQAADE5YnRHaG9zdFBhaXJDYWxsYmFjawAAADB3AABoYQAAlDAAAAAAAADQYQAAUwEAABAEAAARBAAAEgQAAE4yY2MzNGNjTm90TWVDbG9zZXN0Q29udmV4UmVzdWx0Q2FsbGJhY2tFAAAAMHcAAKRhAADYeAAAAAAAAERiAAATBAAAFAQAAOcBAADoAQAA6QEAAOoBAADrAQAAFQQAABYEAAAAAAAAbGIAABcEAAAYBAAA5wEAAOgBAADpAQAA6gEAAOsBAAAZBAAAGgQAADEzYnRHaG9zdE9iamVjdAAwdwAANGIAAPwyAAAyNGJ0UGFpckNhY2hpbmdHaG9zdE9iamVjdAAAMHcAAFBiAABEYgAAAAAAAAxjAAAcBAAAHQQAAB4EAAAfBAAAIAQAAEsBAAAAAAAAOGMAABwEAAAhBAAAHgQAAB8EAAAgBAAAIgQAAAAAAABgYwAAHAQAACMEAAAeBAAAHwQAACAEAAAkBAAAMjFidENoYXJhY3RlckNvbnRyb2xsZXIAMTdidEFjdGlvbkludGVyZmFjZQAIdwAA8GIAADB3AADYYgAABGMAADI4YnRDYXBzdWxlQ2hhcmFjdGVyQ29udHJvbGxlcgAAMHcAABhjAAAMYwAAMjRidEJveENoYXJhY3RlckNvbnRyb2xsZXIAADB3AABEYwAADGMAAAAAAAC0YwAAUwEAACUEAABdAQAAJgQAADQzYnRLaW5lbWF0aWNDbG9zZXN0Tm90TWVDb252ZXhSZXN1bHRDYWxsYmFjawAAADB3AACEYwAA2HgAAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0loTlNfMTFjaGFyX3RyYWl0c0loRUVOU185YWxsb2NhdG9ySWhFRUVFAAAIdwAAwGMAAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFAAAIdwAACGQAAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0lEc05TXzExY2hhcl90cmFpdHNJRHNFRU5TXzlhbGxvY2F0b3JJRHNFRUVFAAAACHcAAFBkAABOU3QzX18yMTJiYXNpY19zdHJpbmdJRGlOU18xMWNoYXJfdHJhaXRzSURpRUVOU185YWxsb2NhdG9ySURpRUVFRQAAAAh3AACcZAAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAAAIdwAA6GQAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQAACHcAABBlAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUAAAh3AAA4ZQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAAAIdwAAYGUAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXRFRQAACHcAAIhlAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUAAAh3AACwZQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAAAIdwAA2GUAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWxFRQAACHcAAABmAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAAAh3AAAoZgAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJeEVFAAAIdwAAUGYAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXlFRQAACHcAAHhmAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lmRUUAAAh3AACgZgAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAAAIdwAAyGYAANsPST/bD0m/5MsWQOTLFsAAAAAAAAAAgNsPSUDbD0nAOGPtPtoPST9emHs/2g/JP2k3rDFoISIztA8UM2ghojMDAAAABAAAAAQAAAAGAAAAg/miAERObgD8KRUA0VcnAN009QBi28AAPJmVAEGQQwBjUf4Au96rALdhxQA6biQA0k1CAEkG4AAJ6i4AHJLRAOsd/gApsRwA6D6nAPU1ggBEuy4AnOmEALQmcABBfl8A1pE5AFODOQCc9DkAi1+EACj5vQD4HzsA3v+XAA+YBQARL+8AClqLAG0fbQDPfjYACcsnAEZPtwCeZj8ALepfALondQDl68cAPXvxAPc5BwCSUooA+2vqAB+xXwAIXY0AMANWAHv8RgDwq2sAILzPADb0mgDjqR0AXmGRAAgb5gCFmWUAoBRfAI1AaACA2P8AJ3NNAAYGMQDKVhUAyahzAHviYABrjMAAGcRHAM1nwwAJ6NwAWYMqAIt2xACmHJYARK/dABlX0QClPgUABQf/ADN+PwDCMugAmE/eALt9MgAmPcMAHmvvAJ/4XgA1HzoAf/LKAPGHHQB8kCEAaiR8ANVu+gAwLXcAFTtDALUUxgDDGZ0ArcTCACxNQQAMAF0Ahn1GAONxLQCbxpoAM2IAALTSfAC0p5cAN1XVANc+9gCjEBgATXb8AGSdKgBw16sAY3z4AHqwVwAXFecAwElWADvW2QCnhDgAJCPLANaKdwBaVCMAAB+5APEKGwAZzt8AnzH/AGYeagCZV2EArPtHAH5/2AAiZbcAMuiJAOa/YADvxM0AbDYJAF0/1AAW3tcAWDveAN6bkgDSIigAKIboAOJYTQDGyjIACOMWAOB9ywAXwFAA8x2nABjgWwAuEzQAgxJiAINIAQD1jlsArbB/AB7p8gBISkMAEGfTAKrd2ACuX0IAamHOAAoopADTmbQABqbyAFx3fwCjwoMAYTyIAIpzeACvjFoAb9e9AC2mYwD0v8sAjYHvACbBZwBVykUAytk2ACio0gDCYY0AEsl3AAQmFAASRpsAxFnEAMjFRABNspEAABfzANRDrQApSeUA/dUQAAC+/AAelMwAcM7uABM+9QDs8YAAs+fDAMf4KACTBZQAwXE+AC4JswALRfMAiBKcAKsgewAutZ8AR5LCAHsyLwAMVW0AcqeQAGvnHwAxy5YAeRZKAEF54gD034kA6JSXAOLmhACZMZcAiO1rAF9fNgC7/Q4ASJq0AGekbABxckIAjV0yAJ8VuAC85QkAjTElAPd0OQAwBRwADQwBAEsIaAAs7lgAR6qQAHTnAgC91iQA932mAG5IcgCfFu8AjpSmALSR9gDRU1EAzwryACCYMwD1S34AsmNoAN0+XwBAXQMAhYl/AFVSKQA3ZMAAbdgQADJIMgBbTHUATnHUAEVUbgALCcEAKvVpABRm1QAnB50AXQRQALQ72wDqdsUAh/kXAElrfQAdJ7oAlmkpAMbMrACtFFQAkOJqAIjZiQAsclAABKS+AHcHlADzMHAAAPwnAOpxqABmwkkAZOA9AJfdgwCjP5cAQ5T9AA2GjAAxQd4AkjmdAN1wjAAXt+cACN87ABU3KwBcgKAAWoCTABARkgAP6NgAbICvANv/SwA4kA8AWRh2AGKlFQBhy7sAx4m5ABBAvQDS8gQASXUnAOu29gDbIrsAChSqAIkmLwBkg3YACTszAA6UGgBROqoAHaPCAK/trgBcJhIAbcJNAC16nADAVpcAAz+DAAnw9gArQIwAbTGZADm0BwAMIBUA2MNbAPWSxADGrUsATsqlAKc3zQDmqTYAq5KUAN1CaAAZY94AdozvAGiLUgD82zcArqGrAN8VMQAArqEADPvaAGRNZgDtBbcAKWUwAFdWvwBH/zoAavm5AHW+8wAok98Aq4AwAGaM9gAEyxUA+iIGANnkHQA9s6QAVxuPADbNCQBOQukAE76kADMjtQDwqhoAT2WoANLBpQALPw8AW3jNACP5dgB7iwQAiRdyAMamUwBvbuIA7+sAAJtKWADE2rcAqma6AHbPzwDRAh0AsfEtAIyZwQDDrXcAhkjaAPddoADGgPQArPAvAN3smgA/XLwA0N5tAJDHHwAq27YAoyU6AACvmgCtU5MAtlcEACkttABLgH4A2genAHaqDgB7WaEAFhIqANy3LQD65f0Aidv+AIm+/QDkdmwABqn8AD6AcACFbhUA/Yf/ACg+BwBhZzMAKhiGAE296gCz568Aj21uAJVnOQAxv1sAhNdIADDfFgDHLUMAJWE1AMlwzgAwy7gAv2z9AKQAogAFbOQAWt2gACFvRwBiEtIAuVyEAHBhSQBrVuAAmVIBAFBVNwAe1bcAM/HEABNuXwBdMOQAhS6pAB2ywwChMjYACLekAOqx1AAW9yEAj2nkACf/dwAMA4AAjUAtAE/NoAAgpZkAs6LTAC9dCgC0+UIAEdrLAH2+0ACb28EAqxe9AMqigQAIalwALlUXACcAVQB/FPAA4QeGABQLZACWQY0Ah77eANr9KgBrJbYAe4k0AAXz/gC5v54AaGpPAEoqqABPxFoALfi8ANdamAD0x5UADU2NACA6pgCkV18AFD+xAIA4lQDMIAEAcd2GAMnetgC/YPUATWURAAEHawCMsKwAssDQAFFVSAAe+w4AlXLDAKMGOwDAQDUABtx7AOBFzABOKfoA1srIAOjzQQB8ZN4Am2TYANm+MQCkl8MAd1jUAGnjxQDw2hMAujo8AEYYRgBVdV8A0r31AG6SxgCsLl0ADkTtABw+QgBhxIcAKf3pAOfW8wAifMoAb5E1AAjgxQD/140AbmriALD9xgCTCMEAfF10AGutsgDNbp0APnJ7AMYRagD3z6kAKXPfALXJugC3AFEA4rINAHS6JADlfWAAdNiKAA0VLACBGAwAfmaUAAEpFgCfenYA/f2+AFZF7wDZfjYA7NkTAIu6uQDEl/wAMagnAPFuwwCUxTYA2KhWALSotQDPzA4AEoktAG9XNAAsVokAmc7jANYguQBrXqoAPiqcABFfzAD9C0oA4fT7AI47bQDihiwA6dSEAPy0qQDv7tEALjXJAC85YQA4IUQAG9nIAIH8CgD7SmoALxzYAFO0hABOmYwAVCLMACpV3ADAxtYACxmWABpwuABplWQAJlpgAD9S7gB/EQ8A9LURAPzL9QA0vC0ANLzuAOhdzADdXmAAZ46bAJIz7wDJF7gAYVibAOFXvABRg8YA2D4QAN1xSAAtHN0ArxihACEsRgBZ89cA2XqYAJ5UwABPhvoAVgb8AOV5rgCJIjYAOK0iAGeT3ABV6KoAgiY4AMrnmwBRDaQAmTOxAKnXDgBpBUgAZbLwAH+IpwCITJcA+dE2ACGSswB7gkoAmM8hAECf3ADcR1UA4XQ6AGfrQgD+nd8AXtRfAHtnpAC6rHoAVfaiACuIIwBBulUAWW4IACEqhgA5R4MAiePmAOWe1ABJ+0AA/1bpABwPygDFWYoAlPorANPBxQAPxc8A21quAEfFhgCFQ2IAIYY7ACx5lAAQYYcAKkx7AIAsGgBDvxIAiCaQAHg8iQCoxOQA5dt7AMQ6wgAm9OoA92eKAA2SvwBloysAPZOxAL18CwCkUdwAJ91jAGnh3QCalBkAqCmVAGjOKAAJ7bQARJ8gAE6YygBwgmMAfnwjAA+5MgCn9Y4AFFbnACHxCAC1nSoAb35NAKUZUQC1+asAgt/WAJbdYQAWNgIAxDqfAIOioQBy7W0AOY16AIK4qQBrMlwARidbAAA07QDSAHcA/PRVAAFZTQDgcYA=");l(e,29203,"QPsh+T8AAAAALUR0PgAAAICYRvg8AAAAYFHMeDsAAACAgxvwOQAAAEAgJXo4AAAAgCKC4zYAAAAAHfNpNQAAAAAAAPA/dIUV07DZ7z8PiflsWLXvP1FbEtABk+8/e1F9PLhy7z+quWgxh1TvPzhidW56OO8/4d4f9Z0e7z8VtzEK/gbvP8upOjen8e4/IjQSTKbe7j8tiWFgCM7uPycqNtXav+4/gk+dViu07j8pVEjdB6vuP4VVOrB+pO4/zTt/Zp6g7j90X+zodZ/uP4cB63MUoe4/E85MmYml7j/boCpC5azuP+XFzbA3t+4/kPCjgpHE7j9dJT6yA9XuP63TWpmf6O4/R1778nb/7j+cUoXdmxnvP2mQ79wgN+8/h6T73BhY7z9fm3szl3zvP9qQpKKvpO8/QEVuW3bQ7z8AAAAAAADoQpQjkUv4aqw/88T6UM6/zj/WUgz/Qi7mPwAAAAAAADhD/oIrZUcVR0CUI5FL+Gq8PvPE+lDOvy4/1lIM/0Iulj++8/h57GH2PxkwllvG/t6/PYivSu1x9T+k/NQyaAvbv7AQ8PA5lfQ/e7cfCotB17+FA7iwlcnzP3vPbRrpndO/pWSIDBkN8z8xtvLzmx3Qv6COC3siXvI/8Ho7Gx18yb8/NBpKSrvxP588r5Pj+cK/uuWK8Fgj8T9cjXi/y2C5v6cAmUE/lfA/zl9Htp1vqr8AAAAAAADwPwAAAAAAAAAArEea/Yxg7j899SSfyjizP6BqAh+zpOw/upE4VKl2xD/m/GpXNiDrP9LkxEoLhM4/LaqhY9HC6T8cZcbwRQbUP+1BeAPmhug/+J8bLJyO2D9iSFP13GfnP8x7sU6k4Nw/C25JyRZ20j96xnWgaRnXv926p2wKx94/yPa+SEcV578ruCplRxX3P04xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAAAAADB3AADAdAAADHgAAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQAAADB3AADwdAAA5HQAAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQAAADB3AAAgdQAA5HQAAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FADB3AABQdQAARHUAAE4xMF9fY3h4YWJpdjEyMF9fZnVuY3Rpb25fdHlwZV9pbmZvRQAAAAAwdwAAgHUAAOR0AABOMTBfX2N4eGFiaXYxMjlfX3BvaW50ZXJfdG9fbWVtYmVyX3R5cGVfaW5mb0UAAAAwdwAAtHUAAER1AAAAAAAANHYAACgEAAApBAAAKgQAACsEAAAsBAAATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FADB3AAAMdgAA5HQAAHYAAAD4dQAAQHYAAERuAAD4dQAATHYAAGIAAAD4dQAAWHYAAGMAAAD4dQAAZHYAAGgAAAD4dQAAcHYAAGEAAAD4dQAAfHYAAHMAAAD4dQAAiHYAAHQAAAD4dQAAlHYAAGkAAAD4dQAAoHYAAGoAAAD4dQAArHYAAGwAAAD4dQAAuHYAAG0AAAD4dQAAxHYAAHgAAAD4dQAA0HYAAHkAAAD4dQAA3HYAAGYAAAD4dQAA6HYAAGQAAAD4dQAA9HYAAAAAAAAUdQAAKAQAAC0EAAAqBAAAKwQAAC4EAAAvBAAAMAQAADEEAAAAAAAAeHcAACgEAAAyBAAAKgQAACsEAAAuBAAAMwQAADQEAAA1BAAATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAAAAADB3AABQdwAAFHUAAAAAAADUdwAAKAQAADYEAAAqBAAAKwQAAC4EAAA3BAAAOAQAADkEAABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAAAAMHcAAKx3AAAUdQAAAAAAAHR1AAAoBAAAOgQAACoEAAArBAAAOwQAAFN0OXR5cGVfaW5mbwAAAAAIdwAA/Hc=");l(e,30756,"THgAAEUBAABGAQAARwEAAEgBAAAIdwAARCkAADB3AAAVKQAAOHgAADB3AADzKAAAQHgAAAAAAAA4eAAARQEAAEkBAABKAQAASwEAAAAAAACUeAAATAEAAE0BAABOAQAATwEAADB3AACOKQAAOHgAADB3AABsKQAAiHgAAAAAAACIeAAAUAEAAFEBAABKAQAAUgEAAAAAAADkeAAAUwEAAFQBAABVAQAAVgEAAAh3AAAUKgAAMHcAAOIpAADQeAAAMHcAAL0pAADYeAAAAAAAABR5AABXAQAAWAEAAFkBAABaAQAAMHcAAGQqAADQeAAAMHcAAD8qAAAIeQAAAAAAAAh5AABbAQAAXAEAAF0BAABeAQAAAAAAAIh5AABfAQAAYAEAAGEBAABiAQAAYwEAAGQBAABlAQAAZgEAAGcBAABoAQAAaQEAAGoBAABrAQAAbAEAAG0BAABuAQAAbwEAAHABAAAwdwAAlioAAKhLAAAIdwAArSoAAAh3AADLKgAAMHcAAL0qAACceQAA6HcAANoqAAAAAAAApHkAAOh3AADpKgAAAQAAAKR5AABEdgAA2HkAAOh3AAABKwAAAAAAAJx5");l(e,31216,"RHYAALB5AACkdgAApHYAAKR2AAAIdwAAVysAAIx3AAAxKwAAAAAAAAIAAACkeQAAAgAAAAR6AAACiAAAMHcAABwrAAAMegAA6HcAAHwrAAAAAAAALHoAAOh3AACSKwAAAQAAACx6AABEdgAALHoAADh6AABoegAACHcAAKkrAAAAAAAALHoAAHEBAAByAQAAcwEAAHQBAAB1AQAAdgEAAHcBAAB4AQAAeQEAAHoBAAB7AQAAfAEAAH0BAAB+AQAAfwEAAIABAACBAQAAggEAAIMBAACEAQAAhQEAAIYBAACHAQAAiAEAAIkBAACKAQAAiwEAAIwBAAAAAAAADHoAAHEBAACNAQAAcwEAAHQBAAB1AQAAdgEAAHcBAAB4AQAAeQEAAHoBAAB7AQAAfAEAAH0BAAB+AQAAfwEAAIABAACBAQAAggEAAIMBAACEAQAAhQEAAIYBAACHAQAAiAEAAIkBAACOAQAAjwEAAEsBAABEdg==");l(e,31600,"RHYAAKR2AACkdgAApHYAAGh6AACMewAAaHoAAAh3AADAKwAACHcAABwsAAAwdwAABCwAAJR7AADodwAAOCwAAAAAAACcewAA6HcAAFEsAAABAAAAnHs=");l(e,31696,"RHYAAKh7AACkdgAApHYAAIx3AACQLAAAAAAAAAIAAACcewAAAgAAAAR6AAACBAAAMHcAAHEsAADgewAA6HcAAMAsAAAAAAAAAHwAAOh3AADgLAAAAQAAAAB8AABEdgAAAHwAAAx8AABoegAAAAAAAAB8AACQAQAAkQEAAJIBAACTAQAAlAEAAAAAAADgewAAkAEAAJEBAACSAQAAlQEAAEsBAABEdgAApHYAAKR2AAAwdwAAAS0AAJR5AADodwAAFi0AAAAAAACAfAAA6HcAACwtAAABAAAAgHwAAER2AACMfAAApHYAAIx3AABfLQAAAAAAAAIAAACAfAAAAgAAAAR6AAACSAAAMHcAAEgtAAC4fAAA6HcAAIwtAAAAAAAA2HwAAOh3AACkLQAAAQAAANh8AABEdgAA2HwAAOR8AABoegAAAAAAANh8AACWAQAAlwEAAJgBAACZAQAAmgEAAAAAAAC4fAAAlgEAAJsBAACYAQAAmQEAAEsBAABEdgAApHYAAKR2AACkdgAARHYAAKR2AADsdgAApHYAAER2AACkdgAA7HYAAER2AACkdgAApHY=");l(e,32144,"pHYAAOx2AADsdgAA7HYAAER2AACkdgAA7HYAAOx2AADsdg==");l(e,32192,"pHYAAOx2AADsdgAA7HYAAOx2");l(e,32224,"RHYAAKR2AADsdgAA7HYAAOx2AADsdgAApHYAAKR2AACkdgAApHY=");l(e,32272,"RHYAAKR2AACkdgAApHYAAKR2AACkdgAApHYAAKR2AACkdg==");l(e,32320,"RHYAAKR2AADsdgAA7HYAAOx2AADsdgAA7HYAAER2AACkdgAAXHY=");l(e,32368,"RHYAAKR2AADsdgAA7HYAAKR2AACkdgAApHYAAKR2AACkdgAApHY=");l(e,32416,"RHYAAKR2AACkdgAA7HYAAOx2");l(e,32448,"RHYAAKR2AACkdgAAXHYAAER2AACkdgAApHYAAOx2AABcdgAApHY=");l(e,32496,"RHYAAKR2AADsdgAApHYAAER2AACkdgAApHYAAKR2AACkdgAApHYAAOx2AAAAAAAARHYAAKR2AADsdgAA7HYAAKR2AACkdgAA7HYAAOx2AACkdgAApHYAAOx2AAAAAAAApHYAAKR2AACkdgAApHYAAOx2AADsdgAA7HYAAAAAAABEdgAApHYAAKR2AACkdgAApHYAAFx2");l(e,32656,"pHYAAKR2AABcdgAAXHYAAER2AACkdgAApHYAAOx2AADsdgAA7HY=");l(e,32704,"pHYAAKR2AADsdgAA7HYAAOx2");l(e,32736,"RHYAAKR2AACkdgAApHYAAFx2AACkdgAA7HYAAKR2AABEdgAApHYAAKR2AACwdgAAsHY=");l(e,32800,"RHYAAKR2AACkdgAApHYAAKR2AACkdgAA7HYAAAAAAACkdgAApHYAAKR2AACkdgAARHYAAKR2AADsdgAApHYAAOx2");l(e,32880,"RHYAAKR2AACkdgAApHYAALB2AABcdg==");l(e,32912,"pHYAAKR2AACkdgAA7HYAAOx2");l(e,32944,"pHYAAOx2AADsdgAA7HYAAKR2AACkdgAApHYAAOx2AADsdg==");l(e,32992,"pHYAAOx2AADsdgAA7HYAAKR2AACkdgAApHYAAOx2AADsdgAA7HYAAJwBAACdAQAAngEAAJ8BAAC6AQAAuwEAAG8SgzoK16M8AQEAAAAAAEDgjQE=");}var r=new ArrayBuffer(16);var s=new Int32Array(r);var t=new Float32Array(r);var u=new Float64Array(r);function v(w){return s[w]}function x(w,y){s[w]=y;}function z(){return u[0]}function A(y){u[0]=y;}function B(y){t[2]=y;}function C(){return t[2]}function D(){throw new Error("abort")}function Ca(q){var E=q.a;var F=E.a;var G=F.buffer;F.grow=Aa;var H=new Int8Array(G);var I=new Int16Array(G);var J=new Int32Array(G);var K=new Uint8Array(G);var L=new Uint16Array(G);var M=new Uint32Array(G);var N=new Float32Array(G);var O=new Float64Array(G);var P=Math.imul;var Q=Math.fround;var R=Math.abs;var S=Math.clz32;var V=Math.floor;var Y=Math.sqrt;var Z=E.b;var _=E.c;var $=E.d;var aa=E.e;var ba=E.f;var ca=E.g;var da=E.h;var ea=E.i;var fa=E.j;var ga=E.k;var ha=E.l;var ia=E.m;var ja=E.n;var ka=E.o;var la=E.p;var ma=E.q;var na=E.r;var oa=E.s;var pa=E.t;var qa=E.u;var ra=E.v;var sa=101856;var ta=0;
  17. // EMSCRIPTEN_START_FUNCS
  18. function Kj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=Q(0),q=Q(0),r=0,s=0,t=0,u=Q(0),v=Q(0),w=0,x=0,y=Q(0),z=0,A=0,B=Q(0),C=0,D=Q(0),E=Q(0),F=0,G=Q(0),I=Q(0),L=Q(0),M=0,O=Q(0),S=0,T=0,U=0,V=Q(0),W=Q(0),X=0,Z=Q(0),_=Q(0),$=0;d=sa-192|0;sa=d;c=J[a+60>>2];if(c){ua[J[J[c>>2]>>2]](c)|0;c=J[a+60>>2];if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}}J[8456]=J[8456]+1;c=ua[J[8258]](132,16)|0;H[c+20|0]=1;J[c>>2]=20812;J[c+16>>2]=0;H[c+40|0]=1;J[c+8>>2]=0;J[c+12>>2]=0;J[c+36>>2]=0;H[c+60|0]=1;J[c+28>>2]=0;J[c+32>>2]=0;J[c+56>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[a+60>>2]=c;J[d+184>>2]=0;J[d+176>>2]=0;J[d+180>>2]=0;H[d+188|0]=1;c=0;if((ua[J[J[a>>2]+96>>2]](a)|0)>0){w=J[d+176>>2];j=w-1|0;c=J[d+184>>2];n=K[d+188|0];e=J[d+180>>2];while(1){a:{if((e|0)!=(w|0)){break a}i=w?w<<1:1;if((i|0)<=(w|0)){break a}if(i){J[8456]=J[8456]+1;c=ua[J[8258]](i<<4,16)|0;}else {c=0;}b:{if((w|0)<=0){break b}s=0;e=0;if(f+j>>>0>=3){g=w&-4;x=0;while(1){o=e<<4;r=o+c|0;k=h+o|0;l=J[k+4>>2];J[r>>2]=J[k>>2];J[r+4>>2]=l;l=J[k+12>>2];J[r+8>>2]=J[k+8>>2];J[r+12>>2]=l;l=o|16;r=l+c|0;k=h+l|0;l=J[k+12>>2];J[r+8>>2]=J[k+8>>2];J[r+12>>2]=l;l=J[k+4>>2];J[r>>2]=J[k>>2];J[r+4>>2]=l;l=o|32;r=l+c|0;k=h+l|0;l=J[k+12>>2];J[r+8>>2]=J[k+8>>2];J[r+12>>2]=l;l=J[k+4>>2];J[r>>2]=J[k>>2];J[r+4>>2]=l;l=o|48;r=l+c|0;k=h+l|0;l=J[k+12>>2];J[r+8>>2]=J[k+8>>2];J[r+12>>2]=l;l=J[k+4>>2];J[r>>2]=J[k>>2];J[r+4>>2]=l;e=e+4|0;x=x+4|0;if((g|0)!=(x|0)){continue}break}}g=w&3;if(!g){break b}while(1){l=e<<4;r=l+c|0;k=h+l|0;l=J[k+4>>2];J[r>>2]=J[k>>2];J[r+4>>2]=l;l=J[k+12>>2];J[r+8>>2]=J[k+8>>2];J[r+12>>2]=l;e=e+1|0;s=s+1|0;if((g|0)!=(s|0)){continue}break}}if(!(h?!h|!n:1)){J[8457]=J[8457]+1;ua[J[8259]](h);}n=1;e=i;}ua[J[J[a>>2]+108>>2]](a,f,(w<<4)+c|0);w=w+1|0;h=c;f=f+1|0;if((ua[J[J[a>>2]+96>>2]](a)|0)>(f|0)){continue}break}H[d+188|0]=n;J[d+180>>2]=e;J[d+176>>2]=w;J[d+184>>2]=c;}H[d+148|0]=1;J[d+144>>2]=0;H[d+168|0]=1;J[d+136>>2]=0;J[d+140>>2]=0;J[d+164>>2]=0;J[d+156>>2]=0;J[d+160>>2]=0;J[d+124>>2]=0;H[d+128|0]=1;J[d+116>>2]=0;J[d+120>>2]=0;c:{d:{if(b){w=0;J[d+28>>2]=0;H[d+32|0]=1;J[d+20>>2]=0;J[d+24>>2]=0;c=0;z=J[d+176>>2];if((z|0)>0){while(1){b=c;c=c+1|0;if((z|0)>(c|0)){A=J[d+184>>2]+(b<<4)|0;b=c;while(1){f=b;b=b+1|0;if((z|0)>(b|0)){t=J[d+184>>2]+(f<<4)|0;f=b;while(1){V=N[A>>2];v=Q(N[t>>2]-V);h=J[d+184>>2];i=h+(f<<4)|0;O=N[A+4>>2];y=Q(N[i+4>>2]-O);u=Q(N[i>>2]-V);p=Q(N[t+4>>2]-O);E=Q(Q(v*y)-Q(u*p));B=N[A+8>>2];q=Q(N[i+8>>2]-B);I=Q(p*q);p=Q(N[t+8>>2]-B);y=Q(I-Q(y*p));u=Q(Q(p*u)-Q(q*v));q=Q(Q(E*E)+Q(Q(y*y)+Q(u*u)));j=q>Q(9999999747378752e-20);e:{if(!j){break e}p=Q(Q(1)/Q(Y(q)));D=Q(E*p);G=Q(u*p);v=Q(y*p);i=J[d+20>>2];if((i|0)>0){e=0;n=J[d+28>>2];if(Q(Q(D*N[n+8>>2])+Q(Q(v*N[n>>2])+Q(G*N[n+4>>2])))>Q(.9990000128746033)){break e}while(1){e=e+1|0;if((i|0)!=(e|0)){l=n+(e<<4)|0;if(!(Q(Q(D*N[l+8>>2])+Q(Q(v*N[l>>2])+Q(G*N[l+4>>2])))>Q(.9990000128746033))){continue}}break}if((e|0)<(i|0)){break e}}p=Q(Q(D*B)+Q(Q(v*V)+Q(G*O)));n=J[d+176>>2];if((n|0)>0){e=0;if(Q(Q(Q(Q(D*N[h+8>>2])+Q(Q(v*N[h>>2])+Q(G*N[h+4>>2])))-p)+Q(-.009999999776482582))>Q(0)){break e}while(1){e=e+1|0;if((n|0)!=(e|0)){l=h+(e<<4)|0;if(!(Q(Q(Q(Q(D*N[l+8>>2])+Q(Q(v*N[l>>2])+Q(G*N[l+4>>2])))-p)+Q(-.009999999776482582))>Q(0))){continue}}break}if((e|0)<(n|0)){break e}}p=Q(-p);f:{if(J[d+24>>2]!=(i|0)){break f}m=i?i<<1:1;if((m|0)<=(i|0)){break f}g:{if(!m){n=0;break g}J[8456]=J[8456]+1;n=ua[J[8258]](m<<4,16)|0;i=J[d+20>>2];}h:{if((i|0)<=0){break h}g=i&1;e=0;if((i|0)!=1){r=i&-2;i=0;while(1){k=e<<4;h=k+n|0;o=k+J[d+28>>2]|0;l=J[o+4>>2];J[h>>2]=J[o>>2];J[h+4>>2]=l;l=J[o+12>>2];J[h+8>>2]=J[o+8>>2];J[h+12>>2]=l;l=k|16;h=l+n|0;k=l+J[d+28>>2]|0;l=J[k+4>>2];J[h>>2]=J[k>>2];J[h+4>>2]=l;l=J[k+12>>2];J[h+8>>2]=J[k+8>>2];J[h+12>>2]=l;e=e+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(!g){break h}i=e<<4;l=i+n|0;e=i+J[d+28>>2]|0;i=J[e+4>>2];J[l>>2]=J[e>>2];J[l+4>>2]=i;i=J[e+12>>2];J[l+8>>2]=J[e+8>>2];J[l+12>>2]=i;}i=J[d+28>>2];if(!(i?!i|!K[d+32|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](i);}J[d+28>>2]=n;H[d+32|0]=1;J[d+24>>2]=m;i=J[d+20>>2];}i=J[d+28>>2]+(i<<4)|0;N[i+12>>2]=p;N[i+8>>2]=D;N[i+4>>2]=G;N[i>>2]=v;J[d+20>>2]=J[d+20>>2]+1;}i:{if(!j){break i}p=Q(Q(1)/Q(Y(q)));v=Q(p*Q(-E));u=Q(p*Q(-u));q=Q(p*Q(-y));i=J[d+20>>2];if((i|0)>0){e=0;n=J[d+28>>2];if(Q(Q(v*N[n+8>>2])+Q(Q(q*N[n>>2])+Q(u*N[n+4>>2])))>Q(.9990000128746033)){break i}while(1){e=e+1|0;if((i|0)!=(e|0)){l=n+(e<<4)|0;if(!(Q(Q(v*N[l+8>>2])+Q(Q(q*N[l>>2])+Q(u*N[l+4>>2])))>Q(.9990000128746033))){continue}}break}if((e|0)<(i|0)){break i}}p=Q(Q(v*N[A+8>>2])+Q(Q(q*N[A>>2])+Q(u*N[A+4>>2])));n=J[d+176>>2];if((n|0)>0){e=0;h=J[d+184>>2];if(Q(Q(Q(Q(v*N[h+8>>2])+Q(Q(q*N[h>>2])+Q(u*N[h+4>>2])))-p)+Q(-.009999999776482582))>Q(0)){break i}while(1){e=e+1|0;if((n|0)!=(e|0)){l=h+(e<<4)|0;if(!(Q(Q(Q(Q(v*N[l+8>>2])+Q(Q(q*N[l>>2])+Q(u*N[l+4>>2])))-p)+Q(-.009999999776482582))>Q(0))){continue}}break}if((e|0)<(n|0)){break i}}p=Q(-p);j:{if(J[d+24>>2]!=(i|0)){break j}o=i?i<<1:1;if((o|0)<=(i|0)){break j}k:{if(!o){n=0;break k}J[8456]=J[8456]+1;n=ua[J[8258]](o<<4,16)|0;i=J[d+20>>2];}l:{if((i|0)<=0){break l}g=i&1;e=0;if((i|0)!=1){r=i&-2;i=0;while(1){j=e<<4;h=j+n|0;k=j+J[d+28>>2]|0;l=J[k+4>>2];J[h>>2]=J[k>>2];J[h+4>>2]=l;l=J[k+12>>2];J[h+8>>2]=J[k+8>>2];J[h+12>>2]=l;l=j|16;h=l+n|0;j=l+J[d+28>>2]|0;l=J[j+4>>2];J[h>>2]=J[j>>2];J[h+4>>2]=l;l=J[j+12>>2];J[h+8>>2]=J[j+8>>2];J[h+12>>2]=l;e=e+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(!g){break l}i=e<<4;l=i+n|0;e=i+J[d+28>>2]|0;i=J[e+4>>2];J[l>>2]=J[e>>2];J[l+4>>2]=i;i=J[e+12>>2];J[l+8>>2]=J[e+8>>2];J[l+12>>2]=i;}i=J[d+28>>2];if(!(i?!i|!K[d+32|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](i);}J[d+28>>2]=n;H[d+32|0]=1;J[d+24>>2]=o;i=J[d+20>>2];}i=J[d+28>>2]+(i<<4)|0;N[i+12>>2]=p;N[i+8>>2]=v;N[i+4>>2]=u;N[i>>2]=q;J[d+20>>2]=J[d+20>>2]+1;}f=f+1|0;if((z|0)>(f|0)){continue}break}}if((b|0)!=(z|0)){continue}break}}if((c|0)!=(z|0)){continue}break}}J[d+104>>2]=0;H[d+108|0]=1;J[d+96>>2]=0;J[d+100>>2]=0;if(J[d+20>>2]<=0){break d}while(1){b=J[d+28>>2]+(w<<4)|0;J[d+80>>2]=J[b+8>>2];c=J[b+4>>2];J[d+72>>2]=J[b>>2];J[d+76>>2]=c;p=Q(N[b+12>>2]-Q(ua[J[J[a>>2]+48>>2]](a)));c=J[d+96>>2];m:{if((c|0)!=J[d+100>>2]){break m}g=c?c<<1:1;if((g|0)<=(c|0)){break m}n:{if(!g){h=0;break n}J[8456]=J[8456]+1;h=ua[J[8258]](g<<4,16)|0;c=J[d+96>>2];}o:{if((c|0)<=0){break o}e=0;if((c|0)!=1){l=c&-2;f=0;while(1){n=e<<4;i=n+h|0;r=n+J[d+104>>2]|0;b=J[r+4>>2];J[i>>2]=J[r>>2];J[i+4>>2]=b;b=J[r+12>>2];J[i+8>>2]=J[r+8>>2];J[i+12>>2]=b;b=n|16;i=b+h|0;n=b+J[d+104>>2]|0;b=J[n+4>>2];J[i>>2]=J[n>>2];J[i+4>>2]=b;b=J[n+12>>2];J[i+8>>2]=J[n+8>>2];J[i+12>>2]=b;e=e+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!(c&1)){break o}b=e<<4;c=b+h|0;f=b+J[d+104>>2]|0;b=J[f+4>>2];J[c>>2]=J[f>>2];J[c+4>>2]=b;b=J[f+12>>2];J[c+8>>2]=J[f+8>>2];J[c+12>>2]=b;}b=J[d+104>>2];if(!(b?!b|!K[d+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[d+104>>2]=h;H[d+108|0]=1;J[d+100>>2]=g;c=J[d+96>>2];}b=J[d+76>>2];c=J[d+104>>2]+(c<<4)|0;J[c>>2]=J[d+72>>2];J[c+4>>2]=b;b=J[d+80>>2];N[c+12>>2]=p;J[c+8>>2]=b;J[d+96>>2]=J[d+96>>2]+1;w=w+1|0;if((w|0)<J[d+20>>2]){continue}break}break d}ee(d+112|0,c,J[d+176>>2]);break c}J[d+84>>2]=0;H[d+88|0]=1;J[d+76>>2]=0;J[d+80>>2]=0;c=0;t=J[d+96>>2];if((t|0)>0){while(1){b=c;c=c+1|0;if((t|0)>(c|0)){m=J[d+104>>2]+(b<<4)|0;b=c;while(1){f=b;b=b+1|0;if((t|0)>(b|0)){o=J[d+104>>2]+(f<<4)|0;f=b;while(1){W=N[o>>2];e=J[d+104>>2];i=e+(f<<4)|0;v=N[i+4>>2];y=N[i>>2];u=N[o+4>>2];I=Q(Q(W*v)-Q(y*u));q=N[i+8>>2];p=N[o+8>>2];D=Q(Q(u*q)-Q(v*p));G=Q(Q(p*y)-Q(q*W));p:{if(!(Q(Q(I*I)+Q(Q(D*D)+Q(G*G)))>Q(9999999747378752e-20))){break p}Z=N[m+4>>2];_=N[m>>2];E=Q(Q(y*Z)-Q(_*v));L=N[m+8>>2];V=Q(Q(v*L)-Q(Z*q));O=Q(Q(q*_)-Q(L*y));if(!(Q(Q(E*E)+Q(Q(V*V)+Q(O*O)))>Q(9999999747378752e-20))){break p}q=Q(Q(_*u)-Q(W*Z));B=Q(Q(Z*p)-Q(u*L));v=Q(Q(L*W)-Q(p*_));if(!(Q(Q(q*q)+Q(Q(B*B)+Q(v*v)))>Q(9999999747378752e-20))){break p}p=Q(Q(L*I)+Q(Q(_*D)+Q(Z*G)));if(!(Q(R(p))>Q(9.999999974752427e-7))){break p}y=Q(Q(-1)/p);u=N[i+12>>2];L=Q(q*u);q=N[m+12>>2];p=N[o+12>>2];E=Q(y*Q(L+Q(Q(I*q)+Q(E*p))));v=Q(y*Q(Q(v*u)+Q(Q(G*q)+Q(O*p))));p=Q(y*Q(Q(B*u)+Q(Q(D*q)+Q(V*p))));l=J[d+96>>2];if((l|0)>0){i=0;if(Q(Q(N[e+12>>2]+Q(Q(N[e+8>>2]*E)+Q(Q(N[e>>2]*p)+Q(v*N[e+4>>2]))))+Q(-.009999999776482582))>Q(0)){break p}while(1){i=i+1|0;if((l|0)!=(i|0)){n=e+(i<<4)|0;if(!(Q(Q(N[n+12>>2]+Q(Q(N[n+8>>2]*E)+Q(Q(N[n>>2]*p)+Q(v*N[n+4>>2]))))+Q(-.009999999776482582))>Q(0))){continue}}break}if((i|0)<(l|0)){break p}}e=J[d+76>>2];q:{if((e|0)!=J[d+80>>2]){break q}k=e?e<<1:1;if((k|0)<=(e|0)){break q}r:{if(!k){i=0;break r}J[8456]=J[8456]+1;i=ua[J[8258]](k<<4,16)|0;e=J[d+76>>2];}s:{if((e|0)<=0){break s}r=0;if((e|0)!=1){h=e&-2;x=0;while(1){g=r<<4;n=g+i|0;j=g+J[d+84>>2]|0;l=J[j+4>>2];J[n>>2]=J[j>>2];J[n+4>>2]=l;l=J[j+12>>2];J[n+8>>2]=J[j+8>>2];J[n+12>>2]=l;l=g|16;n=l+i|0;g=l+J[d+84>>2]|0;l=J[g+4>>2];J[n>>2]=J[g>>2];J[n+4>>2]=l;l=J[g+12>>2];J[n+8>>2]=J[g+8>>2];J[n+12>>2]=l;r=r+2|0;x=x+2|0;if((h|0)!=(x|0)){continue}break}}if(!(e&1)){break s}l=r<<4;n=l+i|0;e=l+J[d+84>>2]|0;l=J[e+4>>2];J[n>>2]=J[e>>2];J[n+4>>2]=l;l=J[e+12>>2];J[n+8>>2]=J[e+8>>2];J[n+12>>2]=l;}l=J[d+84>>2];if(!(l?!l|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](l);}J[d+84>>2]=i;H[d+88|0]=1;J[d+80>>2]=k;e=J[d+76>>2];}i=J[d+84>>2]+(e<<4)|0;J[i+12>>2]=0;N[i+8>>2]=E;N[i+4>>2]=v;N[i>>2]=p;J[d+76>>2]=J[d+76>>2]+1;}f=f+1|0;if((t|0)>(f|0)){continue}break}}if((b|0)!=(t|0)){continue}break}}if((c|0)!=(t|0)){continue}break}}ee(d+112|0,J[d+84>>2],J[d+76>>2]);b=J[d+84>>2];if(!(b?!b|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[d+104>>2];if(!(b?!b|!K[d+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[d+28>>2];if(!b|!K[d+32|0]){break c}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}t:{u:{l=J[d+156>>2];if((l|0)>=0){if(l){break u}J[d+32>>2]=0;J[d+36>>2]=0;J[d+48>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;H[d+32|0]=1;J[d+16>>2]=0;J[d+20>>2]=0;J[d+20>>2]=0;break t}J[d+32>>2]=0;J[d+36>>2]=0;J[d+48>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;H[d+32|0]=1;J[d+16>>2]=0;J[d+20>>2]=0;J[d+20>>2]=0;c=l;while(1){f=P(c,36);b=J[f+12>>2];if(!(b?!b|!K[f+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[f+12>>2]=0;H[f+16|0]=1;J[f+4>>2]=0;J[f+8>>2]=0;c=c+1|0;if(c){continue}break}break t}J[8456]=J[8456]+1;$=ua[J[8258]](l<<4,16)|0;J[d+32>>2]=0;J[d+36>>2]=0;e=0;J[d+48>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;H[d+32|0]=1;J[d+16>>2]=0;J[d+20>>2]=0;J[d+20>>2]=0;J[8456]=J[8456]+1;S=ua[J[8258]](P(l,36),16)|0;while(1){c=P(e,36)+S|0;Bc(c,d+16|0);b=J[d+48>>2];J[c+28>>2]=J[d+44>>2];J[c+32>>2]=b;b=J[d+40>>2];J[c+20>>2]=J[d+36>>2];J[c+24>>2]=b;e=e+1|0;if((l|0)!=(e|0)){continue}break}}b=J[d+28>>2];if(!(b?!b|!K[d+32|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}g=J[a+60>>2];h=J[g+8>>2];r=J[d+116>>2];if(!((h|0)>=(r|0)|(r|0)<=J[g+12>>2])){v:{if(!r){s=0;break v}J[8456]=J[8456]+1;s=ua[J[8258]](r<<4,16)|0;h=J[g+8>>2];}w:{if((h|0)<=0){break w}c=0;if((h|0)!=1){i=h&-2;x=0;while(1){n=c<<4;f=n+s|0;e=n+J[g+16>>2]|0;b=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=b;b=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=b;b=n|16;f=b+s|0;n=b+J[g+16>>2]|0;b=J[n+4>>2];J[f>>2]=J[n>>2];J[f+4>>2]=b;b=J[n+12>>2];J[f+8>>2]=J[n+8>>2];J[f+12>>2]=b;c=c+2|0;x=x+2|0;if((i|0)!=(x|0)){continue}break}}if(!(h&1)){break w}b=c<<4;c=b+s|0;f=b+J[g+16>>2]|0;b=J[f+4>>2];J[c>>2]=J[f>>2];J[c+4>>2]=b;b=J[f+12>>2];J[c+8>>2]=J[f+8>>2];J[c+12>>2]=b;}b=J[g+16>>2];if(!(b?!b|!K[g+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[g+16>>2]=s;H[g+20|0]=1;J[g+12>>2]=r;}J[g+8>>2]=r;x:{if((r|0)<=0){break x}e=0;if((r|0)!=1){f=r&-2;h=0;while(1){i=e<<4;c=i+J[J[a+60>>2]+16>>2]|0;n=i+J[d+124>>2]|0;b=J[n+4>>2];J[c>>2]=J[n>>2];J[c+4>>2]=b;b=J[n+12>>2];J[c+8>>2]=J[n+8>>2];J[c+12>>2]=b;b=i|16;c=b+J[J[a+60>>2]+16>>2]|0;i=b+J[d+124>>2]|0;b=J[i+4>>2];J[c>>2]=J[i>>2];J[c+4>>2]=b;b=J[i+12>>2];J[c+8>>2]=J[i+8>>2];J[c+12>>2]=b;e=e+2|0;h=h+2|0;if((f|0)!=(h|0)){continue}break}}if(!(r&1)){break x}b=e<<4;c=b+J[J[a+60>>2]+16>>2]|0;f=b+J[d+124>>2]|0;b=J[f+4>>2];J[c>>2]=J[f>>2];J[c+4>>2]=b;b=J[f+12>>2];J[c+8>>2]=J[f+8>>2];J[c+12>>2]=b;}y:{z:{A:{B:{if((l|0)<=0){break B}h=0;while(1){m=P(h,36)+S|0;f=J[m+4>>2];n=0;g=J[d+144>>2]+P(J[J[d+164>>2]+(h<<2)>>2],12)|0;w=g;C:{while(1){r=J[(P(J[w+4>>2],12)+w|0)+8>>2];D:{if(J[m+8>>2]!=(f|0)){break D}j=f?f<<1:1;if((j|0)<=(f|0)){break D}E:{if(!j){c=0;break E}J[8456]=J[8456]+1;c=ua[J[8258]](j<<2,16)|0;f=J[m+4>>2];}o=J[m+12>>2];F:{G:{if((f|0)>0){s=0;e=0;if(f>>>0>=4){i=f&-4;C=0;while(1){k=e<<2;J[k+c>>2]=J[k+o>>2];b=k|4;J[b+c>>2]=J[b+o>>2];b=k|8;J[b+c>>2]=J[b+o>>2];b=k|12;J[b+c>>2]=J[b+o>>2];e=e+4|0;C=C+4|0;if((i|0)!=(C|0)){continue}break}}f=f&3;if(!f){break G}while(1){b=e<<2;J[b+c>>2]=J[b+o>>2];e=e+1|0;s=s+1|0;if((f|0)!=(s|0)){continue}break}break G}if(!o){break F}}if(o?K[m+16|0]:0){J[8457]=J[8457]+1;ua[J[8259]](o);}f=J[m+4>>2];}J[m+12>>2]=c;H[m+16|0]=1;J[m+8>>2]=j;}J[J[m+12>>2]+(f<<2)>>2]=r;f=J[m+4>>2]+1|0;J[m+4>>2]=f;H:{if((n|0)<=1){b=J[d+124>>2];c=b+(r<<4)|0;B=N[c+8>>2];b=b+(J[w+8>>2]<<4)|0;v=N[b+8>>2];y=N[c>>2];u=N[b>>2];q=N[c+4>>2];p=N[b+4>>2];b=(d+16|0)+(n<<4)|0;J[b+12>>2]=0;v=Q(v-B);u=Q(u-y);p=Q(p-q);q=Q(Q(1)/Q(Y(Q(Q(v*v)+Q(Q(u*u)+Q(p*p))))));N[b+8>>2]=v*q;N[b+4>>2]=p*q;N[b>>2]=u*q;n=n+1|0;b=P(J[w+4>>2],12)+w|0;w=P(J[b>>2],12)+b|0;if((g|0)!=(w|0)){continue}if((n|0)==2){break H}b=(h<<4)+$|0;J[b>>2]=0;J[b+4>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;break C}n=2;b=P(J[w+4>>2],12)+w|0;w=P(J[b>>2],12)+b|0;if((g|0)!=(w|0)){continue}}break}O=N[d+20>>2];q=N[d+36>>2];B=N[d+32>>2];v=N[d+24>>2];y=N[d+16>>2];p=N[d+40>>2];b=(h<<4)+$|0;J[b+12>>2]=0;u=Q(Q(y*q)-Q(B*O));q=Q(Q(O*p)-Q(q*v));p=Q(Q(v*B)-Q(p*y));y=Q(Q(1)/Q(Y(Q(Q(u*u)+Q(Q(q*q)+Q(p*p))))));N[b+8>>2]=u*y;N[b+4>>2]=p*y;p=Q(q*y);N[b>>2]=p;N[m+20>>2]=p;N[m+24>>2]=N[b+4>>2];p=N[b+8>>2];J[m+32>>2]=1900671690;N[m+28>>2]=p;}c=J[m+4>>2];I:{if((c|0)<=0){B=Q(1.0000000150474662e30);break I}f=c&1;b=(h<<4)+$|0;v=N[b+8>>2];y=N[b+4>>2];u=N[b>>2];r=J[J[a+60>>2]+16>>2];n=J[m+12>>2];J:{if((c|0)==1){B=Q(1.0000000150474662e30);e=0;break J}c=c&-2;B=Q(1.0000000150474662e30);e=0;s=0;while(1){b=e<<2;i=r+(J[n+(b|4)>>2]<<4)|0;q=Q(Q(N[i+8>>2]*v)+Q(Q(N[i>>2]*u)+Q(N[i+4>>2]*y)));b=r+(J[b+n>>2]<<4)|0;p=Q(Q(N[b+8>>2]*v)+Q(Q(N[b>>2]*u)+Q(N[b+4>>2]*y)));p=p<B?p:B;B=p>q?q:p;e=e+2|0;s=s+2|0;if((c|0)!=(s|0)){continue}break}}if(!f){break I}b=r+(J[n+(e<<2)>>2]<<4)|0;p=Q(Q(N[b+8>>2]*v)+Q(Q(N[b>>2]*u)+Q(N[b+4>>2]*y)));B=p<B?p:B;}N[m+32>>2]=-B;h=h+1|0;if((l|0)!=(h|0)){continue}break}f=0;if((l|0)<=0){break B}r=0;b=0;while(1){K:{if((b|0)!=(f|0)){break K}b=f?f<<1:1;if(f>>>0>=b>>>0){b=f;break K}J[8456]=J[8456]+1;c=ua[J[8258]](b<<2,16)|0;L:{M:{if(f){s=0;e=0;if(f>>>0>=4){n=f&2147483644;x=0;while(1){h=e<<2;J[h+c>>2]=J[h+r>>2];i=h|4;J[i+c>>2]=J[i+r>>2];i=h|8;J[i+c>>2]=J[i+r>>2];i=h|12;J[i+c>>2]=J[i+r>>2];e=e+4|0;x=x+4|0;if((n|0)!=(x|0)){continue}break}}n=f&3;if(!n){break M}while(1){i=e<<2;J[i+c>>2]=J[i+r>>2];e=e+1|0;s=s+1|0;if((n|0)!=(s|0)){continue}break}break M}if(r){break M}b=1;break L}if(r){J[8457]=J[8457]+1;ua[J[8259]](r);}}r=c;}J[(f<<2)+r>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}i=l;while(1){c=i-1|0;b=J[(c<<2)+r>>2];J[8456]=J[8456]+1;n=ua[J[8258]](4,16)|0;J[n>>2]=b;N:{O:{if((i|0)<2){i=c;T=1;break O}b=P(b,36)+S|0;u=N[b+20>>2];q=N[b+28>>2];p=N[b+24>>2];e=i-2|0;b=1;i=c;T=1;while(1){h=e;k=J[(e<<2)+r>>2];c=P(k,36)+S|0;if(Q(Q(q*N[c+28>>2])+Q(Q(u*N[c+20>>2])+Q(p*N[c+24>>2])))>Q(.9990000128746033)){P:{Q:{if((b|0)!=(T|0)){break Q}f=b?b<<1:1;if((f|0)<=(b|0)){break Q}if(f){J[8456]=J[8456]+1;c=ua[J[8258]](f<<2,16)|0;}else {c=0;}R:{if((b|0)>0){s=0;e=0;if(b>>>0>=4){j=b&-4;w=0;while(1){o=e<<2;J[o+c>>2]=J[n+o>>2];g=o|4;J[g+c>>2]=J[g+n>>2];g=o|8;J[g+c>>2]=J[g+n>>2];g=o|12;J[g+c>>2]=J[g+n>>2];e=e+4|0;w=w+4|0;if((j|0)!=(w|0)){continue}break}}g=b&3;if(!g){break R}while(1){b=e<<2;J[b+c>>2]=J[b+n>>2];e=e+1|0;s=s+1|0;if((g|0)!=(s|0)){continue}break}break R}if(!n){break P}}if(n){J[8457]=J[8457]+1;ua[J[8259]](n);}break P}f=b;c=n;}J[(T<<2)+c>>2]=k;T=T+1|0;e=0;S:{if((i|0)<=0){break S}while(1){b=(e<<2)+r|0;if((k|0)!=J[b>>2]){e=e+1|0;if((i|0)!=(e|0)){continue}break S}break}if((e|0)>=(i|0)){break S}e=b;i=i-1|0;b=(i<<2)+r|0;J[e>>2]=J[b>>2];J[b>>2]=k;}n=c;b=f;}e=h-1|0;if((h|0)>0){continue}break}T:{if((T|0)>1){c=0;J[d+104>>2]=0;H[d+108|0]=1;J[d+96>>2]=0;J[d+100>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;J[d>>2]=0;J[d+4>>2]=0;h=0;while(1){z=P(J[(h<<2)+n>>2],36)+S|0;q=N[z+28>>2];p=N[z+24>>2];N[d>>2]=N[z+20>>2]+N[d>>2];N[d+4>>2]=p+N[d+4>>2];N[d+8>>2]=q+N[d+8>>2];s=J[z+4>>2];if((s|0)>0){f=0;while(1){m=J[J[z+12>>2]+(f<<2)>>2];g=J[J[a+60>>2]+16>>2];U:{if((c|0)>0){e=0;b=J[d+104>>2];while(1){if((m|0)==J[(b+P(e,24)|0)+20>>2]){break U}e=e+1|0;if((e|0)!=(c|0)){continue}break}}e=g+(m<<4)|0;b=J[e+12>>2];J[d+24>>2]=J[e+8>>2];J[d+28>>2]=b;b=J[e+4>>2];J[d+16>>2]=J[e>>2];J[d+20>>2]=b;V:{if(J[d+100>>2]!=(c|0)){break V}o=c?c<<1:1;if((o|0)<=(c|0)){break V}W:{if(!o){s=0;break W}J[8456]=J[8456]+1;s=ua[J[8258]](P(o,24),16)|0;c=J[d+96>>2];}A=J[d+104>>2];X:{if((c|0)<=0){break X}C=0;e=0;if(c>>>0>=4){k=c&-4;b=0;while(1){g=P(e,24);j=g+s|0;t=g+A|0;g=J[t+4>>2];J[j>>2]=J[t>>2];J[j+4>>2]=g;g=J[t+20>>2];J[j+16>>2]=J[t+16>>2];J[j+20>>2]=g;g=J[t+12>>2];J[j+8>>2]=J[t+8>>2];J[j+12>>2]=g;g=P(e|1,24);j=g+s|0;t=g+A|0;g=J[t+20>>2];J[j+16>>2]=J[t+16>>2];J[j+20>>2]=g;g=J[t+12>>2];J[j+8>>2]=J[t+8>>2];J[j+12>>2]=g;g=J[t+4>>2];J[j>>2]=J[t>>2];J[j+4>>2]=g;g=P(e|2,24);j=g+s|0;t=g+A|0;g=J[t+20>>2];J[j+16>>2]=J[t+16>>2];J[j+20>>2]=g;g=J[t+12>>2];J[j+8>>2]=J[t+8>>2];J[j+12>>2]=g;g=J[t+4>>2];J[j>>2]=J[t>>2];J[j+4>>2]=g;g=P(e|3,24);j=g+s|0;t=g+A|0;g=J[t+20>>2];J[j+16>>2]=J[t+16>>2];J[j+20>>2]=g;g=J[t+12>>2];J[j+8>>2]=J[t+8>>2];J[j+12>>2]=g;g=J[t+4>>2];J[j>>2]=J[t>>2];J[j+4>>2]=g;e=e+4|0;b=b+4|0;if((k|0)!=(b|0)){continue}break}}j=c&3;if(!j){break X}while(1){b=P(e,24);g=b+s|0;k=b+A|0;b=J[k+4>>2];J[g>>2]=J[k>>2];J[g+4>>2]=b;b=J[k+20>>2];J[g+16>>2]=J[k+16>>2];J[g+20>>2]=b;b=J[k+12>>2];J[g+8>>2]=J[k+8>>2];J[g+12>>2]=b;e=e+1|0;C=C+1|0;if((j|0)!=(C|0)){continue}break}}if(!(!A|!K[d+108|0])){if(A){J[8457]=J[8457]+1;ua[J[8259]](A);}c=J[d+96>>2];}J[d+104>>2]=s;H[d+108|0]=1;J[d+100>>2]=o;}b=J[d+20>>2];g=J[d+104>>2]+P(c,24)|0;c=g;J[c>>2]=J[d+16>>2];J[c+4>>2]=b;e=J[d+28>>2];c=J[d+24>>2];b=J[d+32>>2];J[g+20>>2]=m;J[g+16>>2]=b;J[g+8>>2]=c;J[g+12>>2]=e;c=J[d+96>>2]+1|0;J[d+96>>2]=c;s=J[z+4>>2];}f=f+1|0;if((s|0)>(f|0)){continue}break}}h=h+1|0;if((T|0)!=(h|0)){continue}break}break T}b=(T|0)!=1;T=1;if(b){break N}break O}J[d+28>>2]=0;H[d+32|0]=1;J[d+20>>2]=0;J[d+24>>2]=0;b=P(J[n>>2],36)+S|0;N[d+36>>2]=N[b+20>>2];N[d+40>>2]=N[b+24>>2];N[d+44>>2]=N[b+28>>2];N[d+48>>2]=N[b+32>>2];J[d+84>>2]=0;H[d+88|0]=1;J[d+76>>2]=0;J[d+80>>2]=0;u=N[d+8>>2];q=N[d>>2];p=N[d+4>>2];y=Q(Q(1)/Q(Y(Q(Q(u*u)+Q(Q(q*q)+Q(p*p))))));N[d+8>>2]=u*y;N[d+4>>2]=p*y;N[d>>2]=q*y;t=d+92|0;c=0;C=0;h=0;L=Q(0);W=Q(0);z=sa-32|0;sa=z;v=N[d+8>>2];Y:{if(Q(R(v))>Q(.7071067690849304)){q=N[d+4>>2];p=Q(Q(q*q)+Q(v*v));u=Q(Q(1)/Q(Y(p)));G=Q(p*u);p=N[d>>2];I=Q(u*Q(-v));E=Q(p*I);W=Q(q*u);p=Q(W*Q(-p));break Y}u=N[d>>2];q=N[d+4>>2];p=Q(Q(u*u)+Q(q*q));y=Q(Q(1)/Q(Y(p)));E=Q(p*y);I=Q(u*y);G=Q(I*Q(-v));L=Q(y*Q(-q));p=Q(v*L);}f=J[t+4>>2];Z:{if((f|0)>=2){while(1){g=J[t+12>>2];e=P(c,24);b=g+e|0;if(Q(Q(N[b+8>>2]*W)+Q(Q(N[b>>2]*L)+Q(I*N[b+4>>2])))<Q(Q(N[g+8>>2]*W)+Q(Q(N[g>>2]*L)+Q(I*N[g+4>>2])))){f=J[g+20>>2];J[z+24>>2]=J[g+16>>2];J[z+28>>2]=f;f=J[g+12>>2];J[z+16>>2]=J[g+8>>2];J[z+20>>2]=f;f=J[g+4>>2];J[z+8>>2]=J[g>>2];J[z+12>>2]=f;f=J[b+4>>2];J[g>>2]=J[b>>2];J[g+4>>2]=f;f=J[b+12>>2];J[g+8>>2]=J[b+8>>2];J[g+12>>2]=f;f=J[b+20>>2];J[g+16>>2]=J[b+16>>2];J[g+20>>2]=f;b=J[z+12>>2];f=e+J[t+12>>2]|0;J[f>>2]=J[z+8>>2];J[f+4>>2]=b;b=J[z+28>>2];J[f+16>>2]=J[z+24>>2];J[f+20>>2]=b;b=J[z+20>>2];J[f+8>>2]=J[z+16>>2];J[f+12>>2]=b;f=J[t+4>>2];}c=c+1|0;if((f|0)>(c|0)){continue}break}e=J[t+12>>2];J[e+16>>2]=-246811958;if((f|0)>=2){O=N[e+8>>2];B=N[e+4>>2];v=N[e>>2];b=1;while(1){V=Q(0);c=e+P(b,24)|0;y=Q(N[c+8>>2]-O);u=Q(N[c>>2]-v);q=Q(N[c+4>>2]-B);D=Q(Q(E*y)+Q(Q(G*u)+Q(p*q)));u=Q(Q(W*y)+Q(Q(L*u)+Q(I*q)));if(!(Q(Q(D*D)+Q(u*u))<Q(1.1920928955078125e-7))){q=Q(R(D));q=u>=Q(0)?Q(Q(Q(Q(u-q)/Q(u+q))*Q(-.7853981852531433))+Q(.7853981852531433)):Q(Q(Q(Q(u+q)/Q(q-u))*Q(-.7853981852531433))+Q(2.356194496154785));V=D<Q(0)?Q(-q):q;}N[c+16>>2]=V;b=b+1|0;if((f|0)!=(b|0)){continue}break}}b=J[e+12>>2];J[z+16>>2]=J[e+8>>2];J[z+20>>2]=b;b=J[e+4>>2];J[z+8>>2]=J[e>>2];J[z+12>>2]=b;de(t,z+8|0,1,f-1|0);e=J[t+12>>2];b=J[d+76>>2];_:{if((b|0)!=J[d+80>>2]){break _}o=b?b<<1:1;if((o|0)<=(b|0)){break _}$:{if(!o){f=0;break $}J[8456]=J[8456]+1;f=ua[J[8258]](P(o,24),16)|0;b=J[d+76>>2];}aa:{if((b|0)<=0){break aa}c=0;if((b|0)!=1){k=b&-2;while(1){g=P(c,24);j=g+f|0;m=g+J[d+84>>2]|0;g=J[m+4>>2];J[j>>2]=J[m>>2];J[j+4>>2]=g;g=J[m+20>>2];J[j+16>>2]=J[m+16>>2];J[j+20>>2]=g;g=J[m+12>>2];J[j+8>>2]=J[m+8>>2];J[j+12>>2]=g;g=P(c|1,24);j=g+f|0;m=g+J[d+84>>2]|0;g=J[m+4>>2];J[j>>2]=J[m>>2];J[j+4>>2]=g;g=J[m+12>>2];J[j+8>>2]=J[m+8>>2];J[j+12>>2]=g;g=J[m+20>>2];J[j+16>>2]=J[m+16>>2];J[j+20>>2]=g;c=c+2|0;h=h+2|0;if((k|0)!=(h|0)){continue}break}}if(!(b&1)){break aa}b=P(c,24);c=b+f|0;h=b+J[d+84>>2]|0;b=J[h+4>>2];J[c>>2]=J[h>>2];J[c+4>>2]=b;b=J[h+20>>2];J[c+16>>2]=J[h+16>>2];J[c+20>>2]=b;b=J[h+12>>2];J[c+8>>2]=J[h+8>>2];J[c+12>>2]=b;}b=J[d+84>>2];if(!(b?!b|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[d+84>>2]=f;H[d+88|0]=1;J[d+80>>2]=o;b=J[d+76>>2];}c=J[d+84>>2]+P(b,24)|0;b=J[e+4>>2];J[c>>2]=J[e>>2];J[c+4>>2]=b;b=J[e+20>>2];J[c+16>>2]=J[e+16>>2];J[c+20>>2]=b;b=J[e+12>>2];J[c+8>>2]=J[e+8>>2];J[c+12>>2]=b;b=J[d+76>>2]+1|0;J[d+76>>2]=b;e=J[t+12>>2];ba:{if(J[d+80>>2]!=(b|0)){break ba}o=b?b<<1:1;if((o|0)<=(b|0)){break ba}ca:{if(!o){f=0;break ca}J[8456]=J[8456]+1;f=ua[J[8258]](P(o,24),16)|0;b=J[d+76>>2];}da:{if((b|0)<=0){break da}c=0;if((b|0)!=1){k=b&-2;h=0;while(1){g=P(c,24);j=g+f|0;m=g+J[d+84>>2]|0;g=J[m+4>>2];J[j>>2]=J[m>>2];J[j+4>>2]=g;g=J[m+20>>2];J[j+16>>2]=J[m+16>>2];J[j+20>>2]=g;g=J[m+12>>2];J[j+8>>2]=J[m+8>>2];J[j+12>>2]=g;g=P(c|1,24);j=g+f|0;m=g+J[d+84>>2]|0;g=J[m+4>>2];J[j>>2]=J[m>>2];J[j+4>>2]=g;g=J[m+12>>2];J[j+8>>2]=J[m+8>>2];J[j+12>>2]=g;g=J[m+20>>2];J[j+16>>2]=J[m+16>>2];J[j+20>>2]=g;c=c+2|0;h=h+2|0;if((k|0)!=(h|0)){continue}break}}if(!(b&1)){break da}b=P(c,24);c=b+f|0;h=b+J[d+84>>2]|0;b=J[h+4>>2];J[c>>2]=J[h>>2];J[c+4>>2]=b;b=J[h+20>>2];J[c+16>>2]=J[h+16>>2];J[c+20>>2]=b;b=J[h+12>>2];J[c+8>>2]=J[h+8>>2];J[c+12>>2]=b;}b=J[d+84>>2];if(!(b?!b|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[d+84>>2]=f;H[d+88|0]=1;J[d+80>>2]=o;b=J[d+76>>2];}c=J[d+84>>2]+P(b,24)|0;b=J[e+28>>2];J[c>>2]=J[e+24>>2];J[c+4>>2]=b;b=J[e+44>>2];J[c+16>>2]=J[e+40>>2];J[c+20>>2]=b;b=J[e+36>>2];J[c+8>>2]=J[e+32>>2];J[c+12>>2]=b;b=J[d+76>>2]+1|0;J[d+76>>2]=b;if(J[t+4>>2]==2){break Z}s=2;while(1){ea:{if((b|0)<2){break ea}e=J[t+12>>2]+P(s,24)|0;D=N[e+8>>2];G=N[e+4>>2];E=N[e>>2];V=N[d+8>>2];O=N[d+4>>2];B=N[d>>2];f=J[d+84>>2];c=b;while(1){b=P(c,24)+f|0;h=b-48|0;q=N[h>>2];b=b-24|0;v=Q(q-N[b>>2]);p=N[h+4>>2];y=Q(p-G);u=Q(q-E);p=Q(p-N[b+4>>2]);L=Q(Q(Q(v*y)-Q(u*p))*V);I=p;p=N[h+8>>2];q=Q(p-D);p=Q(p-N[b+8>>2]);if(Q(L+Q(Q(Q(Q(I*q)-Q(y*p))*B)+Q(O*Q(Q(p*u)-Q(q*v)))))>Q(0)){fa:{if(J[d+80>>2]!=(c|0)){break fa}j=c<<1;if((j|0)<=(c|0)){break fa}J[8456]=J[8456]+1;f=ua[J[8258]](P(c,48),16)|0;k=J[d+76>>2];ga:{if((k|0)<=0){break ga}c=0;if((k|0)!=1){g=k&-2;w=0;while(1){b=P(c,24);h=b+f|0;o=b+J[d+84>>2]|0;b=J[o+4>>2];J[h>>2]=J[o>>2];J[h+4>>2]=b;b=J[o+20>>2];J[h+16>>2]=J[o+16>>2];J[h+20>>2]=b;b=J[o+12>>2];J[h+8>>2]=J[o+8>>2];J[h+12>>2]=b;b=P(c|1,24);h=b+f|0;o=b+J[d+84>>2]|0;b=J[o+4>>2];J[h>>2]=J[o>>2];J[h+4>>2]=b;b=J[o+12>>2];J[h+8>>2]=J[o+8>>2];J[h+12>>2]=b;b=J[o+20>>2];J[h+16>>2]=J[o+16>>2];J[h+20>>2]=b;c=c+2|0;w=w+2|0;if((g|0)!=(w|0)){continue}break}}if(!(k&1)){break ga}b=P(c,24);c=b+f|0;h=b+J[d+84>>2]|0;b=J[h+4>>2];J[c>>2]=J[h>>2];J[c+4>>2]=b;b=J[h+20>>2];J[c+16>>2]=J[h+16>>2];J[c+20>>2]=b;b=J[h+12>>2];J[c+8>>2]=J[h+8>>2];J[c+12>>2]=b;}b=J[d+84>>2];if(!(b?!b|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[d+84>>2]=f;H[d+88|0]=1;J[d+80>>2]=j;c=J[d+76>>2];}b=J[e+4>>2];c=P(c,24)+f|0;J[c>>2]=J[e>>2];J[c+4>>2]=b;b=J[e+20>>2];J[c+16>>2]=J[e+16>>2];J[c+20>>2]=b;b=J[e+12>>2];J[c+8>>2]=J[e+8>>2];J[c+12>>2]=b;b=J[d+76>>2]+1|0;J[d+76>>2]=b;break ea}b=c-1|0;J[d+76>>2]=b;h=c>>>0>2;c=b;if(h){continue}break}}if((b|0)==1){b=J[t+12>>2]+P(s,24)|0;ha:{if(J[d+80>>2]!=1){f=J[d+84>>2];c=1;break ha}J[8456]=J[8456]+1;f=ua[J[8258]](48,16)|0;k=J[d+76>>2];ia:{if((k|0)<=0){break ia}c=0;if((k|0)!=1){j=k&-2;h=0;while(1){e=P(c,24);g=e+f|0;o=e+J[d+84>>2]|0;e=J[o+4>>2];J[g>>2]=J[o>>2];J[g+4>>2]=e;e=J[o+20>>2];J[g+16>>2]=J[o+16>>2];J[g+20>>2]=e;e=J[o+12>>2];J[g+8>>2]=J[o+8>>2];J[g+12>>2]=e;e=P(c|1,24);g=e+f|0;o=e+J[d+84>>2]|0;e=J[o+4>>2];J[g>>2]=J[o>>2];J[g+4>>2]=e;e=J[o+12>>2];J[g+8>>2]=J[o+8>>2];J[g+12>>2]=e;e=J[o+20>>2];J[g+16>>2]=J[o+16>>2];J[g+20>>2]=e;c=c+2|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}if(!(k&1)){break ia}c=P(c,24);e=c+f|0;h=c+J[d+84>>2]|0;c=J[h+4>>2];J[e>>2]=J[h>>2];J[e+4>>2]=c;c=J[h+20>>2];J[e+16>>2]=J[h+16>>2];J[e+20>>2]=c;c=J[h+12>>2];J[e+8>>2]=J[h+8>>2];J[e+12>>2]=c;}c=J[d+84>>2];if(!(c?!c|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[d+84>>2]=f;H[d+88|0]=1;J[d+80>>2]=2;c=J[d+76>>2];}f=P(c,24)+f|0;c=J[b+4>>2];J[f>>2]=J[b>>2];J[f+4>>2]=c;c=J[b+20>>2];J[f+16>>2]=J[b+16>>2];J[f+20>>2]=c;c=J[b+12>>2];J[f+8>>2]=J[b+8>>2];J[f+12>>2]=c;b=J[d+76>>2]+1|0;J[d+76>>2]=b;}s=s+1|0;if((s|0)!=J[t+4>>2]){continue}break}break Z}if((f|0)!=1){break Z}b=J[d+76>>2];while(1){e=J[t+12>>2];ja:{if(J[d+80>>2]!=(b|0)){break ja}o=b?b<<1:1;if((o|0)<=(b|0)){break ja}ka:{if(!o){f=0;break ka}J[8456]=J[8456]+1;f=ua[J[8258]](P(o,24),16)|0;b=J[d+76>>2];}la:{if((b|0)<=0){break la}c=0;if((b|0)!=1){k=b&-2;h=0;while(1){g=P(c,24);j=g+f|0;m=g+J[d+84>>2]|0;g=J[m+4>>2];J[j>>2]=J[m>>2];J[j+4>>2]=g;g=J[m+20>>2];J[j+16>>2]=J[m+16>>2];J[j+20>>2]=g;g=J[m+12>>2];J[j+8>>2]=J[m+8>>2];J[j+12>>2]=g;g=P(c|1,24);j=g+f|0;m=g+J[d+84>>2]|0;g=J[m+4>>2];J[j>>2]=J[m>>2];J[j+4>>2]=g;g=J[m+12>>2];J[j+8>>2]=J[m+8>>2];J[j+12>>2]=g;g=J[m+20>>2];J[j+16>>2]=J[m+16>>2];J[j+20>>2]=g;c=c+2|0;h=h+2|0;if((k|0)!=(h|0)){continue}break}}if(!(b&1)){break la}b=P(c,24);c=b+f|0;h=b+J[d+84>>2]|0;b=J[h+4>>2];J[c>>2]=J[h>>2];J[c+4>>2]=b;b=J[h+20>>2];J[c+16>>2]=J[h+16>>2];J[c+20>>2]=b;b=J[h+12>>2];J[c+8>>2]=J[h+8>>2];J[c+12>>2]=b;}b=J[d+84>>2];if(!(b?!b|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[d+84>>2]=f;H[d+88|0]=1;J[d+80>>2]=o;b=J[d+76>>2];}c=J[d+84>>2]+P(b,24)|0;b=J[e+4>>2];J[c>>2]=J[e>>2];J[c+4>>2]=b;b=J[e+20>>2];J[c+16>>2]=J[e+16>>2];J[c+20>>2]=b;b=J[e+12>>2];J[c+8>>2]=J[e+8>>2];J[c+12>>2]=b;b=J[d+76>>2]+1|0;J[d+76>>2]=b;C=C+1|0;if((C|0)<J[t+4>>2]){continue}break}}sa=z+32|0;ma:{if(J[d+76>>2]<=0){c=J[d+96>>2];break ma}b=0;x=J[d+20>>2];while(1){j=P(b,24);g=j+J[d+84>>2]|0;na:{if(J[d+24>>2]!=(x|0)){break na}o=x?x<<1:1;if((o|0)<=(x|0)){break na}oa:{if(!o){c=0;break oa}J[8456]=J[8456]+1;c=ua[J[8258]](o<<2,16)|0;x=J[d+20>>2];}t=J[d+28>>2];pa:{qa:{if((x|0)>0){k=x&3;s=0;e=0;if(x>>>0>=4){h=x&-4;x=0;while(1){m=e<<2;J[m+c>>2]=J[m+t>>2];f=m|4;J[f+c>>2]=J[f+t>>2];f=m|8;J[f+c>>2]=J[f+t>>2];f=m|12;J[f+c>>2]=J[f+t>>2];e=e+4|0;x=x+4|0;if((h|0)!=(x|0)){continue}break}}if(!k){break qa}while(1){f=e<<2;J[f+c>>2]=J[f+t>>2];e=e+1|0;s=s+1|0;if((k|0)!=(s|0)){continue}break}break qa}if(!t){break pa}}if(t?K[d+32|0]:0){J[8457]=J[8457]+1;ua[J[8259]](t);}x=J[d+20>>2];}J[d+28>>2]=c;H[d+32|0]=1;J[d+24>>2]=o;}J[J[d+28>>2]+(x<<2)>>2]=J[g+20>>2];x=J[d+20>>2]+1|0;J[d+20>>2]=x;c=J[d+96>>2];ra:{if((c|0)<=0){break ra}g=J[(j+J[d+84>>2]|0)+20>>2];e=0;h=J[d+104>>2];while(1){f=h+P(e,24)|0;if((g|0)!=J[f+20>>2]){e=e+1|0;if((e|0)!=(c|0)){continue}break ra}break}J[f+20>>2]=-1;}b=b+1|0;if((b|0)<J[d+76>>2]){continue}break}}sa:{if((c|0)>0){w=0;g=J[d+104>>2];while(1){j=J[(g+P(w,24)|0)+20>>2];ta:{if((j|0)==-1|(l|0)<=0){break ta}h=0;if((T|0)>0){while(1){b=P(h,36)+S|0;e=0;ua:{while(1){if(J[(e<<2)+n>>2]==(h|0)){break ua}e=e+1|0;if((T|0)!=(e|0)){continue}break}f=J[b+4>>2];if((f|0)<=0){break ua}b=J[b+12>>2];e=0;while(1){if((j|0)!=J[b+(e<<2)>>2]){e=e+1|0;if((f|0)!=(e|0)){continue}break ua}break}b=1;break sa}h=h+1|0;if((l|0)!=(h|0)){continue}break ta}}while(1){va:{b=P(h,36)+S|0;f=J[b+4>>2];if((f|0)<=0){break va}b=J[b+12>>2];e=0;while(1){if((j|0)!=J[b+(e<<2)>>2]){e=e+1|0;if((f|0)!=(e|0)){continue}break va}break}b=1;break sa}h=h+1|0;if((l|0)!=(h|0)){continue}break}}w=w+1|0;if((w|0)!=(c|0)){continue}break}}k=J[a+60>>2];c=J[k+28>>2];if((c|0)==J[k+32>>2]){f=0;g=c?c<<1:1;if((g|0)>J[k+32>>2]){if(g){J[8456]=J[8456]+1;c=ua[J[8258]](P(g,36),16)|0;}else {c=0;}h=J[k+28>>2];wa:{if((h|0)<=0){break wa}while(1){b=P(f,36);j=b+c|0;b=b+J[k+36>>2]|0;Bc(j,b);e=J[b+32>>2];J[j+28>>2]=J[b+28>>2];J[j+32>>2]=e;e=J[b+24>>2];J[j+20>>2]=J[b+20>>2];J[j+24>>2]=e;f=f+1|0;if((h|0)!=(f|0)){continue}break}b=J[k+28>>2];if((b|0)<=0){break wa}f=0;while(1){h=J[k+36>>2]+P(f,36)|0;e=J[h+12>>2];if(!(e?!e|!K[h+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](e);}J[h+12>>2]=0;H[h+16|0]=1;J[h+4>>2]=0;J[h+8>>2]=0;f=f+1|0;if((b|0)!=(f|0)){continue}break}}b=J[k+36>>2];if(!(b?!b|!K[k+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[k+36>>2]=c;H[k+40|0]=1;J[k+32>>2]=g;}c=J[k+28>>2];}c=J[k+36>>2]+P(c,36)|0;Bc(c,d+16|0);b=J[d+48>>2];J[c+28>>2]=J[d+44>>2];J[c+32>>2]=b;b=J[d+40>>2];J[c+20>>2]=J[d+36>>2];J[c+24>>2]=b;J[k+28>>2]=J[k+28>>2]+1;b=0;}c=J[d+84>>2];if(!(c?!c|!K[d+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}c=J[d+28>>2];if(!(c?!c|!K[d+32|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}c=J[d+104>>2];if(!(c?!c|!K[d+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}if(!(b&(T|0)>0)){break N}}z=0;while(1){b=0;c=P(J[(z<<2)+n>>2],36)+S|0;U=J[c+4>>2];xa:{if((U|0)<=0){break xa}s=0;J[8456]=J[8456]+1;f=U<<2;b=ua[J[8258]](f,16)|0;k=Fa(b,0,f);j=J[c+12>>2];e=0;if(U>>>0>=4){h=U&-4;x=0;while(1){g=e<<2;J[g+k>>2]=J[g+j>>2];f=g|4;J[f+k>>2]=J[f+j>>2];f=g|8;J[f+k>>2]=J[f+j>>2];f=g|12;J[f+k>>2]=J[f+j>>2];e=e+4|0;x=x+4|0;if((h|0)!=(x|0)){continue}break}}h=U&3;if(!h){break xa}while(1){f=e<<2;J[f+k>>2]=J[f+j>>2];e=e+1|0;s=s+1|0;if((h|0)!=(s|0)){continue}break}}e=K[c+24|0]|K[c+25|0]<<8|(K[c+26|0]<<16|K[c+27|0]<<24);f=K[c+20|0]|K[c+21|0]<<8|(K[c+22|0]<<16|K[c+23|0]<<24);H[d+19|0]=f;H[d+20|0]=f>>>8;H[d+21|0]=f>>>16;H[d+22|0]=f>>>24;H[d+23|0]=e;H[d+24|0]=e>>>8;H[d+25|0]=e>>>16;H[d+26|0]=e>>>24;f=K[c+32|0]|K[c+33|0]<<8|(K[c+34|0]<<16|K[c+35|0]<<24);c=K[c+28|0]|K[c+29|0]<<8|(K[c+30|0]<<16|K[c+31|0]<<24);H[d+27|0]=c;H[d+28|0]=c>>>8;H[d+29|0]=c>>>16;H[d+30|0]=c>>>24;H[d+31|0]=f;H[d+32|0]=f>>>8;H[d+33|0]=f>>>16;H[d+34|0]=f>>>24;M=J[a+60>>2];h=J[M+28>>2];ya:{if((h|0)!=J[M+32>>2]){break ya}t=h?h<<1:1;if((t|0)<=(h|0)){break ya}za:{if(!t){m=0;break za}J[8456]=J[8456]+1;m=ua[J[8258]](P(t,36),16)|0;h=J[M+28>>2];}Aa:{if((h|0)<=0){break Aa}o=0;while(1){f=J[M+36>>2];c=P(o,36);F=c+m|0;J[F+12>>2]=0;H[F+16|0]=1;J[F+4>>2]=0;J[F+8>>2]=0;c=c+f|0;w=J[c+4>>2];Ba:{if((w|0)<=0){J[F+4>>2]=w;break Ba}J[8456]=J[8456]+1;j=w<<2;C=ua[J[8258]](j,16)|0;X=J[F+12>>2];k=J[F+4>>2];Ca:{Da:{if((k|0)>0){s=0;e=0;if(k>>>0>=4){g=k&-4;x=0;while(1){A=e<<2;J[A+C>>2]=J[A+X>>2];f=A|4;J[f+C>>2]=J[f+X>>2];f=A|8;J[f+C>>2]=J[f+X>>2];f=A|12;J[f+C>>2]=J[f+X>>2];e=e+4|0;x=x+4|0;if((g|0)!=(x|0)){continue}break}}g=k&3;if(g){while(1){f=e<<2;J[f+C>>2]=J[f+X>>2];e=e+1|0;s=s+1|0;if((g|0)!=(s|0)){continue}break}}if(K[F+16|0]){break Da}break Ca}if(!X|!K[F+16|0]){break Ca}}if(X){J[8457]=J[8457]+1;ua[J[8259]](X);}}J[F+12>>2]=C;H[F+16|0]=1;J[F+8>>2]=w;s=0;A=Fa(C,0,j);J[F+4>>2]=w;k=J[c+12>>2];e=0;if(w>>>0>=4){g=w&-4;x=0;while(1){j=e<<2;J[j+A>>2]=J[j+k>>2];f=j|4;J[f+A>>2]=J[f+k>>2];f=j|8;J[f+A>>2]=J[f+k>>2];f=j|12;J[f+A>>2]=J[f+k>>2];e=e+4|0;x=x+4|0;if((g|0)!=(x|0)){continue}break}}g=w&3;if(!g){break Ba}while(1){f=e<<2;J[f+A>>2]=J[f+k>>2];e=e+1|0;s=s+1|0;if((g|0)!=(s|0)){continue}break}}f=J[c+24>>2];J[F+20>>2]=J[c+20>>2];J[F+24>>2]=f;f=J[c+32>>2];J[F+28>>2]=J[c+28>>2];J[F+32>>2]=f;o=o+1|0;if((o|0)!=(h|0)){continue}break}c=0;f=J[M+28>>2];if((f|0)<=0){break Aa}while(1){h=J[M+36>>2]+P(c,36)|0;e=J[h+12>>2];if(!(e?!e|!K[h+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](e);}J[h+12>>2]=0;H[h+16|0]=1;J[h+4>>2]=0;J[h+8>>2]=0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}c=J[M+36>>2];if(!(c?!c|!K[M+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[M+36>>2]=m;H[M+40|0]=1;J[M+32>>2]=t;h=J[M+28>>2];}m=J[M+36>>2]+P(h,36)|0;J[m+12>>2]=0;H[m+16|0]=1;J[m+4>>2]=0;J[m+8>>2]=0;Ea:{if((U|0)<=0){J[m+4>>2]=U;break Ea}J[8456]=J[8456]+1;h=U<<2;k=ua[J[8258]](h,16)|0;o=J[m+12>>2];g=J[m+4>>2];Fa:{Ga:{if((g|0)>0){s=0;e=0;if(g>>>0>=4){f=g&-4;x=0;while(1){j=e<<2;J[j+k>>2]=J[j+o>>2];c=j|4;J[c+k>>2]=J[c+o>>2];c=j|8;J[c+k>>2]=J[c+o>>2];c=j|12;J[c+k>>2]=J[c+o>>2];e=e+4|0;x=x+4|0;if((f|0)!=(x|0)){continue}break}}f=g&3;if(f){while(1){c=e<<2;J[c+k>>2]=J[c+o>>2];e=e+1|0;s=s+1|0;if((f|0)!=(s|0)){continue}break}}if(K[m+16|0]){break Ga}break Fa}if(!o|!K[m+16|0]){break Fa}}if(o){J[8457]=J[8457]+1;ua[J[8259]](o);}}J[m+12>>2]=k;H[m+16|0]=1;J[m+8>>2]=U;f=0;j=Fa(k,0,h);J[m+4>>2]=U;e=0;if(U>>>0>=4){h=U&-4;s=0;while(1){g=e<<2;J[g+j>>2]=J[b+g>>2];c=g|4;J[c+j>>2]=J[b+c>>2];c=g|8;J[c+j>>2]=J[b+c>>2];c=g|12;J[c+j>>2]=J[b+c>>2];e=e+4|0;s=s+4|0;if((h|0)!=(s|0)){continue}break}}h=U&3;if(!h){break Ea}while(1){c=e<<2;J[c+j>>2]=J[b+c>>2];e=e+1|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}f=K[d+23|0]|K[d+24|0]<<8|(K[d+25|0]<<16|K[d+26|0]<<24);c=K[d+19|0]|K[d+20|0]<<8|(K[d+21|0]<<16|K[d+22|0]<<24);H[m+20|0]=c;H[m+21|0]=c>>>8;H[m+22|0]=c>>>16;H[m+23|0]=c>>>24;H[m+24|0]=f;H[m+25|0]=f>>>8;H[m+26|0]=f>>>16;H[m+27|0]=f>>>24;f=K[d+31|0]|K[d+32|0]<<8|(K[d+33|0]<<16|K[d+34|0]<<24);c=K[d+27|0]|K[d+28|0]<<8|(K[d+29|0]<<16|K[d+30|0]<<24);H[m+28|0]=c;H[m+29|0]=c>>>8;H[m+30|0]=c>>>16;H[m+31|0]=c>>>24;H[m+32|0]=f;H[m+33|0]=f>>>8;H[m+34|0]=f>>>16;H[m+35|0]=f>>>24;J[M+28>>2]=J[M+28>>2]+1;if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}z=z+1|0;if((z|0)!=(T|0)){continue}break}}if(n){J[8457]=J[8457]+1;ua[J[8259]](n);}if(i){continue}break}ie(J[a+60>>2]);if(r){J[8457]=J[8457]+1;ua[J[8259]](r);}if((l|0)<=0){break A}c=0;while(1){b=P(c,36)+S|0;a=J[b+12>>2];if(!(a?!a|!K[b+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[b+12>>2]=0;H[b+16|0]=1;J[b+4>>2]=0;J[b+8>>2]=0;c=c+1|0;if((l|0)!=(c|0)){continue}break}break z}ie(J[a+60>>2]);}if(!S){break y}}if(S){J[8457]=J[8457]+1;ua[J[8259]](S);}}if($){J[8457]=J[8457]+1;ua[J[8259]]($);}a=J[d+164>>2];if(!(a?!a|!K[d+168|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[d+164>>2]=0;H[d+168|0]=1;J[d+156>>2]=0;J[d+160>>2]=0;a=J[d+144>>2];if(!(a?!a|!K[d+148|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[d+144>>2]=0;H[d+148|0]=1;J[d+136>>2]=0;J[d+140>>2]=0;a=J[d+124>>2];if(!(a?!a|!K[d+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}a=J[d+184>>2];if(!(a?!a|!K[d+188|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}sa=d+192|0;return 1}function Km(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=0,i=0,j=Q(0),k=0,l=Q(0),m=Q(0),n=0,o=0,p=Q(0),q=0,r=0,s=Q(0),t=Q(0),u=0,v=0,w=Q(0),x=0,y=Q(0),z=0,A=0,B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=0,da=Q(0),ea=Q(0),fa=Q(0),ga=Q(0),ha=Q(0),ia=Q(0),ja=0,ka=Q(0),la=Q(0),ma=Q(0),na=Q(0),oa=Q(0),pa=0,qa=0,ra=Q(0),ta=Q(0),va=Q(0),wa=0;f=sa-928|0;sa=f;h=J[a+56>>2];if(!h){h=J[a+4>>2];h=ua[J[J[h>>2]+12>>2]](h,J[b+8>>2],J[c+8>>2])|0;H[a+52|0]=1;J[a+56>>2]=h;}J[e+4>>2]=h;x=J[c+4>>2];a:{b:{c:{d:{z=J[b+4>>2];switch(J[z+4>>2]-8|0){case 0:break c;case 2:break d;default:break b}}e:{switch(J[x+4>>2]-8|0){case 2:d=z+36|0;a=J[z+60>>2];g=N[d+(a<<2)>>2];l=N[d+((a+2|0)%3<<2)>>2];k=x+36|0;d=J[x+60>>2];j=N[h+848>>2];g=Sc(f+432|0,f+8|0,g,l,N[k+(d<<2)>>2],N[k+((d+2|0)%3<<2)>>2],a,d,J[b+12>>2],J[c+12>>2],j);if(g<j){ua[J[J[e>>2]+16>>2]](e,f+432|0,f+8|0,g);}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);r=a;a=J[J[e+12>>2]+8>>2];Ua(r,(b?c:a)+4|0,(b?a:d)+4|0);break a;case 0:break e;default:break b}}d=z+36|0;a=J[z+60>>2];j=N[h+848>>2];g=Sc(f+432|0,f+8|0,N[d+(a<<2)>>2],N[d+((a+2|0)%3<<2)>>2],Q(0),Q(N[x+36>>2]*N[x+20>>2]),a,1,J[b+12>>2],J[c+12>>2],j);if(g<j){ua[J[J[e>>2]+16>>2]](e,f+432|0,f+8|0,g);}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);r=a;a=J[J[e+12>>2]+8>>2];Ua(r,(b?c:a)+4|0,(b?a:d)+4|0);break a}if(J[x+4>>2]!=10){break b}d=x+36|0;a=J[x+60>>2];j=N[h+848>>2];g=Sc(f+432|0,f+8|0,Q(0),Q(N[z+36>>2]*N[z+20>>2]),N[d+(a<<2)>>2],N[d+((a+2|0)%3<<2)>>2],1,a,J[b+12>>2],J[c+12>>2],j);if(g<j){ua[J[J[e>>2]+16>>2]](e,f+432|0,f+8|0,g);}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);r=a;a=J[J[e+12>>2]+8>>2];Ua(r,(b?c:a)+4|0,(b?a:d)+4|0);break a}J[f+920>>2]=1566444395;H[f+764|0]=0;J[f+740>>2]=953267991;r=sc(f+352|0,z,x,f+432|0,J[a+8>>2]);J[r+32>>2]=x;J[r+28>>2]=z;j=Q(Q(Q(Q(ua[J[J[z>>2]+48>>2]](z))+Q(ua[J[J[x>>2]+48>>2]](x)))+N[J[a+56>>2]+848>>2])+N[e+32>>2]);N[f+920>>2]=j*j;h=J[b+12>>2];k=J[h+12>>2];J[f+800>>2]=J[h+8>>2];J[f+804>>2]=k;k=J[h+4>>2];J[f+792>>2]=J[h>>2];J[f+796>>2]=k;k=J[h+28>>2];J[f+816>>2]=J[h+24>>2];J[f+820>>2]=k;k=J[h+20>>2];J[f+808>>2]=J[h+16>>2];J[f+812>>2]=k;k=J[h+44>>2];J[f+832>>2]=J[h+40>>2];J[f+836>>2]=k;k=J[h+36>>2];J[f+824>>2]=J[h+32>>2];J[f+828>>2]=k;k=J[h+60>>2];J[f+848>>2]=J[h+56>>2];J[f+852>>2]=k;k=J[h+52>>2];J[f+840>>2]=J[h+48>>2];J[f+844>>2]=k;h=J[c+12>>2];k=J[h+12>>2];J[f+864>>2]=J[h+8>>2];J[f+868>>2]=k;k=J[h+4>>2];J[f+856>>2]=J[h>>2];J[f+860>>2]=k;i=J[h+20>>2];k=f+872|0;J[k>>2]=J[h+16>>2];J[k+4>>2]=i;i=J[h+28>>2];J[f+880>>2]=J[h+24>>2];J[f+884>>2]=i;n=J[h+36>>2];i=f+888|0;J[i>>2]=J[h+32>>2];J[i+4>>2]=n;n=J[h+44>>2];J[f+896>>2]=J[h+40>>2];J[f+900>>2]=n;q=J[h+52>>2];n=f+904|0;J[n>>2]=J[h+48>>2];J[n+4>>2]=q;q=J[h+60>>2];J[f+912>>2]=J[h+56>>2];J[f+916>>2]=q;f:{q=J[z+4>>2];if((q|0)>6){break f}h=J[x+4>>2];if((h|0)>6){break f}J[f+348>>2]=15212;if(q){W=Q(ua[J[J[z>>2]+48>>2]](z));h=J[x+4>>2];}if(h){g=Q(ua[J[J[x>>2]+48>>2]](x));}H[f+44|0]=0;N[f+36>>2]=g;N[f+32>>2]=W;J[f+12>>2]=e;J[f+8>>2]=15444;if(!J[z+60>>2]){break f}if(J[x+60>>2]){I=N[J[a+56>>2]+848>>2];g:{h:{if(K[d+24|0]){W=Q(-1.0000000150474662e30);v=J[z+60>>2];u=J[x+60>>2];n=J[b+12>>2];q=J[c+12>>2];i=sa-96|0;sa=i;J[8759]=J[8759]+1;g=N[v+72>>2];j=N[v+64>>2];y=N[v+68>>2];l=N[u+72>>2];w=N[u+64>>2];C=N[u+68>>2];$=Q(Q(Q(Q(g*N[n+40>>2])+Q(Q(j*N[n+32>>2])+Q(y*N[n+36>>2])))+N[n+56>>2])-Q(Q(Q(l*N[q+40>>2])+Q(Q(w*N[q+32>>2])+Q(C*N[q+36>>2])))+N[q+56>>2]));aa=Q(Q(Q(Q(g*N[n+24>>2])+Q(Q(j*N[n+16>>2])+Q(y*N[n+20>>2])))+N[n+52>>2])-Q(Q(Q(l*N[q+24>>2])+Q(Q(w*N[q+16>>2])+Q(C*N[q+20>>2])))+N[q+52>>2]));ba=Q(Q(Q(Q(g*N[n+8>>2])+Q(Q(j*N[n>>2])+Q(y*N[n+4>>2])))+N[n+48>>2])-Q(Q(Q(l*N[q+8>>2])+Q(Q(w*N[q>>2])+Q(C*N[q+4>>2])))+N[q+48>>2]));j=Q(34028234663852886e22);i:{j:{h=J[v+28>>2];if((h|0)>0){while(1){d=J[v+36>>2]+P(A,36)|0;y=N[d+28>>2];l=N[d+20>>2];w=N[d+24>>2];C=N[n+8>>2];D=N[n>>2];F=N[n+4>>2];Z=N[n+24>>2];_=N[n+16>>2];G=N[n+20>>2];L=N[n+40>>2];M=N[n+32>>2];X=N[n+36>>2];J[i+12>>2]=0;g=Q(Q(L*y)+Q(Q(M*l)+Q(w*X)));N[i+8>>2]=g;p=Q(Q(Z*y)+Q(Q(_*l)+Q(w*G)));N[i+4>>2]=p;t=Q(Q(C*y)+Q(Q(D*l)+Q(w*F)));N[i>>2]=t;if(Q(Q($*g)+Q(Q(ba*t)+Q(aa*p)))<Q(0)){g=Q(-g);N[i+8>>2]=g;p=Q(-p);N[i+4>>2]=p;t=Q(-t);N[i>>2]=t;}J[8757]=J[8757]+1;k:{if(K[33065]){y=Q(Q($*g)+Q(Q(ba*t)+Q(aa*p)));l=N[v+88>>2];S=Q(-l);B=l;l=Q(Q(L*g)+Q(Q(C*t)+Q(Z*p)));O=Q((l<Q(0)?S:B)*l);l=N[v+80>>2];S=Q(-l);B=l;l=Q(Q(M*g)+Q(Q(D*t)+Q(_*p)));B=Q((l<Q(0)?S:B)*l);l=Q(Q(X*g)+Q(Q(F*t)+Q(G*p)));w=N[v+84>>2];l=Q(O+Q(B+Q(l*(l<Q(0)?Q(-w):w))));w=N[v+96>>2];F=l>w?l:w;l=N[u+88>>2];S=Q(-l);B=l;l=Q(Q(N[q+40>>2]*g)+Q(Q(N[q+8>>2]*t)+Q(p*N[q+24>>2])));O=Q((l<Q(0)?S:B)*l);l=N[u+80>>2];S=Q(-l);B=l;l=Q(Q(N[q+32>>2]*g)+Q(Q(N[q>>2]*t)+Q(p*N[q+16>>2])));B=Q((l<Q(0)?S:B)*l);g=Q(Q(N[q+36>>2]*g)+Q(Q(N[q+4>>2]*t)+Q(p*N[q+20>>2])));l=N[u+84>>2];g=Q(O+Q(B+Q(g*(g<Q(0)?Q(-l):l))));l=N[u+96>>2];g=Q(F+(g>l?g:l));l=Q(y+g);g=Q(g-y);if((g>l?l:g)>j){break k}}J[8758]=J[8758]+1;mb(v,n,i,i+92|0,i+88|0,i- -64|0,i+48|0);mb(u,q,i,i+84|0,i+80|0,i+32|0,i+16|0);g=N[i+88>>2];y=N[i+84>>2];if(g<y){break j}l=N[i+80>>2];w=N[i+92>>2];if(l<w){break j}g=Q(g-y);y=Q(l-w);g=g<y?g:y;if(!(g<j)){break k}d=J[i+4>>2];J[f+248>>2]=J[i>>2];J[f+252>>2]=d;d=J[i+12>>2];J[f+256>>2]=J[i+8>>2];J[f+260>>2]=d;j=g;}A=A+1|0;if((h|0)!=(A|0)){continue}break}}h=J[u+28>>2];if((h|0)>0){A=0;while(1){d=J[u+36>>2]+P(A,36)|0;y=N[d+28>>2];l=N[d+20>>2];w=N[d+24>>2];C=N[q+8>>2];D=N[q>>2];F=N[q+4>>2];Z=N[q+24>>2];_=N[q+16>>2];G=N[q+20>>2];L=N[q+40>>2];M=N[q+32>>2];X=N[q+36>>2];J[i+12>>2]=0;g=Q(Q(L*y)+Q(Q(M*l)+Q(w*X)));N[i+8>>2]=g;p=Q(Q(Z*y)+Q(Q(_*l)+Q(w*G)));N[i+4>>2]=p;t=Q(Q(C*y)+Q(Q(D*l)+Q(w*F)));N[i>>2]=t;if(Q(Q($*g)+Q(Q(ba*t)+Q(aa*p)))<Q(0)){g=Q(-g);N[i+8>>2]=g;p=Q(-p);N[i+4>>2]=p;t=Q(-t);N[i>>2]=t;}J[8757]=J[8757]+1;l:{if(K[33065]){y=Q(Q($*g)+Q(Q(ba*t)+Q(aa*p)));l=N[v+88>>2];S=Q(-l);B=l;l=Q(Q(N[n+40>>2]*g)+Q(Q(N[n+8>>2]*t)+Q(p*N[n+24>>2])));O=Q((l<Q(0)?S:B)*l);l=N[v+80>>2];S=Q(-l);B=l;l=Q(Q(N[n+32>>2]*g)+Q(Q(N[n>>2]*t)+Q(p*N[n+16>>2])));B=Q((l<Q(0)?S:B)*l);l=Q(Q(N[n+36>>2]*g)+Q(Q(N[n+4>>2]*t)+Q(p*N[n+20>>2])));w=N[v+84>>2];l=Q(O+Q(B+Q(l*(l<Q(0)?Q(-w):w))));w=N[v+96>>2];w=l>w?l:w;l=N[u+88>>2];S=Q(-l);B=l;l=Q(Q(L*g)+Q(Q(C*t)+Q(Z*p)));O=Q((l<Q(0)?S:B)*l);l=N[u+80>>2];S=Q(-l);B=l;l=Q(Q(M*g)+Q(Q(D*t)+Q(_*p)));B=Q((l<Q(0)?S:B)*l);g=Q(Q(X*g)+Q(Q(F*t)+Q(G*p)));l=N[u+84>>2];g=Q(O+Q(B+Q(g*(g<Q(0)?Q(-l):l))));l=N[u+96>>2];g=Q(w+(g>l?g:l));l=Q(y+g);g=Q(g-y);if((g>l?l:g)>j){break l}}J[8758]=J[8758]+1;mb(v,n,i,i+92|0,i+88|0,i- -64|0,i+48|0);mb(u,q,i,i+84|0,i+80|0,i+32|0,i+16|0);g=N[i+88>>2];y=N[i+84>>2];if(g<y){break j}l=N[i+80>>2];w=N[i+92>>2];if(l<w){break j}g=Q(g-y);y=Q(l-w);g=g<y?g:y;if(!(g<j)){break l}d=J[i+4>>2];J[f+248>>2]=J[i>>2];J[f+252>>2]=d;d=J[i+12>>2];J[f+256>>2]=J[i+8>>2];J[f+260>>2]=d;j=g;}A=A+1|0;if((h|0)!=(A|0)){continue}break}}ca=1;d=J[v+48>>2];m:{if((d|0)<=0){break m}h=0;A=J[u+48>>2];if((A|0)<=0){break m}L=Q(0);r=-1;k=-1;M=Q(0);X=Q(0);Z=Q(0);_=Q(0);G=Q(0);while(1){if((A|0)>0){d=J[v+56>>2]+(h<<4)|0;g=N[d+8>>2];w=N[d>>2];C=N[d+4>>2];y=Q(Q(N[n+24>>2]*g)+Q(Q(N[n+16>>2]*w)+Q(C*N[n+20>>2])));ra=Q(-y);l=Q(Q(N[n+8>>2]*g)+Q(Q(N[n>>2]*w)+Q(C*N[n+4>>2])));ta=Q(-l);w=Q(Q(N[n+40>>2]*g)+Q(Q(N[n+32>>2]*w)+Q(C*N[n+36>>2])));va=Q(-w);d=0;while(1){A=J[u+56>>2]+(d<<4)|0;F=N[A+8>>2];p=N[A>>2];t=N[A+4>>2];O=N[q+40>>2];ea=N[q+32>>2];fa=N[q+36>>2];ga=N[q+24>>2];ka=N[q+16>>2];la=N[q+20>>2];ma=N[q+8>>2];na=N[q>>2];oa=N[q+4>>2];J[i+12>>2]=0;C=Q(Q(ga*F)+Q(Q(ka*p)+Q(t*la)));D=Q(Q(ma*F)+Q(Q(na*p)+Q(t*oa)));g=Q(Q(l*C)+Q(D*ra));F=Q(Q(O*F)+Q(Q(ea*p)+Q(t*fa)));p=Q(Q(w*D)+Q(F*ta));t=Q(Q(y*F)+Q(C*va));n:{if(!(+Q(R(t))>1e-6|+Q(R(p))>1e-6|+Q(R(g))>1e-6)){break n}ha=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(t*t)+Q(p*p))))));g=Q(g*ha);N[i+8>>2]=g;p=Q(p*ha);N[i+4>>2]=p;t=Q(t*ha);N[i>>2]=t;if(Q(Q($*g)+Q(Q(ba*t)+Q(aa*p)))<Q(0)){g=Q(-g);N[i+8>>2]=g;p=Q(-p);N[i+4>>2]=p;t=Q(-t);N[i>>2]=t;}J[8757]=J[8757]+1;if(K[33065]){ha=Q(Q($*g)+Q(Q(ba*t)+Q(aa*p)));B=N[v+88>>2];da=Q(-B);S=B;B=Q(Q(N[n+40>>2]*g)+Q(Q(N[n+8>>2]*t)+Q(p*N[n+24>>2])));ia=Q((B<Q(0)?da:S)*B);B=N[v+80>>2];da=Q(-B);S=B;B=Q(Q(N[n+32>>2]*g)+Q(Q(N[n>>2]*t)+Q(p*N[n+16>>2])));S=Q((B<Q(0)?da:S)*B);B=Q(Q(N[n+36>>2]*g)+Q(Q(N[n+4>>2]*t)+Q(p*N[n+20>>2])));da=N[v+84>>2];B=Q(ia+Q(S+Q(B*(B<Q(0)?Q(-da):da))));da=N[v+96>>2];ia=B>da?B:da;B=N[u+88>>2];O=Q(Q(O*g)+Q(Q(ma*t)+Q(ga*p)));da=Q((O<Q(0)?Q(-B):B)*O);O=N[u+80>>2];S=Q(-O);B=O;O=Q(Q(ea*g)+Q(Q(na*t)+Q(ka*p)));g=Q(Q(fa*g)+Q(Q(oa*t)+Q(la*p)));p=N[u+84>>2];g=Q(da+Q(Q((O<Q(0)?S:B)*O)+Q(g*(g<Q(0)?Q(-p):p))));p=N[u+96>>2];g=Q(ia+(g>p?g:p));p=Q(ha+g);g=Q(g-ha);if((g>p?p:g)>j){break n}}J[8758]=J[8758]+1;mb(v,n,i,i+92|0,i+88|0,i- -64|0,i+48|0);mb(u,q,i,i+84|0,i+80|0,i+32|0,i+16|0);g=N[i+88>>2];p=N[i+84>>2];if(g<p){break j}t=N[i+80>>2];O=N[i+92>>2];if(t<O){break j}g=Q(g-p);p=Q(t-O);A=g<p;g=A?g:p;if(!(g<j)){break n}k=A?i+32|0:i+16|0;Z=N[k+8>>2];_=N[k+4>>2];k=A?i+48|0:i- -64|0;L=N[k+8>>2];M=N[k+4>>2];j=N[i+16>>2];m=N[i+32>>2];s=N[i+64>>2];E=N[i+48>>2];k=J[i+4>>2];J[f+248>>2]=J[i>>2];J[f+252>>2]=k;k=J[i+12>>2];J[f+256>>2]=J[i+8>>2];J[f+260>>2]=k;X=A?E:s;G=A?m:j;m=D;s=C;E=F;T=l;U=y;V=w;k=h;r=d;j=g;}d=d+1|0;A=J[u+48>>2];if((d|0)<(A|0)){continue}break}d=J[v+48>>2];}h=h+1|0;if((h|0)<(d|0)){continue}break}if((k|r)<0){break m}w=Q(Z-L);C=Q(G-X);D=Q(_-M);l=Q(Q(V*w)+Q(Q(T*C)+Q(U*D)));g=Q(0);F=Q(-Q(Q(E*w)+Q(Q(m*C)+Q(s*D))));y=Q(Q(V*E)+Q(Q(T*m)+Q(U*s)));j=Q(Q(1)-Q(y*y));o:{if(j==Q(0)){break o}g=Q(-1.0000000150474662e30);j=Q(Q(Q(F*y)+l)/j);if(j<Q(-1.0000000150474662e30)){break o}g=j;if(!(g>Q(1.0000000150474662e30))){break o}g=Q(1.0000000150474662e30);}p=Q(Q(g*y)+F);p:{if(p<Q(-1.0000000150474662e30)){j=Q(Q(y*Q(-1.0000000150474662e30))+l);if(j<Q(-1.0000000150474662e30)){p=Q(-1.0000000150474662e30);g=Q(-1.0000000150474662e30);break p}g=Q(1.0000000150474662e30);if(!(j>Q(1.0000000150474662e30))){p=Q(-1.0000000150474662e30);g=j;break p}p=Q(-1.0000000150474662e30);break p}if(!(p>Q(1.0000000150474662e30))){break p}g=Q(-1.0000000150474662e30);p=Q(1.0000000150474662e30);j=Q(Q(y*Q(1.0000000150474662e30))+l);if(j<Q(-1.0000000150474662e30)){break p}g=j;if(!(g>Q(1.0000000150474662e30))){break p}g=Q(1.0000000150474662e30);}J[i+76>>2]=0;E=Q(E*p);j=Q(E+Q(w-Q(V*g)));V=Q(m*p);m=Q(V+Q(C-Q(T*g)));T=Q(s*p);g=Q(T+Q(D-Q(U*g)));s=Q(Q(j*j)+Q(Q(m*m)+Q(g*g)));if(!(s>Q(1.1920928955078125e-7))){break m}l=j;U=Q(Y(s));j=Q(Q(1)/U);s=Q(l*j);N[i+72>>2]=s;g=Q(g*j);N[i+68>>2]=g;j=Q(m*j);N[i+64>>2]=j;if(Q(Q(s*$)+Q(Q(j*ba)+Q(aa*g)))<Q(0)){N[i+72>>2]=-s;N[i+68>>2]=-g;N[i+64>>2]=-j;}J[i+60>>2]=0;N[i+56>>2]=Z+E;N[i+52>>2]=_+T;N[i+48>>2]=G+V;ua[J[J[e>>2]+16>>2]](e,i- -64|0,i+48|0,Q(-U));}g=N[f+256>>2];j=N[f+248>>2];m=N[f+252>>2];if(!(Q(Q($*g)+Q(Q(ba*j)+Q(aa*m)))<Q(0))){break i}J[f+260>>2]=0;N[f+256>>2]=-g;N[f+252>>2]=-m;N[f+248>>2]=-j;break i}ca=0;}sa=i+96|0;if(ca){break h}break g}Za(r,f+792|0,f+8|0,J[d+20>>2],0);d=J[f+28>>2];J[f+256>>2]=J[f+24>>2];J[f+260>>2]=d;d=J[f+20>>2];J[f+248>>2]=J[f+16>>2];J[f+252>>2]=d;if(!K[f+44|0]){break g}W=N[f+40>>2];if(!(W<Q(0))){break g}}if((J[a+16>>2]&J[a+20>>2])<0){d=J[a+24>>2];if(!(d?!d|!K[a+28|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[a+28|0]=1;J[a+20>>2]=0;J[a+24>>2]=0;}J[a+16>>2]=0;ca=J[z+60>>2];n=J[x+60>>2];o=J[b+12>>2];r=J[c+12>>2];i=sa-16|0;sa=i;g=N[f+256>>2];j=N[f+248>>2];m=N[f+252>>2];N[i+12>>2]=N[f+260>>2];l=g;g=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(j*j)+Q(m*m))))));E=Q(l*g);N[i+8>>2]=E;T=Q(m*g);N[i+4>>2]=T;U=Q(j*g);N[i>>2]=U;q=-1;c=J[n+28>>2];if((c|0)>0){V=N[r+40>>2];y=N[r+36>>2];l=N[r+24>>2];w=N[r+20>>2];d=J[n+36>>2];C=N[r+32>>2];D=N[r+16>>2];F=N[r+8>>2];p=N[r+4>>2];t=N[r>>2];h=0;g=Q(-34028234663852886e22);while(1){b=d+P(h,36)|0;j=N[b+28>>2];m=N[b+20>>2];s=N[b+24>>2];j=Q(Q(Q(Q(V*j)+Q(Q(C*m)+Q(s*y)))*E)+Q(Q(Q(Q(F*j)+Q(Q(t*m)+Q(s*p)))*U)+Q(Q(Q(l*j)+Q(Q(D*m)+Q(s*w)))*T)));b=j>g;g=b?j:g;q=b?h:q;h=h+1|0;if((c|0)!=(h|0)){continue}break}}c=a+12|0;if((J[c+4>>2]&J[c+8>>2])<0){b=J[c+12>>2];if(!(b?!b|!K[c+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[c+16|0]=1;J[c+8>>2]=0;J[c+12>>2]=0;}J[c+4>>2]=0;pa=J[n+36>>2]+P(q,36)|0;qa=J[pa+4>>2];if((qa|0)>0){d=0;x=0;while(1){b=J[n+16>>2]+(J[J[pa+12>>2]+(x<<2)>>2]<<4)|0;g=N[b+8>>2];j=N[b>>2];m=N[b+4>>2];s=Q(Q(Q(g*N[r+40>>2])+Q(Q(j*N[r+32>>2])+Q(m*N[r+36>>2])))+N[r+56>>2]);E=Q(Q(Q(g*N[r+24>>2])+Q(Q(j*N[r+16>>2])+Q(m*N[r+20>>2])))+N[r+52>>2]);g=Q(Q(Q(g*N[r+8>>2])+Q(Q(j*N[r>>2])+Q(m*N[r+4>>2])))+N[r+48>>2]);q:{if(J[c+8>>2]!=(d|0)){break q}v=d?d<<1:1;if((v|0)<=(d|0)){break q}r:{if(!v){k=0;break r}J[8456]=J[8456]+1;k=ua[J[8258]](v<<4,16)|0;d=J[c+4>>2];}s:{if((d|0)<=0){break s}h=0;if((d|0)!=1){wa=d&-2;b=0;while(1){z=h<<4;A=z+k|0;u=z+J[c+12>>2]|0;ja=J[u+4>>2];J[A>>2]=J[u>>2];J[A+4>>2]=ja;ja=J[u+12>>2];J[A+8>>2]=J[u+8>>2];J[A+12>>2]=ja;u=z|16;z=u+k|0;u=u+J[c+12>>2]|0;A=J[u+4>>2];J[z>>2]=J[u>>2];J[z+4>>2]=A;A=J[u+12>>2];J[z+8>>2]=J[u+8>>2];J[z+12>>2]=A;h=h+2|0;b=b+2|0;if((wa|0)!=(b|0)){continue}break}}if(!(d&1)){break s}b=h<<4;d=b+k|0;b=b+J[c+12>>2]|0;h=J[b+4>>2];J[d>>2]=J[b>>2];J[d+4>>2]=h;h=J[b+12>>2];J[d+8>>2]=J[b+8>>2];J[d+12>>2]=h;}b=J[c+12>>2];if(!(b?!b|!K[c+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[c+12>>2]=k;H[c+16|0]=1;J[c+8>>2]=v;d=J[c+4>>2];}b=J[c+12>>2]+(d<<4)|0;J[b+12>>2]=0;N[b+8>>2]=s;N[b+4>>2]=E;N[b>>2]=g;d=J[c+4>>2]+1|0;J[c+4>>2]=d;x=x+1|0;if((qa|0)!=(x|0)){continue}break}}if((q|0)>=0){Nd(i,ca,o,c,a+32|0,Q(W-I),I,e);}sa=i+16|0;}if(!K[a+52|0]){break a}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);r=a;a=J[J[e+12>>2]+8>>2];Ua(r,(b?c:a)+4|0,(b?a:d)+4|0);break a}if(J[x+4>>2]!=1){break f}J[f+252>>2]=0;h=J[c+12>>2];s=N[h+52>>2];E=N[h+20>>2];T=N[h+24>>2];U=N[h+56>>2];V=N[h+36>>2];y=N[h+40>>2];g=N[x+72>>2];j=N[x+68>>2];l=N[h+16>>2];w=N[h+32>>2];C=N[h+48>>2];D=N[h+8>>2];m=N[x+64>>2];F=N[h>>2];p=N[h+4>>2];J[8456]=J[8456]+1;h=ua[J[8258]](16,16)|0;J[f+260>>2]=h;H[f+264|0]=1;J[f+256>>2]=1;J[h+12>>2]=0;N[h>>2]=C+Q(Q(g*D)+Q(Q(m*F)+Q(j*p)));N[h+8>>2]=U+Q(Q(g*y)+Q(Q(m*w)+Q(j*V)));N[h+4>>2]=s+Q(Q(g*T)+Q(Q(m*l)+Q(j*E)));i=J[f+252>>2];h=i+1|0;J[f+252>>2]=h;g=N[x+88>>2];k=J[c+12>>2];j=N[x+80>>2];m=N[x+84>>2];s=Q(Q(Q(g*N[k+40>>2])+Q(Q(j*N[k+32>>2])+Q(m*N[k+36>>2])))+N[k+56>>2]);E=Q(Q(Q(g*N[k+24>>2])+Q(Q(j*N[k+16>>2])+Q(m*N[k+20>>2])))+N[k+52>>2]);g=Q(Q(Q(g*N[k+8>>2])+Q(Q(j*N[k>>2])+Q(m*N[k+4>>2])))+N[k+48>>2]);t:{if(J[f+256>>2]!=(h|0)){break t}n=h?h<<1:1;if((n|0)<=(h|0)){break t}k=0;if(n){J[8456]=J[8456]+1;k=ua[J[8258]](n<<4,16)|0;}u:{if((i|0)<0){break u}h=i+1|0;A=h&1;v:{if(!i){h=0;break v}ca=h&-2;h=0;q=0;while(1){v=h<<4;u=v+k|0;i=v+J[f+260>>2]|0;o=J[i+4>>2];J[u>>2]=J[i>>2];J[u+4>>2]=o;o=J[i+12>>2];J[u+8>>2]=J[i+8>>2];J[u+12>>2]=o;i=v|16;v=i+k|0;i=i+J[f+260>>2]|0;u=J[i+4>>2];J[v>>2]=J[i>>2];J[v+4>>2]=u;u=J[i+12>>2];J[v+8>>2]=J[i+8>>2];J[v+12>>2]=u;h=h+2|0;q=q+2|0;if((ca|0)!=(q|0)){continue}break}}if(!A){break u}h=h<<4;i=h+k|0;h=h+J[f+260>>2]|0;q=J[h+4>>2];J[i>>2]=J[h>>2];J[i+4>>2]=q;q=J[h+12>>2];J[i+8>>2]=J[h+8>>2];J[i+12>>2]=q;}h=J[f+260>>2];if(!(h?!h|!K[f+264|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](h);}J[f+260>>2]=k;H[f+264|0]=1;J[f+256>>2]=n;h=J[f+252>>2];}h=J[f+260>>2]+(h<<4)|0;J[h+12>>2]=0;N[h+8>>2]=s;N[h+4>>2]=E;N[h>>2]=g;k=J[f+252>>2];h=k+1|0;J[f+252>>2]=h;g=N[x+104>>2];c=J[c+12>>2];j=N[x+96>>2];m=N[x+100>>2];s=Q(Q(Q(g*N[c+40>>2])+Q(Q(j*N[c+32>>2])+Q(m*N[c+36>>2])))+N[c+56>>2]);E=Q(Q(Q(g*N[c+24>>2])+Q(Q(j*N[c+16>>2])+Q(m*N[c+20>>2])))+N[c+52>>2]);g=Q(Q(Q(g*N[c+8>>2])+Q(Q(j*N[c>>2])+Q(m*N[c+4>>2])))+N[c+48>>2]);w:{if(J[f+256>>2]!=(h|0)){break w}i=h?h<<1:1;if((i|0)<=(h|0)){break w}h=0;if(i){J[8456]=J[8456]+1;h=ua[J[8258]](i<<4,16)|0;}x:{if((k|0)<0){break x}c=k+1|0;u=c&1;y:{if(!k){c=0;break y}A=c&-2;c=0;k=0;while(1){q=c<<4;v=q+h|0;n=q+J[f+260>>2]|0;ca=J[n+4>>2];J[v>>2]=J[n>>2];J[v+4>>2]=ca;ca=J[n+12>>2];J[v+8>>2]=J[n+8>>2];J[v+12>>2]=ca;n=q|16;q=n+h|0;n=n+J[f+260>>2]|0;v=J[n+4>>2];J[q>>2]=J[n>>2];J[q+4>>2]=v;v=J[n+12>>2];J[q+8>>2]=J[n+8>>2];J[q+12>>2]=v;c=c+2|0;k=k+2|0;if((A|0)!=(k|0)){continue}break}}if(!u){break x}c=c<<4;k=c+h|0;c=c+J[f+260>>2]|0;n=J[c+4>>2];J[k>>2]=J[c>>2];J[k+4>>2]=n;n=J[c+12>>2];J[k+8>>2]=J[c+8>>2];J[k+12>>2]=n;}c=J[f+260>>2];if(!(c?!c|!K[f+264|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[f+260>>2]=h;H[f+264|0]=1;J[f+256>>2]=i;h=J[f+252>>2];}c=J[f+260>>2]+(h<<4)|0;J[c+12>>2]=0;N[c+8>>2]=s;N[c+4>>2]=E;N[c>>2]=g;J[f+252>>2]=J[f+252>>2]+1;g=N[J[a+56>>2]+848>>2];Za(r,f+792|0,f+348|0,J[d+20>>2],0);j=N[r+12>>2];m=N[r+4>>2];s=N[r+8>>2];E=Q(Q(j*j)+Q(Q(m*m)+Q(s*s)));if(E>Q(1.1920928955078125e-7)){J[f+344>>2]=0;l=j;j=Q(Q(1)/E);N[f+340>>2]=l*j;N[f+336>>2]=s*j;N[f+332>>2]=m*j;j=N[r+56>>2];m=Q(ua[J[J[z>>2]+48>>2]](z));s=Q(ua[J[J[x>>2]+48>>2]](x));h=0;r=0;c=a+32|0;d=J[c+4>>2];z:{if((d|0)>0){break z}n=(d|0)>=0;if(n){break z}if(J[c+8>>2]<0){A:{if((d|0)<=0){break A}if((d|0)!=1){q=d&-2;while(1){k=h<<4;i=k+J[c+12>>2]|0;x=J[i+4>>2];J[k>>2]=J[i>>2];J[k+4>>2]=x;x=J[i+12>>2];J[k+8>>2]=J[i+8>>2];J[k+12>>2]=x;k=k|16;i=k+J[c+12>>2]|0;x=J[i+4>>2];J[k>>2]=J[i>>2];J[k+4>>2]=x;x=J[i+12>>2];J[k+8>>2]=J[i+8>>2];J[k+12>>2]=x;h=h+2|0;r=r+2|0;if((q|0)!=(r|0)){continue}break}}if(!(d&1)){break A}h=h<<4;k=h+J[c+12>>2]|0;r=J[k+4>>2];J[h>>2]=J[k>>2];J[h+4>>2]=r;r=J[k+12>>2];J[h+8>>2]=J[k+8>>2];J[h+12>>2]=r;}h=J[c+12>>2];if(!(h?!h|!K[c+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](h);}J[c+12>>2]=0;H[c+16|0]=1;J[c+8>>2]=0;if(n){break z}}r=d^-1;i=0-d&3;if(i){h=0;while(1){n=J[f+320>>2];k=J[c+12>>2]+(d<<4)|0;J[k>>2]=J[f+316>>2];J[k+4>>2]=n;n=J[f+328>>2];J[k+8>>2]=J[f+324>>2];J[k+12>>2]=n;d=d+1|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}if(r>>>0<3){break z}while(1){r=J[f+320>>2];h=d<<4;k=h+J[c+12>>2]|0;J[k>>2]=J[f+316>>2];J[k+4>>2]=r;r=J[f+328>>2];J[k+8>>2]=J[f+324>>2];J[k+12>>2]=r;r=J[f+328>>2];k=h+J[c+12>>2]|0;J[k+24>>2]=J[f+324>>2];J[k+28>>2]=r;r=J[f+320>>2];J[k+16>>2]=J[f+316>>2];J[k+20>>2]=r;r=J[f+328>>2];k=h+J[c+12>>2]|0;J[k+40>>2]=J[f+324>>2];J[k+44>>2]=r;r=J[f+320>>2];J[k+32>>2]=J[f+316>>2];J[k+36>>2]=r;k=J[f+328>>2];h=h+J[c+12>>2]|0;J[h+56>>2]=J[f+324>>2];J[h+60>>2]=k;k=J[f+320>>2];J[h+48>>2]=J[f+316>>2];J[h+52>>2]=k;d=d+4|0;if(d){continue}break}}J[c+4>>2]=0;Nd(f+332|0,J[z+60>>2],J[b+12>>2],f+248|0,c,Q(Q(Q(j-m)-s)-g),g,e);}if(K[a+52|0]){a=J[e+4>>2];if(J[a+844>>2]){c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);r=a;a=J[J[e+12>>2]+8>>2];Ua(r,(b?c:a)+4|0,(b?a:d)+4|0);}}a=J[f+260>>2];if(!a|!K[f+264|0]){break a}if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}break a}Za(r,f+792|0,e,J[d+20>>2],0);B:{if(!J[a+64>>2]|J[J[e+4>>2]+844>>2]>=J[a+68>>2]){break B}g=N[r+12>>2];j=N[r+4>>2];m=N[r+8>>2];s=Q(Q(g*g)+Q(Q(j*j)+Q(m*m)));if(!(s>Q(1.1920928955078125e-7))){break B}q=f+856|0;v=f+840|0;u=f+824|0;A=f+808|0;l=m;m=Q(Q(1)/s);E=Q(l*m);l=Q(j*m);w=Q(g*m);C:{if(Q(R(w))>Q(.7071067690849304)){g=Q(Q(1)/Q(Y(Q(Q(E*E)+Q(w*w)))));W=Q(E*g);g=Q(g*Q(-w));j=Q(0);break C}j=Q(Q(1)/Q(Y(Q(Q(l*l)+Q(E*E)))));g=Q(l*j);W=Q(0);j=Q(j*Q(-E));}m=Q(ua[J[J[z>>2]+16>>2]](z));s=Q(ua[J[J[x>>2]+16>>2]](x));T=N[8265];x=m<s;h=x?f+792|0:q;z=J[h+12>>2];J[f+256>>2]=J[h+8>>2];J[f+260>>2]=z;z=J[h+4>>2];J[f+248>>2]=J[h>>2];J[f+252>>2]=z;h=x?A:k;z=J[h+12>>2];J[f+272>>2]=J[h+8>>2];J[f+276>>2]=z;z=J[h+4>>2];J[f+264>>2]=J[h>>2];J[f+268>>2]=z;h=x?u:i;z=J[h+12>>2];J[f+288>>2]=J[h+8>>2];J[f+292>>2]=z;z=J[h+4>>2];J[f+280>>2]=J[h>>2];J[f+284>>2]=z;h=x?v:n;z=J[h+12>>2];J[f+304>>2]=J[h+8>>2];J[f+308>>2]=z;z=J[h+4>>2];J[f+296>>2]=J[h>>2];J[f+300>>2]=z;h=J[a+64>>2];if((h|0)<=0){break B}m=Q(T/(x?m:s));m=m>Q(.39269909262657166)?Q(.19634954631328583):Q(m*Q(.5));s=Na(m);T=Ma(m);m=Q(Q(W*W)+Q(Q(j*j)+Q(g*g)));if(!(m>Q(1.1920928955078125e-7))){break B}m=Q(s/Q(Y(m)));U=Q(W*m);V=Q(g*m);y=Q(j*m);O=Q(Y(Q(Q(w*w)+Q(Q(l*l)+Q(E*E)))));z=f- -64|0;while(1){s=Q(Q(Q(Q(6.2831854820251465)/Q(h|0))*Q(ca|0))*Q(.5));m=Q(Na(s)/O);g=Q(w*m);j=Q(E*m);m=Q(l*m);s=Ma(s);D:{if(!x){h=J[b+12>>2];o=J[h+12>>2];J[f+800>>2]=J[h+8>>2];J[f+804>>2]=o;o=J[h+4>>2];J[f+792>>2]=J[h>>2];J[f+796>>2]=o;o=J[h+28>>2];J[A+8>>2]=J[h+24>>2];J[A+12>>2]=o;o=J[h+20>>2];J[A>>2]=J[h+16>>2];J[A+4>>2]=o;o=J[h+44>>2];J[u+8>>2]=J[h+40>>2];J[u+12>>2]=o;o=J[h+36>>2];J[u>>2]=J[h+32>>2];J[u+4>>2]=o;o=J[h+60>>2];J[v+8>>2]=J[h+56>>2];J[v+12>>2]=o;o=J[h+52>>2];J[v>>2]=J[h+48>>2];J[v+4>>2]=o;h=J[c+12>>2];F=N[h+36>>2];p=N[h+20>>2];t=N[h+40>>2];W=N[h+24>>2];$=N[h+32>>2];aa=N[h>>2];ba=N[h+16>>2];Z=N[h+4>>2];_=N[h+8>>2];J[f+900>>2]=0;J[f+884>>2]=0;J[f+868>>2]=0;G=Q(Q(m*U)+Q(Q(Q(s*V)-Q(T*j))-Q(g*y)));I=Q(Q(g*U)+Q(Q(j*V)+Q(Q(s*T)+Q(y*m))));L=Q(Q(g*V)+Q(Q(Q(s*y)-Q(T*m))-Q(j*U)));M=Q(Q(j*y)+Q(Q(Q(s*U)-Q(T*g))-Q(m*V)));C=Q(Q(Q(G*g)+Q(Q(I*m)+Q(s*L)))-Q(M*j));D=Q(Q(Q(Q(I*s)-Q(m*L))-Q(G*j))-Q(M*g));X=Q(Q(Q(L*j)+Q(Q(I*g)+Q(s*M)))-Q(G*m));g=Q(Q(Q(M*m)+Q(Q(I*j)+Q(s*G)))-Q(L*g));j=Q(Q(2)/Q(Q(D*D)+Q(Q(X*X)+Q(Q(C*C)+Q(g*g)))));I=Q(C*j);L=Q(C*I);m=Q(g*j);M=Q(g*m);s=Q(Q(1)-Q(L+M));j=Q(X*j);ea=Q(C*j);fa=Q(D*m);G=Q(ea-fa);ga=Q(g*j);I=Q(D*I);g=Q(ga+I);N[f+896>>2]=Q(t*s)+Q(Q(_*G)+Q(W*g));N[f+892>>2]=Q(F*s)+Q(Q(Z*G)+Q(g*p));N[f+888>>2]=Q($*s)+Q(Q(aa*G)+Q(g*ba));g=Q(ga-I);s=Q(C*m);C=Q(D*j);m=Q(s+C);D=Q(X*j);j=Q(Q(1)-Q(L+D));N[f+880>>2]=Q(t*g)+Q(Q(_*m)+Q(W*j));N[f+876>>2]=Q(F*g)+Q(Q(Z*m)+Q(j*p));N[f+872>>2]=Q($*g)+Q(Q(aa*m)+Q(j*ba));g=Q(ea+fa);j=Q(Q(1)-Q(M+D));m=Q(s-C);N[f+864>>2]=Q(t*g)+Q(Q(_*j)+Q(W*m));N[f+860>>2]=Q(F*g)+Q(Q(Z*j)+Q(m*p));N[f+856>>2]=Q($*g)+Q(Q(aa*j)+Q(m*ba));break D}h=J[b+12>>2];F=N[h+36>>2];p=N[h+20>>2];t=N[h+40>>2];W=N[h+24>>2];$=N[h+32>>2];aa=N[h>>2];ba=N[h+16>>2];Z=N[h+4>>2];_=N[h+8>>2];J[f+836>>2]=0;J[f+820>>2]=0;J[f+804>>2]=0;G=Q(Q(m*U)+Q(Q(Q(s*V)-Q(T*j))-Q(g*y)));I=Q(Q(g*U)+Q(Q(j*V)+Q(Q(s*T)+Q(y*m))));L=Q(Q(g*V)+Q(Q(Q(s*y)-Q(T*m))-Q(j*U)));M=Q(Q(j*y)+Q(Q(Q(s*U)-Q(T*g))-Q(m*V)));C=Q(Q(Q(G*g)+Q(Q(I*m)+Q(s*L)))-Q(M*j));D=Q(Q(Q(Q(I*s)-Q(m*L))-Q(G*j))-Q(M*g));X=Q(Q(Q(L*j)+Q(Q(I*g)+Q(s*M)))-Q(G*m));g=Q(Q(Q(M*m)+Q(Q(I*j)+Q(s*G)))-Q(L*g));j=Q(Q(2)/Q(Q(D*D)+Q(Q(X*X)+Q(Q(C*C)+Q(g*g)))));I=Q(C*j);L=Q(C*I);m=Q(g*j);M=Q(g*m);s=Q(Q(1)-Q(L+M));j=Q(X*j);ea=Q(C*j);fa=Q(D*m);G=Q(ea-fa);ga=Q(g*j);I=Q(D*I);g=Q(ga+I);N[f+832>>2]=Q(t*s)+Q(Q(_*G)+Q(W*g));N[f+828>>2]=Q(F*s)+Q(Q(Z*G)+Q(g*p));N[f+824>>2]=Q($*s)+Q(Q(aa*G)+Q(g*ba));g=Q(ga-I);s=Q(C*m);C=Q(D*j);m=Q(s+C);D=Q(X*j);j=Q(Q(1)-Q(L+D));N[f+816>>2]=Q(t*g)+Q(Q(_*m)+Q(W*j));N[f+812>>2]=Q(F*g)+Q(Q(Z*m)+Q(j*p));N[f+808>>2]=Q($*g)+Q(Q(aa*m)+Q(j*ba));g=Q(ea+fa);j=Q(Q(1)-Q(M+D));m=Q(s-C);N[f+800>>2]=Q(t*g)+Q(Q(_*j)+Q(W*m));N[f+796>>2]=Q(F*g)+Q(Q(Z*j)+Q(m*p));N[f+792>>2]=Q($*g)+Q(Q(aa*j)+Q(m*ba));h=J[c+12>>2];o=J[h+4>>2];J[q>>2]=J[h>>2];J[q+4>>2]=o;o=J[h+12>>2];J[q+8>>2]=J[h+8>>2];J[q+12>>2]=o;o=J[h+28>>2];J[k+8>>2]=J[h+24>>2];J[k+12>>2]=o;o=J[h+20>>2];J[k>>2]=J[h+16>>2];J[k+4>>2]=o;o=J[h+44>>2];J[i+8>>2]=J[h+40>>2];J[i+12>>2]=o;o=J[h+36>>2];J[i>>2]=J[h+32>>2];J[i+4>>2]=o;o=J[h+60>>2];J[n+8>>2]=J[h+56>>2];J[n+12>>2]=o;o=J[h+52>>2];J[n>>2]=J[h+48>>2];J[n+4>>2]=o;}h=J[d+20>>2];J[f+44>>2]=e;J[f+8>>2]=15628;J[f+40>>2]=0;o=J[f+804>>2];J[f+56>>2]=J[f+800>>2];J[f+60>>2]=o;o=J[f+796>>2];J[f+48>>2]=J[f+792>>2];J[f+52>>2]=o;o=J[A+12>>2];J[z+8>>2]=J[A+8>>2];J[z+12>>2]=o;o=J[A+4>>2];J[z>>2]=J[A>>2];J[z+4>>2]=o;o=J[u+12>>2];J[f+88>>2]=J[u+8>>2];J[f+92>>2]=o;o=J[u+4>>2];J[f+80>>2]=J[u>>2];J[f+84>>2]=o;o=J[v+12>>2];J[f+104>>2]=J[v+8>>2];J[f+108>>2]=o;o=J[v+4>>2];J[f+96>>2]=J[v>>2];J[f+100>>2]=o;o=J[q+12>>2];J[f+120>>2]=J[q+8>>2];J[f+124>>2]=o;o=J[q+4>>2];J[f+112>>2]=J[q>>2];J[f+116>>2]=o;o=J[k+12>>2];J[f+136>>2]=J[k+8>>2];J[f+140>>2]=o;o=J[k+4>>2];J[f+128>>2]=J[k>>2];J[f+132>>2]=o;o=J[i+12>>2];J[f+152>>2]=J[i+8>>2];J[f+156>>2]=o;o=J[i+4>>2];J[f+144>>2]=J[i>>2];J[f+148>>2]=o;o=J[n+12>>2];J[f+168>>2]=J[n+8>>2];J[f+172>>2]=o;o=J[n+4>>2];J[f+160>>2]=J[n>>2];J[f+164>>2]=o;o=J[f+260>>2];J[f+184>>2]=J[f+256>>2];J[f+188>>2]=o;o=J[f+252>>2];J[f+176>>2]=J[f+248>>2];J[f+180>>2]=o;o=J[f+276>>2];J[f+200>>2]=J[f+272>>2];J[f+204>>2]=o;o=J[f+268>>2];J[f+192>>2]=J[f+264>>2];J[f+196>>2]=o;o=J[f+292>>2];J[f+216>>2]=J[f+288>>2];J[f+220>>2]=o;o=J[f+284>>2];J[f+208>>2]=J[f+280>>2];J[f+212>>2]=o;o=J[f+300>>2];J[f+224>>2]=J[f+296>>2];J[f+228>>2]=o;o=J[f+308>>2];J[f+232>>2]=J[f+304>>2];J[f+236>>2]=o;J[f+244>>2]=h;H[f+240|0]=x;Za(r,f+792|0,f+8|0,h,0);h=J[a+64>>2];ca=ca+1|0;if((h|0)>(ca|0)){continue}break}}if(!K[a+52|0]){break a}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);r=a;a=J[J[e+12>>2]+8>>2];Ua(r,(b?c:a)+4|0,(b?a:d)+4|0);}sa=f+928|0;}function Pe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=0,p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=0,u=0,v=Q(0),w=Q(0),x=0,y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=0,D=0,E=Q(0),F=Q(0),G=0,H=Q(0),I=Q(0),K=Q(0),L=Q(0),M=Q(0),O=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=0,X=0,Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0),da=Q(0),ea=Q(0),fa=0,ga=Q(0),ha=Q(0),ia=Q(0),ja=Q(0),ka=Q(0),la=Q(0),ma=0,na=0,oa=Q(0),pa=0,qa=0,ra=0,ta=Q(0),va=0,wa=Q(0);d=sa-160|0;sa=d;N[d+112>>2]=N[b>>2];N[d+64>>2]=N[b+64>>2];N[d+116>>2]=N[b+4>>2];N[d+68>>2]=N[b+68>>2];N[d+120>>2]=N[b+8>>2];N[d+72>>2]=N[b+72>>2];N[d+128>>2]=N[b+16>>2];N[d+80>>2]=N[b+80>>2];N[d+132>>2]=N[b+20>>2];N[d+84>>2]=N[b+84>>2];N[d+136>>2]=N[b+24>>2];N[d+88>>2]=N[b+88>>2];N[d+144>>2]=N[b+32>>2];N[d+96>>2]=N[b+96>>2];N[d+148>>2]=N[b+36>>2];N[d+100>>2]=N[b+100>>2];N[d+152>>2]=N[b+40>>2];N[d+104>>2]=N[b+104>>2];e=J[a+4>>2];j=N[e+44>>2];i=N[e+40>>2];n=N[e+36>>2];g=Q(ua[J[J[e>>2]+48>>2]](e));h=Q(ua[J[J[e>>2]+48>>2]](e));k=Q(ua[J[J[e>>2]+48>>2]](e));J[d+36>>2]=0;i=Q(i+h);N[d+28>>2]=i+i;i=Q(n+g);N[d+24>>2]=i+i;j=Q(j+k);N[d+32>>2]=j+j;a=J[a+8>>2];j=N[a+44>>2];i=N[a+40>>2];n=N[a+36>>2];g=Q(ua[J[J[a>>2]+48>>2]](a));h=Q(ua[J[J[a>>2]+48>>2]](a));k=Q(ua[J[J[a>>2]+48>>2]](a));J[d+20>>2]=0;i=Q(i+h);N[d+12>>2]=i+i;i=Q(n+g);N[d+8>>2]=i+i;j=Q(j+k);N[d+16>>2]=j+j;W=c;f=sa-368|0;sa=f;a=d+112|0;K=N[a+36>>2];U=N[a+4>>2];F=N[a+20>>2];s=N[a+40>>2];ea=N[a+8>>2];L=N[a+24>>2];G=b+48|0;n=N[G+8>>2];c=b+112|0;g=N[c+8>>2];q=N[G>>2];r=N[c>>2];H=N[G+4>>2];A=N[c+4>>2];j=N[a+32>>2];oa=N[a>>2];i=N[a+16>>2];h=Q(N[d+24>>2]*Q(.5));N[f+356>>2]=h;k=Q(N[d+28>>2]*Q(.5));N[f+360>>2]=k;m=Q(N[d+32>>2]*Q(.5));N[f+364>>2]=m;v=Q(N[d+8>>2]*Q(.5));N[f+344>>2]=v;y=Q(N[d+12>>2]*Q(.5));N[f+348>>2]=y;p=Q(N[d+16>>2]*Q(.5));N[f+352>>2]=p;n=Q(g-n);g=Q(r-q);q=Q(A-H);r=Q(Q(j*n)+Q(Q(oa*g)+Q(i*q)));b=d- -64|0;Z=N[b+40>>2];_=N[b+8>>2];M=N[b+24>>2];H=Q(Q(j*Z)+Q(Q(oa*_)+Q(i*M)));ga=Q(R(H));V=N[b+36>>2];I=N[b+4>>2];$=N[b+20>>2];A=Q(Q(j*V)+Q(Q(oa*I)+Q(i*$)));ha=Q(R(A));aa=N[b+32>>2];ba=N[b>>2];ca=N[b+16>>2];B=Q(Q(j*aa)+Q(Q(oa*ba)+Q(i*ca)));ta=Q(R(B));i=Q(Q(R(r))-Q(Q(p*ga)+Q(Q(y*ha)+Q(Q(v*ta)+h))));a:{if(i>Q(0)){break a}w=Q(Q(K*Z)+Q(Q(U*_)+Q(F*M)));ia=Q(R(w));O=Q(Q(K*V)+Q(Q(U*I)+Q(F*$)));S=Q(R(O));T=Q(Q(K*aa)+Q(Q(U*ba)+Q(F*ca)));ja=Q(R(T));j=Q(-34028234663852886e22);if(i>Q(-34028234663852886e22)){l=r<Q(0);u=a;C=1;j=i;}K=Q(Q(K*n)+Q(Q(U*g)+Q(q*F)));i=Q(Q(R(K))-Q(Q(p*ia)+Q(Q(y*S)+Q(Q(v*ja)+k))));if(i>Q(0)){break a}F=Q(Q(s*Z)+Q(Q(ea*_)+Q(L*M)));ka=Q(R(F));E=Q(Q(s*V)+Q(Q(ea*I)+Q(L*$)));la=Q(R(E));z=Q(Q(s*aa)+Q(Q(ea*ba)+Q(L*ca)));da=Q(R(z));if(j<i){u=a+4|0;l=K<Q(0);C=2;j=i;}s=Q(Q(s*n)+Q(Q(ea*g)+Q(q*L)));i=Q(Q(R(s))-Q(Q(p*ka)+Q(Q(y*la)+Q(Q(v*da)+m))));if(i>Q(0)){break a}if(j<i){u=a+8|0;l=s<Q(0);C=3;j=i;}L=Q(Q(aa*n)+Q(Q(ba*g)+Q(q*ca)));i=Q(Q(R(L))-Q(v+Q(Q(m*da)+Q(Q(h*ta)+Q(k*ja)))));if(i>Q(0)){break a}if(j<i){l=L<Q(0);u=b;C=4;j=i;}L=Q(Q(V*n)+Q(Q(I*g)+Q(q*$)));i=Q(Q(R(L))-Q(y+Q(Q(m*la)+Q(Q(h*ha)+Q(k*S)))));if(i>Q(0)){break a}if(j<i){u=b+4|0;l=L<Q(0);C=5;j=i;}n=Q(Q(Z*n)+Q(Q(_*g)+Q(q*M)));i=Q(Q(R(n))-Q(p+Q(Q(m*ka)+Q(Q(h*ga)+Q(k*ia)))));if(i>Q(0)){break a}if(j<i){u=b+8|0;l=n<Q(0);C=6;j=i;}V=Q(Q(s*T)-Q(z*K));$=Q(ha+Q(9999999747378752e-21));aa=Q(ga+Q(9999999747378752e-21));ba=Q(da+Q(9999999747378752e-21));ca=Q(ja+Q(9999999747378752e-21));i=Q(Q(R(V))-Q(Q(p*$)+Q(Q(y*aa)+Q(Q(k*ba)+Q(m*ca)))));if(i>Q(1.1920928955078125e-7)){break a}L=Q(la+Q(9999999747378752e-21));Z=Q(S+Q(9999999747378752e-21));_=Q(ta+Q(9999999747378752e-21));S=Q(-K);q=Q(0);ja=Q(T*T);la=Q(Q(z*z)+Q(0));M=Q(Y(Q(ja+la)));b:{if(!(M>Q(1.1920928955078125e-7))){g=Q(0);n=Q(0);break b}g=Q(0);i=Q(i/M);n=Q(0);if(!(Q(i*Q(1.0499999523162842))>j)){break b}l=V<Q(0);g=Q(T/M);q=Q(Q(0)/M);u=0;C=7;j=i;n=Q(Q(-z)/M);}da=Q(Q(s*O)+Q(E*S));i=Q(Q(R(da))-Q(Q(p*_)+Q(Q(v*aa)+Q(Q(k*L)+Q(m*Z)))));if(i>Q(1.1920928955078125e-7)){break a}M=Q(ka+Q(9999999747378752e-21));V=Q(ia+Q(9999999747378752e-21));ia=Q(O*O);ka=Q(Q(E*E)+Q(0));I=Q(Y(Q(ia+ka)));c:{if(!(I>Q(1.1920928955078125e-7))){break c}i=Q(i/I);if(!(Q(i*Q(1.0499999523162842))>j)){break c}l=da<Q(0);g=Q(O/I);n=Q(Q(-E)/I);q=Q(Q(0)/I);u=0;C=8;j=i;}S=Q(Q(s*w)+Q(F*S));i=Q(Q(R(S))-Q(Q(y*_)+Q(Q(v*$)+Q(Q(k*M)+Q(m*V)))));if(i>Q(1.1920928955078125e-7)){break a}da=Q(w*w);ga=Q(Q(F*F)+Q(0));I=Q(Y(Q(da+ga)));d:{if(!(I>Q(1.1920928955078125e-7))){break d}i=Q(i/I);if(!(Q(i*Q(1.0499999523162842))>j)){break d}l=S<Q(0);g=Q(w/I);n=Q(Q(-F)/I);q=Q(Q(0)/I);u=0;C=9;j=i;}S=Q(Q(r*z)-Q(B*s));i=Q(Q(R(S))-Q(Q(p*Z)+Q(Q(y*V)+Q(Q(h*ba)+Q(m*_)))));if(i>Q(1.1920928955078125e-7)){break a}I=Q(-s);ha=Q(B*B);s=Q(Y(Q(ha+la)));e:{if(!(s>Q(1.1920928955078125e-7))){break e}i=Q(i/s);if(!(Q(i*Q(1.0499999523162842))>j)){break e}l=S<Q(0);g=Q(Q(-B)/s);n=Q(Q(0)/s);q=Q(z/s);u=0;C=10;j=i;}s=Q(Q(r*E)+Q(A*I));i=Q(Q(R(s))-Q(Q(p*ca)+Q(Q(v*V)+Q(Q(h*L)+Q(m*$)))));if(i>Q(1.1920928955078125e-7)){break a}S=Q(A*A);z=Q(Y(Q(S+ka)));f:{if(!(z>Q(1.1920928955078125e-7))){break f}i=Q(i/z);if(!(Q(i*Q(1.0499999523162842))>j)){break f}l=s<Q(0);g=Q(Q(-A)/z);n=Q(Q(0)/z);q=Q(E/z);u=0;C=11;j=i;}z=Q(Q(r*F)+Q(H*I));i=Q(Q(R(z))-Q(Q(y*ca)+Q(Q(v*Z)+Q(Q(h*M)+Q(m*aa)))));if(i>Q(1.1920928955078125e-7)){break a}s=Q(H*H);E=Q(Y(Q(s+ga)));g:{if(!(E>Q(1.1920928955078125e-7))){break g}i=Q(i/E);if(!(Q(i*Q(1.0499999523162842))>j)){break g}l=z<Q(0);g=Q(Q(-H)/E);n=Q(Q(0)/E);q=Q(F/E);u=0;C=12;j=i;}E=Q(Q(K*B)-Q(T*r));i=Q(Q(R(E))-Q(Q(p*L)+Q(Q(y*M)+Q(Q(h*ca)+Q(k*_)))));if(i>Q(1.1920928955078125e-7)){break a}F=Q(-r);r=Q(Y(Q(Q(ja+ha)+Q(0))));h:{if(!(r>Q(1.1920928955078125e-7))){break h}i=Q(i/r);if(!(Q(i*Q(1.0499999523162842))>j)){break h}l=E<Q(0);g=Q(Q(0)/r);n=Q(B/r);q=Q(Q(-T)/r);u=0;C=13;j=i;}r=Q(Q(K*A)+Q(O*F));i=Q(Q(R(r))-Q(Q(p*ba)+Q(Q(v*M)+Q(Q(h*Z)+Q(k*$)))));if(i>Q(1.1920928955078125e-7)){break a}p=Q(Y(Q(Q(ia+S)+Q(0))));i:{if(!(p>Q(1.1920928955078125e-7))){break i}i=Q(i/p);if(!(Q(i*Q(1.0499999523162842))>j)){break i}l=r<Q(0);g=Q(Q(0)/p);n=Q(A/p);q=Q(Q(-O)/p);u=0;C=14;j=i;}r=Q(Q(K*H)+Q(w*F));i=Q(Q(R(r))-Q(Q(y*ba)+Q(Q(v*L)+Q(Q(h*V)+Q(k*aa)))));if(i>Q(1.1920928955078125e-7)){break a}j:{k:{l:{m:{p=Q(Y(Q(Q(da+s)+Q(0))));if(!(p>Q(1.1920928955078125e-7))){break m}i=Q(i/p);if(!(Q(i*Q(1.0499999523162842))>j)){break m}l=r<Q(0);g=Q(Q(0)/p);n=Q(H/p);q=Q(Q(-w)/p);C=15;break l}if(!C){break a}if(u){break k}i=j;}p=Q(Q(ea*g)+Q(Q(oa*q)+Q(U*n)));N[d+48>>2]=p;r=Q(Q(N[a+24>>2]*g)+Q(Q(N[a+16>>2]*q)+Q(n*N[a+20>>2])));N[d+52>>2]=r;j=Q(Q(N[a+40>>2]*g)+Q(Q(N[a+32>>2]*q)+Q(n*N[a+36>>2])));break j}p=N[u>>2];N[d+48>>2]=p;r=N[u+16>>2];N[d+52>>2]=r;i=j;j=N[u+32>>2];}N[d+56>>2]=j;if(l){N[d+56>>2]=-j;N[d+52>>2]=-r;N[d+48>>2]=-p;}N[d+44>>2]=-i;if(C>>>0>=7){J[f+120>>2]=J[G+8>>2];e=J[G+4>>2];J[f+112>>2]=J[G>>2];J[f+116>>2]=e;j=N[d+56>>2];q=N[a+40>>2];n=N[d+48>>2];p=N[a+8>>2];g=N[d+52>>2];r=N[a+24>>2];m=Q(Q(j*q)+Q(Q(n*p)+Q(g*r)))>Q(0)?m:Q(-m);s=Q(m*q);q=N[a+36>>2];H=N[a+4>>2];A=N[a+20>>2];k=Q(Q(j*q)+Q(Q(n*H)+Q(g*A)))>Q(0)?k:Q(-k);z=Q(k*q);q=N[a+32>>2];B=N[a>>2];w=N[a+16>>2];h=Q(Q(j*q)+Q(Q(n*B)+Q(g*w)))>Q(0)?h:Q(-h);N[f+120>>2]=s+Q(z+Q(Q(h*q)+N[f+120>>2]));N[f+112>>2]=Q(m*p)+Q(Q(k*H)+Q(Q(h*B)+N[f+112>>2]));N[f+116>>2]=Q(m*r)+Q(Q(k*A)+Q(Q(h*w)+N[f+116>>2]));J[f+216>>2]=J[c+8>>2];e=J[c+4>>2];J[f+208>>2]=J[c>>2];J[f+212>>2]=e;h=N[f+352>>2];k=N[b+40>>2];m=N[b+8>>2];q=N[b+24>>2];h=Q(Q(j*k)+Q(Q(n*m)+Q(g*q)))>Q(0)?Q(-h):h;B=Q(h*k);w=Q(-y);s=y;y=N[b+36>>2];p=N[b+4>>2];r=N[b+20>>2];k=Q(Q(j*y)+Q(Q(n*p)+Q(g*r)))>Q(0)?w:s;z=Q(-v);s=v;v=N[b+32>>2];w=n;n=N[b>>2];A=g;g=N[b+16>>2];j=Q(Q(j*v)+Q(Q(w*n)+Q(A*g)))>Q(0)?z:s;v=Q(B+Q(Q(k*y)+Q(Q(j*v)+N[f+216>>2])));N[f+216>>2]=v;m=Q(Q(h*m)+Q(Q(k*p)+Q(Q(j*n)+N[f+208>>2])));N[f+208>>2]=m;g=Q(Q(h*q)+Q(Q(k*r)+Q(Q(j*g)+N[f+212>>2])));N[f+212>>2]=g;c=C-7&255;a=((c>>>0)/3<<2)+a|0;N[f+288>>2]=N[a>>2];N[f+292>>2]=N[a+16>>2];N[f+296>>2]=N[a+32>>2];a=b+((c>>>0)%3<<2)|0;h=N[a>>2];N[f+80>>2]=h;k=N[a+16>>2];N[f+84>>2]=k;y=N[a+32>>2];N[f+88>>2]=y;a=f+208|0;b=f- -64|0;n=Q(0);q=N[f+296>>2];p=N[f+88>>2];r=N[f+288>>2];H=N[f+80>>2];A=N[f+292>>2];B=N[f+84>>2];j=Q(Q(q*p)+Q(Q(r*H)+Q(A*B)));w=Q(Q(1)-Q(j*j));if(w<=Q(9999999747378752e-20)){j=Q(0);}else {w=Q(Q(1)/w);n=Q(N[a+8>>2]-N[f+120>>2]);s=Q(q*n);q=Q(N[a>>2]-N[f+112>>2]);z=Q(r*q);r=Q(N[a+4>>2]-N[f+116>>2]);A=Q(s+Q(z+Q(A*r)));q=Q(Q(p*n)+Q(Q(H*q)+Q(B*r)));n=Q(w*Q(Q(j*A)-q));j=Q(w*Q(A-Q(j*q)));}N[f+328>>2]=j;N[b>>2]=n;j=N[f+64>>2];N[f+216>>2]=Q(y*j)+v;N[f+212>>2]=Q(k*j)+g;N[f+208>>2]=Q(h*j)+m;j=N[d+48>>2];n=N[d+52>>2];g=N[d+56>>2];J[f+44>>2]=0;N[f+40>>2]=-g;N[f+36>>2]=-n;N[f+32>>2]=-j;ua[J[J[W>>2]+16>>2]](W,f+32|0,a,i);J[d+40>>2]=C;break a}j=N[d+48>>2];n:{if(C>>>0<=3){n=N[d+56>>2];u=f+356|0;e=c;c=b;o=f+344|0;i=N[d+52>>2];break n}j=Q(-j);n=Q(-N[d+56>>2]);u=f+344|0;e=G;G=c;c=a;a=b;o=f+356|0;i=Q(-N[d+52>>2]);}h=Q(Q(N[c+32>>2]*n)+Q(Q(N[c>>2]*j)+Q(i*N[c+16>>2])));N[f+328>>2]=h;k=Q(Q(N[c+36>>2]*n)+Q(Q(N[c+4>>2]*j)+Q(i*N[c+20>>2])));N[f+332>>2]=k;g=Q(Q(N[c+40>>2]*n)+Q(Q(N[c+8>>2]*j)+Q(i*N[c+24>>2])));N[f+336>>2]=g;g=Q(R(g));k=Q(R(k));h=Q(R(h));o:{if(k>h){l=g<k;b=l?1:2;t=0;break o}l=g<h;b=!l<<1;t=l;}X=t;b=b<<2;g=N[b+o>>2];g=N[b+(f+328|0)>>2]<Q(0)?g:Q(-g);b=b+c|0;v=Q(Q(g*N[b+32>>2])+Q(N[e+8>>2]-N[G+8>>2]));y=Q(Q(g*N[b+16>>2])+Q(N[e+4>>2]-N[G+4>>2]));q=Q(Q(g*N[b>>2])+Q(N[e>>2]-N[G>>2]));pa=l?2:1;b=1;e=2;p:{q:{r:{qa=(C>>>0<4?-1:-4)+C|0;switch(qa|0){case 0:break p;case 1:break r;default:break q}}b=0;break p}e=1;b=0;}l=b<<2;b=l+a|0;g=N[b+32>>2];h=N[b>>2];k=N[b+16>>2];b=e<<2;a=b+a|0;m=N[a+32>>2];p=N[a>>2];r=N[a+16>>2];H=Q(Q(v*m)+Q(Q(q*p)+Q(y*r)));a=X<<2;ma=a+c|0;B=N[ma+32>>2];w=N[ma>>2];O=N[ma+16>>2];A=Q(Q(m*B)+Q(Q(p*w)+Q(r*O)));T=N[a+o>>2];K=Q(A*T);F=Q(H+K);a=pa<<2;fa=a+c|0;E=N[fa+32>>2];z=N[fa>>2];s=N[fa+16>>2];p=Q(Q(m*E)+Q(Q(p*z)+Q(r*s)));U=N[a+o>>2];m=Q(p*U);N[f+316>>2]=F-m;r=Q(Q(v*g)+Q(Q(q*h)+Q(y*k)));B=Q(Q(g*B)+Q(Q(h*w)+Q(k*O)));O=Q(T*B);T=Q(r+O);w=Q(Q(g*E)+Q(Q(h*z)+Q(k*s)));g=Q(U*w);N[f+312>>2]=T-g;N[f+308>>2]=F+m;N[f+304>>2]=T+g;h=Q(H-K);N[f+300>>2]=h+m;k=Q(r-O);N[f+296>>2]=k+g;N[f+292>>2]=h-m;N[f+288>>2]=k-g;N[f+280>>2]=N[l+u>>2];N[f+284>>2]=N[b+u>>2];e=f+208|0;l=0;t=sa+-64|0;sa=t;g=N[f+280>>2];m=N[f+288>>2];h=Q(-m);if(g>h){N[e>>2]=m;N[e+4>>2]=N[f+292>>2];g=N[f+280>>2];m=N[f+288>>2];h=Q(-m);l=1;b=e+8|0;}else {b=e;}a=g>h;h=N[f+296>>2];k=Q(-h);if((a|0)!=(k<g|0)){k=N[f+292>>2];N[b+4>>2]=Q(Q(Q(N[f+300>>2]-k)/Q(h-m))*Q(Q(-g)-m))+k;N[b>>2]=-N[f+280>>2];l=l+1|0;g=N[f+280>>2];h=N[f+296>>2];k=Q(-h);b=b+8|0;}if(g>k){N[b>>2]=h;N[b+4>>2]=N[f+300>>2];l=l+1|0;g=N[f+280>>2];h=N[f+296>>2];k=Q(-h);b=b+8|0;}a=g>k;k=N[f+304>>2];m=Q(-k);if((a|0)!=(m<g|0)){m=N[f+300>>2];N[b+4>>2]=Q(Q(Q(N[f+308>>2]-m)/Q(k-h))*Q(Q(-g)-h))+m;N[b>>2]=-N[f+280>>2];l=l+1|0;g=N[f+280>>2];k=N[f+304>>2];m=Q(-k);b=b+8|0;}if(g>m){N[b>>2]=k;N[b+4>>2]=N[f+308>>2];l=l+1|0;g=N[f+280>>2];k=N[f+304>>2];m=Q(-k);b=b+8|0;}a=g>m;h=N[f+312>>2];m=Q(-h);if((a|0)!=(m<g|0)){m=N[f+308>>2];N[b+4>>2]=Q(Q(Q(N[f+316>>2]-m)/Q(h-k))*Q(Q(-g)-k))+m;N[b>>2]=-N[f+280>>2];l=l+1|0;g=N[f+280>>2];h=N[f+312>>2];m=Q(-h);b=b+8|0;}if(g>m){N[b>>2]=h;N[b+4>>2]=N[f+316>>2];l=l+1|0;g=N[f+280>>2];h=N[f+312>>2];m=Q(-h);b=b+8|0;}s:{t:{u:{k=N[f+288>>2];if((Q(-k)<g|0)!=(g>m|0)){m=N[f+316>>2];N[b+4>>2]=Q(Q(Q(N[f+292>>2]-m)/Q(k-h))*Q(Q(-g)-h))+m;N[b>>2]=-N[f+280>>2];b=8;l=l+1|0;if(l&8){break s}break u}if(l){break u}b=0;break t}g=N[f+280>>2];h=N[e>>2];v:{if(!(g>h)){b=0;a=t;break v}N[t>>2]=h;N[t+4>>2]=N[e+4>>2];g=N[f+280>>2];h=N[e>>2];b=1;a=t|8;}o=e+8|0;x=l>>>0>1;k=N[e+(x<<3)>>2];if((k<g|0)!=(g>h|0)){m=N[e+4>>2];N[a+4>>2]=Q(Q(Q(N[(x?o:e)+4>>2]-m)/Q(k-h))*Q(g-h))+m;N[a>>2]=N[f+280>>2];b=b+1|0;a=a+8|0;}w:{if((l|0)<2){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+12>>2];b=b+1|0;h=N[f+280>>2];g=N[o>>2];a=a+8|0;}o=e+16|0;x=l-3>>>0<4294967294;k=N[e+(x<<4)>>2];if((g<h|0)!=(k<h|0)){m=N[e+12>>2];N[a+4>>2]=Q(Q(Q(N[(x?o:e)+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0;}if((l|0)<3){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+20>>2];b=b+1|0;if(b&8){break t}h=N[f+280>>2];g=N[o>>2];a=a+8|0;}o=e+24|0;x=(l&254)==2;k=N[e+(x?0:24)>>2];if((g<h|0)!=(k<h|0)){m=N[e+20>>2];N[a+4>>2]=Q(Q(Q(N[(x?e:o)+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0;}if((l|0)<4){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+28>>2];b=b+1|0;if(b&8){break t}h=N[f+280>>2];g=N[o>>2];a=a+8|0;}o=e+32|0;x=l-5>>>0<4294967294;k=N[e+(x<<5)>>2];if((g<h|0)!=(k<h|0)){m=N[e+28>>2];N[a+4>>2]=Q(Q(Q(N[(x?o:e)+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0;}if((l|0)<5){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+36>>2];b=b+1|0;if(b&8){break t}h=N[f+280>>2];g=N[o>>2];a=a+8|0;}o=e+40|0;x=(l&254)==4;k=N[e+(x?0:40)>>2];if((g<h|0)!=(k<h|0)){m=N[e+36>>2];N[a+4>>2]=Q(Q(Q(N[(x?e:o)+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0;}if((l|0)<6){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+44>>2];b=b+1|0;if(b&8){break t}h=N[f+280>>2];g=N[o>>2];a=a+8|0;}o=e+48|0;x=l-7>>>0<4294967294;k=N[e+(x?48:0)>>2];if((g<h|0)!=(k<h|0)){m=N[e+44>>2];N[a+4>>2]=Q(Q(Q(N[(x?o:e)+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0;}if((l|0)<7){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+52>>2];b=b+1|0;if(b&8){break t}h=N[f+280>>2];g=N[o>>2];a=a+8|0;}o=e+56|0;x=(l&254)==6;k=N[e+(x?0:56)>>2];if((g<h|0)!=(k<h|0)){m=N[e+52>>2];N[a+4>>2]=Q(Q(Q(N[(x?e:o)+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0;}if((l|0)<8){break w}g=N[o>>2];h=N[f+280>>2];if(g<h){N[a>>2]=g;N[a+4>>2]=N[e+60>>2];b=b+1|0;if(b&8){break t}h=N[f+280>>2];g=N[o>>2];a=a+8|0;}l=e+((l-9>>>0<4294967294)<<6)|0;k=N[l>>2];if((g<h|0)==(k<h|0)){break w}m=N[e+60>>2];N[a+4>>2]=Q(Q(Q(N[l+4>>2]-m)/Q(k-g))*Q(h-g))+m;N[a>>2]=N[f+280>>2];b=b+1|0;if(b&8){break t}}if((b|0)<=0){b=0;break t}na=t|4;o=0;a=t;l=e;while(1){g=N[f+284>>2];k=N[a+4>>2];h=Q(-k);if(g>h){N[l>>2]=N[a>>2];N[l+4>>2]=N[a+4>>2];o=o+1|0;if(o&8){b=o;break s}g=N[f+284>>2];k=N[a+4>>2];h=Q(-k);l=l+8|0;}x=a+8|0;ra=b>>>0>1;m=N[(ra?a+12|0:na)>>2];if((Q(-m)<g|0)!=(g>h|0)){h=N[a>>2];N[l>>2]=Q(Q(Q(N[(ra?x:t)>>2]-h)/Q(m-k))*Q(Q(-g)-k))+h;N[l+4>>2]=-N[f+284>>2];o=o+1|0;if(o&8){b=o;break s}l=l+8|0;}ra=(b|0)>1;b=b-1|0;a=x;if(ra){continue}break}b=0;if((o|0)<=0){break t}l=t;a=e;while(1){g=N[f+284>>2];h=N[a+4>>2];if(g>h){N[l>>2]=N[a>>2];N[l+4>>2]=N[a+4>>2];b=b+1|0;if(b&8){break t}g=N[f+284>>2];h=N[a+4>>2];l=l+8|0;}x=a+8|0;na=o>>>0>1?x:e;k=N[na+4>>2];if((k<g|0)!=(g>h|0)){m=N[a>>2];N[l>>2]=Q(Q(Q(N[na>>2]-m)/Q(k-h))*Q(g-h))+m;N[l+4>>2]=N[f+284>>2];b=b+1|0;if(b&8){break t}l=l+8|0;}na=(o|0)>1;o=o-1|0;a=x;if(na){continue}break}}Ja(e,t,b<<3);}sa=t- -64|0;if((b|0)<=0){break a}e=b;g=Q(Q(1)/Q(Q(B*p)-Q(A*w)));k=Q(g*Q(-A));m=Q(g*Q(-w));p=Q(p*g);A=Q(B*g);B=N[(qa<<2)+u>>2];a=(pa<<2)+c|0;w=N[a+32>>2];b=(X<<2)+c|0;O=N[b+32>>2];T=N[a+16>>2];K=N[b+16>>2];F=N[fa>>2];E=N[ma>>2];a=0;b=0;while(1){c=(f+112|0)+P(a,12)|0;l=(f+208|0)+(b<<3)|0;z=N[l>>2];h=Q(z-r);s=N[l+4>>2];U=Q(s-H);g=Q(Q(k*h)+Q(A*U));h=Q(Q(p*h)+Q(m*U));U=Q(Q(g*F)+Q(Q(h*E)+q));N[c>>2]=U;ea=Q(Q(g*T)+Q(Q(h*K)+y));N[c+4>>2]=ea;g=Q(Q(g*w)+Q(Q(h*O)+v));N[c+8>>2]=g;g=Q(B-Q(Q(n*g)+Q(Q(j*U)+Q(i*ea))));N[(f+80|0)+(a<<2)>>2]=g;if(g>=Q(0)){c=(f+208|0)+(a<<3)|0;N[c+4>>2]=s;N[c>>2]=z;a=a+1|0;}b=b+1|0;if((e|0)!=(b|0)){continue}break}if((a|0)<=0){break a}b=(a|0)>=4?4:a;X=(b|0)<=1?1:b;x:{if(X>>>0>=a>>>0){if(C>>>0>=4){b=0;while(1){c=(f+112|0)+P(b,12)|0;i=N[d+48>>2];j=N[(f+80|0)+(b<<2)>>2];N[f+32>>2]=Q(N[c>>2]+N[G>>2])-Q(i*j);n=N[d+52>>2];N[f+36>>2]=Q(N[c+4>>2]+N[G+4>>2])-Q(j*n);g=N[d+56>>2];N[f+40>>2]=Q(N[c+8>>2]+N[G+8>>2])-Q(j*g);J[f+76>>2]=0;N[f+72>>2]=-g;N[f+68>>2]=-n;N[f+64>>2]=-i;ua[J[J[W>>2]+16>>2]](W,f- -64|0,f+32|0,Q(-j));b=b+1|0;if((b|0)!=(a|0)){continue}break}break x}b=0;while(1){c=(f+112|0)+P(b,12)|0;N[f+32>>2]=N[c>>2]+N[G>>2];N[f+36>>2]=N[c+4>>2]+N[G+4>>2];N[f+40>>2]=N[c+8>>2]+N[G+8>>2];j=N[d+48>>2];i=N[d+52>>2];n=N[d+56>>2];J[f+76>>2]=0;N[f+72>>2]=-n;N[f+68>>2]=-i;N[f+64>>2]=-j;ua[J[J[W>>2]+16>>2]](W,f- -64|0,f+32|0,Q(-N[(f+80|0)+(b<<2)>>2]));b=b+1|0;if((b|0)!=(a|0)){continue}break}break x}c=0;y:{if(a>>>0<2){break y}b=a-1|0;t=b&3;e=0;n=N[f+80>>2];z:{if(a-2>>>0<3){b=1;break z}ma=b&-4;b=1;while(1){l=f+80|0;fa=b+3|0;j=N[l+(fa<<2)>>2];i=N[l+(b<<2)>>2];u=i>n;pa=b+1|0;g=N[l+(pa<<2)>>2];i=u?i:n;o=g>i;qa=b+2|0;n=N[l+(qa<<2)>>2];i=o?g:i;l=n>i;i=l?n:i;x=i<j;n=x?j:i;c=x?fa:l?qa:o?pa:u?b:c;b=b+4|0;D=D+4|0;if((ma|0)!=(D|0)){continue}break}}if(!t){break y}while(1){j=N[(f+80|0)+(b<<2)>>2];l=j>n;n=l?j:n;c=l?b:c;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}t=f+208|0;u=f+32|0;e=0;i=Q(0);g=Q(0);h=Q(0);l=sa+-64|0;sa=l;A:{B:{C:{D:{E:{b=a;switch(b-1|0){case 1:break C;case 0:break D;default:break E}}if((b|0)>=2){o=b-2|0;while(1){a=t+(e<<3)|0;n=N[a>>2];k=N[a+12>>2];m=N[a+4>>2];v=N[a+8>>2];j=Q(Q(n*k)-Q(m*v));i=Q(i+j);g=Q(Q(j*Q(k+m))+g);h=Q(Q(j*Q(n+v))+h);a=(e|0)!=(o|0);e=e+1|0;if(a){continue}break}}k=Q(0xde0b6b000000000);y=i;a=t+(b<<3)|0;i=N[a-8>>2];n=N[t+4>>2];m=N[a-4>>2];v=N[t>>2];j=Q(Q(i*n)-Q(m*v));y=Q(y+j);if(Q(R(y))>Q(1.1920928955078125e-7)){k=Q(Q(1)/Q(y*Q(3)));}e=0;if((b|0)<=0){break A}g=Q(Q(Q(j*Q(n+m))+g)*k);j=Q(Q(Q(j*Q(i+v))+h)*k);break B}g=N[t+4>>2];j=N[t>>2];break B}g=Q(Q(N[t+4>>2]+N[t+12>>2])*Q(.5));j=Q(Q(N[t>>2]+N[t+8>>2])*Q(.5));}while(1){a=t+(e<<3)|0;va=(l+32|0)+(e<<2)|0,wa=Ia(Q(N[a+4>>2]-g),Q(N[a>>2]-j)),N[va>>2]=wa;e=e+1|0;if((b|0)!=(e|0)){continue}break}D=0;o=0;if(b-1>>>0>=7){t=b&-8;a=0;while(1){e=o<<2;J[e+l>>2]=1;J[l+(e|4)>>2]=1;J[l+(e|8)>>2]=1;J[l+(e|12)>>2]=1;J[l+(e|16)>>2]=1;J[l+(e|20)>>2]=1;J[l+(e|24)>>2]=1;J[l+(e|28)>>2]=1;o=o+8|0;a=a+8|0;if((t|0)!=(a|0)){continue}break}}a=b&7;if(!a){e=1;break A}while(1){e=1;J[l+(o<<2)>>2]=1;o=o+1|0;D=D+1|0;if((a|0)!=(D|0)){continue}break}}a=c<<2;J[a+l>>2]=0;J[u>>2]=c;F:{if((X|0)<2){break F}D=u+4|0;if(e){n=Q(Q(6.2831854820251465)/Q(X|0));g=N[a+(l+32|0)>>2];u=1;while(1){J[D>>2]=c;j=Q(Q(Q(u|0)*n)+g);h=j>Q(3.1415927410125732)?Q(j+Q(-6.2831854820251465)):j;i=Q(1e9);a=c;e=0;while(1){t=e<<2;G:{if(!J[t+l>>2]){break G}j=Q(R(Q(N[t+(l+32|0)>>2]-h)));j=j>Q(3.1415927410125732)?Q(Q(6.2831854820251465)-j):j;if(!(j<i)){break G}J[D>>2]=e;a=e;i=j;}e=e+1|0;if((b|0)!=(e|0)){continue}break}J[l+(a<<2)>>2]=0;D=D+4|0;u=u+1|0;if((X|0)!=(u|0)){continue}break}break F}b=X-1|0;a=b&7;if(X-2>>>0>=7){b=b&-8;e=0;while(1){J[D+28>>2]=c;J[D+24>>2]=c;J[D+20>>2]=c;J[D+16>>2]=c;J[D+12>>2]=c;J[D+8>>2]=c;J[D+4>>2]=c;J[D>>2]=c;D=D+32|0;e=e+8|0;if((b|0)!=(e|0)){continue}break}}if(!a){break F}e=0;while(1){J[D>>2]=c;D=D+4|0;e=e+1|0;if((a|0)!=(e|0)){continue}break}}sa=l- -64|0;c=C>>>0>3;a=0;while(1){e=J[(f+32|0)+(a<<2)>>2];b=(f+112|0)+P(e,12)|0;h=Q(N[b>>2]+N[G>>2]);N[f+64>>2]=h;k=Q(N[b+4>>2]+N[G+4>>2]);N[f+68>>2]=k;m=Q(N[b+8>>2]+N[G+8>>2]);N[f+72>>2]=m;b=(f+80|0)+(e<<2)|0;H:{if(!c){j=N[d+48>>2];i=N[d+52>>2];n=N[d+56>>2];J[f+28>>2]=0;N[f+24>>2]=-n;N[f+20>>2]=-i;N[f+16>>2]=-j;ua[J[J[W>>2]+16>>2]](W,f+16|0,f- -64|0,Q(-N[b>>2]));break H}i=N[d+48>>2];n=N[d+52>>2];g=N[d+56>>2];J[f+28>>2]=0;N[f+24>>2]=-g;N[f+20>>2]=-n;N[f+16>>2]=-i;j=N[b>>2];J[f+12>>2]=0;N[f+8>>2]=m-Q(g*j);N[f+4>>2]=k-Q(n*j);N[f>>2]=h-Q(i*j);ua[J[J[W>>2]+16>>2]](W,f+16|0,f,Q(-j));}a=a+1|0;if((X|0)!=(a|0)){continue}break}}J[d+40>>2]=C;}sa=f+368|0;sa=d+160|0;}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=Q(0),g=Q(0),h=0,i=Q(0),j=0,k=0,l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=0,r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0);c=sa-352|0;sa=c;d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+8>>2]](c+224|0,d);d=J[c+348>>2];J[c+216>>2]=J[c+344>>2];J[c+220>>2]=d;d=J[c+340>>2];J[c+208>>2]=J[c+336>>2];J[c+212>>2]=d;d=ua[J[J[a>>2]+20>>2]](a)|0;d=ua[J[J[d>>2]+56>>2]](d)|0;j=ua[J[J[a>>2]+20>>2]](a)|0;j=ua[J[J[j>>2]+56>>2]](j)|0;w=N[b+40>>2];a:{if(w<=Q(0)){break a}e=d&2048;k=j&4096;b:{switch(J[b+4>>2]-3|0){case 0:J[c+156>>2]=0;J[c+160>>2]=0;J[c+168>>2]=0;J[c+172>>2]=0;J[c+164>>2]=1065353216;J[c+176>>2]=0;J[c+180>>2]=0;J[c+184>>2]=1065353216;J[c+188>>2]=0;J[c+148>>2]=0;J[c+152>>2]=0;J[c+144>>2]=1065353216;d=J[b+28>>2];l=N[d+52>>2];o=N[d+8>>2];p=N[d+12>>2];n=N[d+56>>2];r=N[d+20>>2];s=N[d+24>>2];x=N[d+28>>2];t=N[d+60>>2];u=N[d+36>>2];f=N[b+304>>2];v=N[d+40>>2];g=N[b+308>>2];y=N[d+44>>2];z=N[d+4>>2];i=N[b+300>>2];J[c+204>>2]=0;N[c+200>>2]=t+Q(Q(g*y)+Q(Q(i*u)+Q(f*v)));N[c+196>>2]=n+Q(Q(g*x)+Q(Q(i*r)+Q(f*s)));N[c+192>>2]=l+Q(Q(g*p)+Q(Q(i*z)+Q(f*o)));d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+64>>2]](d,c+144|0,w);d=J[b+32>>2];l=N[d+52>>2];o=N[d+8>>2];p=N[d+12>>2];n=N[d+56>>2];r=N[d+20>>2];s=N[d+24>>2];x=N[d+28>>2];t=N[d+60>>2];u=N[d+36>>2];f=N[b+320>>2];v=N[d+40>>2];g=N[b+324>>2];y=N[d+44>>2];z=N[d+4>>2];i=N[b+316>>2];J[c+204>>2]=0;N[c+200>>2]=t+Q(Q(g*y)+Q(Q(i*u)+Q(f*v)));N[c+196>>2]=n+Q(Q(g*x)+Q(Q(i*r)+Q(f*s)));N[c+192>>2]=l+Q(Q(g*p)+Q(Q(i*z)+Q(f*o)));if(!e){break a}a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+64>>2]](a,c+144|0,w);break a;case 1:d=J[b+28>>2];G=N[d+52>>2];f=N[d+8>>2];g=N[d+12>>2];x=N[b+568>>2];t=N[b+584>>2];H=N[d+56>>2];I=N[d+60>>2];u=N[b+608>>2];v=N[b+600>>2];y=N[b+604>>2];i=N[d+28>>2];l=N[d+20>>2];o=N[d+24>>2];z=N[b+588>>2];A=N[b+556>>2];B=N[b+572>>2];C=N[b+592>>2];p=N[d+44>>2];D=N[b+560>>2];n=N[d+36>>2];E=N[b+576>>2];r=N[d+40>>2];s=N[d+4>>2];F=N[b+552>>2];J[c+204>>2]=0;J[c+188>>2]=0;J[c+172>>2]=0;N[c+184>>2]=Q(C*p)+Q(Q(D*n)+Q(E*r));N[c+180>>2]=Q(z*p)+Q(Q(A*n)+Q(B*r));N[c+168>>2]=Q(C*i)+Q(Q(D*l)+Q(E*o));N[c+164>>2]=Q(z*i)+Q(Q(A*l)+Q(B*o));N[c+200>>2]=I+Q(Q(u*p)+Q(Q(v*n)+Q(r*y)));N[c+196>>2]=H+Q(Q(u*i)+Q(Q(v*l)+Q(o*y)));J[c+156>>2]=0;N[c+176>>2]=Q(t*p)+Q(Q(F*n)+Q(x*r));N[c+160>>2]=Q(t*i)+Q(Q(F*l)+Q(x*o));N[c+152>>2]=Q(C*g)+Q(Q(D*s)+Q(f*E));N[c+148>>2]=Q(z*g)+Q(Q(A*s)+Q(f*B));N[c+144>>2]=Q(t*g)+Q(Q(F*s)+Q(x*f));N[c+192>>2]=G+Q(Q(u*g)+Q(Q(v*s)+Q(f*y)));c:{if(e){d=ua[J[J[a>>2]+20>>2]](a)|0;j=c+144|0;ua[J[J[d>>2]+64>>2]](d,j,w);d=J[b+32>>2];G=N[d+52>>2];H=N[d+56>>2];I=N[d+60>>2];x=N[b+672>>2];t=N[b+664>>2];u=N[b+668>>2];f=N[d+8>>2];g=N[d+12>>2];i=N[d+28>>2];l=N[d+20>>2];o=N[d+24>>2];v=N[b+632>>2];y=N[b+648>>2];z=N[b+652>>2];A=N[b+620>>2];B=N[b+636>>2];C=N[b+656>>2];p=N[d+44>>2];D=N[b+624>>2];n=N[d+36>>2];E=N[b+640>>2];r=N[d+40>>2];s=N[d+4>>2];F=N[b+616>>2];J[c+204>>2]=0;J[c+188>>2]=0;J[c+172>>2]=0;J[c+156>>2]=0;N[c+184>>2]=Q(C*p)+Q(Q(D*n)+Q(E*r));N[c+180>>2]=Q(z*p)+Q(Q(A*n)+Q(B*r));N[c+176>>2]=Q(y*p)+Q(Q(F*n)+Q(v*r));N[c+168>>2]=Q(C*i)+Q(Q(D*l)+Q(E*o));N[c+164>>2]=Q(z*i)+Q(Q(A*l)+Q(B*o));N[c+160>>2]=Q(y*i)+Q(Q(F*l)+Q(v*o));N[c+152>>2]=Q(C*g)+Q(Q(D*s)+Q(f*E));N[c+148>>2]=Q(z*g)+Q(Q(A*s)+Q(f*B));N[c+144>>2]=Q(y*g)+Q(Q(F*s)+Q(v*f));N[c+200>>2]=I+Q(Q(x*p)+Q(Q(t*n)+Q(r*u)));N[c+196>>2]=H+Q(Q(x*i)+Q(Q(t*l)+Q(o*u)));N[c+192>>2]=G+Q(Q(x*g)+Q(Q(t*s)+Q(f*u)));d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+64>>2]](d,j,w);break c}d=J[b+32>>2];G=N[d+52>>2];H=N[d+56>>2];I=N[d+60>>2];x=N[b+672>>2];t=N[b+664>>2];u=N[b+668>>2];f=N[d+8>>2];g=N[d+12>>2];i=N[d+28>>2];l=N[d+20>>2];o=N[d+24>>2];v=N[b+632>>2];y=N[b+648>>2];z=N[b+652>>2];A=N[b+620>>2];B=N[b+636>>2];C=N[b+656>>2];p=N[d+44>>2];D=N[b+624>>2];n=N[d+36>>2];E=N[b+640>>2];r=N[d+40>>2];s=N[d+4>>2];F=N[b+616>>2];J[c+204>>2]=0;J[c+188>>2]=0;J[c+172>>2]=0;J[c+156>>2]=0;N[c+184>>2]=Q(C*p)+Q(Q(D*n)+Q(E*r));N[c+180>>2]=Q(z*p)+Q(Q(A*n)+Q(B*r));N[c+176>>2]=Q(y*p)+Q(Q(F*n)+Q(v*r));N[c+168>>2]=Q(C*i)+Q(Q(D*l)+Q(E*o));N[c+164>>2]=Q(z*i)+Q(Q(A*l)+Q(B*o));N[c+160>>2]=Q(y*i)+Q(Q(F*l)+Q(v*o));N[c+152>>2]=Q(C*g)+Q(Q(D*s)+Q(f*E));N[c+148>>2]=Q(z*g)+Q(Q(A*s)+Q(f*B));N[c+144>>2]=Q(y*g)+Q(Q(F*s)+Q(v*f));N[c+200>>2]=I+Q(Q(x*p)+Q(Q(t*n)+Q(r*u)));N[c+196>>2]=H+Q(Q(x*i)+Q(Q(t*l)+Q(o*u)));N[c+192>>2]=G+Q(Q(x*g)+Q(Q(t*s)+Q(f*u)));}d=b+688|0;f=Eb(d);g=Fb(d);if(!k|f==g){break a}i=N[b+692>>2];N[c+64>>2]=N[c+152>>2];N[c+68>>2]=N[c+168>>2];J[c+76>>2]=0;N[c+72>>2]=N[c+184>>2];N[c+128>>2]=N[c+144>>2];N[c+132>>2]=N[c+160>>2];J[c+140>>2]=0;N[c+136>>2]=N[c+176>>2];b=ua[J[J[a>>2]+20>>2]](a)|0;a=i>Q(0);ua[J[J[b>>2]+68>>2]](b,c+192|0,c- -64|0,c+128|0,w,w,a?f:Q(0),a?g:Q(6.2831854820251465),c+208|0,a,Q(10));break a;case 2:d=J[b+28>>2];G=N[d+52>>2];f=N[d+8>>2];g=N[d+12>>2];x=N[b+316>>2];t=N[b+332>>2];H=N[d+56>>2];I=N[d+60>>2];u=N[b+356>>2];v=N[b+348>>2];y=N[b+352>>2];i=N[d+28>>2];l=N[d+20>>2];o=N[d+24>>2];z=N[b+336>>2];A=N[b+304>>2];B=N[b+320>>2];C=N[b+340>>2];p=N[d+44>>2];D=N[b+308>>2];n=N[d+36>>2];E=N[b+324>>2];r=N[d+40>>2];s=N[d+4>>2];F=N[b+300>>2];J[c+204>>2]=0;J[c+188>>2]=0;J[c+172>>2]=0;N[c+184>>2]=Q(C*p)+Q(Q(D*n)+Q(E*r));N[c+180>>2]=Q(z*p)+Q(Q(A*n)+Q(B*r));N[c+168>>2]=Q(C*i)+Q(Q(D*l)+Q(E*o));N[c+164>>2]=Q(z*i)+Q(Q(A*l)+Q(B*o));N[c+200>>2]=I+Q(Q(u*p)+Q(Q(v*n)+Q(r*y)));N[c+196>>2]=H+Q(Q(u*i)+Q(Q(v*l)+Q(o*y)));J[c+156>>2]=0;N[c+176>>2]=Q(t*p)+Q(Q(F*n)+Q(x*r));N[c+160>>2]=Q(t*i)+Q(Q(F*l)+Q(x*o));N[c+152>>2]=Q(C*g)+Q(Q(D*s)+Q(f*E));N[c+148>>2]=Q(z*g)+Q(Q(A*s)+Q(f*B));N[c+144>>2]=Q(t*g)+Q(Q(F*s)+Q(x*f));N[c+192>>2]=G+Q(Q(u*g)+Q(Q(v*s)+Q(f*y)));d:{if(e){d=ua[J[J[a>>2]+20>>2]](a)|0;j=c+144|0;ua[J[J[d>>2]+64>>2]](d,j,w);d=J[b+32>>2];G=N[d+52>>2];H=N[d+56>>2];I=N[d+60>>2];x=N[b+420>>2];t=N[b+412>>2];u=N[b+416>>2];f=N[d+8>>2];g=N[d+12>>2];i=N[d+28>>2];l=N[d+20>>2];o=N[d+24>>2];v=N[b+380>>2];y=N[b+396>>2];z=N[b+400>>2];A=N[b+368>>2];B=N[b+384>>2];C=N[b+404>>2];p=N[d+44>>2];D=N[b+372>>2];n=N[d+36>>2];E=N[b+388>>2];r=N[d+40>>2];s=N[d+4>>2];F=N[b+364>>2];J[c+204>>2]=0;J[c+188>>2]=0;J[c+172>>2]=0;J[c+156>>2]=0;N[c+184>>2]=Q(C*p)+Q(Q(D*n)+Q(E*r));N[c+180>>2]=Q(z*p)+Q(Q(A*n)+Q(B*r));N[c+176>>2]=Q(y*p)+Q(Q(F*n)+Q(v*r));N[c+168>>2]=Q(C*i)+Q(Q(D*l)+Q(E*o));N[c+164>>2]=Q(z*i)+Q(Q(A*l)+Q(B*o));N[c+160>>2]=Q(y*i)+Q(Q(F*l)+Q(v*o));N[c+152>>2]=Q(C*g)+Q(Q(D*s)+Q(f*E));N[c+148>>2]=Q(z*g)+Q(Q(A*s)+Q(f*B));N[c+144>>2]=Q(y*g)+Q(Q(F*s)+Q(v*f));N[c+200>>2]=I+Q(Q(x*p)+Q(Q(t*n)+Q(r*u)));N[c+196>>2]=H+Q(Q(x*i)+Q(Q(t*l)+Q(o*u)));N[c+192>>2]=G+Q(Q(x*g)+Q(Q(t*s)+Q(f*u)));d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+64>>2]](d,j,w);break d}d=J[b+32>>2];G=N[d+52>>2];H=N[d+56>>2];I=N[d+60>>2];x=N[b+420>>2];t=N[b+412>>2];u=N[b+416>>2];f=N[d+8>>2];g=N[d+12>>2];i=N[d+28>>2];l=N[d+20>>2];o=N[d+24>>2];v=N[b+380>>2];y=N[b+396>>2];z=N[b+400>>2];A=N[b+368>>2];B=N[b+384>>2];C=N[b+404>>2];p=N[d+44>>2];D=N[b+372>>2];n=N[d+36>>2];E=N[b+388>>2];r=N[d+40>>2];s=N[d+4>>2];F=N[b+364>>2];J[c+204>>2]=0;J[c+188>>2]=0;J[c+172>>2]=0;J[c+156>>2]=0;N[c+184>>2]=Q(C*p)+Q(Q(D*n)+Q(E*r));N[c+180>>2]=Q(z*p)+Q(Q(A*n)+Q(B*r));N[c+176>>2]=Q(y*p)+Q(Q(F*n)+Q(v*r));N[c+168>>2]=Q(C*i)+Q(Q(D*l)+Q(E*o));N[c+164>>2]=Q(z*i)+Q(Q(A*l)+Q(B*o));N[c+160>>2]=Q(y*i)+Q(Q(F*l)+Q(v*o));N[c+152>>2]=Q(C*g)+Q(Q(D*s)+Q(f*E));N[c+148>>2]=Q(z*g)+Q(Q(A*s)+Q(f*B));N[c+144>>2]=Q(y*g)+Q(Q(F*s)+Q(v*f));N[c+200>>2]=I+Q(Q(x*p)+Q(Q(t*n)+Q(r*u)));N[c+196>>2]=H+Q(Q(x*i)+Q(Q(t*l)+Q(o*u)));N[c+192>>2]=G+Q(Q(x*g)+Q(Q(t*s)+Q(f*u)));}if(!k){break a}q=b+300|0;d=c+192|0;zd(c+128|0,b,Q(6.0868353843688965),w);J[c+140>>2]=0;f=N[c+136>>2];g=N[c+128>>2];i=N[c+132>>2];N[c+136>>2]=Q(Q(f*N[c+184>>2])+Q(Q(g*N[c+176>>2])+Q(i*N[c+180>>2])))+N[c+200>>2];N[c+132>>2]=Q(Q(f*N[c+168>>2])+Q(Q(g*N[c+160>>2])+Q(i*N[c+164>>2])))+N[c+196>>2];N[c+128>>2]=Q(Q(f*N[c+152>>2])+Q(Q(g*N[c+144>>2])+Q(i*N[c+148>>2])))+N[c+192>>2];j=0;while(1){e=c- -64|0;zd(e,b,Q(Q(Q(j|0)*Q(6.283185005187988))*Q(.03125)),w);J[c+76>>2]=0;f=N[c+72>>2];g=N[c+64>>2];i=N[c+68>>2];N[c+72>>2]=Q(Q(f*N[c+184>>2])+Q(Q(g*N[c+176>>2])+Q(i*N[c+180>>2])))+N[c+200>>2];N[c+68>>2]=Q(Q(f*N[c+168>>2])+Q(Q(g*N[c+160>>2])+Q(i*N[c+164>>2])))+N[c+196>>2];N[c+64>>2]=Q(Q(f*N[c+152>>2])+Q(Q(g*N[c+144>>2])+Q(i*N[c+148>>2])))+N[c+192>>2];k=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[k>>2]+16>>2]](k,c+128|0,e,c+208|0);if(!(j&3)){e=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[e>>2]+16>>2]](e,d,c- -64|0,c+208|0);}e=J[c+76>>2];J[c+136>>2]=J[c+72>>2];J[c+140>>2]=e;e=J[c+68>>2];J[c+128>>2]=J[c+64>>2];J[c+132>>2]=e;j=j+1|0;if((j|0)!=32){continue}break}f=N[b+512>>2];g=N[b+452>>2];j=J[b+32>>2];e:{if(N[j+404>>2]>Q(0)){vd(c- -64|0,j+4|0,b+364|0);break e}vd(c- -64|0,J[b+28>>2]+4|0,q);}b=J[c+76>>2];J[c+152>>2]=J[c+72>>2];J[c+156>>2]=b;b=J[c+68>>2];J[c+144>>2]=J[c+64>>2];J[c+148>>2]=b;b=J[c+92>>2];J[c+168>>2]=J[c+88>>2];J[c+172>>2]=b;b=J[c+84>>2];J[c+160>>2]=J[c+80>>2];J[c+164>>2]=b;b=J[c+108>>2];J[c+184>>2]=J[c+104>>2];J[c+188>>2]=b;b=J[c+100>>2];J[c+176>>2]=J[c+96>>2];J[c+180>>2]=b;b=J[c+124>>2];J[d+8>>2]=J[c+120>>2];J[d+12>>2]=b;b=J[c+116>>2];J[d>>2]=J[c+112>>2];J[d+4>>2]=b;b=J[d+12>>2];J[c+72>>2]=J[d+8>>2];J[c+76>>2]=b;b=J[d+4>>2];J[c+64>>2]=J[d>>2];J[c+68>>2]=b;N[c+48>>2]=N[c+144>>2];N[c+52>>2]=N[c+160>>2];J[c+60>>2]=0;N[c+56>>2]=N[c+176>>2];N[c+32>>2]=N[c+148>>2];N[c+36>>2]=N[c+164>>2];J[c+44>>2]=0;N[c+40>>2]=N[c+180>>2];a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+68>>2]](a,c- -64|0,c+48|0,c+32|0,w,w,Q(Q(-f)-g),Q(g-f),c+208|0,1,Q(10));break a;case 3:case 6:d=b+1072|0;j=J[d+4>>2];J[c+152>>2]=J[d>>2];J[c+156>>2]=j;d=J[b+1068>>2];J[c+144>>2]=J[b+1064>>2];J[c+148>>2]=d;d=b+1088|0;j=J[d+4>>2];J[c+168>>2]=J[d>>2];J[c+172>>2]=j;d=b+1080|0;j=J[d+4>>2];J[c+160>>2]=J[d>>2];J[c+164>>2]=j;j=b+1104|0;q=J[j+4>>2];J[c+184>>2]=J[j>>2];J[c+188>>2]=q;j=b+1096|0;q=J[j+4>>2];J[c+176>>2]=J[j>>2];J[c+180>>2]=q;q=b+1120|0;h=J[q+4>>2];J[c+200>>2]=J[q>>2];J[c+204>>2]=h;q=b+1112|0;h=J[q+4>>2];J[c+192>>2]=J[q>>2];J[c+196>>2]=h;if(e){e=ua[J[J[a>>2]+20>>2]](a)|0;h=c+144|0;ua[J[J[e>>2]+64>>2]](e,h,w);e=b+1136|0;m=J[e+4>>2];J[c+152>>2]=J[e>>2];J[c+156>>2]=m;e=J[b+1132>>2];J[c+144>>2]=J[b+1128>>2];J[c+148>>2]=e;e=b+1152|0;m=J[e+4>>2];J[c+168>>2]=J[e>>2];J[c+172>>2]=m;e=b+1144|0;m=J[e+4>>2];J[c+160>>2]=J[e>>2];J[c+164>>2]=m;e=b+1168|0;m=J[e+4>>2];J[c+184>>2]=J[e>>2];J[c+188>>2]=m;e=b+1160|0;m=J[e+4>>2];J[c+176>>2]=J[e>>2];J[c+180>>2]=m;e=b+1184|0;m=J[e+4>>2];J[c+200>>2]=J[e>>2];J[c+204>>2]=m;e=b+1176|0;m=J[e+4>>2];J[c+192>>2]=J[e>>2];J[c+196>>2]=m;e=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[e>>2]+64>>2]](e,h,w);}if(!k){break a}e=b+1064|0;k=J[e+12>>2];J[c+152>>2]=J[e+8>>2];J[c+156>>2]=k;k=J[e+4>>2];J[c+144>>2]=J[e>>2];J[c+148>>2]=k;k=J[d+12>>2];J[c+168>>2]=J[d+8>>2];J[c+172>>2]=k;k=J[d+4>>2];J[c+160>>2]=J[d>>2];J[c+164>>2]=k;k=J[j+12>>2];J[c+184>>2]=J[j+8>>2];J[c+188>>2]=k;k=J[j+4>>2];J[c+176>>2]=J[j>>2];J[c+180>>2]=k;k=J[q+12>>2];J[c+200>>2]=J[q+8>>2];J[c+204>>2]=k;k=J[q+4>>2];J[c+192>>2]=J[q>>2];J[c+196>>2]=k;N[c+64>>2]=N[c+152>>2];N[c+68>>2]=N[c+168>>2];J[c+76>>2]=0;N[c+72>>2]=N[c+184>>2];N[c+128>>2]=N[c+144>>2];N[c+132>>2]=N[c+160>>2];J[c+140>>2]=0;N[c+136>>2]=N[c+176>>2];f=N[b+1e3>>2];g=N[b+996>>2];i=N[b+936>>2];l=N[b+932>>2];h=ua[J[J[a>>2]+20>>2]](a)|0;k=b+1176|0;ua[J[J[h>>2]+72>>2]](h,k,c- -64|0,c+128|0,Q(w*Q(.8999999761581421)),l,i,g,f,c+208|0,Q(10),1);J[c+140>>2]=0;N[c+136>>2]=N[c+180>>2];N[c+132>>2]=N[c+164>>2];N[c+128>>2]=N[c+148>>2];l=N[b+1196>>2];f=N[c+128>>2];i=N[b+1200>>2];g=Na(i);o=N[c+132>>2];p=Ma(i);N[c+52>>2]=Q(o*p)-Q(g*f);i=Na(l);n=N[c+136>>2];l=Ma(l);N[c+56>>2]=Q(n*l)+Q(Q(f*Q(i*p))+Q(o*Q(i*g)));N[c+48>>2]=Q(Q(f*Q(l*p))+Q(o*Q(l*g)))-Q(i*n);h=b+1136|0;m=J[h+4>>2];J[c+152>>2]=J[h>>2];J[c+156>>2]=m;h=J[b+1132>>2];J[c+144>>2]=J[b+1128>>2];J[c+148>>2]=h;h=b+1152|0;m=J[h+4>>2];J[c+168>>2]=J[h>>2];J[c+172>>2]=m;h=b+1144|0;m=J[h+4>>2];J[c+160>>2]=J[h>>2];J[c+164>>2]=m;h=b+1168|0;m=J[h+4>>2];J[c+184>>2]=J[h>>2];J[c+188>>2]=m;h=b+1160|0;m=J[h+4>>2];J[c+176>>2]=J[h>>2];J[c+180>>2]=m;h=b+1184|0;m=J[h+4>>2];J[c+200>>2]=J[h>>2];J[c+204>>2]=m;h=J[k+4>>2];J[c+192>>2]=J[k>>2];J[c+196>>2]=h;J[c+44>>2]=0;N[c+40>>2]=-N[c+176>>2];N[c+36>>2]=-N[c+160>>2];N[c+32>>2]=-N[c+144>>2];f=N[b+868>>2];g=N[b+872>>2];f:{if(f>g){h=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[h>>2]+68>>2]](h,k,c+32|0,c+48|0,w,w,Q(-3.1415927410125732),Q(3.1415927410125732),c+208|0,0,Q(10));break f}if(!(f<g)){break f}h=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[h>>2]+68>>2]](h,k,c+32|0,c+48|0,w,w,f,g,c+208|0,1,Q(10));}k=J[e+12>>2];J[c+152>>2]=J[e+8>>2];J[c+156>>2]=k;k=J[e+4>>2];J[c+144>>2]=J[e>>2];J[c+148>>2]=k;e=J[d+12>>2];J[c+168>>2]=J[d+8>>2];J[c+172>>2]=e;e=J[d+4>>2];J[c+160>>2]=J[d>>2];J[c+164>>2]=e;d=J[j+12>>2];J[c+184>>2]=J[j+8>>2];J[c+188>>2]=d;d=J[j+4>>2];J[c+176>>2]=J[j>>2];J[c+180>>2]=d;d=J[q+12>>2];J[c+200>>2]=J[q+8>>2];J[c+204>>2]=d;d=J[q+4>>2];J[c+192>>2]=J[q>>2];J[c+196>>2]=d;d=J[b+692>>2];J[c+24>>2]=J[b+688>>2];J[c+28>>2]=d;d=J[b+684>>2];J[c+16>>2]=J[b+680>>2];J[c+20>>2]=d;d=J[b+708>>2];J[c+8>>2]=J[b+704>>2];J[c+12>>2]=d;d=J[b+700>>2];J[c>>2]=J[b+696>>2];J[c+4>>2]=d;a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+80>>2]](a,c+16|0,c,c+144|0,c+208|0);break a;case 9:d=b+1244|0;j=J[d+4>>2];J[c+152>>2]=J[d>>2];J[c+156>>2]=j;d=J[b+1240>>2];J[c+144>>2]=J[b+1236>>2];J[c+148>>2]=d;d=b+1260|0;j=J[d+4>>2];J[c+168>>2]=J[d>>2];J[c+172>>2]=j;d=b+1252|0;j=J[d+4>>2];J[c+160>>2]=J[d>>2];J[c+164>>2]=j;j=b+1276|0;q=J[j+4>>2];J[c+184>>2]=J[j>>2];J[c+188>>2]=q;j=b+1268|0;q=J[j+4>>2];J[c+176>>2]=J[j>>2];J[c+180>>2]=q;q=b+1292|0;h=J[q+4>>2];J[c+200>>2]=J[q>>2];J[c+204>>2]=h;q=b+1284|0;h=J[q+4>>2];J[c+192>>2]=J[q>>2];J[c+196>>2]=h;if(e){e=ua[J[J[a>>2]+20>>2]](a)|0;h=c+144|0;ua[J[J[e>>2]+64>>2]](e,h,w);e=b+1308|0;m=J[e+4>>2];J[c+152>>2]=J[e>>2];J[c+156>>2]=m;e=J[b+1304>>2];J[c+144>>2]=J[b+1300>>2];J[c+148>>2]=e;e=b+1324|0;m=J[e+4>>2];J[c+168>>2]=J[e>>2];J[c+172>>2]=m;e=b+1316|0;m=J[e+4>>2];J[c+160>>2]=J[e>>2];J[c+164>>2]=m;e=b+1340|0;m=J[e+4>>2];J[c+184>>2]=J[e>>2];J[c+188>>2]=m;e=b+1332|0;m=J[e+4>>2];J[c+176>>2]=J[e>>2];J[c+180>>2]=m;e=b+1356|0;m=J[e+4>>2];J[c+200>>2]=J[e>>2];J[c+204>>2]=m;e=b+1348|0;m=J[e+4>>2];J[c+192>>2]=J[e>>2];J[c+196>>2]=m;e=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[e>>2]+64>>2]](e,h,w);}if(!k){break a}e=b+1236|0;k=J[e+12>>2];J[c+152>>2]=J[e+8>>2];J[c+156>>2]=k;k=J[e+4>>2];J[c+144>>2]=J[e>>2];J[c+148>>2]=k;k=J[d+12>>2];J[c+168>>2]=J[d+8>>2];J[c+172>>2]=k;k=J[d+4>>2];J[c+160>>2]=J[d>>2];J[c+164>>2]=k;k=J[j+12>>2];J[c+184>>2]=J[j+8>>2];J[c+188>>2]=k;k=J[j+4>>2];J[c+176>>2]=J[j>>2];J[c+180>>2]=k;k=J[q+12>>2];J[c+200>>2]=J[q+8>>2];J[c+204>>2]=k;k=J[q+4>>2];J[c+192>>2]=J[q>>2];J[c+196>>2]=k;N[c+64>>2]=N[c+152>>2];N[c+68>>2]=N[c+168>>2];J[c+76>>2]=0;N[c+72>>2]=N[c+184>>2];N[c+128>>2]=N[c+144>>2];N[c+132>>2]=N[c+160>>2];J[c+140>>2]=0;N[c+136>>2]=N[c+176>>2];f=N[b+1148>>2];g=N[b+1144>>2];i=N[b+1060>>2];l=N[b+1056>>2];h=ua[J[J[a>>2]+20>>2]](a)|0;k=b+1348|0;ua[J[J[h>>2]+72>>2]](h,k,c- -64|0,c+128|0,Q(w*Q(.8999999761581421)),l,i,g,f,c+208|0,Q(10),1);J[c+140>>2]=0;p=N[c+180>>2];N[c+136>>2]=p;f=N[c+164>>2];N[c+132>>2]=f;g=N[c+148>>2];N[c+128>>2]=g;l=N[b+1372>>2];i=Na(l);l=Ma(l);n=N[b+1368>>2];N[c+52>>2]=Q(l*f)-Q(i*g);o=Na(n);n=Ma(n);N[c+56>>2]=Q(p*n)+Q(Q(g*Q(o*l))+Q(f*Q(o*i)));N[c+48>>2]=Q(Q(g*Q(n*l))+Q(f*Q(n*i)))-Q(o*p);h=b+1308|0;m=J[h+4>>2];J[c+152>>2]=J[h>>2];J[c+156>>2]=m;h=J[b+1304>>2];J[c+144>>2]=J[b+1300>>2];J[c+148>>2]=h;h=b+1324|0;m=J[h+4>>2];J[c+168>>2]=J[h>>2];J[c+172>>2]=m;h=b+1316|0;m=J[h+4>>2];J[c+160>>2]=J[h>>2];J[c+164>>2]=m;h=b+1340|0;m=J[h+4>>2];J[c+184>>2]=J[h>>2];J[c+188>>2]=m;h=b+1332|0;m=J[h+4>>2];J[c+176>>2]=J[h>>2];J[c+180>>2]=m;h=b+1356|0;m=J[h+4>>2];J[c+200>>2]=J[h>>2];J[c+204>>2]=m;h=J[k+4>>2];J[c+192>>2]=J[k>>2];J[c+196>>2]=h;J[c+44>>2]=0;N[c+40>>2]=-N[c+176>>2];N[c+36>>2]=-N[c+160>>2];N[c+32>>2]=-N[c+144>>2];f=N[b+968>>2];g=N[b+972>>2];g:{if(f>g){h=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[h>>2]+68>>2]](h,k,c+32|0,c+48|0,w,w,Q(-3.1415927410125732),Q(3.1415927410125732),c+208|0,0,Q(10));break g}if(!(f<g)){break g}h=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[h>>2]+68>>2]](h,k,c+32|0,c+48|0,w,w,f,g,c+208|0,1,Q(10));}k=J[e+12>>2];J[c+152>>2]=J[e+8>>2];J[c+156>>2]=k;k=J[e+4>>2];J[c+144>>2]=J[e>>2];J[c+148>>2]=k;e=J[d+12>>2];J[c+168>>2]=J[d+8>>2];J[c+172>>2]=e;e=J[d+4>>2];J[c+160>>2]=J[d>>2];J[c+164>>2]=e;d=J[j+12>>2];J[c+184>>2]=J[j+8>>2];J[c+188>>2]=d;d=J[j+4>>2];J[c+176>>2]=J[j>>2];J[c+180>>2]=d;d=J[q+12>>2];J[c+200>>2]=J[q+8>>2];J[c+204>>2]=d;d=J[q+4>>2];J[c+192>>2]=J[q>>2];J[c+196>>2]=d;d=J[b+692>>2];J[c+24>>2]=J[b+688>>2];J[c+28>>2]=d;d=J[b+684>>2];J[c+16>>2]=J[b+680>>2];J[c+20>>2]=d;d=J[b+708>>2];J[c+8>>2]=J[b+704>>2];J[c+12>>2]=d;d=J[b+700>>2];J[c>>2]=J[b+696>>2];J[c+4>>2]=d;a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+80>>2]](a,c+16|0,c,c+144|0,c+208|0);break a;case 4:break b;default:break a}}d=J[b+836>>2];J[c+152>>2]=J[b+832>>2];J[c+156>>2]=d;d=J[b+828>>2];J[c+144>>2]=J[b+824>>2];J[c+148>>2]=d;d=J[b+852>>2];J[c+168>>2]=J[b+848>>2];J[c+172>>2]=d;d=J[b+844>>2];J[c+160>>2]=J[b+840>>2];J[c+164>>2]=d;d=J[b+868>>2];J[c+184>>2]=J[b+864>>2];J[c+188>>2]=d;d=J[b+860>>2];J[c+176>>2]=J[b+856>>2];J[c+180>>2]=d;d=J[b+884>>2];J[c+200>>2]=J[b+880>>2];J[c+204>>2]=d;d=J[b+876>>2];J[c+192>>2]=J[b+872>>2];J[c+196>>2]=d;h:{if(e){d=ua[J[J[a>>2]+20>>2]](a)|0;j=c+144|0;ua[J[J[d>>2]+64>>2]](d,j,w);d=J[b+900>>2];J[c+152>>2]=J[b+896>>2];J[c+156>>2]=d;d=J[b+892>>2];J[c+144>>2]=J[b+888>>2];J[c+148>>2]=d;d=J[b+916>>2];J[c+168>>2]=J[b+912>>2];J[c+172>>2]=d;d=J[b+908>>2];J[c+160>>2]=J[b+904>>2];J[c+164>>2]=d;d=J[b+932>>2];J[c+184>>2]=J[b+928>>2];J[c+188>>2]=d;d=J[b+924>>2];J[c+176>>2]=J[b+920>>2];J[c+180>>2]=d;d=J[b+948>>2];J[c+200>>2]=J[b+944>>2];J[c+204>>2]=d;d=J[b+940>>2];J[c+192>>2]=J[b+936>>2];J[c+196>>2]=d;d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+64>>2]](d,j,w);break h}d=J[b+900>>2];J[c+152>>2]=J[b+896>>2];J[c+156>>2]=d;d=J[b+892>>2];J[c+144>>2]=J[b+888>>2];J[c+148>>2]=d;d=J[b+916>>2];J[c+168>>2]=J[b+912>>2];J[c+172>>2]=d;d=J[b+908>>2];J[c+160>>2]=J[b+904>>2];J[c+164>>2]=d;d=J[b+932>>2];J[c+184>>2]=J[b+928>>2];J[c+188>>2]=d;d=J[b+924>>2];J[c+176>>2]=J[b+920>>2];J[c+180>>2]=d;d=J[b+948>>2];J[c+200>>2]=J[b+944>>2];J[c+204>>2]=d;d=J[b+940>>2];J[c+192>>2]=J[b+936>>2];J[c+196>>2]=d;}if(!k){break a}d=K[b+180|0];f=N[(d?824:888)+b>>2];d=d?b+824|0:b+888|0;o=N[d+48>>2];t=N[d+8>>2];p=N[d+4>>2];n=N[d+52>>2];u=N[d+24>>2];g=N[d+16>>2];r=N[d+20>>2];s=N[d+56>>2];v=N[d+40>>2];i=N[d+32>>2];x=N[d+36>>2];l=N[b+184>>2];J[c+76>>2]=0;v=Q(v*Q(0));y=Q(x*Q(0));N[c+72>>2]=s+Q(v+Q(Q(l*i)+y));u=Q(u*Q(0));z=Q(r*Q(0));N[c+68>>2]=n+Q(u+Q(Q(l*g)+z));t=Q(t*Q(0));A=Q(p*Q(0));N[c+64>>2]=o+Q(t+Q(Q(l*f)+A));l=N[b+188>>2];J[c+140>>2]=0;N[c+136>>2]=s+Q(v+Q(Q(l*i)+y));N[c+132>>2]=n+Q(u+Q(Q(l*g)+z));N[c+128>>2]=o+Q(t+Q(Q(l*f)+A));d=ua[J[J[a>>2]+20>>2]](a)|0;j=c+208|0;ua[J[J[d>>2]+16>>2]](d,c- -64|0,c+128|0,j);J[c+60>>2]=0;N[c+56>>2]=i;N[c+52>>2]=g;N[c+48>>2]=f;J[c+44>>2]=0;N[c+40>>2]=x;N[c+36>>2]=r;N[c+32>>2]=p;f=N[b+196>>2];g=N[b+192>>2];a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+68>>2]](a,b+936|0,c+48|0,c+32|0,w,w,g,f,j,1,Q(10));}sa=c+352|0;}function Zh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0),j=0,k=Q(0),l=Q(0),m=0,n=Q(0),o=0,p=0,q=Q(0),r=Q(0),s=0,t=Q(0),u=0,v=Q(0),w=0,x=Q(0),y=0,z=Q(0),A=Q(0),B=Q(0),C=0,D=Q(0),E=0,F=0,G=0,I=0,L=Q(0),M=Q(0),O=Q(0),S=Q(0),T=Q(0),U=0,V=Q(0),W=0,X=0,Z=Q(0),_=0,$=Q(0),aa=0,ba=Q(0),ca=Q(0),da=0,ea=0,fa=0,ga=0,ha=Q(0),ia=Q(0),ja=Q(0),ka=Q(0),la=Q(0),ma=Q(0),na=Q(0),oa=Q(0),pa=Q(0),qa=Q(0),ra=Q(0),ta=Q(0),va=Q(0),wa=Q(0),xa=Q(0),ya=Q(0),za=Q(0),Aa=Q(0),Ba=Q(0),Ca=Q(0),Da=Q(0),Ea=Q(0),Fa=Q(0),Ga=Q(0),Ha=Q(0),Ia=Q(0),Ka=Q(0),La=Q(0),Ma=Q(0),Na=Q(0),Oa=Q(0),Pa=Q(0),Qa=Q(0),Ra=Q(0),Sa=Q(0),Ta=Q(0),Ua=Q(0);if((c|0)>0){while(1){aa=0;s=sa-80|0;sa=s;_=J[(da<<2)+b>>2];o=J[_+840>>2];p=J[_+836>>2];F=db(a,p,N[d+12>>2]);G=db(a,o,N[d+12>>2]);f=J[a+16>>2];C=f+P(F,244)|0;e=N[C+136>>2];k=Q(e*e);e=N[C+128>>2];h=Q(e*e);e=N[C+132>>2];a:{if(Q(k+Q(h+Q(e*e)))<Q(14210854715202004e-30)){C=f+P(G,244)|0;e=N[C+136>>2];k=Q(e*e);e=N[C+128>>2];h=Q(e*e);e=N[C+132>>2];if(Q(k+Q(h+Q(e*e)))<Q(14210854715202004e-30)){break a}}j=J[_+844>>2];if((j|0)<=0){break a}W=f+P(G,244)|0;X=f+P(F,244)|0;while(1){u=P(aa,208)+_|0;if(N[u+84>>2]<=N[_+852>>2]){y=u+4|0;C=J[a+28>>2];j=C;b:{if((j|0)!=J[a+32>>2]){break b}w=j?C<<1:1;if((w|0)<=(j|0)){break b}c:{if(!w){m=0;f=C;break c}J[8456]=J[8456]+1;m=ua[J[8258]](P(w,152),16)|0;f=J[a+28>>2];}d:{if((f|0)<=0){break d}j=0;if((f|0)!=1){U=f&-2;E=0;while(1){I=P(j,152);Ja(I+m|0,I+J[a+36>>2]|0,152);I=P(j|1,152);Ja(I+m|0,I+J[a+36>>2]|0,152);j=j+2|0;E=E+2|0;if((U|0)!=(E|0)){continue}break}}if(!(f&1)){break d}f=P(j,152);Ja(f+m|0,f+J[a+36>>2]|0,152);}f=J[a+36>>2];if(!(f?!f|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](f);}J[a+36>>2]=m;H[a+40|0]=1;J[a+32>>2]=w;j=J[a+28>>2];}J[a+28>>2]=j+1;f=J[a+36>>2]+P(C,152)|0;J[f+148>>2]=G;J[f+144>>2]=F;J[f+132>>2]=y;i=N[u+52>>2];g=N[u+56>>2];e=N[u+60>>2];h=N[p+52>>2];l=N[p+56>>2];n=N[p+60>>2];J[s+76>>2]=0;e=Q(e-n);N[s+72>>2]=e;g=Q(g-l);N[s+68>>2]=g;i=Q(i-h);N[s+64>>2]=i;n=N[u+36>>2];l=N[u+40>>2];h=N[u+44>>2];k=N[o+52>>2];z=N[o+56>>2];r=N[o+60>>2];J[s+60>>2]=0;h=Q(h-r);N[s+56>>2]=h;l=Q(l-z);N[s+52>>2]=l;n=Q(n-k);N[s+48>>2]=n;z=Q(0);L=Q(0);$=Q(0);ha=Q(0);if(J[X+240>>2]){k=Q(N[X+192>>2]+N[X+224>>2]);r=Q(N[X+196>>2]+N[X+228>>2]);L=Q(Q(N[X+184>>2]+N[X+216>>2])+Q(Q(k*g)-Q(i*r)));t=Q(N[X+200>>2]+N[X+232>>2]);$=Q(Q(N[X+180>>2]+N[X+212>>2])+Q(Q(t*i)-Q(e*k)));ha=Q(Q(N[X+176>>2]+N[X+208>>2])+Q(Q(r*e)-Q(g*t)));}ia=Q(0);ja=Q(0);if(J[W+240>>2]){e=Q(N[W+192>>2]+N[W+224>>2]);g=Q(N[W+196>>2]+N[W+228>>2]);z=Q(Q(N[W+184>>2]+N[W+216>>2])+Q(Q(e*l)-Q(n*g)));i=Q(N[W+200>>2]+N[W+232>>2]);ia=Q(Q(N[W+180>>2]+N[W+212>>2])+Q(Q(i*n)-Q(h*e)));ja=Q(Q(N[W+176>>2]+N[W+208>>2])+Q(Q(g*h)-Q(l*i)));}ka=N[u+76>>2];E=u+68|0;la=N[E>>2];ma=N[u+72>>2];w=s- -64|0;k=Q(0);e=Q(0);V=Q(0);U=J[a+16>>2];ea=U+P(G,244)|0;j=J[ea+240>>2];fa=U+P(F,244)|0;m=J[fa+240>>2];N[s+44>>2]=N[d+28>>2];M=N[d+12>>2];B=N[d+36>>2];g=N[d+40>>2];I=J[y+128>>2];e:{if(I&6){g=I&2?N[y+152>>2]:g;if(!(I&4)){break e}B=N[y+156>>2];break e}if(!(I&8)){break e}i=Q(M*N[y+152>>2]);g=Q(i+N[y+156>>2]);g=g<Q(1.1920928955078125e-7)?Q(1.1920928955078125e-7):g;B=Q(i/g);g=Q(Q(1)/g);}i=N[w>>2];h=N[y+68>>2];l=N[y+64>>2];n=N[w+4>>2];r=Q(Q(i*h)-Q(l*n));q=N[w+8>>2];t=Q(q*l);l=N[y+72>>2];t=Q(t-Q(l*i));q=Q(Q(n*l)-Q(h*q));i=Q(0);h=Q(0);if(m){h=Q(Q(Q(N[m+364>>2]*r)+Q(Q(N[m+356>>2]*q)+Q(t*N[m+360>>2])))*N[m+612>>2]);i=Q(Q(Q(N[m+348>>2]*r)+Q(Q(N[m+340>>2]*q)+Q(t*N[m+344>>2])))*N[m+608>>2]);e=Q(Q(Q(N[m+332>>2]*r)+Q(Q(N[m+324>>2]*q)+Q(t*N[m+328>>2])))*N[m+604>>2]);}N[f+64>>2]=e;J[f+76>>2]=0;N[f+72>>2]=h;N[f+68>>2]=i;l=N[s+48>>2];n=N[y+68>>2];x=N[y+64>>2];O=N[s+52>>2];v=Q(Q(l*n)-Q(x*O));S=N[s+56>>2];T=N[y+72>>2];x=Q(Q(S*x)-Q(T*l));O=Q(Q(O*T)-Q(n*S));l=Q(0);n=Q(0);if(j){l=Q(-O);n=Q(Q(Q(Q(N[j+356>>2]*l)-Q(N[j+360>>2]*x))-Q(N[j+364>>2]*v))*N[j+612>>2]);k=Q(Q(Q(Q(N[j+324>>2]*l)-Q(N[j+328>>2]*x))-Q(N[j+332>>2]*v))*N[j+604>>2]);l=Q(Q(Q(Q(N[j+340>>2]*l)-Q(N[j+344>>2]*x))-Q(N[j+348>>2]*v))*N[j+608>>2]);}N[f+80>>2]=k;J[f+92>>2]=0;N[f+88>>2]=n;N[f+84>>2]=l;S=N[s+44>>2];M=Q(Q(1)/M);D=Q(M*g);if(m){g=N[w+4>>2];Z=N[w>>2];T=Q(N[y+72>>2]*Q(Q(e*g)-Q(Z*i)));A=i;i=N[w+8>>2];h=Q(N[m+404>>2]+Q(T+Q(Q(N[y+64>>2]*Q(Q(A*i)-Q(g*h)))+Q(Q(Q(h*Z)-Q(i*e))*N[y+68>>2]))));}else {h=Q(0);}if(j){g=N[s+48>>2];i=N[s+52>>2];e=Q(N[y+72>>2]*Q(Q(l*g)-Q(k*i)));A=Q(n*i);i=N[s+56>>2];k=Q(N[j+404>>2]+Q(e+Q(Q(N[y+64>>2]*Q(A-Q(l*i)))+Q(Q(Q(k*i)-Q(n*g))*N[y+68>>2]))));}else {k=Q(0);}N[f+108>>2]=S/Q(D+Q(h+k));f:{if(m){I=y- -64|0;ga=J[I+4>>2];J[f+16>>2]=J[I>>2];J[f+20>>2]=ga;ga=J[I+12>>2];J[f+24>>2]=J[I+8>>2];J[f+28>>2]=ga;J[f+12>>2]=0;N[f+8>>2]=r;N[f+4>>2]=t;N[f>>2]=q;break f}J[f>>2]=0;J[f+4>>2]=0;J[f+24>>2]=0;J[f+28>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;}g:{if(j){e=N[y+64>>2];g=N[y+68>>2];i=N[y+72>>2];J[f+60>>2]=0;J[f+44>>2]=0;N[f+40>>2]=-v;N[f+36>>2]=-x;N[f+32>>2]=-O;N[f+56>>2]=-i;N[f+52>>2]=-g;N[f+48>>2]=-e;break g}J[f+32>>2]=0;J[f+36>>2]=0;J[f+56>>2]=0;J[f+60>>2]=0;J[f+48>>2]=0;J[f+52>>2]=0;J[f+40>>2]=0;J[f+44>>2]=0;}i=Q(0);h=Q(0);l=Q(0);n=Q(0);if(m){e=N[m+388>>2];g=N[w+4>>2];h=N[w>>2];k=N[m+392>>2];n=Q(Q(Q(e*g)-Q(h*k))+N[m+380>>2]);r=N[m+396>>2];q=Q(r*h);h=N[w+8>>2];l=Q(Q(q-Q(h*e))+N[m+376>>2]);h=Q(Q(Q(k*h)-Q(g*r))+N[m+372>>2]);}q=Q(0);e=Q(0);if(j){g=N[j+388>>2];i=N[s+52>>2];k=N[s+48>>2];r=N[j+392>>2];e=Q(Q(Q(g*i)-Q(k*r))+N[j+380>>2]);t=N[j+396>>2];q=Q(t*k);k=N[s+56>>2];q=Q(Q(q-Q(k*g))+N[j+376>>2]);i=Q(Q(Q(r*k)-Q(i*t))+N[j+372>>2]);}t=N[d+64>>2];na=N[y+80>>2];oa=N[y+72>>2];pa=N[y+68>>2];qa=N[y+64>>2];N[f+104>>2]=N[y+84>>2];ra=N[d+96>>2];ta=N[y+96>>2];h:{if(K[d+72|0]&4){g=Q(N[y+132>>2]*N[d+68>>2]);N[f+100>>2]=g;if(!(!m|!J[fa+240>>2])){k=N[m+416>>2];r=N[f+24>>2];v=N[m+412>>2];x=N[f+20>>2];w=U+P(F,244)|0;N[w+64>>2]=Q(N[w+112>>2]*Q(g*Q(Q(N[f+16>>2]*N[w+128>>2])*N[m+408>>2])))+N[w+64>>2];N[w+68>>2]=Q(Q(g*Q(v*Q(x*N[w+132>>2])))*N[w+116>>2])+N[w+68>>2];N[w+72>>2]=Q(Q(g*Q(k*Q(r*N[w+136>>2])))*N[w+120>>2])+N[w+72>>2];k=N[f+72>>2];r=N[f+68>>2];N[w+80>>2]=Q(Q(g*N[w+96>>2])*N[f+64>>2])+N[w+80>>2];v=N[w+104>>2];N[w+84>>2]=Q(r*Q(g*N[w+100>>2]))+N[w+84>>2];N[w+88>>2]=Q(k*Q(g*v))+N[w+88>>2];}if(!j|!J[ea+240>>2]){break h}m=U+P(G,244)|0;k=N[m+120>>2];r=N[j+416>>2];v=N[f+56>>2];x=N[m+136>>2];O=N[m+116>>2];S=N[j+412>>2];T=N[f+52>>2];Z=N[m+132>>2];A=N[f+88>>2];ba=N[f+84>>2];ca=N[f+80>>2];g=N[f+100>>2];N[m+64>>2]=N[m+64>>2]+Q(N[m+112>>2]*Q(Q(Q(N[m+128>>2]*N[f+48>>2])*N[j+408>>2])*g));N[m+80>>2]=N[m+80>>2]+Q(ca*Q(g*N[m+96>>2]));N[m+84>>2]=N[m+84>>2]+Q(ba*Q(g*N[m+100>>2]));N[m+88>>2]=N[m+88>>2]+Q(A*Q(g*N[m+104>>2]));N[m+68>>2]=N[m+68>>2]+Q(O*Q(g*Q(S*Q(Z*T))));N[m+72>>2]=N[m+72>>2]+Q(k*Q(g*Q(r*Q(x*v))));break h}J[f+100>>2]=0;}J[f+96>>2]=0;v=Q(0);x=Q(0);O=Q(0);g=Q(0);k=Q(0);S=Q(0);T=Q(0);if(J[fa+240>>2]){j=U+P(F,244)|0;T=N[j+224>>2];k=N[j+232>>2];S=N[j+228>>2];x=N[j+216>>2];O=N[j+212>>2];g=N[j+208>>2];}Z=Q(0);A=Q(0);ba=Q(0);ca=Q(0);if(J[ea+240>>2]){j=U+P(G,244)|0;V=N[j+224>>2];ba=N[j+232>>2];ca=N[j+228>>2];A=N[j+216>>2];Z=N[j+212>>2];v=N[j+208>>2];}j=U+P(F,244)|0;va=N[j+200>>2];wa=N[j+196>>2];xa=N[j+192>>2];ya=N[j+176>>2];za=N[f+20>>2];Aa=N[j+180>>2];Ba=N[f+24>>2];Ca=N[j+184>>2];j=U+P(G,244)|0;Da=N[j+176>>2];Ea=N[f+52>>2];Fa=N[j+180>>2];Ga=N[f+56>>2];Ha=N[j+184>>2];Ia=N[j+192>>2];Ka=N[f+36>>2];La=N[j+196>>2];Ma=N[f+40>>2];Na=N[j+200>>2];Oa=N[f+8>>2];Pa=N[f+4>>2];Qa=N[f>>2];Ra=N[f+16>>2];Sa=N[f+48>>2];Ta=N[f+32>>2];m=J[d+52>>2];Ua=N[d+56>>2];r=N[f+108>>2];J[f+120>>2]=0;J[f+124>>2]=1343554297;N[f+116>>2]=D*r;t=Q(na+t);j=t>Q(0);B=Q(r*(j?Q(0):Q(M*Q(B*Q(-t)))));m=!m|t>Ua;N[f+128>>2]=m?Q(0):B;e=Q(Q(oa*Q(n-e))+Q(Q(qa*Q(h-i))+Q(Q(l-q)*pa)));e=Q(R(e))<ra?Q(0):Q(ta*Q(-e));e=Q((e<=Q(0)?Q(0):e)-Q(Q(Q(Q(Ba*Q(x+Ca))+Q(Q(Ra*Q(g+ya))+Q(za*Q(O+Aa))))+Q(Q(Oa*Q(k+va))+Q(Q(Qa*Q(T+xa))+Q(Pa*Q(S+wa)))))+Q(Q(Q(Ga*Q(A+Ha))+Q(Q(Sa*Q(v+Da))+Q(Ea*Q(Z+Fa))))+Q(Q(Ma*Q(ba+Na))+Q(Q(Ta*Q(V+Ia))+Q(Ka*Q(ca+La)))))));N[f+112>>2]=Q(r*(j?Q(e-Q(t*M)):e))+(m?B:Q(-0));J[f+140>>2]=J[a+68>>2];i:{if(!(N[u+92>>2]>Q(0))){break i}nc(a,E,F,G,C,N[u+96>>2]);i=N[E+8>>2];j:{if(Q(R(i))>Q(.7071067690849304)){n=N[E+4>>2];e=Q(Q(n*n)+Q(i*i));h=Q(Q(1)/Q(Y(e)));l=Q(e*h);e=Q(h*Q(-i));k=N[E>>2];g=Q(e*k);i=Q(n*h);k=Q(i*Q(-k));h=Q(0);break j}l=N[E>>2];h=N[E+4>>2];g=Q(Q(l*l)+Q(h*h));e=Q(Q(1)/Q(Y(g)));g=Q(g*e);h=Q(e*Q(-h));k=Q(i*h);e=Q(l*e);l=Q(e*Q(-i));i=Q(0);}n=Q(Q(1)/Q(Y(Q(Q(i*i)+Q(Q(h*h)+Q(e*e))))));i=Q(i*n);N[s+36>>2]=i;e=Q(e*n);N[s+32>>2]=e;h=Q(h*n);N[s+28>>2]=h;r=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(l*l)+Q(k*k))))));n=Q(g*r);N[s+20>>2]=n;g=Q(k*r);N[s+16>>2]=g;l=Q(l*r);N[s+12>>2]=l;j=J[p+180>>2]&2;if(j){O=N[p+172>>2];k=N[p+44>>2];r=N[p+12>>2];t=N[p+28>>2];S=N[p+164>>2];q=N[p+36>>2];v=N[p+4>>2];x=N[p+20>>2];T=N[p+168>>2];B=N[p+40>>2];V=N[p+8>>2];M=N[p+24>>2];J[s+40>>2]=0;D=k;k=Q(O*Q(Q(k*i)+Q(Q(r*h)+Q(e*t))));A=q;q=Q(S*Q(Q(q*i)+Q(Q(v*h)+Q(e*x))));h=Q(T*Q(Q(B*i)+Q(Q(V*h)+Q(e*M))));i=Q(Q(D*k)+Q(Q(A*q)+Q(B*h)));N[s+36>>2]=i;e=Q(Q(t*k)+Q(Q(x*q)+Q(M*h)));N[s+32>>2]=e;h=Q(Q(r*k)+Q(Q(v*q)+Q(V*h)));N[s+28>>2]=h;}m=J[o+180>>2]&2;if(m){O=N[o+172>>2];k=N[o+44>>2];r=N[o+12>>2];t=N[o+28>>2];S=N[o+164>>2];q=N[o+36>>2];v=N[o+4>>2];x=N[o+20>>2];T=N[o+168>>2];B=N[o+40>>2];V=N[o+8>>2];M=N[o+24>>2];J[s+40>>2]=0;D=k;k=Q(O*Q(Q(k*i)+Q(Q(r*h)+Q(e*t))));A=q;q=Q(S*Q(Q(q*i)+Q(Q(v*h)+Q(x*e))));h=Q(T*Q(Q(B*i)+Q(Q(V*h)+Q(e*M))));i=Q(Q(D*k)+Q(Q(A*q)+Q(B*h)));N[s+36>>2]=i;e=Q(Q(t*k)+Q(Q(x*q)+Q(M*h)));N[s+32>>2]=e;h=Q(Q(r*k)+Q(Q(v*q)+Q(V*h)));N[s+28>>2]=h;}if(j){O=N[p+172>>2];k=N[p+44>>2];r=N[p+12>>2];t=N[p+28>>2];S=N[p+164>>2];q=N[p+36>>2];v=N[p+4>>2];x=N[p+20>>2];T=N[p+168>>2];B=N[p+40>>2];V=N[p+8>>2];M=N[p+24>>2];J[s+24>>2]=0;D=k;k=Q(O*Q(Q(k*n)+Q(Q(r*l)+Q(g*t))));A=q;q=Q(S*Q(Q(q*n)+Q(Q(v*l)+Q(g*x))));l=Q(T*Q(Q(B*n)+Q(Q(V*l)+Q(g*M))));n=Q(Q(D*k)+Q(Q(A*q)+Q(B*l)));N[s+20>>2]=n;g=Q(Q(t*k)+Q(Q(x*q)+Q(M*l)));N[s+16>>2]=g;l=Q(Q(r*k)+Q(Q(v*q)+Q(V*l)));N[s+12>>2]=l;}if(m){O=N[o+172>>2];k=N[o+44>>2];r=N[o+12>>2];t=N[o+28>>2];S=N[o+164>>2];q=N[o+36>>2];v=N[o+4>>2];x=N[o+20>>2];T=N[o+168>>2];B=N[o+40>>2];V=N[o+8>>2];M=N[o+24>>2];J[s+24>>2]=0;D=k;k=Q(O*Q(Q(k*n)+Q(Q(r*l)+Q(g*t))));A=q;q=Q(S*Q(Q(q*n)+Q(Q(v*l)+Q(x*g))));l=Q(T*Q(Q(B*n)+Q(Q(V*l)+Q(g*M))));n=Q(Q(D*k)+Q(Q(A*q)+Q(B*l)));N[s+20>>2]=n;g=Q(Q(t*k)+Q(Q(x*q)+Q(M*l)));N[s+16>>2]=g;l=Q(Q(r*k)+Q(Q(v*q)+Q(V*l)));N[s+12>>2]=l;}if(+Q(Y(Q(Q(i*i)+Q(Q(h*h)+Q(e*e)))))>.001){nc(a,s+28|0,F,G,C,N[u+92>>2]);}if(!(+Q(Y(Q(Q(n*n)+Q(Q(l*l)+Q(g*g)))))>.001)){break i}nc(a,s+12|0,F,G,C,N[u+92>>2]);}k:{if(!(H[u+132|0]&1?K[d+72|0]&32:0)){k=N[E>>2];e=N[E+4>>2];i=N[E+8>>2];J[u+184>>2]=0;h=Q(L-z);n=Q(ha-ja);l=Q($-ia);g=Q(Q(ka*h)+Q(Q(la*n)+Q(l*ma)));h=Q(h-Q(i*g));N[u+180>>2]=h;l=Q(l-Q(g*e));N[u+176>>2]=l;j=u+172|0;n=Q(n-Q(g*k));N[j>>2]=n;l:{if(K[d+72|0]&64){break l}g=Q(Q(h*h)+Q(Q(n*n)+Q(l*l)));if(!(g>Q(1.1920928955078125e-7))){break l}i=Q(Q(1)/Q(Y(g)));e=Q(h*i);N[j+8>>2]=e;g=Q(l*i);N[j+4>>2]=g;i=Q(n*i);N[j>>2]=i;if(H[p+180|0]&1){x=N[p+172>>2];h=N[p+44>>2];l=N[p+12>>2];n=N[p+28>>2];B=N[p+164>>2];k=N[p+36>>2];z=N[p+4>>2];r=N[p+20>>2];L=N[p+168>>2];t=N[p+40>>2];q=N[p+8>>2];v=N[p+24>>2];J[j+12>>2]=0;D=h;h=Q(x*Q(Q(h*e)+Q(Q(l*i)+Q(g*n))));A=k;k=Q(B*Q(Q(k*e)+Q(Q(z*i)+Q(g*r))));i=Q(L*Q(Q(t*e)+Q(Q(q*i)+Q(g*v))));e=Q(Q(D*h)+Q(Q(A*k)+Q(t*i)));N[j+8>>2]=e;g=Q(Q(n*h)+Q(Q(r*k)+Q(v*i)));N[j+4>>2]=g;i=Q(Q(l*h)+Q(Q(z*k)+Q(q*i)));N[j>>2]=i;}if(H[o+180|0]&1){x=N[o+172>>2];h=N[o+44>>2];l=N[o+12>>2];n=N[o+28>>2];B=N[o+164>>2];k=N[o+36>>2];z=N[o+4>>2];r=N[o+20>>2];L=N[o+168>>2];t=N[o+40>>2];q=N[o+8>>2];v=N[o+24>>2];J[j+12>>2]=0;D=h;h=Q(x*Q(Q(h*e)+Q(Q(l*i)+Q(g*n))));A=k;k=Q(B*Q(Q(k*e)+Q(Q(z*i)+Q(r*g))));e=Q(L*Q(Q(t*e)+Q(Q(q*i)+Q(g*v))));N[j+8>>2]=Q(D*h)+Q(Q(A*k)+Q(t*e));N[j+4>>2]=Q(n*h)+Q(Q(r*k)+Q(v*e));N[j>>2]=Q(l*h)+Q(Q(z*k)+Q(q*e));}x=N[s+44>>2];ib(a,j,F,G,C,y,s- -64|0,s+48|0,x,d,Q(0),Q(0));if(!(K[d+72|0]&16)){break k}e=N[j+4>>2];g=N[E+4>>2];i=N[E>>2];h=N[j+8>>2];l=N[j>>2];n=N[E+8>>2];J[u+200>>2]=0;k=Q(Q(l*g)-Q(i*e));z=Q(Q(e*n)-Q(g*h));g=Q(Q(h*i)-Q(n*l));i=Q(Q(1)/Q(Y(Q(Q(k*k)+Q(Q(z*z)+Q(g*g))))));e=Q(k*i);N[u+196>>2]=e;g=Q(g*i);N[u+192>>2]=g;j=u+188|0;i=Q(z*i);N[j>>2]=i;if(H[p+180|0]&1){B=N[p+172>>2];h=N[p+44>>2];l=N[p+12>>2];n=N[p+28>>2];L=N[p+164>>2];k=N[p+36>>2];z=N[p+4>>2];r=N[p+20>>2];$=N[p+168>>2];t=N[p+40>>2];q=N[p+8>>2];v=N[p+24>>2];J[j+12>>2]=0;D=h;h=Q(B*Q(Q(h*e)+Q(Q(l*i)+Q(g*n))));A=k;k=Q(L*Q(Q(k*e)+Q(Q(z*i)+Q(g*r))));i=Q($*Q(Q(t*e)+Q(Q(q*i)+Q(g*v))));e=Q(Q(D*h)+Q(Q(A*k)+Q(t*i)));N[j+8>>2]=e;g=Q(Q(n*h)+Q(Q(r*k)+Q(v*i)));N[j+4>>2]=g;i=Q(Q(l*h)+Q(Q(z*k)+Q(q*i)));N[j>>2]=i;}if(H[o+180|0]&1){B=N[o+172>>2];h=N[o+44>>2];l=N[o+12>>2];n=N[o+28>>2];L=N[o+164>>2];k=N[o+36>>2];z=N[o+4>>2];r=N[o+20>>2];$=N[o+168>>2];t=N[o+40>>2];q=N[o+8>>2];v=N[o+24>>2];J[j+12>>2]=0;D=h;h=Q(B*Q(Q(h*e)+Q(Q(l*i)+Q(g*n))));A=k;k=Q(L*Q(Q(k*e)+Q(Q(z*i)+Q(r*g))));e=Q($*Q(Q(t*e)+Q(Q(q*i)+Q(g*v))));N[j+8>>2]=Q(D*h)+Q(Q(A*k)+Q(t*e));N[j+4>>2]=Q(n*h)+Q(Q(r*k)+Q(v*e));N[j>>2]=Q(l*h)+Q(Q(z*k)+Q(q*e));}ib(a,j,F,G,C,y,s- -64|0,s+48|0,x,d,Q(0),Q(0));break k}m=u+188|0;m:{if(Q(R(i))>Q(.7071067690849304)){h=Q(Q(e*e)+Q(i*i));g=Q(Q(1)/Q(Y(h)));n=Q(h*g);h=Q(g*Q(-i));l=Q(k*h);e=Q(e*g);z=Q(e*Q(-k));g=Q(0);break m}g=Q(Q(k*k)+Q(e*e));h=Q(Q(1)/Q(Y(g)));l=Q(g*h);g=Q(h*Q(-e));z=Q(i*g);h=Q(k*h);n=Q(h*Q(-i));e=Q(0);}N[j+8>>2]=e;N[j+4>>2]=h;N[j>>2]=g;N[m+8>>2]=l;N[m+4>>2]=z;N[m>>2]=n;if(H[p+180|0]&1){x=N[p+172>>2];i=N[p+44>>2];l=N[p+12>>2];n=N[p+28>>2];B=N[p+164>>2];k=N[p+36>>2];z=N[p+4>>2];r=N[p+20>>2];L=N[p+168>>2];t=N[p+40>>2];q=N[p+8>>2];v=N[p+24>>2];J[j+12>>2]=0;D=i;i=Q(x*Q(Q(i*e)+Q(Q(l*g)+Q(h*n))));A=k;k=Q(B*Q(Q(k*e)+Q(Q(z*g)+Q(r*h))));g=Q(L*Q(Q(t*e)+Q(Q(q*g)+Q(h*v))));e=Q(Q(D*i)+Q(Q(A*k)+Q(t*g)));N[j+8>>2]=e;h=Q(Q(n*i)+Q(Q(r*k)+Q(v*g)));N[j+4>>2]=h;g=Q(Q(l*i)+Q(Q(z*k)+Q(q*g)));N[j>>2]=g;}if(H[o+180|0]&1){x=N[o+172>>2];i=N[o+44>>2];l=N[o+12>>2];n=N[o+28>>2];B=N[o+164>>2];k=N[o+36>>2];z=N[o+4>>2];r=N[o+20>>2];L=N[o+168>>2];t=N[o+40>>2];q=N[o+8>>2];v=N[o+24>>2];J[j+12>>2]=0;D=i;i=Q(x*Q(Q(i*e)+Q(Q(l*g)+Q(h*n))));A=k;k=Q(B*Q(Q(k*e)+Q(Q(z*g)+Q(r*h))));e=Q(L*Q(Q(t*e)+Q(Q(q*g)+Q(h*v))));N[j+8>>2]=Q(D*i)+Q(Q(A*k)+Q(t*e));N[j+4>>2]=Q(n*i)+Q(Q(r*k)+Q(v*e));N[j>>2]=Q(l*i)+Q(Q(z*k)+Q(q*e));}x=N[s+44>>2];ib(a,j,F,G,C,y,s- -64|0,s+48|0,x,d,Q(0),Q(0));j=J[d+72>>2];if(j&16){if(H[p+180|0]&1){t=N[p+172>>2];e=N[p+44>>2];g=N[p+12>>2];i=N[p+28>>2];B=N[p+164>>2];h=N[p+36>>2];l=N[p+4>>2];n=N[p+20>>2];L=N[p+168>>2];k=N[p+40>>2];z=N[p+8>>2];r=N[p+24>>2];J[m+12>>2]=0;D=e;A=t;e=N[m+8>>2];t=N[m>>2];q=N[m+4>>2];v=Q(A*Q(Q(D*e)+Q(Q(g*t)+Q(i*q))));A=h;h=Q(B*Q(Q(h*e)+Q(Q(l*t)+Q(n*q))));e=Q(L*Q(Q(k*e)+Q(Q(z*t)+Q(q*r))));N[m+8>>2]=Q(D*v)+Q(Q(A*h)+Q(k*e));N[m+4>>2]=Q(i*v)+Q(Q(n*h)+Q(r*e));N[m>>2]=Q(g*v)+Q(Q(l*h)+Q(z*e));}if(H[o+180|0]&1){t=N[o+172>>2];e=N[o+44>>2];g=N[o+12>>2];i=N[o+28>>2];B=N[o+164>>2];h=N[o+36>>2];l=N[o+4>>2];n=N[o+20>>2];L=N[o+168>>2];k=N[o+40>>2];z=N[o+8>>2];r=N[o+24>>2];J[m+12>>2]=0;D=e;A=t;e=N[m+8>>2];t=N[m>>2];q=N[m+4>>2];v=Q(A*Q(Q(D*e)+Q(Q(g*t)+Q(i*q))));A=h;h=Q(B*Q(Q(h*e)+Q(Q(l*t)+Q(n*q))));e=Q(L*Q(Q(k*e)+Q(Q(z*t)+Q(q*r))));N[m+8>>2]=Q(D*v)+Q(Q(A*h)+Q(k*e));N[m+4>>2]=Q(i*v)+Q(Q(n*h)+Q(r*e));N[m>>2]=Q(g*v)+Q(Q(l*h)+Q(z*e));}ib(a,m,F,G,C,y,s- -64|0,s+48|0,x,d,Q(0),Q(0));j=J[d+72>>2];}if((j&80)!=80){break k}J[u+132>>2]=J[u+132>>2]|1;break k}e=N[s+44>>2];ib(a,u+172|0,F,G,C,y,s- -64|0,s+48|0,e,d,N[u+148>>2],N[u+164>>2]);if(!(K[d+72|0]&16)){break k}ib(a,u+188|0,F,G,C,y,s- -64|0,s+48|0,e,d,N[u+152>>2],N[u+164>>2]);}m=J[a+76>>2];U=J[f+140>>2];I=J[d+72>>2];n:{if(I&4){w=J[a+16>>2];C=J[(w+P(G,244)|0)+240>>2];j=J[(w+P(F,244)|0)+240>>2];u=m+P(U,152)|0;e=Q(N[y+136>>2]*N[d+68>>2]);N[u+100>>2]=e;if(j){i=N[j+416>>2];h=N[u+24>>2];l=N[j+412>>2];n=N[u+20>>2];f=w+P(F,244)|0;g=N[j+404>>2];N[f+64>>2]=Q(Q(e*Q(Q(g*N[u+16>>2])*N[j+408>>2]))*N[f+112>>2])+N[f+64>>2];N[f+68>>2]=Q(Q(e*Q(l*Q(g*n)))*N[f+116>>2])+N[f+68>>2];N[f+72>>2]=Q(Q(e*Q(i*Q(g*h)))*N[f+120>>2])+N[f+72>>2];g=N[u+72>>2];i=N[u+68>>2];N[f+80>>2]=Q(Q(e*N[f+96>>2])*N[u+64>>2])+N[f+80>>2];h=N[f+104>>2];N[f+84>>2]=Q(i*Q(e*N[f+100>>2]))+N[f+84>>2];N[f+88>>2]=Q(g*Q(e*h))+N[f+88>>2];}if(C){E=m+P(U,152)|0;i=N[E+88>>2];h=N[E+84>>2];l=N[E+80>>2];n=N[C+416>>2];k=N[E+56>>2];z=N[C+412>>2];r=N[E+52>>2];f=w+P(G,244)|0;g=N[C+404>>2];e=N[u+100>>2];N[f+64>>2]=N[f+64>>2]+Q(Q(Q(Q(g*N[E+48>>2])*N[C+408>>2])*e)*N[f+112>>2]);N[f+68>>2]=N[f+68>>2]+Q(Q(e*Q(z*Q(g*r)))*N[f+116>>2]);N[f+72>>2]=N[f+72>>2]+Q(Q(e*Q(n*Q(g*k)))*N[f+120>>2]);N[f+80>>2]=N[f+80>>2]+Q(l*Q(e*N[f+96>>2]));g=N[f+104>>2];N[f+84>>2]=N[f+84>>2]+Q(h*Q(e*N[f+100>>2]));N[f+88>>2]=N[f+88>>2]+Q(i*Q(g*e));}if(!(I&16)){break n}E=U+1|0;u=m+P(E,152)|0;e=Q(N[y+140>>2]*N[d+68>>2]);N[u+100>>2]=e;if(j){i=N[u+24>>2];h=N[u+20>>2];f=w+P(F,244)|0;g=N[j+404>>2];N[f+64>>2]=Q(Q(e*Q(g*N[u+16>>2]))*N[f+112>>2])+N[f+64>>2];N[f+68>>2]=Q(Q(e*Q(g*h))*N[f+116>>2])+N[f+68>>2];N[f+72>>2]=Q(Q(e*Q(g*i))*N[f+120>>2])+N[f+72>>2];g=N[u+72>>2];i=N[u+68>>2];N[f+80>>2]=Q(Q(e*N[f+96>>2])*N[u+64>>2])+N[f+80>>2];h=N[f+104>>2];N[f+84>>2]=Q(i*Q(e*N[f+100>>2]))+N[f+84>>2];N[f+88>>2]=Q(g*Q(e*h))+N[f+88>>2];}if(!C){break n}j=m+P(E,152)|0;i=N[j+88>>2];h=N[j+84>>2];l=N[j+56>>2];n=N[j+52>>2];k=N[j+48>>2];g=N[C+404>>2];f=w+P(G,244)|0;e=N[u+100>>2];N[f+80>>2]=N[f+80>>2]+Q(N[j+80>>2]*Q(N[f+96>>2]*e));N[f+64>>2]=N[f+64>>2]+Q(Q(e*Q(g*k))*N[f+112>>2]);N[f+68>>2]=N[f+68>>2]+Q(Q(e*Q(g*n))*N[f+116>>2]);N[f+72>>2]=N[f+72>>2]+Q(Q(e*Q(g*l))*N[f+120>>2]);g=N[f+104>>2];N[f+84>>2]=N[f+84>>2]+Q(h*Q(e*N[f+100>>2]));N[f+88>>2]=N[f+88>>2]+Q(i*Q(g*e));break n}f=m+P(U,152)|0;J[f+100>>2]=0;if(!(I&16)){break n}J[f+252>>2]=0;}j=J[_+844>>2];}aa=aa+1|0;if((aa|0)<(j|0)){continue}break}}sa=s+80|0;da=da+1|0;if((da|0)!=(c|0)){continue}break}}}function Yh(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=Q(0),n=0,o=0,p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=0,G=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Z=0,_=Q(0),$=0,aa=Q(0),ba=0,ca=0,da=0,ea=0,fa=Q(0),ga=Q(0),ha=Q(0),ia=Q(0),ja=Q(0),ka=Q(0),la=Q(0),ma=Q(0),na=Q(0);o=sa-256|0;sa=o;J[a+188>>2]=-1;ua[J[8262]](5384);i=J[h+72>>2];if((i|0)!=J[a+224>>2]){J[a+224>>2]=i;J[a+220>>2]=954;J[a+216>>2]=953;J[a+212>>2]=952;}i=0;J[a+184>>2]=0;a:{if((c|0)<=0){break a}if(c>>>0>=4){j=c&-4;while(1){l=i<<2;J[J[l+b>>2]+212>>2]=-1;J[J[(l|4)+b>>2]+212>>2]=-1;J[J[(l|8)+b>>2]+212>>2]=-1;J[J[(l|12)+b>>2]+212>>2]=-1;i=i+4|0;k=k+4|0;if((j|0)!=(k|0)){continue}break}}l=c&3;if(!l){break a}j=0;while(1){J[J[(i<<2)+b>>2]+212>>2]=-1;i=i+1|0;j=j+1|0;if((l|0)!=(j|0)){continue}break}}l=J[a+12>>2];if((l|0)<=(c|0)){l=c+1|0;if(l){J[8456]=J[8456]+1;i=ua[J[8258]](P(l,244),16)|0;}else {i=0;}z=J[a+8>>2];if((z|0)>0){k=0;while(1){n=P(k,244);j=n+i|0;n=n+J[a+16>>2]|0;F=J[n+4>>2];J[j>>2]=J[n>>2];J[j+4>>2]=F;F=J[n+12>>2];J[j+8>>2]=J[n+8>>2];J[j+12>>2]=F;F=J[n+28>>2];J[j+24>>2]=J[n+24>>2];J[j+28>>2]=F;F=J[n+20>>2];J[j+16>>2]=J[n+16>>2];J[j+20>>2]=F;F=J[n+44>>2];J[j+40>>2]=J[n+40>>2];J[j+44>>2]=F;F=J[n+36>>2];J[j+32>>2]=J[n+32>>2];J[j+36>>2]=F;F=J[n+52>>2];J[j+48>>2]=J[n+48>>2];J[j+52>>2]=F;F=J[n+60>>2];J[j+56>>2]=J[n+56>>2];J[j+60>>2]=F;Ja(j- -64|0,n- -64|0,180);k=k+1|0;if((z|0)!=(k|0)){continue}break}}j=J[a+16>>2];if(!(j?!j|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](j);}J[a+16>>2]=i;H[a+20|0]=1;J[a+12>>2]=l;}Fa(o+8|0,0,244);j=J[a+8>>2];if((j|0)<0){if((l|0)<0){i=J[a+16>>2];if(!(i?!i|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](i);}H[a+20|0]=1;J[a+12>>2]=0;J[a+16>>2]=0;}l=o+72|0;while(1){i=J[a+16>>2]+P(j,244)|0;J[i>>2]=0;J[i+4>>2]=0;J[i+8>>2]=0;J[i+12>>2]=0;k=J[o+36>>2];J[i+24>>2]=J[o+32>>2];J[i+28>>2]=k;k=J[o+28>>2];J[i+16>>2]=J[o+24>>2];J[i+20>>2]=k;k=J[o+44>>2];J[i+32>>2]=J[o+40>>2];J[i+36>>2]=k;k=J[o+52>>2];J[i+40>>2]=J[o+48>>2];J[i+44>>2]=k;k=J[o+60>>2];J[i+48>>2]=J[o+56>>2];J[i+52>>2]=k;k=J[o+68>>2];J[i+56>>2]=J[o+64>>2];J[i+60>>2]=k;Ja(i- -64|0,l,180);j=j+1|0;if(j){continue}break}}J[a+8>>2]=0;if((c|0)>0){j=0;while(1){i=(j<<2)+b|0;k=db(a,J[i>>2],N[h+12>>2]);i=J[i>>2];b:{if(!i|!(J[i+252>>2]&2)|N[i+404>>2]==Q(0)){break b}n=J[a+16>>2];l=J[i+564>>2];if(l&2){w=N[h+84>>2];m=N[i+396>>2];r=N[i+44>>2];t=N[i+40>>2];s=N[i+36>>2];p=N[i+392>>2];C=N[i+28>>2];q=N[i+12>>2];u=N[i+464>>2];A=N[i+24>>2];D=N[i+8>>2];x=N[i+460>>2];I=N[i+20>>2];v=N[i+388>>2];B=N[i+4>>2];y=N[i+456>>2];J[o+20>>2]=0;G=u!=Q(0)?Q(Q(1)/u):Q(0);u=Q(C*G);y=y!=Q(0)?Q(Q(1)/y):Q(0);E=Q(I*y);x=x!=Q(0)?Q(Q(1)/x):Q(0);M=Q(A*x);L=Q(Q(m*Q(Q(r*u)+Q(Q(s*E)+Q(t*M))))+Q(Q(v*Q(Q(q*u)+Q(Q(B*E)+Q(D*M))))+Q(p*Q(Q(C*u)+Q(Q(I*E)+Q(A*M))))));u=Q(G*q);E=Q(y*B);M=Q(x*D);E=Q(Q(m*Q(Q(r*u)+Q(Q(s*E)+Q(t*M))))+Q(Q(v*Q(Q(q*u)+Q(Q(B*E)+Q(D*M))))+Q(p*Q(Q(C*u)+Q(Q(I*E)+Q(M*A))))));u=Q(Q(v*L)-Q(p*E));N[o+16>>2]=u;W=r;r=Q(G*r);G=s;s=Q(y*s);y=t;t=Q(x*t);r=Q(Q(m*Q(Q(W*r)+Q(Q(G*s)+Q(y*t))))+Q(Q(v*Q(Q(q*r)+Q(Q(B*s)+Q(D*t))))+Q(p*Q(Q(C*r)+Q(Q(I*s)+Q(A*t))))));v=Q(Q(m*E)-Q(v*r));N[o+12>>2]=v;m=Q(Q(p*r)-Q(L*m));N[o+8>>2]=m;p=Q(Q(u*u)+Q(Q(m*m)+Q(v*v)));if(p>Q(w*w)){p=Q(Q(Q(1)/Q(Y(p)))*w);N[o+16>>2]=u*p;N[o+12>>2]=v*p;N[o+8>>2]=m*p;}t=N[i+364>>2];s=N[i+332>>2];C=N[i+348>>2];q=N[i+360>>2];A=N[i+328>>2];D=N[i+344>>2];l=n+P(k,244)|0;m=N[o+16>>2];p=N[o+8>>2];v=N[o+12>>2];r=N[h+12>>2];N[l+224>>2]=N[l+224>>2]-Q(Q(Q(N[i+356>>2]*m)+Q(Q(N[i+324>>2]*p)+Q(v*N[i+340>>2])))*r);N[l+228>>2]=N[l+228>>2]-Q(r*Q(Q(q*m)+Q(Q(A*p)+Q(v*D))));N[l+232>>2]=N[l+232>>2]-Q(r*Q(Q(t*m)+Q(Q(s*p)+Q(v*C))));l=J[i+564>>2];}if(l&4){m=N[h+12>>2];p=N[i+396>>2];C=N[i+44>>2];q=N[i+40>>2];A=N[i+36>>2];t=N[i+12>>2];D=N[i+8>>2];v=N[i+392>>2];I=N[i+28>>2];s=N[i+464>>2];B=N[i+24>>2];x=N[i+460>>2];w=N[i+20>>2];r=N[i+388>>2];u=N[i+4>>2];y=N[i+456>>2];J[o+20>>2]=0;M=s!=Q(0)?Q(Q(1)/s):Q(0);L=Q(C*M);O=y!=Q(0)?Q(Q(1)/y):Q(0);T=Q(A*O);S=x!=Q(0)?Q(Q(1)/x):Q(0);V=Q(q*S);y=Q(Q(t*L)+Q(Q(u*T)+Q(D*V)));s=Q(M*I);x=Q(O*w);U=Q(S*B);G=Q(Q(C*s)+Q(Q(A*x)+Q(q*U)));_=Q(p*G);E=Q(Q(t*s)+Q(Q(u*x)+Q(D*U)));X=Q(r*E);x=Q(Q(I*s)+Q(Q(w*x)+Q(B*U)));s=Q(_+Q(X+Q(v*x)));U=Q(M*t);O=Q(O*u);S=Q(S*D);D=Q(Q(t*U)+Q(Q(u*O)+Q(D*S)));M=Q(y+Q(Q(s+Q(Q(y*Q(0))+Q(X-Q(v*D))))*m));u=Q(Q(C*L)+Q(Q(A*T)+Q(q*V)));X=Q(y*r);L=Q(Q(I*L)+Q(Q(w*T)+Q(B*V)));T=Q(v*L);t=Q(Q(p*u)+Q(X+T));B=Q(Q(I*U)+Q(Q(w*O)+Q(S*B)));I=Q(B+Q(Q(Q(T+Q(Q(B*Q(0))-Q(x*p)))+t)*m));A=Q(Q(C*U)+Q(Q(A*O)+Q(S*q)));w=Q(p*A);S=Q(v*B);C=Q(w+Q(Q(D*r)+S));T=Q(m*Q(0));q=Q(Q(s+Q(Q(Q(p*C)-Q(t*r))*m))-Q(T+s));w=Q(G+Q(Q(C+Q(Q(w+Q(G*Q(0)))-Q(u*r)))*m));O=Q(A+Q(Q(Q(Q(u*v)+Q(Q(A*Q(0))-_))-s)*m));B=Q(x+Q(Q(Q(Q(B*p)+Q(x*Q(0)))-Q(L*r))*m));V=Q(Q(I*w)-Q(O*B));y=Q(D+Q(Q(Q(y*v)+Q(Q(D*Q(0))-Q(E*p)))*m));u=Q(u+Q(Q(Q(u*Q(0))+Q(Q(r*G)-Q(A*v)))*m));x=Q(L+Q(Q(Q(Q(L*Q(0))+Q(Q(r*x)-S))-C)*m));L=Q(Q(B*u)-Q(w*x));G=Q(E+Q(Q(Q(Q(Q(D*p)+Q(E*Q(0)))-X)-t)*m));E=Q(Q(x*O)-Q(u*I));A=Q(Q(M*V)+Q(Q(y*L)+Q(G*E)));D=Q(R(A))>Q(1.1920928955078125e-7)?Q(Q(1)/A):A;A=Q(Q(C+Q(Q(Q(v*t)-Q(s*p))*m))-Q(T+C));m=Q(Q(Q(Q(Q(r*s)-Q(C*v))*m)+t)-Q(T+t));N[o+16>>2]=Q(p-Q(Q(Q(M*Q(Q(I*q)-Q(A*B)))+Q(Q(y*Q(Q(B*m)-Q(q*x)))+Q(G*Q(Q(x*A)-Q(m*I)))))*D))-p;N[o+12>>2]=Q(v-Q(Q(Q(M*Q(Q(A*w)-Q(O*q)))+Q(Q(y*Q(Q(q*u)-Q(w*m)))+Q(G*Q(Q(m*O)-Q(u*A)))))*D))-v;N[o+8>>2]=Q(r-Q(Q(Q(m*V)+Q(Q(A*L)+Q(q*E)))*D))-r;m=N[o+16>>2];p=N[o+12>>2];l=n+P(k,244)|0;N[l+224>>2]=N[o+8>>2]+N[l+224>>2];N[l+228>>2]=p+N[l+228>>2];N[l+232>>2]=m+N[l+232>>2];l=J[i+564>>2];}if(!(l&8)){break b}m=N[h+12>>2];l=sa-16|0;sa=l;B=N[i+464>>2];w=N[i+460>>2];A=N[i+396>>2];D=N[i+392>>2];x=N[i+456>>2];I=N[i+388>>2];ob(i+4|0,l);p=N[l+4>>2];v=N[l>>2];r=N[l+12>>2];t=N[l+8>>2];J[o+20>>2]=0;q=Q(Q(p*I)+Q(Q(r*A)-Q(D*v)));u=Q(Q(t*A)+Q(Q(v*I)+Q(D*p)));y=Q(Q(v*A)+Q(Q(r*D)-Q(I*t)));E=Q(Q(t*D)+Q(Q(r*I)-Q(A*p)));s=Q(Q(Q(v*q)+Q(Q(p*u)+Q(r*y)))-Q(t*E));C=Q(Q(Q(E*p)+Q(Q(u*t)+Q(r*q)))-Q(y*v));G=Q(C*Q(0));q=Q(Q(Q(y*t)+Q(Q(u*v)+Q(r*E)))-Q(q*p));E=Q(q*Q(0));w=w!=Q(0)?Q(Q(1)/w):Q(0);u=Q(G+Q(E+Q(s*w)));x=x!=Q(0)?Q(Q(1)/x):Q(0);M=Q(Q(Q(Q(Q(E-Q(s*x))+Q(0))+u)*m)+Q(0));y=B!=Q(0)?Q(Q(1)/B):Q(0);L=Q(s*Q(0));O=Q(Q(y*C)+Q(E+L));B=Q(Q(Q(s*O)-Q(u*C))*m);X=Q(q*Q(-0));T=Q(Q(Q(Q(X+Q(Q(x*C)+Q(0)))-O)*m)+Q(0));S=Q(Q(Q(Q(L+Q(Q(0)-Q(w*C)))+O)*m)+Q(0));V=Q(G+Q(Q(x*q)+L));U=Q(Q(Q(Q(Q(G+Q(0))-Q(y*q))+V)*m)+Q(0));W=Q(C*Q(-0));_=Q(Q(Q(Q(Q(y*s)+Q(W+Q(0)))-u)*m)+Q(0));G=Q(w+Q(Q(X+Q(G+Q(w*Q(0))))*m));X=Q(Q(S*U)-Q(_*G));L=Q(x+Q(Q(L+Q(Q(x*Q(0))+W))*m));W=y;x=Q(y*Q(0));y=Q(s*Q(-0));x=Q(W+Q(Q(x+Q(y+E))*m));y=Q(Q(Q(Q(Q(y+Q(w*q))+Q(0))-V)*m)+Q(0));W=Q(Q(G*x)-Q(U*y));aa=Q(Q(y*_)-Q(x*S));w=Q(Q(M*X)+Q(Q(L*W)+Q(T*aa)));E=Q(R(w))>Q(1.1920928955078125e-7)?Q(Q(1)/w):w;w=Q(Q(Q(C*V)-Q(O*q))*m);m=Q(Q(Q(q*u)-Q(V*s))*m);s=Q(s-Q(Q(Q(M*Q(Q(B*U)-Q(_*w)))+Q(Q(L*Q(Q(w*x)-Q(U*m)))+Q(T*Q(Q(m*_)-Q(x*B)))))*E));q=Q(q-Q(Q(Q(m*X)+Q(Q(B*W)+Q(w*aa)))*E));m=Q(C-Q(Q(Q(M*Q(Q(S*w)-Q(B*G)))+Q(Q(L*Q(Q(G*m)-Q(w*y)))+Q(T*Q(Q(y*B)-Q(m*S)))))*E));C=Q(Q(Q(r*s)+Q(t*q))-Q(v*m));B=Q(Q(Q(r*m)+Q(v*s))-Q(p*q));w=Q(Q(Q(Q(-v)*q)-Q(s*p))-Q(t*m));m=Q(Q(Q(r*q)+Q(p*m))-Q(t*s));N[o+16>>2]=Q(Q(v*C)+Q(Q(Q(r*B)-Q(t*w))-Q(p*m)))-A;N[o+12>>2]=Q(Q(m*t)+Q(Q(Q(r*C)-Q(w*p))-Q(B*v)))-D;N[o+8>>2]=Q(Q(B*p)+Q(Q(Q(r*m)-Q(w*v))-Q(C*t)))-I;sa=l+16|0;m=N[o+16>>2];p=N[o+12>>2];i=n+P(k,244)|0;N[i+224>>2]=N[o+8>>2]+N[i+224>>2];N[i+228>>2]=p+N[i+228>>2];N[i+232>>2]=m+N[i+232>>2];}j=j+1|0;if((j|0)!=(c|0)){continue}break}}c:{if((g|0)<=0){break c}i=0;if((g|0)!=1){l=g&-2;b=0;while(1){j=i<<2;c=J[j+f>>2];ua[J[J[c>>2]+8>>2]](c);J[c+36>>2]=0;c=J[(j|4)+f>>2];ua[J[J[c>>2]+8>>2]](c);J[c+36>>2]=0;i=i+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}}if(!(g&1)){break c}b=J[(i<<2)+f>>2];ua[J[J[b>>2]+8>>2]](b);J[b+36>>2]=0;}b=J[a+168>>2];if(!((g|0)<=(b|0)|J[a+172>>2]>=(g|0))){d:{if(!g){j=0;break d}J[8456]=J[8456]+1;j=ua[J[8258]](g<<3,16)|0;b=J[a+168>>2];}e:{if((b|0)<=0){break e}k=0;i=0;if(b>>>0>=4){n=b&-4;c=0;while(1){l=i<<3;z=l+j|0;F=l+J[a+176>>2]|0;Z=J[F+4>>2];J[z>>2]=J[F>>2];J[z+4>>2]=Z;z=l|8;F=z+j|0;z=z+J[a+176>>2]|0;Z=J[z+4>>2];J[F>>2]=J[z>>2];J[F+4>>2]=Z;z=l|16;F=z+j|0;z=z+J[a+176>>2]|0;Z=J[z+4>>2];J[F>>2]=J[z>>2];J[F+4>>2]=Z;l=l|24;z=l+j|0;l=l+J[a+176>>2]|0;F=J[l+4>>2];J[z>>2]=J[l>>2];J[z+4>>2]=F;i=i+4|0;c=c+4|0;if((n|0)!=(c|0)){continue}break}}b=b&3;if(!b){break e}while(1){c=i<<3;l=c+j|0;c=c+J[a+176>>2]|0;n=J[c+4>>2];J[l>>2]=J[c>>2];J[l+4>>2]=n;i=i+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}b=J[a+176>>2];if(!(b?!b|!K[a+180|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+176>>2]=j;H[a+180|0]=1;J[a+172>>2]=g;}J[a+168>>2]=g;k=0;if((g|0)>0){j=0;while(1){i=J[a+176>>2];l=(j<<2)+f|0;b=J[l>>2];c=J[b+44>>2];if(c){b=c;J[b>>2]=0;J[b+4>>2]=0;J[b+56>>2]=0;J[b+60>>2]=0;J[b+48>>2]=0;J[b+52>>2]=0;J[b+40>>2]=0;J[b+44>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+16>>2]=0;J[b+20>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;b=J[l>>2];}c=i+(j<<3)|0;f:{if(K[b+20|0]){ua[J[J[b>>2]+16>>2]](b,c);b=J[c>>2];break f}J[c>>2]=0;J[c+4>>2]=0;b=0;}k=b+k|0;j=j+1|0;if((j|0)!=(g|0)){continue}break}}b=J[a+48>>2];if(!((k|0)<=(b|0)|J[a+52>>2]>=(k|0))){g:{if(!k){j=0;break g}J[8456]=J[8456]+1;j=ua[J[8258]](P(k,152),16)|0;b=J[a+48>>2];}h:{if((b|0)<=0){break h}c=b&1;i=0;if((b|0)!=1){l=b&-2;b=0;while(1){n=P(i,152);Ja(n+j|0,n+J[a+56>>2]|0,152);n=P(i|1,152);Ja(n+j|0,n+J[a+56>>2]|0,152);i=i+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}}if(!c){break h}b=P(i,152);Ja(b+j|0,b+J[a+56>>2]|0,152);}b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=j;H[a+60|0]=1;J[a+52>>2]=k;}J[a+48>>2]=k;if((g|0)>0){j=J[a+176>>2];while(1){ea=$;da=ba<<3;Z=da+j|0;if(J[Z>>2]){ca=(ba<<2)+f|0;F=J[ca>>2];j=J[F+32>>2];k=J[a+56>>2];n=J[F+28>>2];c=db(a,n,N[h+12>>2]);i=db(a,j,N[h+12>>2]);l=J[F+24>>2];b=J[h+20>>2];l=(l|0)>0?l:b;if((l|0)>J[a+184>>2]){J[a+184>>2]=l;}z=k+P($,152)|0;$=J[a+16>>2];k=0;if(J[Z>>2]>0){while(1){b=Fa(z+P(k,152)|0,0,152);J[b+120>>2]=-8388609;J[b+124>>2]=2139095039;J[b+148>>2]=i;J[b+144>>2]=c;J[b+96>>2]=0;J[b+100>>2]=0;J[b+136>>2]=l;k=k+1|0;if((k|0)<J[Z>>2]){continue}break}b=J[h+20>>2];}c=P(c,244)+$|0;J[c+64>>2]=0;J[c+68>>2]=0;J[c+144>>2]=0;J[c+148>>2]=0;J[c+88>>2]=0;J[c+92>>2]=0;J[c+80>>2]=0;J[c+84>>2]=0;J[c+72>>2]=0;J[c+76>>2]=0;J[c+152>>2]=0;J[c+156>>2]=0;J[c+160>>2]=0;J[c+164>>2]=0;J[c+168>>2]=0;J[c+172>>2]=0;i=P(i,244)+$|0;J[i+88>>2]=0;J[i+92>>2]=0;J[i+80>>2]=0;J[i+84>>2]=0;J[i+72>>2]=0;J[i+76>>2]=0;J[i+64>>2]=0;J[i+68>>2]=0;J[i+144>>2]=0;J[i+148>>2]=0;J[i+152>>2]=0;J[i+156>>2]=0;J[i+160>>2]=0;J[i+164>>2]=0;J[i+168>>2]=0;J[i+172>>2]=0;N[o+8>>2]=Q(1)/N[h+12>>2];m=N[h+32>>2];J[o+36>>2]=z+112;J[o+32>>2]=38;J[o+28>>2]=z+32;J[o+24>>2]=z+48;J[o+20>>2]=z;J[o+16>>2]=z+16;N[o+12>>2]=m;N[z+116>>2]=N[h+40>>2];m=N[h+4>>2];J[o+52>>2]=b;J[o+48>>2]=z+124;J[o+44>>2]=z+120;J[o+40>>2]=z+116;N[o+56>>2]=m;b=J[ca>>2];ua[J[J[b>>2]+20>>2]](b,o+8|0);if(J[Z>>2]>0){l=0;while(1){m=N[J[ca>>2]+16>>2];b=z+P(l,152)|0;if(m<=N[b+124>>2]){N[b+124>>2]=m;}m=Q(-m);if(m>=N[b+120>>2]){N[b+120>>2]=m;}J[b+132>>2]=F;k=J[F+28>>2];r=N[k+332>>2];t=N[k+328>>2];s=N[k+608>>2];C=N[k+348>>2];q=N[k+340>>2];A=N[k+344>>2];D=N[k+612>>2];I=N[k+364>>2];B=N[k+356>>2];w=N[k+360>>2];u=N[k+604>>2];x=N[k+324>>2];m=N[b+8>>2];p=N[b>>2];v=N[b+4>>2];J[b+76>>2]=0;N[b+72>>2]=D*Q(Q(I*m)+Q(Q(B*p)+Q(v*w)));N[b+68>>2]=s*Q(Q(C*m)+Q(Q(q*p)+Q(v*A)));N[b+64>>2]=u*Q(Q(r*m)+Q(Q(x*p)+Q(t*v)));k=J[F+32>>2];C=N[k+328>>2];q=N[k+332>>2];A=N[k+608>>2];D=N[k+348>>2];I=N[k+340>>2];B=N[k+344>>2];r=N[k+612>>2];t=N[k+364>>2];s=N[k+356>>2];w=N[k+360>>2];u=N[k+604>>2];x=N[k+324>>2];J[b+92>>2]=0;y=r;r=N[b+40>>2];W=Q(t*r);t=N[b+32>>2];G=Q(s*t);s=N[b+36>>2];N[b+88>>2]=y*Q(W+Q(G+Q(w*s)));N[b+84>>2]=A*Q(Q(D*r)+Q(Q(I*t)+Q(s*B)));N[b+80>>2]=u*Q(Q(q*r)+Q(Q(x*t)+Q(C*s)));C=Q(0);q=N[n+404>>2];A=N[b+24>>2];D=N[b+16>>2];I=N[b+20>>2];y=Q(Q(Q(Q(q*A)*A)+Q(Q(Q(q*D)*D)+Q(I*Q(q*I))))+Q(Q(m*Q(Q(m*N[n+364>>2])+Q(Q(p*N[n+356>>2])+Q(v*N[n+360>>2]))))+Q(Q(p*Q(Q(m*N[n+332>>2])+Q(Q(p*N[n+324>>2])+Q(v*N[n+328>>2]))))+Q(v*Q(Q(m*N[n+348>>2])+Q(Q(p*N[n+340>>2])+Q(v*N[n+344>>2])))))));q=N[j+404>>2];B=N[b+56>>2];w=N[b+48>>2];u=N[b+52>>2];q=Q(Q(y+Q(Q(Q(q*B)*B)+Q(Q(Q(q*w)*w)+Q(u*Q(q*u)))))+Q(Q(r*Q(Q(r*N[j+364>>2])+Q(Q(t*N[j+356>>2])+Q(s*N[j+360>>2]))))+Q(Q(t*Q(Q(r*N[j+332>>2])+Q(Q(t*N[j+324>>2])+Q(s*N[j+328>>2]))))+Q(s*Q(Q(r*N[j+348>>2])+Q(Q(t*N[j+340>>2])+Q(s*N[j+344>>2])))))));q=Q(R(q))>Q(1.1920928955078125e-7)?Q(Q(1)/q):Q(0);N[b+108>>2]=q;x=Q(0);y=Q(0);G=Q(0);E=Q(0);M=Q(0);L=Q(0);if(J[c+240>>2]){L=N[c+232>>2];M=N[c+228>>2];E=N[c+224>>2];y=N[c+212>>2];G=N[c+208>>2];x=N[c+216>>2];}O=Q(0);T=Q(0);S=Q(0);V=Q(0);U=Q(0);if(J[i+240>>2]){U=N[i+232>>2];V=N[i+228>>2];S=N[i+224>>2];O=N[i+212>>2];T=N[i+208>>2];C=N[i+216>>2];}_=N[n+380>>2];X=N[n+372>>2];W=N[n+376>>2];aa=N[n+396>>2];fa=N[n+388>>2];ga=N[n+392>>2];ha=N[j+380>>2];ia=N[j+372>>2];ja=N[j+376>>2];ka=N[j+396>>2];la=N[j+388>>2];ma=N[j+392>>2];na=N[o+56>>2];J[b+100>>2]=0;N[b+112>>2]=Q(q*N[b+112>>2])+Q(q*Q(Q(0)-Q(na*Q(Q(Q(Q(A*Q(x+_))+Q(Q(D*Q(G+X))+Q(I*Q(y+W))))+Q(Q(m*Q(L+aa))+Q(Q(p*Q(E+fa))+Q(v*Q(M+ga)))))+Q(Q(Q(B*Q(C+ha))+Q(Q(w*Q(T+ia))+Q(u*Q(O+ja))))+Q(Q(r*Q(U+ka))+Q(Q(t*Q(S+la))+Q(s*Q(V+ma)))))))));l=l+1|0;if((l|0)<J[Z>>2]){continue}break}}j=J[a+176>>2];b=J[da+j>>2];}else {b=0;}$=ea+b|0;ba=ba+1|0;if((ba|0)!=(g|0)){continue}break}}ua[J[J[a>>2]+28>>2]](a,d,e,h);e=J[a+68>>2];d=J[a+28>>2];k=J[a+128>>2];f=J[a+48>>2];if(!((k|0)>=(f|0)|(f|0)<=J[a+132>>2])){i:{if(!f){j=0;break i}J[8456]=J[8456]+1;j=ua[J[8258]](f<<2,16)|0;k=J[a+128>>2];}b=J[a+136>>2];j:{k:{if((k|0)>0){c=0;i=0;if(k>>>0>=4){n=k&-4;l=0;while(1){g=i<<2;J[g+j>>2]=J[b+g>>2];z=g|4;J[z+j>>2]=J[b+z>>2];z=g|8;J[z+j>>2]=J[b+z>>2];g=g|12;J[g+j>>2]=J[b+g>>2];i=i+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}g=k&3;if(g){while(1){l=i<<2;J[l+j>>2]=J[b+l>>2];i=i+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(K[a+140|0]){break k}break j}if(!b|!K[a+140|0]){break j}}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}J[a+136>>2]=j;J[a+132>>2]=f;H[a+140|0]=1;}J[a+128>>2]=f;l:{if(K[h+72|0]&16){k=J[a+108>>2];h=d<<1;if(!((k|0)>=(h|0)|(h|0)<=J[a+112>>2])){m:{if(!d){j=0;break m}J[8456]=J[8456]+1;j=ua[J[8258]](d<<3,16)|0;k=J[a+108>>2];}b=J[a+116>>2];n:{o:{if((k|0)>0){c=0;i=0;if(k>>>0>=4){n=k&-4;l=0;while(1){g=i<<2;J[g+j>>2]=J[b+g>>2];z=g|4;J[z+j>>2]=J[b+z>>2];z=g|8;J[z+j>>2]=J[b+z>>2];g=g|12;J[g+j>>2]=J[b+g>>2];i=i+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}g=k&3;if(g){while(1){l=i<<2;J[l+j>>2]=J[b+l>>2];i=i+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(K[a+120|0]){break o}break n}if(!b|!K[a+120|0]){break n}}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}J[a+116>>2]=j;J[a+112>>2]=h;H[a+120|0]=1;}J[a+108>>2]=h;break l}k=J[a+108>>2];if(!((d|0)<=(k|0)|(d|0)<=J[a+112>>2])){p:{if(!d){j=0;break p}J[8456]=J[8456]+1;j=ua[J[8258]](d<<2,16)|0;k=J[a+108>>2];}b=J[a+116>>2];q:{r:{if((k|0)>0){c=0;i=0;if(k>>>0>=4){h=k&-4;l=0;while(1){g=i<<2;J[g+j>>2]=J[b+g>>2];n=g|4;J[n+j>>2]=J[b+n>>2];n=g|8;J[n+j>>2]=J[b+n>>2];g=g|12;J[g+j>>2]=J[b+g>>2];i=i+4|0;l=l+4|0;if((h|0)!=(l|0)){continue}break}}g=k&3;if(g){while(1){h=i<<2;J[h+j>>2]=J[b+h>>2];i=i+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(K[a+120|0]){break r}break q}if(!b|!K[a+120|0]){break q}}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}J[a+116>>2]=j;J[a+112>>2]=d;H[a+120|0]=1;}J[a+108>>2]=d;}k=J[a+148>>2];if(!((e|0)<=(k|0)|(e|0)<=J[a+152>>2])){s:{if(!e){j=0;break s}J[8456]=J[8456]+1;j=ua[J[8258]](e<<2,16)|0;k=J[a+148>>2];}b=J[a+156>>2];t:{u:{if((k|0)>0){c=0;i=0;if(k>>>0>=4){h=k&-4;l=0;while(1){g=i<<2;J[g+j>>2]=J[b+g>>2];n=g|4;J[n+j>>2]=J[b+n>>2];n=g|8;J[n+j>>2]=J[b+n>>2];g=g|12;J[g+j>>2]=J[b+g>>2];i=i+4|0;l=l+4|0;if((h|0)!=(l|0)){continue}break}}g=k&3;if(g){while(1){h=i<<2;J[h+j>>2]=J[b+h>>2];i=i+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(K[a+160|0]){break u}break t}if(!b|!K[a+160|0]){break t}}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}J[a+156>>2]=j;J[a+152>>2]=e;H[a+160|0]=1;}J[a+148>>2]=e;v:{if((f|0)<=0){break v}c=J[a+136>>2];b=0;i=0;if(f>>>0>=8){g=f&-8;k=0;while(1){J[c+(i<<2)>>2]=i;h=i|1;J[c+(h<<2)>>2]=h;h=i|2;J[c+(h<<2)>>2]=h;h=i|3;J[c+(h<<2)>>2]=h;h=i|4;J[c+(h<<2)>>2]=h;h=i|5;J[c+(h<<2)>>2]=h;h=i|6;J[c+(h<<2)>>2]=h;h=i|7;J[c+(h<<2)>>2]=h;i=i+8|0;k=k+8|0;if((g|0)!=(k|0)){continue}break}}f=f&7;if(!f){break v}while(1){J[c+(i<<2)>>2]=i;i=i+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}w:{if((d|0)<=0){break w}c=J[a+116>>2];b=0;i=0;if(d>>>0>=8){f=d&-8;k=0;while(1){J[c+(i<<2)>>2]=i;g=i|1;J[c+(g<<2)>>2]=g;g=i|2;J[c+(g<<2)>>2]=g;g=i|3;J[c+(g<<2)>>2]=g;g=i|4;J[c+(g<<2)>>2]=g;g=i|5;J[c+(g<<2)>>2]=g;g=i|6;J[c+(g<<2)>>2]=g;g=i|7;J[c+(g<<2)>>2]=g;i=i+8|0;k=k+8|0;if((f|0)!=(k|0)){continue}break}}d=d&7;if(!d){break w}while(1){J[c+(i<<2)>>2]=i;i=i+1|0;b=b+1|0;if((d|0)!=(b|0)){continue}break}}x:{if((e|0)<=0){break x}a=J[a+156>>2];b=0;i=0;if(e>>>0>=8){c=e&-8;k=0;while(1){J[a+(i<<2)>>2]=i;d=i|1;J[a+(d<<2)>>2]=d;d=i|2;J[a+(d<<2)>>2]=d;d=i|3;J[a+(d<<2)>>2]=d;d=i|4;J[a+(d<<2)>>2]=d;d=i|5;J[a+(d<<2)>>2]=d;d=i|6;J[a+(d<<2)>>2]=d;d=i|7;J[a+(d<<2)>>2]=d;i=i+8|0;k=k+8|0;if((c|0)!=(k|0)){continue}break}}c=e&7;if(!c){break x}while(1){J[a+(i<<2)>>2]=i;i=i+1|0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}ua[J[8263]]();sa=o+256|0;return Q(Q(0))}function ee(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=Q(0),o=0,p=0,q=0,r=Q(0),s=0,t=Q(0),u=Q(0),v=0,w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=0,C=0,D=0,E=0,F=0,G=0;i=sa-144|0;sa=i;a:{if((c|0)<=0){b=J[a+12>>2];if(!(b?!b|!K[a+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+12>>2]=0;H[a+16|0]=1;J[a+4>>2]=0;J[a+8>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;b=J[a+52>>2];if(!(b?!b|!K[a+56|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+52>>2]=0;H[a+56|0]=1;J[a+44>>2]=0;J[a+48>>2]=0;break a}H[i+112|0]=1;J[i+88>>2]=0;J[i+92>>2]=256;J[i+72>>2]=0;J[i+76>>2]=256;J[i+56>>2]=0;J[i+60>>2]=256;J[i+108>>2]=0;J[i+100>>2]=0;J[i+104>>2]=0;J[i+80>>2]=0;J[i+84>>2]=0;J[i+64>>2]=0;J[i+68>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;e=i+16|0;h=sa-48|0;sa=h;w=Q(-1.0000000150474662e30);x=Q(1.0000000150474662e30);k=c;b:{if((c|0)>0){c=b;n=Q(1.0000000150474662e30);r=Q(1.0000000150474662e30);t=Q(-1.0000000150474662e30);u=Q(-1.0000000150474662e30);while(1){y=N[c+8>>2];w=w<y?y:w;z=N[c+4>>2];t=t<z?z:t;A=N[c>>2];u=u<A?A:u;x=x>y?y:x;n=n>z?z:n;r=r>A?A:r;c=c+16|0;l=l+1|0;if((k|0)!=(l|0)){continue}break}break b}u=Q(-1.0000000150474662e30);t=Q(-1.0000000150474662e30);r=Q(1.0000000150474662e30);n=Q(1.0000000150474662e30);}J[e+12>>2]=0;J[e+28>>2]=0;N[e+24>>2]=Q(w+x)*Q(.5);N[e+20>>2]=Q(t+n)*Q(.5);N[e+16>>2]=Q(u+r)*Q(.5);r=Q(u-r);n=Q(t-n);d=r<n;t=Q(w-x);c=t>(d?n:r)?2:d;J[e+112>>2]=c;d=t>(d?r:n)?!d:2;d=(c|0)==(d|0)?c+(c>>>0>1?-2:1)|0:d;J[e+104>>2]=d;d=c+d|0;J[e+108>>2]=3-d;t=Q(t*Q(9788566967472434e-20));c=(c|0)==((4-d|0)%3|0);t=c?t:Q(-t);N[e+8>>2]=t;n=Q(n*Q(9788566967472434e-20));n=c?n:Q(-n);N[e+4>>2]=n;r=Q(r*Q(9788566967472434e-20));r=c?r:Q(-r);N[e>>2]=r;H[h+44|0]=1;J[h+36>>2]=0;J[h+40>>2]=0;c:{d:{if((k|0)>0){J[8456]=J[8456]+1;F=h,G=ua[J[8258]](k<<4,16)|0,J[F+40>>2]=G;H[h+44|0]=1;J[h+36>>2]=k;J[h+32>>2]=k;if((k|0)<=0){break c}t=t!=Q(0)?Q(Q(1)/t):t;u=n!=Q(0)?Q(Q(1)/n):n;r=r!=Q(0)?Q(Q(1)/r):r;c=h+8|0;m=c+(J[e+104>>2]<<2)|0;g=c+(J[e+112>>2]<<2)|0;s=c+(J[e+108>>2]<<2)|0;w=N[e+24>>2];x=N[e+20>>2];y=N[e+16>>2];j=J[h+40>>2];l=0;while(1){n=N[b>>2];z=N[b+4>>2];A=N[b+8>>2];J[h+20>>2]=0;N[h+16>>2]=t*Q(A-w);N[h+12>>2]=u*Q(z-x);N[h+8>>2]=r*Q(n-y);c=j+(l<<4)|0;n=N[s>>2];e:{if(Q(R(n))<Q(2147483648)){d=~~n;break e}d=-2147483648;}J[c>>2]=d;n=N[g>>2];f:{if(Q(R(n))<Q(2147483648)){d=~~n;break f}d=-2147483648;}J[c+4>>2]=d;n=N[m>>2];J[c+12>>2]=l;if(Q(R(n))<Q(2147483648)){d=~~n;}else {d=-2147483648;}J[c+8>>2]=d;b=b+16|0;l=l+1|0;if((k|0)!=(l|0)){continue}break}break d}J[h+32>>2]=k;break c}if((k|0)<2){break c}fe(h+28|0,h+8|0,0,k-1|0);}J[e+44>>2]=k;J[e+40>>2]=0;J[e+36>>2]=J[e+32>>2];b=J[e+84>>2];g:{if((k|0)<=(b|0)){break g}if((k|0)>J[e+88>>2]){h:{if(!k){l=0;g=b;break h}J[8456]=J[8456]+1;l=ua[J[8258]](k<<2,16)|0;g=J[e+84>>2];}i:{if((g|0)<=0){break i}m=0;c=0;if(g>>>0>=4){j=g&-4;d=0;while(1){s=c<<2;J[s+l>>2]=J[s+J[e+92>>2]>>2];o=s|4;J[o+l>>2]=J[o+J[e+92>>2]>>2];o=s|8;J[o+l>>2]=J[o+J[e+92>>2]>>2];s=s|12;J[s+l>>2]=J[s+J[e+92>>2]>>2];c=c+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=g&3;if(!d){break i}while(1){g=c<<2;J[g+l>>2]=J[g+J[e+92>>2]>>2];c=c+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}c=J[e+92>>2];if(!(c?!c|!K[e+96|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[e+92>>2]=l;H[e+96|0]=1;J[e+88>>2]=k;}d=k+(b^-1)|0;m=k-b&3;if(m){c=0;while(1){J[J[e+92>>2]+(b<<2)>>2]=0;b=b+1|0;c=c+1|0;if((m|0)!=(c|0)){continue}break}}if(d>>>0<3){break g}while(1){c=b<<2;J[c+J[e+92>>2]>>2]=0;J[(c+J[e+92>>2]|0)+4>>2]=0;J[(c+J[e+92>>2]|0)+8>>2]=0;J[(c+J[e+92>>2]|0)+12>>2]=0;b=b+4|0;if((k|0)!=(b|0)){continue}break}}J[e+84>>2]=k;if((k|0)>0){j=0;while(1){d=J[e+40>>2];j:{if(d){break j}b=J[e+36>>2];k:{if(b){J[e+36>>2]=J[b+8>>2];d=J[b>>2];break k}J[8456]=J[8456]+1;b=ua[J[8258]](12,16)|0;c=J[e+44>>2];J[b+8>>2]=0;J[b+4>>2]=c;J[8456]=J[8456]+1;d=ua[J[8258]](P(c,112),16)|0;J[b>>2]=d;J[b+8>>2]=J[e+32>>2];J[e+32>>2]=b;}s=J[b+4>>2];if((s|0)<=0){break j}o=0;m=0;c=d;if(s>>>0>=4){p=s&-4;l=0;b=d;g=0;while(1){c=b+448|0;m=l+4|0;J[b+336>>2]=(s|0)>(m|0)?c:0;J[b+224>>2]=(s|0)>(l|3)?b+336|0:0;J[b+112>>2]=(s|0)>(l|2)?b+224|0:0;J[b>>2]=(s|0)>(l|1)?b+112|0:0;l=m;b=c;g=g+4|0;if((p|0)!=(g|0)){continue}break}}b=s&3;if(!b){break j}while(1){l=c;c=c+112|0;m=m+1|0;J[l>>2]=(s|0)>(m|0)?c:0;o=o+1|0;if((b|0)!=(o|0)){continue}break}}J[e+40>>2]=J[d>>2];J[d+16>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;J[d>>2]=0;J[d+4>>2]=0;J[d+104>>2]=-1;b=J[h+40>>2]+(j<<4)|0;c=J[b+4>>2];J[d+88>>2]=J[b>>2];J[d+92>>2]=c;c=J[b+12>>2];J[d+96>>2]=J[b+8>>2];J[d+100>>2]=c;J[J[e+92>>2]+(j<<2)>>2]=d;j=j+1|0;if((k|0)!=(j|0)){continue}break}}b=J[h+40>>2];if(!(b?!b|!K[h+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[h+40>>2]=0;H[h+44|0]=1;J[h+32>>2]=0;J[h+36>>2]=0;J[e+116>>2]=0;J[e+120>>2]=0;J[e+60>>2]=P(k,6);J[e+56>>2]=0;J[e+100>>2]=-3;J[e+52>>2]=J[e+48>>2];J[h+16>>2]=0;J[h+20>>2]=0;J[h+8>>2]=0;J[h+12>>2]=0;Cc(e,0,k,h+8|0);J[e+124>>2]=J[h+8>>2];b=J[h+40>>2];if(!(b?!b|!K[h+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}sa=h+48|0;if((J[a+4>>2]&J[a+8>>2])<0){b=J[a+12>>2];if(!(b?!b|!K[a+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+16|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;}J[a+4>>2]=0;b=J[a+24>>2];l:{if((b|0)>=0){break l}if(J[a+28>>2]<0){c=J[a+32>>2];if(!(c?!c|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}H[a+36|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;}c=b;m=0-b&3;if(m){while(1){d=J[a+32>>2]+P(c,12)|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;c=c+1|0;f=f+1|0;if((m|0)!=(f|0)){continue}break}}if(b>>>0>4294967292){break l}while(1){b=P(c,12);d=b+J[a+32>>2]|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;d=b+J[a+32>>2]|0;J[d+20>>2]=0;J[d+12>>2]=0;J[d+16>>2]=0;d=b+J[a+32>>2]|0;J[d+32>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;b=b+J[a+32>>2]|0;J[b+44>>2]=0;J[b+36>>2]=0;J[b+40>>2]=0;c=c+4|0;if(c){continue}break}}J[a+24>>2]=0;c=J[a+44>>2];if((c|0)<0){b=J[a+52>>2];if(J[a+48>>2]<0){if(!(b?!b|!K[a+56|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+56|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;b=0;}d=b;b=c<<2;Fa(d+b|0,0,0-b|0);}J[a+44>>2]=0;b=J[i+140>>2];m:{if(J[b+104>>2]>=0){break m}J[b+104>>2]=0;J[8456]=J[8456]+1;k=ua[J[8258]](4,16)|0;J[k>>2]=b;c=0;m=1;e=1;while(1){s=c;d=sa-16|0;sa=d;n:{o:{p:{q:{o=J[(c<<2)+k>>2];b=o;r:{if(J[b+100>>2]>=0){N[d+(J[i+124>>2]<<2)>>2]=J[b+88>>2];break r}n=eb(b+24|0);c=b+72|0;r=eb(c);f=J[b+100>>2];N[d+(J[i+124>>2]<<2)>>2]=n/r;if((f|0)<0){break q}}N[d+(J[i+128>>2]<<2)>>2]=J[b+92>>2];break p}n=eb(b+40|0);r=eb(c);c=J[b+100>>2];N[d+(J[i+128>>2]<<2)>>2]=n/r;if((c|0)<0){break o}}n=Q(J[b+96>>2]);break n}n=Q(eb(b+56|0)/eb(b+72|0));}N[d+(J[i+120>>2]<<2)>>2]=n;n=N[i+36>>2];r=N[i+40>>2];t=N[i+32>>2];u=N[i+16>>2];w=N[i+20>>2];x=N[i+24>>2];y=N[d>>2];z=N[d+4>>2];A=N[d+8>>2];J[i+12>>2]=0;N[i+8>>2]=r+Q(A*x);N[i+4>>2]=n+Q(z*w);N[i>>2]=t+Q(y*u);sa=d+16|0;f=J[a+4>>2];s:{if((f|0)!=J[a+8>>2]){break s}l=f?f<<1:1;if((l|0)<=(f|0)){break s}t:{if(!l){d=0;break t}J[8456]=J[8456]+1;d=ua[J[8258]](l<<4,16)|0;f=J[a+4>>2];}u:{if((f|0)<=0){break u}c=0;if((f|0)!=1){p=f&-2;b=0;while(1){h=c<<4;j=h+d|0;g=h+J[a+12>>2]|0;q=J[g+4>>2];J[j>>2]=J[g>>2];J[j+4>>2]=q;q=J[g+12>>2];J[j+8>>2]=J[g+8>>2];J[j+12>>2]=q;g=h|16;h=g+d|0;g=g+J[a+12>>2]|0;j=J[g+4>>2];J[h>>2]=J[g>>2];J[h+4>>2]=j;j=J[g+12>>2];J[h+8>>2]=J[g+8>>2];J[h+12>>2]=j;c=c+2|0;b=b+2|0;if((p|0)!=(b|0)){continue}break}}if(!(f&1)){break u}c=c<<4;b=c+d|0;c=c+J[a+12>>2]|0;f=J[c+4>>2];J[b>>2]=J[c>>2];J[b+4>>2]=f;f=J[c+12>>2];J[b+8>>2]=J[c+8>>2];J[b+12>>2]=f;}b=J[a+12>>2];if(!(b?!b|!K[a+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+12>>2]=d;H[a+16|0]=1;J[a+8>>2]=l;f=J[a+4>>2];}c=J[i+4>>2];b=J[a+12>>2]+(f<<4)|0;J[b>>2]=J[i>>2];J[b+4>>2]=c;c=J[i+12>>2];J[b+8>>2]=J[i+8>>2];J[b+12>>2]=c;J[a+4>>2]=J[a+4>>2]+1;b=-1;l=-1;D=J[o+8>>2];c=D;if(c){while(1){if(J[c+20>>2]<0){h=J[a+24>>2];f=h;v:{if((h|0)!=J[a+28>>2]){break v}o=f?h<<1:1;if((o|0)<=(f|0)){break v}w:{if(!o){j=0;d=h;break w}J[8456]=J[8456]+1;j=ua[J[8258]](P(o,12),16)|0;d=J[a+24>>2];}x:{if((d|0)<=0){break x}f=0;if((d|0)!=1){B=d&-2;g=0;while(1){q=P(f,12);p=q+J[a+32>>2]|0;v=J[p+4>>2];q=j+q|0;J[q>>2]=J[p>>2];J[q+4>>2]=v;J[q+8>>2]=J[p+8>>2];q=P(f|1,12);p=q+J[a+32>>2]|0;v=J[p+4>>2];q=j+q|0;J[q>>2]=J[p>>2];J[q+4>>2]=v;J[q+8>>2]=J[p+8>>2];f=f+2|0;g=g+2|0;if((B|0)!=(g|0)){continue}break}}if(!(d&1)){break x}f=P(f,12);d=f+J[a+32>>2]|0;g=J[d+4>>2];f=f+j|0;J[f>>2]=J[d>>2];J[f+4>>2]=g;J[f+8>>2]=J[d+8>>2];}d=J[a+32>>2];if(!(d?!d|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+32>>2]=j;H[a+36|0]=1;J[a+28>>2]=o;f=J[a+24>>2];}d=J[a+32>>2]+P(f,12)|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;g=J[a+24>>2]+1|0;J[a+24>>2]=g;y:{if(J[a+28>>2]!=(g|0)){break y}d=g?g<<1:1;if((d|0)<=(g|0)){break y}z:{if(!d){j=0;break z}J[8456]=J[8456]+1;j=ua[J[8258]](P(d,12),16)|0;g=J[a+24>>2];}A:{if((g|0)<=0){break A}q=g&1;f=0;if((g|0)!=1){B=g&-2;g=0;while(1){p=P(f,12);o=p+J[a+32>>2]|0;v=J[o+4>>2];p=j+p|0;J[p>>2]=J[o>>2];J[p+4>>2]=v;J[p+8>>2]=J[o+8>>2];p=P(f|1,12);o=p+J[a+32>>2]|0;v=J[o+4>>2];p=j+p|0;J[p>>2]=J[o>>2];J[p+4>>2]=v;J[p+8>>2]=J[o+8>>2];f=f+2|0;g=g+2|0;if((B|0)!=(g|0)){continue}break}}if(!q){break A}g=P(f,12);f=g+J[a+32>>2]|0;o=J[f+4>>2];g=g+j|0;J[g>>2]=J[f>>2];J[g+4>>2]=o;J[g+8>>2]=J[f+8>>2];}f=J[a+32>>2];if(!(f?!f|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](f);}J[a+32>>2]=j;H[a+36|0]=1;J[a+28>>2]=d;g=J[a+24>>2];}d=J[a+32>>2]+P(g,12)|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[a+24>>2]=J[a+24>>2]+1;o=J[a+32>>2];J[c+20>>2]=h;v=h+1|0;J[J[c+8>>2]+20>>2]=v;p=P(h,12)+o|0;J[p+16>>2]=-1;J[p+4>>2]=1;q=J[c+12>>2];d=J[q+104>>2];B:{if((d|0)>=0){f=m;m=d;break B}J[q+104>>2]=m;C:{D:{if((e|0)!=(m|0)){break D}g=e?e<<1:1;if((g|0)<=(e|0)){break D}if(g){J[8456]=J[8456]+1;d=ua[J[8258]](g<<2,16)|0;}else {d=0;}E:{if((e|0)>0){B=0;f=0;if(e>>>0>=4){E=e&-4;h=0;while(1){j=f<<2;J[j+d>>2]=J[j+k>>2];C=j|4;J[C+d>>2]=J[k+C>>2];C=j|8;J[C+d>>2]=J[k+C>>2];j=j|12;J[j+d>>2]=J[j+k>>2];f=f+4|0;h=h+4|0;if((E|0)!=(h|0)){continue}break}}e=e&3;if(!e){break E}while(1){h=f<<2;J[h+d>>2]=J[h+k>>2];f=f+1|0;B=B+1|0;if((e|0)!=(B|0)){continue}break}break E}if(!k){break C}}if(k){J[8457]=J[8457]+1;ua[J[8259]](k);}break C}d=k;g=e;}J[(m<<2)+d>>2]=q;f=m+1|0;k=d;e=g;}J[p+8>>2]=m;J[(P(v,12)+o|0)+8>>2]=s;m=f;}f=J[c+20>>2];d=f;if((b|0)>=0){J[J[a+32>>2]+P(f,12)>>2]=b-f;d=l;}b=f;l=d;c=J[c>>2];if((D|0)!=(c|0)){continue}break}J[J[a+32>>2]+P(l,12)>>2]=b-l;}c=s+1|0;if((m|0)>(c|0)){continue}break}h=0;while(1){o=J[J[(h<<2)+k>>2]+8>>2];f=o;if(f){while(1){c=J[f+20>>2];if((c|0)>=0){j=J[a+44>>2];F:{if((j|0)!=J[a+48>>2]){break F}e=j?j<<1:1;if((e|0)<=(j|0)){break F}G:{if(!e){d=0;break G}J[8456]=J[8456]+1;d=ua[J[8258]](e<<2,16)|0;j=J[a+44>>2];}b=J[a+52>>2];H:{I:{if((j|0)>0){g=0;c=0;if(j>>>0>=4){p=j&-4;l=0;while(1){m=c<<2;J[m+d>>2]=J[b+m>>2];q=m|4;J[q+d>>2]=J[b+q>>2];q=m|8;J[q+d>>2]=J[b+q>>2];m=m|12;J[m+d>>2]=J[b+m>>2];c=c+4|0;l=l+4|0;if((p|0)!=(l|0)){continue}break}}m=j&3;if(!m){break I}while(1){l=c<<2;J[l+d>>2]=J[b+l>>2];c=c+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}break I}if(!b){break H}}if(b?K[a+56|0]:0){J[8457]=J[8457]+1;ua[J[8259]](b);}j=J[a+44>>2];}J[a+52>>2]=d;H[a+56|0]=1;J[a+48>>2]=e;c=J[f+20>>2];}J[J[a+52>>2]+(j<<2)>>2]=c;J[a+44>>2]=J[a+44>>2]+1;c=f;while(1){J[c+20>>2]=-1;c=J[J[c+8>>2]+4>>2];if((f|0)!=(c|0)){continue}break}}f=J[f>>2];if((o|0)!=(f|0)){continue}break}}b=(h|0)==(s|0);h=h+1|0;if(!b){continue}break}if(!k){break m}if(k){J[8457]=J[8457]+1;ua[J[8259]](k);}}a=J[i+108>>2];if(!(a?!a|!K[i+112|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[i+108>>2]=0;H[i+112|0]=1;J[i+100>>2]=0;J[i+104>>2]=0;while(1){a=J[i+80>>2];if(a){J[i+80>>2]=J[a+8>>2];b=J[a>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}continue}break}while(1){a=J[i+64>>2];if(a){J[i+64>>2]=J[a+8>>2];b=J[a>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}continue}break}while(1){a=J[i+48>>2];if(!a){break a}J[i+48>>2]=J[a+8>>2];b=J[a>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}continue}}sa=i+144|0;}function Hc(a,b,c){var d=0,e=0,f=Q(0),g=0,h=0,i=0,j=0,k=Q(0),l=0,m=0,n=Q(0),o=Q(0),p=0,q=Q(0),r=Q(0),s=Q(0),t=0,u=Q(0),v=0,w=Q(0),x=Q(0),y=0,z=0,A=0,B=Q(0),C=0,D=0,E=Q(0),F=0,G=0,M=0,O=Q(0),P=Q(0);l=sa-32|0;sa=l;A=J[a+56>>2];a:{if((c-b|0)==1){b:{if(K[a+60|0]){b=J[a+116>>2]+(b<<4)|0;e=J[b+4>>2];c=J[a+136>>2]+(A<<4)|0;J[c>>2]=J[b>>2];J[c+4>>2]=e;break b}b=J[a+76>>2]+(b<<6)|0;e=J[b+4>>2];c=J[a+96>>2]+(A<<6)|0;J[c>>2]=J[b>>2];J[c+4>>2]=e;e=J[b+60>>2];J[c+56>>2]=J[b+56>>2];J[c+60>>2]=e;e=J[b+52>>2];J[c+48>>2]=J[b+48>>2];J[c+52>>2]=e;e=J[b+44>>2];J[c+40>>2]=J[b+40>>2];J[c+44>>2]=e;e=J[b+36>>2];J[c+32>>2]=J[b+32>>2];J[c+36>>2]=e;e=J[b+28>>2];J[c+24>>2]=J[b+24>>2];J[c+28>>2]=e;e=J[b+20>>2];J[c+16>>2]=J[b+16>>2];J[c+20>>2]=e;}e=J[b+12>>2];J[c+8>>2]=J[b+8>>2];J[c+12>>2]=e;J[a+56>>2]=J[a+56>>2]+1;break a}p=c;e=b;g=c-e|0;c:{d:{e:{if((e|0)>=(c|0)){E=Q(g|0);break e}f:{if(!K[a+60|0]){d=J[a+76>>2];c=b;while(1){h=d+(c<<6)|0;x=Q(x+Q(Q(N[h+16>>2]+N[h>>2])*Q(.5)));r=Q(r+Q(Q(N[h+24>>2]+N[h+8>>2])*Q(.5)));s=Q(s+Q(Q(N[h+20>>2]+N[h+4>>2])*Q(.5)));c=c+1|0;if((p|0)!=(c|0)){continue}break}break f}u=N[a+12>>2];o=N[a+8>>2];q=N[a+44>>2];k=N[a+40>>2];d=J[a+116>>2];n=N[a+4>>2];f=N[a+36>>2];c=b;while(1){h=d+(c<<4)|0;x=Q(x+Q(Q(Q(Q(Q(L[h+6>>1])/f)+n)+Q(Q(Q(L[h>>1])/f)+n))*Q(.5)));r=Q(r+Q(Q(Q(Q(Q(L[h+10>>1])/q)+u)+Q(Q(Q(L[h+4>>1])/q)+u))*Q(.5)));s=Q(s+Q(Q(Q(Q(Q(L[h+8>>1])/k)+o)+Q(Q(Q(L[h+2>>1])/k)+o))*Q(.5)));c=c+1|0;if((p|0)!=(c|0)){continue}break}}E=Q(g|0);if((e|0)<(p|0)){break d}}r=Q(0);s=Q(0);break c}f=Q(Q(1)/E);O=Q(f*r);P=Q(f*s);x=Q(f*x);s=Q(0);if(!K[a+60|0]){c=J[a+76>>2];r=Q(0);while(1){d=c+(e<<6)|0;f=Q(Q(Q(N[d+16>>2]+N[d>>2])*Q(.5))-x);w=Q(w+Q(f*f));f=Q(Q(Q(N[d+24>>2]+N[d+8>>2])*Q(.5))-O);s=Q(s+Q(f*f));f=Q(Q(Q(N[d+20>>2]+N[d+4>>2])*Q(.5))-P);r=Q(r+Q(f*f));e=e+1|0;if((p|0)!=(e|0)){continue}break}break c}B=N[a+12>>2];u=N[a+8>>2];o=N[a+44>>2];q=N[a+40>>2];c=J[a+116>>2];k=N[a+4>>2];n=N[a+36>>2];r=Q(0);while(1){d=c+(e<<4)|0;f=Q(Q(Q(Q(Q(Q(L[d+6>>1])/n)+k)+Q(Q(Q(L[d>>1])/n)+k))*Q(.5))-x);w=Q(w+Q(f*f));f=Q(Q(Q(Q(Q(Q(L[d+10>>1])/o)+B)+Q(Q(Q(L[d+4>>1])/o)+B))*Q(.5))-O);s=Q(s+Q(f*f));f=Q(Q(Q(Q(Q(Q(L[d+8>>1])/q)+u)+Q(Q(Q(L[d+2>>1])/q)+u))*Q(.5))-P);r=Q(r+Q(f*f));e=e+1|0;if((p|0)!=(e|0)){continue}break}}k=Q(Q(1)/Q(E+Q(-1)));n=Q(k*w);f=Q(k*r);c=n<f;g=Q(k*s)>(c?f:n)?2:c;r=Q(0);s=Q(0);w=Q(0);i=sa-96|0;J[i+28>>2]=0;v=p-b|0;d=(b|0)>=(p|0);g:{if(d){break g}if(!K[a+60|0]){e=J[a+76>>2];c=b;while(1){h=e+(c<<6)|0;w=Q(Q(Q(N[h+16>>2]+N[h>>2])*Q(.5))+w);r=Q(Q(Q(N[h+24>>2]+N[h+8>>2])*Q(.5))+r);s=Q(Q(Q(N[h+20>>2]+N[h+4>>2])*Q(.5))+s);c=c+1|0;if((p|0)!=(c|0)){continue}break}break g}u=N[a+12>>2];o=N[a+8>>2];q=N[a+44>>2];k=N[a+40>>2];e=J[a+116>>2];n=N[a+4>>2];f=N[a+36>>2];c=b;while(1){h=e+(c<<4)|0;w=Q(Q(Q(Q(Q(Q(L[h+6>>1])/f)+n)+Q(Q(Q(L[h>>1])/f)+n))*Q(.5))+w);r=Q(Q(Q(Q(Q(Q(L[h+10>>1])/q)+u)+Q(Q(Q(L[h+4>>1])/q)+u))*Q(.5))+r);s=Q(Q(Q(Q(Q(Q(L[h+8>>1])/k)+o)+Q(Q(Q(L[h+2>>1])/k)+o))*Q(.5))+s);c=c+1|0;if((p|0)!=(c|0)){continue}break}}f=Q(Q(1)/Q(v|0));N[i+24>>2]=f*r;N[i+20>>2]=f*s;N[i+16>>2]=f*w;e=b;if(!d){c=g<<2;B=N[c+(i+16|0)>>2];m=c+i|0;c=b;while(1){d=K[a+60|0];h:{if(d){g=J[a+116>>2]+(c<<4)|0;u=N[a+44>>2];o=N[a+12>>2];r=Q(Q(Q(L[g+4>>1])/u)+o);q=N[a+40>>2];k=N[a+8>>2];s=Q(Q(Q(L[g+2>>1])/q)+k);n=N[a+36>>2];f=N[a+4>>2];w=Q(Q(Q(L[g>>1])/n)+f);x=Q(Q(Q(L[g+10>>1])/u)+o);E=Q(Q(Q(L[g+8>>1])/q)+k);f=Q(Q(Q(L[g+6>>1])/n)+f);break h}g=J[a+76>>2]+(c<<6)|0;r=N[g+8>>2];s=N[g+4>>2];w=N[g>>2];x=N[g+24>>2];E=N[g+20>>2];f=N[g+16>>2];}J[i+12>>2]=0;N[i+8>>2]=Q(x+r)*Q(.5);N[i+4>>2]=Q(E+s)*Q(.5);N[i>>2]=Q(f+w)*Q(.5);if(B<N[m>>2]){i:{if(d){g=J[a+116>>2];t=g+(c<<4)|0;h=t;d=J[h+12>>2];J[i+40>>2]=J[h+8>>2];J[i+44>>2]=d;d=J[h+4>>2];J[i+32>>2]=J[h>>2];J[i+36>>2]=d;h=g;g=e<<4;h=h+g|0;d=J[h+4>>2];J[t>>2]=J[h>>2];J[t+4>>2]=d;d=J[h+12>>2];J[t+8>>2]=J[h+8>>2];J[t+12>>2]=d;d=J[i+36>>2];g=g+J[a+116>>2]|0;J[g>>2]=J[i+32>>2];J[g+4>>2]=d;d=J[i+44>>2];J[g+8>>2]=J[i+40>>2];J[g+12>>2]=d;break i}h=J[a+76>>2];j=h+(c<<6)|0;d=J[j+60>>2];J[i+88>>2]=J[j+56>>2];J[i+92>>2]=d;d=J[j+52>>2];J[i+80>>2]=J[j+48>>2];J[i+84>>2]=d;d=J[j+44>>2];J[i+72>>2]=J[j+40>>2];J[i+76>>2]=d;d=J[j+36>>2];t=i- -64|0;g=t;J[g>>2]=J[j+32>>2];J[g+4>>2]=d;d=J[j+28>>2];J[i+56>>2]=J[j+24>>2];J[i+60>>2]=d;d=J[j+20>>2];J[i+48>>2]=J[j+16>>2];J[i+52>>2]=d;d=J[j+12>>2];J[i+40>>2]=J[j+8>>2];J[i+44>>2]=d;d=J[j+4>>2];J[i+32>>2]=J[j>>2];J[i+36>>2]=d;g=e<<6;h=g+h|0;d=J[h+4>>2];J[j>>2]=J[h>>2];J[j+4>>2]=d;d=J[h+12>>2];J[j+8>>2]=J[h+8>>2];J[j+12>>2]=d;d=J[h+20>>2];J[j+16>>2]=J[h+16>>2];J[j+20>>2]=d;d=J[h+28>>2];J[j+24>>2]=J[h+24>>2];J[j+28>>2]=d;d=J[h+36>>2];J[j+32>>2]=J[h+32>>2];J[j+36>>2]=d;d=J[h+44>>2];J[j+40>>2]=J[h+40>>2];J[j+44>>2]=d;d=J[h+52>>2];J[j+48>>2]=J[h+48>>2];J[j+52>>2]=d;d=J[h+60>>2];J[j+56>>2]=J[h+56>>2];J[j+60>>2]=d;d=J[i+36>>2];g=g+J[a+76>>2]|0;J[g>>2]=J[i+32>>2];J[g+4>>2]=d;d=J[i+44>>2];J[g+8>>2]=J[i+40>>2];J[g+12>>2]=d;d=J[i+52>>2];J[g+16>>2]=J[i+48>>2];J[g+20>>2]=d;d=J[i+60>>2];J[g+24>>2]=J[i+56>>2];J[g+28>>2]=d;d=J[t+4>>2];J[g+32>>2]=J[t>>2];J[g+36>>2]=d;d=J[i+76>>2];J[g+40>>2]=J[i+72>>2];J[g+44>>2]=d;d=J[i+84>>2];J[g+48>>2]=J[i+80>>2];J[g+52>>2]=d;d=J[i+92>>2];J[g+56>>2]=J[i+88>>2];J[g+60>>2]=d;}e=e+1|0;}c=c+1|0;if((p|0)!=(c|0)){continue}break}}c=(v>>1)+b|0;g=c;c=(v|0)/3|0;j=(b+c|0)>=(e|0)?g:(p+(c^-1)|0)<=(e|0)?g:e;F=J[a+56>>2];j:{if(K[a+60|0]){u=N[a+40>>2];o=N[a+8>>2];q=N[a+24>>2];k=N[a+44>>2];n=N[a+12>>2];f=N[a+28>>2];c=J[a+136>>2]+(F<<4)|0;B=Q(Q(N[a+20>>2]-N[a+4>>2])*N[a+36>>2]);k:{if(B<Q(4294967296)&B>=Q(0)){e=~~B>>>0;break k}e=0;}I[c>>1]=e&65534;f=Q(Q(f-n)*k);l:{if(f<Q(4294967296)&f>=Q(0)){e=~~f>>>0;break l}e=0;}I[c+4>>1]=e&65534;f=Q(Q(q-o)*u);m:{if(f<Q(4294967296)&f>=Q(0)){e=~~f>>>0;break m}e=0;}I[c+2>>1]=e&65534;break j}c=J[a+24>>2];e=J[a+96>>2]+(F<<6)|0;J[e>>2]=J[a+20>>2];J[e+4>>2]=c;c=J[a+32>>2];J[e+8>>2]=J[a+28>>2];J[e+12>>2]=c;}c=J[a+56>>2];n:{if(K[a+60|0]){k=N[a+40>>2];o=N[a+8>>2];n=N[a+44>>2];q=N[a+12>>2];c=J[a+136>>2]+(c<<4)|0;f=N[a+4>>2];f=Q(Q(Q(f-f)*N[a+36>>2])+Q(1));o:{if(f<Q(4294967296)&f>=Q(0)){e=~~f>>>0;break o}e=0;}I[c+6>>1]=e|1;f=Q(Q(Q(q-q)*n)+Q(1));p:{if(f<Q(4294967296)&f>=Q(0)){e=~~f>>>0;break p}e=0;}I[c+10>>1]=e|1;f=Q(Q(Q(o-o)*k)+Q(1));q:{if(f<Q(4294967296)&f>=Q(0)){e=~~f>>>0;break q}e=0;}I[c+8>>1]=e|1;break n}e=J[a+96>>2]+(c<<6)|0;c=J[a+8>>2];J[e+16>>2]=J[a+4>>2];J[e+20>>2]=c;c=J[a+16>>2];J[e+24>>2]=J[a+12>>2];J[e+28>>2]=c;}if((b|0)<(p|0)){c=b;while(1){r:{if(K[a+60|0]){h=J[a+116>>2]+(c<<4)|0;g=L[h+4>>1];d=L[h+2>>1];e=L[h>>1];u=N[a+44>>2];o=N[a+40>>2];q=N[a+36>>2];J[l+28>>2]=0;k=N[a+4>>2];N[l+16>>2]=Q(Q(e>>>0)/q)+k;n=N[a+8>>2];N[l+20>>2]=Q(Q(d>>>0)/o)+n;f=N[a+12>>2];N[l+24>>2]=Q(Q(g>>>0)/u)+f;g=L[h+6>>1];d=L[h+8>>1];e=L[h+10>>1];J[l+12>>2]=0;N[l+8>>2]=f+Q(Q(e>>>0)/u);N[l+4>>2]=n+Q(Q(d>>>0)/o);N[l>>2]=k+Q(Q(g>>>0)/q);break r}d=J[a+76>>2]+(c<<6)|0;e=J[d+12>>2];J[l+24>>2]=J[d+8>>2];J[l+28>>2]=e;e=J[d+4>>2];J[l+16>>2]=J[d>>2];J[l+20>>2]=e;e=J[d+28>>2];J[l+8>>2]=J[d+24>>2];J[l+12>>2]=e;e=J[d+20>>2];J[l>>2]=J[d+16>>2];J[l+4>>2]=e;}y=J[a+56>>2];s:{if(K[a+60|0]){q=N[a+12>>2];k=N[a+44>>2];f=Q(Q(N[l+24>>2]-q)*k);t:{if(f<Q(4294967296)&f>=Q(0)){m=~~f>>>0;break t}m=0;}n=N[a+8>>2];f=N[a+40>>2];o=Q(Q(N[l+20>>2]-n)*f);u:{if(o<Q(4294967296)&o>=Q(0)){h=~~o>>>0;break u}h=0;}k=Q(Q(k*Q(N[l+8>>2]-q))+Q(1));v:{if(k<Q(4294967296)&k>=Q(0)){g=~~k>>>0;break v}g=0;}f=Q(Q(f*Q(N[l+4>>2]-n))+Q(1));w:{if(f<Q(4294967296)&f>=Q(0)){d=~~f>>>0;break w}d=0;}n=N[a+4>>2];f=N[a+36>>2];k=Q(Q(N[l+16>>2]-n)*f);x:{if(k<Q(4294967296)&k>=Q(0)){e=~~k>>>0;break x}e=0;}v=e&65534;i=J[a+136>>2];z=i+(y<<4)|0;t=v>>>0>=L[z>>1];f=Q(Q(f*Q(N[l>>2]-n))+Q(1));y:{if(f<Q(4294967296)&f>=Q(0)){e=~~f>>>0;break y}e=0;}if(!t){I[z>>1]=v;}e=e|1;t=i+(y<<4)|0;if(e>>>0>L[t+6>>1]){I[t+6>>1]=e;}e=h&65534;if(e>>>0<L[z+2>>1]){I[z+2>>1]=e;}e=d|1;h=i+(y<<4)|0;if(e>>>0>L[h+8>>1]){I[h+8>>1]=e;}e=m&65534;if(e>>>0<L[z+4>>1]){I[z+4>>1]=e;}e=g|1;d=i+(y<<4)|0;if(e>>>0<=L[d+10>>1]){break s}I[d+10>>1]=e;break s}f=N[l+16>>2];e=J[a+96>>2];d=e+(y<<6)|0;if(f<N[d>>2]){N[d>>2]=f;}f=N[l+20>>2];if(f<N[d+4>>2]){N[d+4>>2]=f;}f=N[l+24>>2];if(f<N[d+8>>2]){N[d+8>>2]=f;}f=N[l+28>>2];if(f<N[d+12>>2]){N[d+12>>2]=f;}f=N[l>>2];e=e+(y<<6)|0;if(f>N[e+16>>2]){N[e+16>>2]=f;}f=N[l+4>>2];if(f>N[e+20>>2]){N[e+20>>2]=f;}f=N[l+8>>2];if(f>N[e+24>>2]){N[e+24>>2]=f;}f=N[l+12>>2];if(!(f>N[e+28>>2])){break s}N[e+28>>2]=f;}c=c+1|0;if((p|0)!=(c|0)){continue}break}}G=J[a+56>>2]+1|0;J[a+56>>2]=G;Hc(a,b,j);y=J[a+56>>2];Hc(a,j,p);c=K[a+60|0];z=J[a+56>>2]-A|0;if(!(!c|(z|0)<129)){p=0;A=J[a+136>>2];i=A+(y<<4)|0;b=J[i+12>>2];t=(b|0)>=0?1:0-b|0;j=A+(G<<4)|0;b=J[j+12>>2];h=(b|0)>=0?1:0-b|0;if(h>>>0<=128){e=J[a+152>>2];c=e;z:{if((c|0)!=J[a+156>>2]){break z}v=c?e<<1:1;if((v|0)<=(c|0)){break z}if(v){J[8456]=J[8456]+1;M=ua[J[8258]](v<<5,16)|0;b=J[a+152>>2];}else {b=e;}A:{if((b|0)<=0){break A}if((b|0)!=1){g=b&-2;while(1){m=C<<5;d=m+M|0;D=J[a+160>>2]+m|0;c=J[D+4>>2];J[d>>2]=J[D>>2];J[d+4>>2]=c;c=J[D+28>>2];J[d+24>>2]=J[D+24>>2];J[d+28>>2]=c;c=J[D+20>>2];J[d+16>>2]=J[D+16>>2];J[d+20>>2]=c;c=J[D+12>>2];J[d+8>>2]=J[D+8>>2];J[d+12>>2]=c;c=m|32;d=c+M|0;m=c+J[a+160>>2]|0;c=J[m+4>>2];J[d>>2]=J[m>>2];J[d+4>>2]=c;c=J[m+12>>2];J[d+8>>2]=J[m+8>>2];J[d+12>>2]=c;c=J[m+20>>2];J[d+16>>2]=J[m+16>>2];J[d+20>>2]=c;c=J[m+28>>2];J[d+24>>2]=J[m+24>>2];J[d+28>>2]=c;C=C+2|0;p=p+2|0;if((g|0)!=(p|0)){continue}break}}if(!(b&1)){break A}b=C<<5;c=b+M|0;d=b+J[a+160>>2]|0;b=J[d+4>>2];J[c>>2]=J[d>>2];J[c+4>>2]=b;b=J[d+28>>2];J[c+24>>2]=J[d+24>>2];J[c+28>>2]=b;b=J[d+20>>2];J[c+16>>2]=J[d+16>>2];J[c+20>>2]=b;b=J[d+12>>2];J[c+8>>2]=J[d+8>>2];J[c+12>>2]=b;}b=J[a+160>>2];if(!(b?!b|!K[a+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+160>>2]=M;H[a+164|0]=1;J[a+156>>2]=v;c=J[a+152>>2];}J[a+152>>2]=c+1;c=J[a+160>>2]+(e<<5)|0;I[c>>1]=L[j>>1];I[c+2>>1]=L[j+2>>1];I[c+4>>1]=L[j+4>>1];b=A+(G<<4)|0;I[c+6>>1]=L[b+6>>1];I[c+8>>1]=L[b+8>>1];b=L[b+10>>1];J[c+16>>2]=h;J[c+12>>2]=G;I[c+10>>1]=b;}if((t|0)<=128){e=J[a+152>>2];c=e;B:{if((c|0)!=J[a+156>>2]){break B}v=c?e<<1:1;if((v|0)<=(c|0)){break B}C:{if(!v){b=0;c=e;break C}J[8456]=J[8456]+1;b=ua[J[8258]](v<<5,16)|0;c=J[a+152>>2];}D:{if((c|0)<=0){break D}C=0;if((c|0)!=1){h=c&-2;p=0;while(1){m=C<<5;g=m+b|0;j=m+J[a+160>>2]|0;d=J[j+4>>2];J[g>>2]=J[j>>2];J[g+4>>2]=d;d=J[j+28>>2];J[g+24>>2]=J[j+24>>2];J[g+28>>2]=d;d=J[j+20>>2];J[g+16>>2]=J[j+16>>2];J[g+20>>2]=d;d=J[j+12>>2];J[g+8>>2]=J[j+8>>2];J[g+12>>2]=d;d=m|32;g=d+b|0;m=d+J[a+160>>2]|0;d=J[m+4>>2];J[g>>2]=J[m>>2];J[g+4>>2]=d;d=J[m+12>>2];J[g+8>>2]=J[m+8>>2];J[g+12>>2]=d;d=J[m+20>>2];J[g+16>>2]=J[m+16>>2];J[g+20>>2]=d;d=J[m+28>>2];J[g+24>>2]=J[m+24>>2];J[g+28>>2]=d;C=C+2|0;p=p+2|0;if((h|0)!=(p|0)){continue}break}}if(!(c&1)){break D}c=C<<5;d=c+b|0;g=c+J[a+160>>2]|0;c=J[g+4>>2];J[d>>2]=J[g>>2];J[d+4>>2]=c;c=J[g+28>>2];J[d+24>>2]=J[g+24>>2];J[d+28>>2]=c;c=J[g+20>>2];J[d+16>>2]=J[g+16>>2];J[d+20>>2]=c;c=J[g+12>>2];J[d+8>>2]=J[g+8>>2];J[d+12>>2]=c;}c=J[a+160>>2];if(!(c?!c|!K[a+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+160>>2]=b;H[a+164|0]=1;J[a+156>>2]=v;c=J[a+152>>2];}J[a+152>>2]=c+1;c=J[a+160>>2]+(e<<5)|0;I[c>>1]=L[i>>1];I[c+2>>1]=L[i+2>>1];I[c+4>>1]=L[i+4>>1];b=A+(y<<4)|0;I[c+6>>1]=L[b+6>>1];I[c+8>>1]=L[b+8>>1];b=L[b+10>>1];J[c+16>>2]=t;J[c+12>>2]=y;I[c+10>>1]=b;}J[a+168>>2]=J[a+152>>2];c=K[a+60|0];}if(c&255){J[(J[a+136>>2]+(F<<4)|0)+12>>2]=0-z;break a}J[(J[a+96>>2]+(F<<6)|0)+32>>2]=z;}sa=l+32|0;}function Cc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0;u=sa-16|0;sa=u;a:{b:{c:{d:{e:{f=c-b|0;switch(f|0){case 1:break c;case 2:break d;case 0:break e;default:break b}}J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;break a}c=J[J[a+92>>2]+(b<<2)>>2];b=c+112|0;f:{g=J[c+88>>2];j=J[c+200>>2];k=(g|0)!=(j|0);f=J[c+204>>2];e=J[c+92>>2];g:{if(!(k|(f|0)!=(e|0))){if(J[c+96>>2]==J[c+208>>2]){break f}e=J[c+96>>2]>J[c+208>>2];f=(e?112:0)+c|0;J[f>>2]=f;f=e?b:c;J[f+4>>2]=f;J[d+4>>2]=f;J[d>>2]=f;b=e?c:b;e=f;c=e;break g}J[c+4>>2]=b;J[c>>2]=b;J[c+116>>2]=c;J[c+112>>2]=c;s=(e|0)<(f|0);i=s&(g|0)==(j|0);g=(g|0)<(j|0);j=i|g;J[d+4>>2]=j?b:c;J[d>>2]=j?c:b;f=s|g&(k&(e|0)==(f|0));e=f?b:c;f=f?c:b;}J[d+12>>2]=e;J[d+8>>2]=f;a=Dc(a,c,b);J[a+4>>2]=a;J[a>>2]=a;J[c+8>>2]=a;a=J[a+8>>2];J[a+4>>2]=a;J[a>>2]=a;J[b+8>>2]=a;break a}J[c+8>>2]=0;J[c+4>>2]=c;J[c>>2]=c;J[d+12>>2]=c;J[d+8>>2]=c;J[d+4>>2]=c;J[d>>2]=c;break a}a=J[J[a+92>>2]+(b<<2)>>2];J[a+8>>2]=0;J[a+4>>2]=a;J[a>>2]=a;J[d+12>>2]=a;J[d+8>>2]=a;J[d+4>>2]=a;J[d>>2]=a;break a}e=((f|0)/2|0)+b|0;f=e;h:{if((e|0)>=(c|0)){break h}j=J[a+92>>2];f=J[(j+(e<<2)|0)-4>>2];k=J[f+88>>2];s=J[f+96>>2];i=J[f+92>>2];f=e;while(1){g=J[j+(f<<2)>>2];if((k|0)!=J[g+88>>2]|(i|0)!=J[g+92>>2]|(s|0)!=J[g+96>>2]){break h}f=f+1|0;if((f|0)<(c|0)){continue}break}f=c;}Cc(a,b,e,d);J[u+8>>2]=0;J[u+12>>2]=0;J[u>>2]=0;J[u+4>>2]=0;Cc(a,f,c,u);o=a;c=0;h=sa-128|0;sa=h;i:{if(!J[u+4>>2]){break i}if(!J[d+4>>2]){a=J[u+4>>2];J[d>>2]=J[u>>2];J[d+4>>2]=a;a=J[u+12>>2];J[d+8>>2]=J[u+8>>2];J[d+12>>2]=a;break i}J[o+100>>2]=J[o+100>>2]-1;J[h+124>>2]=0;J[h+120>>2]=0;k=0;i=d;a=J[d+12>>2];j=J[u+8>>2];j:{k:{l:{if(J[a+88>>2]!=J[j+88>>2]|J[a+92>>2]!=J[j+92>>2]){break l}d=J[j+4>>2];if((d|0)==(j|0)){J[h+124>>2]=a;b=J[j+8>>2];a=0;if(!b){break k}J[h+120>>2]=J[b+12>>2];a=0;break j}a=J[j>>2];J[d>>2]=a;J[a+4>>2]=d;if(J[u>>2]==(j|0)){g=u;f=J[a+88>>2];e=J[d+88>>2];b=a;m:{if((f|0)<(e|0)){break m}if((e|0)==(f|0)){b=a;if(J[a+92>>2]<J[d+92>>2]){break m}}b=d;}J[g>>2]=b;}if(J[u+4>>2]!=(j|0)){break l}b=J[a+88>>2];f=J[d+88>>2];J[u+4>>2]=(b|0)>(f|0)|(b|0)==(f|0)&J[a+92>>2]>J[d+92>>2]?a:d;}m=J[u>>2];w=J[i>>2];B=J[i+4>>2];a=B;z=J[u+4>>2];d=z;j=0;s=1;while(1){l=J[a+88>>2];f=P(J[d+88>>2]-l|0,s);n:{if((f|0)>0){while(1){b=d;g=J[d+92>>2];e=f;while(1){o:{f=J[a+92>>2];l=g-f|0;d=J[(t?a:a+4|0)>>2];if((d|0)==(a|0)){break o}p=J[d+92>>2]-f|0;if((p|0)>0){break o}n=J[d+88>>2];f=P(n-J[a+88>>2]|0,s);if((P(e,p)|0)>(P(f,l)|0)|(f|0)>=0?f:0){break o}e=P(J[b+88>>2]-n|0,s);a=d;continue}break}d=J[(t?b:b+4|0)>>2];if((d|0)==(b|0)){break n}p=J[d+88>>2];f=P(p-J[a+88>>2]|0,s);if((f|0)<=0){break n}n=J[d+92>>2]-g|0;if((n|0)>=0){break n}g=P(p-J[b+88>>2]|0,s);if(!g){continue}if((g|0)>=0){break n}if((P(e,n)|0)<(P(g,l)|0)){continue}break n}}p:{if((f|0)<0){q:while(1){l=J[d+92>>2];b=J[(t?d+4|0:d)>>2];while(1){g=f;e=a;n=J[a+92>>2];p=l-n|0;r:{if((b|0)==(d|0)){break r}f=J[b+92>>2]-l|0;if((f|0)<0){break r}q=J[b+88>>2];a=P(q-J[d+88>>2]|0,s);if((P(f,g)|0)>(P(a,p)|0)|(a|0)>=0?a:0){break r}f=P(q-J[e+88>>2]|0,s);d=b;a=e;continue q}a=J[(t?e+4|0:e)>>2];if((e|0)==(a|0)){break p}q=J[a+88>>2];f=P(J[d+88>>2]-q|0,s);if((f|0)>=0){break p}A=J[a+92>>2]-n|0;if((A|0)<=0){break p}n=P(q-J[e+88>>2]|0,s);if(!n){continue}if((n|0)>=0){break p}if((P(g,A)|0)<(P(n,p)|0)){continue}break}break p}}e=J[a+92>>2];f=a;s:{if(!t){while(1){g=f;f=J[f+4>>2];if((f|0)==(a|0)|(l|0)!=J[f+88>>2]){break s}b=e;e=J[f+92>>2];if((b|0)>=(e|0)){continue}break s}}while(1){g=f;f=J[f>>2];if((f|0)==(a|0)|(l|0)!=J[f+88>>2]){break s}b=e;e=J[f+92>>2];if((b|0)>=(e|0)){continue}break}}f=J[d+92>>2];e=d;a=d;t:{if(!t){while(1){b=e;e=J[e>>2];if((e|0)==(d|0)|(l|0)!=J[e+88>>2]){break t}a=f;f=J[e+92>>2];if((a|0)<=(f|0)){continue}break t}}while(1){b=a;a=J[a+4>>2];if((d|0)==(a|0)|(l|0)!=J[a+88>>2]){break t}e=f;f=J[a+92>>2];if((e|0)<=(f|0)){continue}break}}a=g;break n}b=d;a=e;}if(!t){s=-1;j=b;k=a;a=w;b=m;}d=b;t=t+1|0;if((t|0)!=2){continue}break}J[a+4>>2]=d;J[d>>2]=a;J[k>>2]=j;J[j+4>>2]=k;if(J[m+88>>2]<J[w+88>>2]){J[i>>2]=m;}if(J[z+88>>2]>=J[B+88>>2]){J[i+4>>2]=z;}J[i+12>>2]=J[u+12>>2];J[h+124>>2]=k;a=1;}J[h+120>>2]=j;}w=J[h+120>>2];u:{if(a){z=J[h+124>>2];i=J[z+96>>2];n=J[w+96>>2];p=J[z+92>>2];j=J[w+92>>2];d=J[z+8>>2];q=J[z+88>>2];B=J[w+88>>2];J[h+80>>2]=0;a=n-i|0;g=a>>31;b=j-p|0;m=b>>31;k=us(a,g,b,m);A=ta;e=B-q|0;f=0-e|0;l=f>>31;e=us(f,l,e,e>>31);t=ta;D=us(b,m,b,m);s=e-D|0;D=t-(ta+(e>>>0<D>>>0)|0)|0;a=us(f,l,a,g);t=0-a|0;E=0-(ta+((a|0)!=0)|0)|0;if(d){a=d;while(1){r=J[a+12>>2];v=J[r+92>>2];e=v-p|0;g=e;y=e>>31;x=us(e,y,f,l);C=ta;I=J[r+88>>2];e=I-q|0;K=e>>31;G=us(b,m,e,K);v:{if((x|0)!=(0-G|0)|(0-(ta+((G|0)!=0)|0)|0)!=(C|0)){break v}g=us(k,A,g,y);y=ta;x=us(t,E,e,K);g=x+g|0;e=ta+y|0;e=g>>>0<x>>>0?e+1|0:e;G=g;y=J[r+96>>2];g=y-i|0;x=us(s,D,g,g>>31);r=G+x|0;g=ta+e|0;g=r>>>0<x>>>0?g+1|0:g;if(!r&(g|0)<=0|(g|0)<0){break v}w:{if(!c){break w}e=J[c+4>>2];if(J[c>>2]==(a|0)){if((a|0)!=(e|0)){break v}e=J[c+12>>2];g=J[J[a+8>>2]+12>>2];x=J[g+96>>2];r=J[e+96>>2]-x|0;C=J[g+92>>2];y=y-x|0;v=P(r,C-v|0)+P(y,J[e+92>>2]-C|0)|0;v=us(v,v>>31,b,m);x=ta;g=J[g+88>>2];e=P(y,g-J[e+88>>2]|0)+P(r,I-g|0)|0;r=us(e,e>>31,f,l);e=r+v|0;g=ta+x|0;g=e>>>0<r>>>0?g+1|0:g;if(!e&(g|0)<=0|(g|0)<0){break w}break v}if((a|0)!=(e|0)){break v}}c=a;}a=J[a>>2];if((d|0)!=(a|0)){continue}break}J[h+80>>2]=c;}e=J[w+8>>2];d=0;J[h+56>>2]=0;if(e){a=e;while(1){p=J[a+12>>2];q=J[p+92>>2];g=q-j|0;i=g;r=g>>31;v=us(g,r,f,l);y=ta;x=J[p+88>>2];g=x-B|0;C=g>>31;I=us(b,m,g,C);x:{if((v|0)!=(0-I|0)|(0-(ta+((I|0)!=0)|0)|0)!=(y|0)){break x}i=us(k,A,i,r);r=ta;v=us(t,E,g,C);i=v+i|0;g=ta+r|0;g=i>>>0<v>>>0?g+1|0:g;G=i;r=J[p+96>>2];i=r-n|0;p=us(s,D,i,i>>31);i=G+p|0;g=ta+g|0;g=i>>>0<p>>>0?g+1|0:g;if(!i&(g|0)<=0|(g|0)<0){break x}y:{if(!d){break y}if(J[d>>2]!=(a|0)){break x}if(J[d+4>>2]!=(a|0)){break y}g=J[d+12>>2];i=J[J[a+8>>2]+12>>2];v=J[i+96>>2];p=J[g+96>>2]-v|0;y=J[i+92>>2];r=r-v|0;q=P(p,y-q|0)+P(r,J[g+92>>2]-y|0)|0;q=us(q,q>>31,b,m);v=ta;i=J[i+88>>2];g=P(r,i-J[g+88>>2]|0)+P(p,x-i|0)|0;p=us(g,g>>31,f,l);i=p+q|0;g=ta+v|0;g=i>>>0<p>>>0?g+1|0:g;if(!i&(g|0)<=0|(g|0)<0){break x}}d=a;}a=J[a>>2];if((e|0)!=(a|0)){continue}break}J[h+56>>2]=d;}z:{if(!(c|d)){break z}he(o,z,w,h+80|0,h+56|0);a=J[h+80>>2];if(a){z=J[a+12>>2];J[h+124>>2]=z;}a=J[h+56>>2];if(!a){break z}w=J[a+12>>2];J[h+120>>2]=w;n=J[w+96>>2];j=J[w+92>>2];B=J[w+88>>2];}a=n+1|0;break u}B=J[w+88>>2]+1|0;j=J[w+92>>2];z=J[h+124>>2];a=J[w+96>>2];}p=a;a=z;f=w;i=0;g=0;s=0;k=1;c=0;b=0;t=0;while(1){n=J[f+96>>2];d=J[a+96>>2];e=J[a+92>>2];l=J[f+92>>2];m=J[a+88>>2];q=J[f+88>>2];J[h+116>>2]=-1;l=l-e|0;J[h+108>>2]=l;n=n-d|0;J[h+112>>2]=n;q=q-m|0;J[h+104>>2]=q;E=j-e|0;e=p-d|0;d=P(E,n)-P(e,l)|0;A=d>>31;J[h+80>>2]=d;J[h+84>>2]=A;m=B-m|0;e=P(e,q)-P(m,n)|0;D=e>>31;J[h+88>>2]=e;J[h+92>>2]=D;m=P(l,m)-P(q,E)|0;E=m>>31;J[h+96>>2]=m;J[h+100>>2]=E;v=q>>31;r=us(e,D,q,v);y=ta;x=l>>31;C=us(d,A,l,x);J[h+72>>2]=r-C;J[h+76>>2]=y-(ta+(r>>>0<C>>>0)|0);G=A;A=n>>31;d=us(d,G,n,A);r=ta;q=us(m,E,q,v);J[h+64>>2]=d-q;J[h+68>>2]=r-(ta+(d>>>0<q>>>0)|0);d=us(l,x,m,E);m=ta;e=us(e,D,n,A);J[h+56>>2]=d-e;J[h+60>>2]=m-(ta+(d>>>0<e>>>0)|0);J[h+48>>2]=0;J[h+40>>2]=0;J[h+44>>2]=0;J[h+32>>2]=0;J[h+36>>2]=0;d=h+104|0;e=h+80|0;m=h+56|0;l=ge(o,0,a,d,e,m,h+32|0);J[h+24>>2]=0;J[h+16>>2]=0;J[h+20>>2]=0;J[h+8>>2]=0;J[h+12>>2]=0;m=ge(o,1,f,d,e,m,h+8|0);if(!(m|l)){b=Dc(o,a,f);J[b+4>>2]=b;J[b>>2]=b;J[a+8>>2]=b;a=J[b+8>>2];J[a+4>>2]=a;J[a>>2]=a;J[f+8>>2]=a;break i}n=l?-1:1;if(!(!l|!m)){n=lb(h+32|0,h+8|0);}A:{B:{C:{if(k&1){break C}if((n|0)>=0){if(J[h+16>>2]|J[h+20>>2]|J[h+24>>2]>=0){break C}k=i;f=g;e=c;d=b;break B}if(J[h+40>>2]|J[h+44>>2]|J[h+48>>2]>=0){break C}J[h+4>>2]=l;e=c;d=b;break A}e=Dc(o,a,f);d=e;if(c){J[c+4>>2]=e;d=b;}J[e>>2]=c;k=J[e+8>>2];f=k;if(i){J[i>>2]=k;f=g;}J[k+4>>2]=i;}J[h+4>>2]=l;J[h>>2]=m;c=m;if(!n){he(o,J[h+124>>2],J[h+120>>2],h+4|0,h);c=J[h>>2];}if(!(!c|(n|0)<0)){D:{E:{if(F){a=J[F>>2];if((m|0)!=(a|0)){while(1){i=J[a+8>>2];b=0;j=0;g=J[a>>2];if((g|0)!=(a|0)){J[g+4>>2]=J[a+4>>2];J[J[a+4>>2]>>2]=g;j=g;}J[J[i+12>>2]+8>>2]=j;j=J[i>>2];if((j|0)!=(i|0)){J[j+4>>2]=J[i+4>>2];J[J[i+4>>2]>>2]=j;b=j;}J[J[a+12>>2]+8>>2]=b;J[a+16>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;J[a>>2]=J[o+56>>2];J[o+56>>2]=a;J[i+16>>2]=0;J[i+8>>2]=0;J[i+12>>2]=0;J[i>>2]=0;J[i+4>>2]=0;J[i>>2]=J[o+56>>2];J[o+56>>2]=i;J[o+116>>2]=J[o+116>>2]-1;a=g;if((m|0)!=(a|0)){continue}break}}if(k){break E}break D}if(!k){s=m;break D}F=J[m+4>>2];s=f;}J[F>>2]=f;J[f+4>>2]=F;J[k>>2]=m;J[m+4>>2]=k;c=J[h>>2];f=0;}g=f;a=J[h+120>>2];p=J[a+96>>2];j=J[a+92>>2];B=J[a+88>>2];J[h+120>>2]=J[c+12>>2];F=J[c+8>>2];i=0;break A}i=k;g=f;}F:{G:{if((n|0)<=0){n=J[h+4>>2];if(n){break G}}a=J[h+124>>2];break F}H:{I:{if(H){a=J[H+4>>2];if((l|0)!=(a|0)){while(1){k=J[a+8>>2];j=J[a+4>>2];b=0;c=0;f=J[a>>2];if((f|0)!=(a|0)){J[f+4>>2]=j;J[J[a+4>>2]>>2]=f;c=f;}J[J[k+12>>2]+8>>2]=c;c=J[k>>2];if((c|0)!=(k|0)){J[c+4>>2]=J[k+4>>2];J[J[k+4>>2]>>2]=c;b=c;}J[J[a+12>>2]+8>>2]=b;J[a+16>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;J[a>>2]=J[o+56>>2];J[o+56>>2]=a;J[k+16>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k>>2]=J[o+56>>2];J[o+56>>2]=k;J[o+116>>2]=J[o+116>>2]-1;a=j;if((l|0)!=(a|0)){continue}break}}if(!e){break H}J[d>>2]=H;a=H+4|0;break I}if(!e){t=l;break H}a=J[l>>2];J[d>>2]=a;t=d;a=a+4|0;}J[a>>2]=d;J[l>>2]=e;J[e+4>>2]=l;d=0;n=J[h+4>>2];}a=J[h+124>>2];p=J[a+96>>2];j=J[a+92>>2];B=J[a+88>>2];a=J[n+12>>2];J[h+124>>2]=a;H=J[n+8>>2];e=0;}f=J[h+120>>2];if((a|0)!=(z|0)|(w|0)!=(f|0)){k=0;c=e;b=d;continue}else {J:{if(!H){J[d>>2]=e;J[e+4>>2]=d;J[J[h+124>>2]+8>>2]=e;break J}a=J[H+4>>2];if((t|0)!=(a|0)){while(1){k=J[a+8>>2];f=J[a+4>>2];b=0;c=J[a>>2];if((c|0)!=(a|0)){J[c+4>>2]=f;J[J[a+4>>2]>>2]=c;b=c;}J[J[k+12>>2]+8>>2]=b;j=J[k>>2];K:{if((k|0)==(j|0)){j=0;break K}J[j+4>>2]=J[k+4>>2];J[J[k+4>>2]>>2]=j;}J[J[a+12>>2]+8>>2]=j;J[a+16>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;J[a>>2]=J[o+56>>2];J[o+56>>2]=a;J[k+16>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k>>2]=J[o+56>>2];J[o+56>>2]=k;J[o+116>>2]=J[o+116>>2]-1;a=f;if((t|0)!=(a|0)){continue}break}}if(!e){break J}J[d>>2]=H;J[H+4>>2]=d;J[t>>2]=e;J[e+4>>2]=t;}if(!F){J[i>>2]=g;J[g+4>>2]=i;J[J[h+120>>2]+8>>2]=i;break i}a=J[F>>2];if((s|0)!=(a|0)){while(1){c=J[a+8>>2];j=0;b=J[a>>2];if((b|0)!=(a|0)){J[b+4>>2]=J[a+4>>2];J[J[a+4>>2]>>2]=b;j=b;}J[J[c+12>>2]+8>>2]=j;j=J[c>>2];L:{if((c|0)==(j|0)){j=0;break L}J[j+4>>2]=J[c+4>>2];J[J[c+4>>2]>>2]=j;}J[J[a+12>>2]+8>>2]=j;J[a+16>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;J[a>>2]=J[o+56>>2];J[o+56>>2]=a;J[c+16>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[c>>2]=0;J[c+4>>2]=0;J[c>>2]=J[o+56>>2];J[o+56>>2]=c;J[o+116>>2]=J[o+116>>2]-1;a=b;if((s|0)!=(a|0)){continue}break}}if(!i){break i}J[F>>2]=g;J[g+4>>2]=F;J[i>>2]=s;J[s+4>>2]=i;}break}}sa=h+128|0;}sa=u+16|0;}function Rd(a){var b=0,c=0,d=0,e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=0,B=0,C=Q(0),D=Q(0),E=0,F=Q(0),G=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),P=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=0,W=0,X=0,Y=0,Z=Q(0),_=Q(0),$=0;k=sa-16|0;sa=k;a:{if(!K[a+356|0]){c=K[a+312|0];break a}H[a+356|0]=0;H[a+352|0]=0;J[a+344>>2]=0;J[a+348>>2]=0;J[a+336>>2]=0;J[a+340>>2]=0;d=K[a+332|0]&-16;H[a+332|0]=d;b=a+316|0;b:{c:{switch(J[a>>2]-1|0){case 0:c=J[a+168>>2];J[a+260>>2]=J[a+164>>2];J[a+264>>2]=c;c=J[a+88>>2];J[a+244>>2]=J[a+84>>2];J[a+248>>2]=c;c=J[a+176>>2];J[a+268>>2]=J[a+172>>2];J[a+272>>2]=c;c=J[a+96>>2];J[a+252>>2]=J[a+92>>2];J[a+256>>2]=c;H[a+352|0]=0;J[a+288>>2]=0;N[a+280>>2]=N[a+248>>2]-N[a+264>>2];N[a+276>>2]=N[a+244>>2]-N[a+260>>2];N[a+284>>2]=N[a+252>>2]-N[a+268>>2];J[a+344>>2]=0;J[a+348>>2]=0;J[a+336>>2]=1065353216;J[a+340>>2]=0;c=1;break b;case 1:g=1;j=N[a+8>>2];e=Q(N[a+24>>2]-j);i=N[a+12>>2];h=Q(N[a+28>>2]-i);m=Q(h*Q(Q(0)-i));l=N[a+4>>2];i=Q(N[a+20>>2]-l);j=Q(m+Q(Q(i*Q(Q(0)-l))+Q(Q(Q(0)-j)*e)));b=j>Q(0);c=1;d:{if(!b){break d}f=Q(Q(h*h)+Q(Q(i*i)+Q(e*e)));if(!(f>j)){f=Q(1);c=2;break d}f=Q(j/f);c=3;}J[a+344>>2]=0;J[a+348>>2]=0;N[a+340>>2]=f;j=Q(Q(1)-f);N[a+336>>2]=j;H[a+332|0]=d|c;J[a+256>>2]=0;e=N[a+92>>2];l=Q(e+Q(f*Q(N[a+108>>2]-e)));N[a+252>>2]=l;e=N[a+88>>2];n=Q(e+Q(f*Q(N[a+104>>2]-e)));N[a+248>>2]=n;e=N[a+84>>2];o=Q(e+Q(f*Q(N[a+100>>2]-e)));N[a+244>>2]=o;m=N[a+180>>2];q=N[a+184>>2];e=N[a+168>>2];r=N[a+188>>2];h=N[a+172>>2];i=N[a+164>>2];J[a+288>>2]=0;h=Q(h+Q(f*Q(r-h)));N[a+284>>2]=l-h;e=Q(e+Q(f*Q(q-e)));N[a+280>>2]=n-e;i=Q(i+Q(f*Q(m-i)));N[a+276>>2]=o-i;J[a+272>>2]=0;N[a+268>>2]=h;N[a+264>>2]=e;N[a+260>>2]=i;if(!b){J[a>>2]=1;g=0;}if(!(c&1)){J[a>>2]=g;c=(g<<4)+a|0;b=J[c+16>>2];J[a+12>>2]=J[c+12>>2];J[a+16>>2]=b;b=J[c+8>>2];J[a+4>>2]=J[c+4>>2];J[a+8>>2]=b;b=J[c+96>>2];J[a+92>>2]=J[c+92>>2];J[a+96>>2]=b;b=J[c+88>>2];J[a+84>>2]=J[c+84>>2];J[a+88>>2]=b;b=J[c+176>>2];J[a+172>>2]=J[c+172>>2];J[a+176>>2]=b;b=J[c+168>>2];J[a+164>>2]=J[c+164>>2];J[a+168>>2]=b;}c=j>=Q(0)&f>=Q(0);break b;case 2:J[k+8>>2]=0;J[k+12>>2]=0;J[k>>2]=0;J[k+4>>2]=0;qb(k,a+4|0,a+20|0,a+36|0,b);J[a+256>>2]=0;f=N[a+336>>2];e=N[a+340>>2];h=N[a+344>>2];i=Q(Q(Q(f*N[a+92>>2])+Q(e*N[a+108>>2]))+Q(h*N[a+124>>2]));N[a+252>>2]=i;j=Q(Q(Q(f*N[a+88>>2])+Q(e*N[a+104>>2]))+Q(h*N[a+120>>2]));N[a+248>>2]=j;l=Q(Q(Q(f*N[a+84>>2])+Q(e*N[a+100>>2]))+Q(h*N[a+116>>2]));N[a+244>>2]=l;n=N[a+180>>2];o=N[a+196>>2];m=N[a+168>>2];q=N[a+184>>2];r=N[a+200>>2];u=N[a+172>>2];v=N[a+188>>2];w=N[a+204>>2];x=N[a+164>>2];J[a+288>>2]=0;p=i;i=Q(Q(Q(f*u)+Q(e*v))+Q(h*w));N[a+284>>2]=p-i;p=j;j=Q(Q(Q(f*m)+Q(e*q))+Q(h*r));N[a+280>>2]=p-j;m=l;l=Q(Q(Q(f*x)+Q(e*n))+Q(h*o));N[a+276>>2]=m-l;J[a+272>>2]=0;N[a+268>>2]=i;N[a+264>>2]=j;N[a+260>>2]=l;e:{f:{g:{h:{i:{b=J[a>>2];j:{if((b|0)>=4){g=K[a+332|0];if(g&8){c=b;break j}c=b-1|0;J[a>>2]=c;b=(c<<4)+a|0;d=J[b+16>>2];J[a+60>>2]=J[b+12>>2];J[a+64>>2]=d;d=J[b+8>>2];J[a+52>>2]=J[b+4>>2];J[a+56>>2]=d;d=J[b+88>>2];J[a+132>>2]=J[b+84>>2];J[a+136>>2]=d;d=J[b+96>>2];J[a+140>>2]=J[b+92>>2];J[a+144>>2]=d;d=J[b+176>>2];J[a+220>>2]=J[b+172>>2];J[a+224>>2]=d;d=J[b+168>>2];J[a+212>>2]=J[b+164>>2];J[a+216>>2]=d;break j}c=3;if((b|0)!=3){break i}g=K[a+332|0];}if(g&4){break h}c=c-1|0;J[a>>2]=c;b=(c<<4)+a|0;d=J[b+16>>2];J[a+44>>2]=J[b+12>>2];J[a+48>>2]=d;d=J[b+8>>2];J[a+36>>2]=J[b+4>>2];J[a+40>>2]=d;d=J[b+96>>2];J[a+124>>2]=J[b+92>>2];J[a+128>>2]=d;d=J[b+88>>2];J[a+116>>2]=J[b+84>>2];J[a+120>>2]=d;d=J[b+176>>2];J[a+204>>2]=J[b+172>>2];J[a+208>>2]=d;d=J[b+168>>2];J[a+196>>2]=J[b+164>>2];J[a+200>>2]=d;break h}c=2;if((b|0)<2){break g}g=K[a+332|0];}if(g&2){break f}c=c-1|0;J[a>>2]=c;b=(c<<4)+a|0;d=J[b+16>>2];J[a+28>>2]=J[b+12>>2];J[a+32>>2]=d;d=J[b+8>>2];J[a+20>>2]=J[b+4>>2];J[a+24>>2]=d;d=J[b+96>>2];J[a+108>>2]=J[b+92>>2];J[a+112>>2]=d;d=J[b+88>>2];J[a+100>>2]=J[b+84>>2];J[a+104>>2]=d;d=J[b+176>>2];J[a+188>>2]=J[b+172>>2];J[a+192>>2]=d;d=J[b+168>>2];J[a+180>>2]=J[b+164>>2];J[a+184>>2]=d;break f}c=1;if((b|0)!=1){break e}g=K[a+332|0];}if(g&1){break e}c=c-1|0;J[a>>2]=c;c=(c<<4)+a|0;b=J[c+16>>2];J[a+12>>2]=J[c+12>>2];J[a+16>>2]=b;b=J[c+8>>2];J[a+4>>2]=J[c+4>>2];J[a+8>>2]=b;b=J[c+96>>2];J[a+92>>2]=J[c+92>>2];J[a+96>>2]=b;b=J[c+88>>2];J[a+84>>2]=J[c+84>>2];J[a+88>>2]=b;b=J[c+176>>2];J[a+172>>2]=J[c+172>>2];J[a+176>>2]=b;b=J[c+168>>2];J[a+164>>2]=J[c+164>>2];J[a+168>>2]=b;}c=0;if(!(h>=Q(0))|(!(f>=Q(0))|!(e>=Q(0)))){break b}c=N[a+348>>2]>=Q(0);break b;case 3:break c;default:break b}}J[k+8>>2]=0;J[k+12>>2]=0;J[k>>2]=0;J[k+4>>2]=0;g=sa-48|0;sa=g;H[g+24|0]=0;d=J[k+12>>2];J[b+8>>2]=J[k+8>>2];J[b+12>>2]=d;d=J[k+4>>2];J[b>>2]=J[k>>2];J[b+4>>2]=d;s=K[b+16|0];H[b+16|0]=s|15;P=N[k+8>>2];d=a+4|0;f=N[d+8>>2];R=Q(P-f);z=a+36|0;p=N[z+8>>2];e=Q(p-f);A=a+52|0;t=N[A>>2];h=N[d>>2];i=Q(t-h);B=a+20|0;j=N[B+4>>2];l=N[d+4>>2];n=Q(j-l);o=N[B>>2];m=Q(o-h);F=N[A+4>>2];q=Q(F-l);C=Q(Q(i*n)-Q(m*q));G=N[z>>2];r=Q(G-h);u=N[B+8>>2];v=Q(u-f);U=N[A+8>>2];w=Q(U-f);D=Q(Q(q*v)-Q(n*w));I=N[z+4>>2];x=Q(I-l);L=Q(Q(w*m)-Q(v*i));y=Q(Q(e*C)+Q(Q(r*D)+Q(x*L)));M=Q(R*C);C=N[k>>2];S=Q(C-h);O=Q(S*D);D=N[k+4>>2];T=Q(D-l);V=Q(y*y)<Q(9.99999905104687e-9)?-1:Q(Q(M+Q(O+Q(T*L)))*y)<Q(0);L=Q(Q(m*x)-Q(r*n));M=Q(Q(n*e)-Q(x*v));O=Q(Q(v*r)-Q(e*m));y=Q(Q(w*L)+Q(Q(i*M)+Q(O*q)));Z=Q(f-u);f=Q(t-o);t=Q(I-j);G=Q(G-o);F=Q(F-j);I=Q(Q(f*t)-Q(G*F));_=Q(h-o);h=Q(p-u);p=Q(U-u);t=Q(Q(F*h)-Q(t*p));h=Q(Q(p*G)-Q(h*f));f=Q(Q(Z*I)+Q(Q(_*t)+Q(Q(l-j)*h)));l=Q(Q(r*q)-Q(i*x));p=m;m=Q(Q(x*w)-Q(q*e));i=Q(Q(e*i)-Q(w*r));e=Q(Q(v*l)+Q(Q(p*m)+Q(n*i)));W=Q(e*e)<Q(9.99999905104687e-9)?-1:Q(Q(Q(R*l)+Q(Q(S*m)+Q(T*i)))*e)<Q(0);X=Q(f*f)<Q(9.99999905104687e-9)?-1:Q(Q(Q(Q(P-u)*I)+Q(Q(Q(C-o)*t)+Q(Q(D-j)*h)))*f)<Q(0);E=Q(y*y)<Q(9.99999905104687e-9)?-1:Q(Q(Q(R*L)+Q(Q(S*M)+Q(T*O)))*y)<Q(0);Y=W|(X|(E|V));k:{if((Y|0)<0){H[b+36|0]=1;break k}if(!Y){break k}f=Q(34028234663852886e22);l:{if(!E){break l}qb(k,d,B,z,g+8|0);h=N[g+16>>2];e=Q(h-P);f=Q(e*e);i=N[g+8>>2];e=Q(i-C);l=Q(e*e);j=N[g+12>>2];e=Q(j-D);e=Q(f+Q(l+Q(e*e)));f=Q(34028234663852886e22);if(!(e<Q(34028234663852886e22))){break l}N[b+12>>2]=N[g+20>>2];N[b+8>>2]=h;N[b+4>>2]=j;N[b>>2]=i;H[b+16|0]=K[g+24|0]&7|s&-16;f=N[g+36>>2];s=J[g+32>>2];E=J[g+28>>2];J[b+32>>2]=0;N[b+28>>2]=f;J[b+20>>2]=E;J[b+24>>2]=s;f=e;}m:{if(!W){break m}qb(k,d,z,A,g+8|0);h=N[g+16>>2];e=Q(h-N[k+8>>2]);l=Q(e*e);i=N[g+8>>2];e=Q(i-N[k>>2]);m=Q(e*e);j=N[g+12>>2];e=Q(j-N[k+4>>2]);e=Q(l+Q(m+Q(e*e)));if(!(e<f)){break m}N[b+12>>2]=N[g+20>>2];N[b+8>>2]=h;N[b+4>>2]=j;N[b>>2]=i;s=K[g+24|0];H[b+16|0]=K[b+16|0]&240|(s&1|s<<1&12);s=J[g+36>>2];E=J[g+32>>2];f=N[g+28>>2];J[b+24>>2]=0;J[b+28>>2]=E;J[b+32>>2]=s;N[b+20>>2]=f;f=e;}n:{if(!V){break n}qb(k,d,A,B,g+8|0);h=N[g+16>>2];e=Q(h-N[k+8>>2]);l=Q(e*e);i=N[g+8>>2];e=Q(i-N[k>>2]);m=Q(e*e);j=N[g+12>>2];e=Q(j-N[k+4>>2]);e=Q(l+Q(m+Q(e*e)));if(!(e<f)){break n}N[b+12>>2]=N[g+20>>2];N[b+8>>2]=h;N[b+4>>2]=j;N[b>>2]=i;d=K[g+24|0];H[b+16|0]=K[b+16|0]&240|(d&1|d>>>1&2|d<<2&8);f=N[g+36>>2];h=N[g+28>>2];N[b+32>>2]=N[g+32>>2];J[b+28>>2]=0;N[b+24>>2]=f;N[b+20>>2]=h;f=e;}$=1;if(!X){break k}qb(k,B,A,z,g+8|0);j=f;f=N[g+16>>2];e=Q(f-N[k+8>>2]);l=Q(e*e);e=N[g+8>>2];h=Q(e-N[k>>2]);m=Q(h*h);h=N[g+12>>2];i=Q(h-N[k+4>>2]);if(!(j>Q(l+Q(m+Q(i*i))))){break k}N[b+12>>2]=N[g+20>>2];N[b+8>>2]=f;N[b+4>>2]=h;N[b>>2]=e;d=K[g+24|0];H[b+16|0]=K[b+16|0]&240|(d&4|d<<1&2|d<<2&8);f=N[g+36>>2];e=N[g+28>>2];N[b+32>>2]=N[g+32>>2];N[b+28>>2]=f;N[b+24>>2]=e;J[b+20>>2]=0;}sa=g+48|0;if($){J[a+256>>2]=0;e=N[a+336>>2];h=N[a+340>>2];i=N[a+344>>2];f=N[a+348>>2];j=Q(Q(Q(Q(e*N[a+92>>2])+Q(h*N[a+108>>2]))+Q(i*N[a+124>>2]))+Q(f*N[a+140>>2]));N[a+252>>2]=j;l=Q(Q(Q(Q(e*N[a+88>>2])+Q(h*N[a+104>>2]))+Q(i*N[a+120>>2]))+Q(f*N[a+136>>2]));N[a+248>>2]=l;n=Q(Q(Q(Q(e*N[a+84>>2])+Q(h*N[a+100>>2]))+Q(i*N[a+116>>2]))+Q(f*N[a+132>>2]));N[a+244>>2]=n;J[a+288>>2]=0;J[a+272>>2]=0;o=Q(Q(Q(Q(e*N[a+164>>2])+Q(h*N[a+180>>2]))+Q(i*N[a+196>>2]))+Q(f*N[a+212>>2]));N[a+260>>2]=o;m=Q(Q(Q(Q(e*N[a+168>>2])+Q(h*N[a+184>>2]))+Q(i*N[a+200>>2]))+Q(f*N[a+216>>2]));N[a+264>>2]=m;e=Q(Q(Q(Q(e*N[a+172>>2])+Q(h*N[a+188>>2]))+Q(i*N[a+204>>2]))+Q(f*N[a+220>>2]));N[a+268>>2]=e;N[a+276>>2]=n-o;N[a+280>>2]=l-m;N[a+284>>2]=j-e;o:{p:{q:{r:{s:{b=J[a>>2];t:{if((b|0)>=4){g=K[a+332|0];if(g&8){c=b;break t}c=b-1|0;J[a>>2]=c;b=(c<<4)+a|0;d=J[b+16>>2];J[a+60>>2]=J[b+12>>2];J[a+64>>2]=d;d=J[b+8>>2];J[a+52>>2]=J[b+4>>2];J[a+56>>2]=d;d=J[b+96>>2];J[a+140>>2]=J[b+92>>2];J[a+144>>2]=d;d=J[b+88>>2];J[a+132>>2]=J[b+84>>2];J[a+136>>2]=d;d=J[b+176>>2];J[a+220>>2]=J[b+172>>2];J[a+224>>2]=d;d=J[b+168>>2];J[a+212>>2]=J[b+164>>2];J[a+216>>2]=d;break t}c=3;if((b|0)!=3){break s}g=K[a+332|0];}if(g&4){break r}c=c-1|0;J[a>>2]=c;b=(c<<4)+a|0;d=J[b+16>>2];J[a+44>>2]=J[b+12>>2];J[a+48>>2]=d;d=J[b+8>>2];J[a+36>>2]=J[b+4>>2];J[a+40>>2]=d;d=J[b+96>>2];J[a+124>>2]=J[b+92>>2];J[a+128>>2]=d;d=J[b+88>>2];J[a+116>>2]=J[b+84>>2];J[a+120>>2]=d;d=J[b+176>>2];J[a+204>>2]=J[b+172>>2];J[a+208>>2]=d;d=J[b+168>>2];J[a+196>>2]=J[b+164>>2];J[a+200>>2]=d;break r}c=2;if((b|0)<2){break q}g=K[a+332|0];}if(g&2){break p}c=c-1|0;J[a>>2]=c;b=(c<<4)+a|0;d=J[b+16>>2];J[a+28>>2]=J[b+12>>2];J[a+32>>2]=d;d=J[b+8>>2];J[a+20>>2]=J[b+4>>2];J[a+24>>2]=d;d=J[b+96>>2];J[a+108>>2]=J[b+92>>2];J[a+112>>2]=d;d=J[b+88>>2];J[a+100>>2]=J[b+84>>2];J[a+104>>2]=d;d=J[b+176>>2];J[a+188>>2]=J[b+172>>2];J[a+192>>2]=d;d=J[b+168>>2];J[a+180>>2]=J[b+164>>2];J[a+184>>2]=d;break p}c=1;if((b|0)!=1){break o}g=K[a+332|0];}if(g&1){break o}c=c-1|0;J[a>>2]=c;c=(c<<4)+a|0;b=J[c+16>>2];J[a+12>>2]=J[c+12>>2];J[a+16>>2]=b;b=J[c+8>>2];J[a+4>>2]=J[c+4>>2];J[a+8>>2]=b;b=J[c+96>>2];J[a+92>>2]=J[c+92>>2];J[a+96>>2]=b;b=J[c+88>>2];J[a+84>>2]=J[c+84>>2];J[a+88>>2]=b;b=J[c+176>>2];J[a+172>>2]=J[c+172>>2];J[a+176>>2]=b;b=J[c+168>>2];J[a+164>>2]=J[c+164>>2];J[a+168>>2]=b;}c=N[a+336>>2]>=Q(0)&N[a+340>>2]>=Q(0)&N[a+344>>2]>=Q(0)&f>=Q(0);break b}if(K[a+352|0]){break b}J[a+276>>2]=0;J[a+280>>2]=0;c=1;H[a+312|0]=1;J[a+284>>2]=0;J[a+288>>2]=0;break a}H[a+312|0]=c;}sa=k+16|0;return (c&255)!=0}function ie(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=Q(0),j=0,k=0,l=Q(0),m=0,n=0,o=Q(0),p=0,q=Q(0),r=0,s=0,t=Q(0),u=0,v=0,w=Q(0),x=Q(0),y=0,z=Q(0),A=Q(0),B=0,C=Q(0),D=0,E=0,F=0,G=Q(0),O=0,S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Z=Q(0),_=Q(0),$=Q(0);g=sa-96|0;sa=g;H[g+52|0]=1;J[g+48>>2]=0;H[g+72|0]=1;J[g+40>>2]=0;J[g+44>>2]=0;J[g+68>>2]=0;H[g+92|0]=1;J[g+60>>2]=0;J[g+64>>2]=0;J[g+88>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;J[g+28>>2]=0;H[g+32|0]=1;J[g+20>>2]=0;J[g+24>>2]=0;J[a+72>>2]=0;J[a+76>>2]=0;J[a+64>>2]=0;J[a+68>>2]=0;a:{b:{j=J[a+28>>2];if((j|0)>0){while(1){D=P(B,36);E=J[(D+J[a+36>>2]|0)+4>>2];if((E|0)>0){F=0;while(1){b=J[(J[a+36>>2]+D|0)+12>>2];e=J[b+(F<<2)>>2];F=F+1|0;O=(E|0)==(F|0);b=J[b+((O?0:F)<<2)>>2];I[g+14>>1]=b;I[g+12>>1]=e;c=e<<16>>16;d=b<<16>>16;if((c|0)<(d|0)){I[g+14>>1]=e;I[g+12>>1]=b;c=b;d=e;}v=d<<16>>16;j=0;n=c<<16>>16;b=n+(d<<16)&J[g+64>>2]-1;c:{if(b>>>0>=M[g+20>>2]){break c}b=J[J[g+28>>2]+(b<<2)>>2];if((b|0)==-1){break c}h=J[g+48>>2];e=J[g+88>>2];while(1){k=b<<2;b=k+e|0;if(!(L[b>>1]==(c&65535)&L[b+2>>1]==(d&65535))){b=J[h+k>>2];if((b|0)!=-1){continue}break c}break}j=k+J[g+68>>2]|0;}b=J[a+16>>2];e=b+(v<<4)|0;b=b+(n<<4)|0;i=Q(N[e+8>>2]-N[b+8>>2]);G=i;q=Q(N[e>>2]-N[b>>2]);o=Q(N[e+4>>2]-N[b+4>>2]);i=Q(Q(1)/Q(Y(Q(Q(i*i)+Q(Q(q*q)+Q(o*o))))));w=Q(G*i);x=Q(o*i);l=Q(q*i);c=J[a+48>>2];d:{if((c|0)>0){e=J[a+56>>2];b=0;while(1){d=e+(b<<4)|0;q=N[d+8>>2];i=N[d>>2];o=N[d+4>>2];if(!(+Q(R(Q(i-l)))>1e-6|+Q(R(Q(o-x)))>1e-6|+Q(R(Q(q-w)))>1e-6)|!(+Q(R(Q(l+i)))>1e-6|+Q(R(Q(x+o)))>1e-6|+Q(R(Q(w+q)))>1e-6)){break d}b=b+1|0;if((b|0)!=(c|0)){continue}break}}e:{if(J[a+52>>2]!=(c|0)){break e}r=c?c<<1:1;if((r|0)<=(c|0)){break e}f:{if(!r){d=0;break f}J[8456]=J[8456]+1;d=ua[J[8258]](r<<4,16)|0;c=J[a+48>>2];}g:{if((c|0)<=0){break g}v=c&1;b=0;if((c|0)!=1){n=c&-2;c=0;while(1){k=b<<4;h=k+d|0;p=k+J[a+56>>2]|0;e=J[p+4>>2];J[h>>2]=J[p>>2];J[h+4>>2]=e;e=J[p+12>>2];J[h+8>>2]=J[p+8>>2];J[h+12>>2]=e;e=k|16;h=e+d|0;k=e+J[a+56>>2]|0;e=J[k+4>>2];J[h>>2]=J[k>>2];J[h+4>>2]=e;e=J[k+12>>2];J[h+8>>2]=J[k+8>>2];J[h+12>>2]=e;b=b+2|0;c=c+2|0;if((n|0)!=(c|0)){continue}break}}if(!v){break g}b=b<<4;c=b+d|0;e=b+J[a+56>>2]|0;b=J[e+4>>2];J[c>>2]=J[e>>2];J[c+4>>2]=b;b=J[e+12>>2];J[c+8>>2]=J[e+8>>2];J[c+12>>2]=b;}b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=d;H[a+60|0]=1;J[a+52>>2]=r;c=J[a+48>>2];}b=J[a+56>>2]+(c<<4)|0;J[b+12>>2]=0;N[b+8>>2]=w;N[b+4>>2]=x;N[b>>2]=l;J[a+48>>2]=J[a+48>>2]+1;}h:{if(j){I[j+2>>1]=B;if(O){break h}continue}I[g+8>>1]=B;I[g+10>>1]=65535;i:{j:{d=I[g+12>>1];k=L[g+14>>1];f=g+16|0;e=J[f+48>>2];y=d+(k<<16)&e-1;k:{if(y>>>0>=M[f+4>>2]){break k}b=J[J[f+12>>2]+(y<<2)>>2];if((b|0)==-1){break k}v=J[f+32>>2];n=J[f+72>>2];h=d&65535;while(1){c=b<<2;d=c+n|0;if((h|0)==L[d>>1]&(k|0)==L[d+2>>1]){break j}b=J[c+v>>2];if((b|0)!=-1){continue}break}}v=J[f+44>>2];b=v;l:{if((e|0)!=(b|0)){break l}b=e;p=b?b<<1:1;if((b|0)>=(p|0)){break l}m:{if(!p){m=0;d=e;break m}J[8456]=J[8456]+1;m=ua[J[8258]](p<<2,16)|0;d=J[f+44>>2];}n:{if((d|0)<=0){break n}r=0;b=0;if(d>>>0>=4){n=d&-4;j=0;while(1){k=b<<2;h=k+m|0;c=k+J[f+52>>2]|0;c=L[c>>1]|L[c+2>>1]<<16;I[h>>1]=c;I[h+2>>1]=c>>>16;c=k|4;h=c+m|0;c=c+J[f+52>>2]|0;c=L[c>>1]|L[c+2>>1]<<16;I[h>>1]=c;I[h+2>>1]=c>>>16;c=k|8;h=c+m|0;c=c+J[f+52>>2]|0;c=L[c>>1]|L[c+2>>1]<<16;I[h>>1]=c;I[h+2>>1]=c>>>16;c=k|12;h=c+m|0;c=c+J[f+52>>2]|0;c=L[c>>1]|L[c+2>>1]<<16;I[h>>1]=c;I[h+2>>1]=c>>>16;b=b+4|0;j=j+4|0;if((n|0)!=(j|0)){continue}break}}h=d&3;if(!h){break n}while(1){d=b<<2;c=d+m|0;d=d+J[f+52>>2]|0;d=L[d>>1]|L[d+2>>1]<<16;I[c>>1]=d;I[c+2>>1]=d>>>16;b=b+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}b=J[f+52>>2];if(!(b?!b|!K[f+56|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[f+52>>2]=m;H[f+56|0]=1;J[f+48>>2]=p;b=J[f+44>>2];}d=J[f+52>>2]+(b<<2)|0;b=L[g+8>>1]|L[g+10>>1]<<16;I[d>>1]=b;I[d+2>>1]=b>>>16;J[f+44>>2]=J[f+44>>2]+1;p=J[f- -64>>2];o:{if((p|0)!=J[f+68>>2]){break o}n=p?p<<1:1;if((n|0)<=(p|0)){break o}p:{if(!n){m=0;break p}J[8456]=J[8456]+1;m=ua[J[8258]](n<<2,16)|0;p=J[f+64>>2];}q:{if((p|0)<=0){break q}r=0;b=0;if(p>>>0>=4){h=p&-4;j=0;while(1){k=b<<2;c=k+m|0;d=k+J[f+72>>2]|0;d=L[d>>1]|L[d+2>>1]<<16;I[c>>1]=d;I[c+2>>1]=d>>>16;d=k|4;c=d+m|0;d=d+J[f+72>>2]|0;d=L[d>>1]|L[d+2>>1]<<16;I[c>>1]=d;I[c+2>>1]=d>>>16;d=k|8;c=d+m|0;d=d+J[f+72>>2]|0;d=L[d>>1]|L[d+2>>1]<<16;I[c>>1]=d;I[c+2>>1]=d>>>16;d=k|12;c=d+m|0;d=d+J[f+72>>2]|0;d=L[d>>1]|L[d+2>>1]<<16;I[c>>1]=d;I[c+2>>1]=d>>>16;b=b+4|0;j=j+4|0;if((h|0)!=(j|0)){continue}break}}h=p&3;if(!h){break q}while(1){d=b<<2;c=d+m|0;d=d+J[f+72>>2]|0;d=L[d>>1]|L[d+2>>1]<<16;I[c>>1]=d;I[c+2>>1]=d>>>16;b=b+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}b=J[f+72>>2];if(!(b?!b|!K[f+76|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[f+72>>2]=m;H[f+76|0]=1;J[f+68>>2]=n;p=J[f+64>>2];}d=J[f+72>>2]+(p<<2)|0;b=L[g+12>>1]|L[g+14>>1]<<16;I[d>>1]=b;I[d+2>>1]=b>>>16;J[f+64>>2]=J[f+64>>2]+1;if((e|0)<J[f+48>>2]){j=0;m=0;p=0;y=0;d=J[f+4>>2];u=J[f+48>>2];r:{if((d|0)>=(u|0)){break r}s:{if((u|0)<=J[f+8>>2]){j=J[f+12>>2];break s}if(u){J[8456]=J[8456]+1;j=ua[J[8258]](u<<2,16)|0;b=J[f+4>>2];}else {b=d;}n=J[f+12>>2];t:{u:{if((b|0)>0){if(b>>>0>=4){c=b&-4;while(1){h=m<<2;J[h+j>>2]=J[h+n>>2];e=h|4;J[e+j>>2]=J[e+n>>2];e=h|8;J[e+j>>2]=J[e+n>>2];e=h|12;J[e+j>>2]=J[e+n>>2];m=m+4|0;p=p+4|0;if((c|0)!=(p|0)){continue}break}}e=b&3;if(!e){break u}while(1){b=m<<2;J[b+j>>2]=J[b+n>>2];m=m+1|0;y=y+1|0;if((e|0)!=(y|0)){continue}break}break u}if(n){break u}break t}if(n?K[f+16|0]:0){J[8457]=J[8457]+1;ua[J[8259]](n);}}J[f+12>>2]=j;H[f+16|0]=1;J[f+8>>2]=u;}b=d<<2;k=u<<2;Fa(b+j|0,0,k-b|0);J[f+4>>2]=u;e=J[f+24>>2];if((e|0)<(u|0)){v:{if((u|0)<=J[f+28>>2]){j=J[f+32>>2];break v}w:{if(!u){j=0;b=e;break w}J[8456]=J[8456]+1;j=ua[J[8258]](k,16)|0;b=J[f+24>>2];}r=J[f+32>>2];x:{if((b|0)>0){y=0;m=0;if(b>>>0>=4){h=b&-4;p=0;while(1){n=m<<2;J[n+j>>2]=J[n+r>>2];c=n|4;J[c+j>>2]=J[c+r>>2];c=n|8;J[c+j>>2]=J[c+r>>2];c=n|12;J[c+j>>2]=J[c+r>>2];m=m+4|0;p=p+4|0;if((h|0)!=(p|0)){continue}break}}c=b&3;if(!c){break x}while(1){b=m<<2;J[b+j>>2]=J[b+r>>2];m=m+1|0;y=y+1|0;if((c|0)!=(y|0)){continue}break}break x}if(r){break x}J[f+32>>2]=j;J[f+28>>2]=u;H[f+36|0]=1;break v}if(r?K[f+36|0]:0){J[8457]=J[8457]+1;ua[J[8259]](r);}J[f+32>>2]=j;H[f+36|0]=1;J[f+28>>2]=u;}b=e<<2;Fa(b+j|0,0,k-b|0);}J[f+24>>2]=u;if((u|0)>0){Fa(J[f+12>>2],255,k);Fa(J[f+32>>2],255,k);}if((d|0)<=0){break r}n=J[f+32>>2];h=J[f+72>>2];c=J[f+12>>2];m=0;while(1){e=m<<2;b=e+h|0;b=c+(((L[b+2>>1]<<16)+I[b>>1]&J[f+48>>2]-1)<<2)|0;J[e+n>>2]=J[b>>2];J[b>>2]=m;m=m+1|0;if((d|0)!=(m|0)){continue}break}}y=I[g+12>>1]+(L[g+14>>1]<<16)&J[f+48>>2]-1;}b=J[f+12>>2]+(y<<2)|0;J[J[f+32>>2]+(v<<2)>>2]=J[b>>2];J[b>>2]=v;break i}e=J[f+52>>2]+(b<<2)|0;b=L[g+8>>1]|L[g+10>>1]<<16;I[e>>1]=b;I[e+2>>1]=b>>>16;}if(!O){continue}}break}j=J[a+28>>2];}B=B+1|0;if((B|0)<(j|0)){continue}break}B=0;d=(j|0)>0;if(d){break b}}i=N[a+72>>2];z=N[a+68>>2];A=N[a+64>>2];break a}D=J[a+16>>2];h=J[a+36>>2];A=N[a+64>>2];z=N[a+68>>2];i=N[a+72>>2];while(1){b=h+P(B,36)|0;k=J[b+4>>2];if((k|0)>=3){v=J[b+12>>2];E=D+(J[v>>2]<<4)|0;c=k-2|0;b=1;while(1){n=D+(J[v+(b<<2)>>2]<<4)|0;V=N[n+8>>2];e=b+1|0;s=D+(J[v+((e|0)%(k|0)<<2)>>2]<<4)|0;W=N[s+8>>2];S=N[E>>2];X=N[n>>2];Z=Q(S-X);T=N[E+4>>2];_=N[s+4>>2];t=Q(T-_);w=N[s>>2];x=Q(S-w);l=N[n+4>>2];o=Q(T-l);$=Q(Q(Z*t)-Q(x*o));U=N[E+8>>2];q=Q(U-W);G=Q(o*q);o=Q(U-V);t=Q(G-Q(t*o));G=i;i=Q(Q(o*x)-Q(q*Z));o=Q(Q(Y(Q(Q($*$)+Q(Q(t*t)+Q(i*i)))))*Q(.5));i=Q(G+Q(Q(Q(Q(U+V)+W)*Q(.3333333432674408))*o));N[a+72>>2]=i;z=Q(z+Q(Q(Q(_+Q(T+l))*Q(.3333333432674408))*o));N[a+68>>2]=z;A=Q(A+Q(Q(Q(w+Q(S+X))*Q(.3333333432674408))*o));N[a+64>>2]=A;C=Q(C+o);s=(b|0)==(c|0);b=e;if(!s){continue}break}}B=B+1|0;if((B|0)!=(j|0)){continue}break}s=d;}J[a+96>>2]=2139095039;o=Q(Q(1)/C);w=Q(o*i);N[a+72>>2]=w;x=Q(o*z);N[a+68>>2]=x;l=Q(o*A);N[a+64>>2]=l;q=Q(34028234663852886e22);o=Q(34028234663852886e22);if(s){e=J[a+36>>2];b=0;while(1){s=e+P(b,36)|0;i=Q(R(Q(N[s+32>>2]+Q(Q(w*N[s+28>>2])+Q(Q(l*N[s+20>>2])+Q(x*N[s+24>>2]))))));if(i<o){N[a+96>>2]=i;o=i;}b=b+1|0;if((j|0)!=(b|0)){continue}break}}s=J[a+8>>2];y:{if((s|0)<=0){t=Q(-34028234663852886e22);i=Q(34028234663852886e22);z=Q(-34028234663852886e22);A=Q(-34028234663852886e22);C=Q(34028234663852886e22);break y}e=J[a+16>>2];A=Q(-34028234663852886e22);b=0;C=Q(34028234663852886e22);z=Q(-34028234663852886e22);t=Q(-34028234663852886e22);i=Q(34028234663852886e22);while(1){d=e+(b<<4)|0;l=N[d+8>>2];A=l>A?l:A;i=i>l?l:i;l=N[d+4>>2];z=l>z?l:z;q=l<q?l:q;l=N[d>>2];t=l>t?l:t;C=l<C?l:C;b=b+1|0;if((s|0)!=(b|0)){continue}break}}b=0;J[a+128>>2]=0;l=Q(A-i);N[a+124>>2]=l;w=Q(z-q);N[a+120>>2]=w;x=Q(t-C);N[a+116>>2]=x;J[a+112>>2]=0;N[a+108>>2]=i+A;N[a+104>>2]=q+z;N[a+100>>2]=t+C;e=w>x;s=l>(e?w:x)?2:e;e=s<<2;i=N[e+(a+116|0)>>2];l=Q(o/Q(1.7320507764816284));N[a+84>>2]=l;N[a+88>>2]=l;N[a+80>>2]=l;d=a+80|0;e=d+e|0;i=Q(i*Q(.5));N[e>>2]=i;q=Q(Q(i-l)*Q(.0009765625));z:{A:{while(1){if(Ec(a)){break A}i=Q(i-q);N[e>>2]=i;b=b+1|0;if((b|0)!=1024){continue}break}N[a+84>>2]=l;N[a+88>>2]=l;N[a+80>>2]=l;break z}b=1<<s&3;e=d+((1<<b&3)<<2)|0;i=N[e>>2];b=d+(b<<2)|0;t=N[b>>2];o=Q(Q(o-l)*Q(.0009765625));N[b>>2]=o+t;q=Q(o+N[e>>2]);N[e>>2]=q;if(Ec(a)){c=0;while(1){i=q;c=c+1|0;if((c|0)==1024){break z}t=N[b>>2];N[b>>2]=o+t;q=Q(o+N[e>>2]);N[e>>2]=q;if(Ec(a)){continue}break}}N[b>>2]=t;N[e>>2]=i;}a=J[g+88>>2];if(!(a?!a|!K[g+92|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[g+88>>2]=0;H[g+92|0]=1;J[g+80>>2]=0;J[g+84>>2]=0;a=J[g+68>>2];if(!(a?!a|!K[g+72|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[g+68>>2]=0;H[g+72|0]=1;J[g+60>>2]=0;J[g+64>>2]=0;a=J[g+48>>2];if(!(a?!a|!K[g+52|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[g+48>>2]=0;H[g+52|0]=1;J[g+40>>2]=0;J[g+44>>2]=0;a=J[g+28>>2];if(!(a?!a|!K[g+32|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}sa=g+96|0;}function qc(a,b,c){var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=0,z=0,A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=0,I=0,K=0,L=0,M=0,O=0,P=0,R=0,S=0,T=0,U=0,V=Q(0),W=0,X=Q(0);A=N[b+52>>2];B=N[b+56>>2];m=N[a+96>>2];n=N[a+100>>2];o=N[a+104>>2];d=N[b+20>>2];e=N[b+24>>2];p=N[a- -64>>2];q=N[a+80>>2];s=N[a+52>>2];t=N[a+68>>2];u=N[a+84>>2];v=N[a+56>>2];f=N[b+36>>2];w=N[a+72>>2];h=N[b+40>>2];x=N[a+88>>2];C=N[b+48>>2];g=N[b+8>>2];i=N[b>>2];l=N[b+4>>2];k=N[b+16>>2];r=N[a+48>>2];j=N[b+32>>2];J[a+1296>>2]=0;J[a+1280>>2]=0;J[a+1264>>2]=0;J[a+1248>>2]=0;b=a+1276|0;N[b>>2]=Q(x*h)+Q(Q(v*j)+Q(w*f));z=a+1272|0;N[z>>2]=Q(u*h)+Q(Q(s*j)+Q(t*f));G=a+1268|0;N[G>>2]=Q(q*h)+Q(Q(r*j)+Q(p*f));I=a+1260|0;N[I>>2]=Q(x*e)+Q(Q(v*k)+Q(w*d));K=a+1256|0;N[K>>2]=Q(u*e)+Q(Q(s*k)+Q(t*d));L=a+1252|0;N[L>>2]=Q(q*e)+Q(Q(r*k)+Q(p*d));M=a+1244|0;N[M>>2]=Q(x*g)+Q(Q(v*i)+Q(l*w));O=a+1240|0;N[O>>2]=Q(u*g)+Q(Q(s*i)+Q(l*t));N[a+1236>>2]=Q(q*g)+Q(Q(r*i)+Q(p*l));P=a+1292|0;N[P>>2]=B+Q(Q(o*h)+Q(Q(m*j)+Q(f*n)));R=a+1288|0;N[R>>2]=A+Q(Q(o*e)+Q(Q(m*k)+Q(d*n)));S=a+1284|0;N[S>>2]=C+Q(Q(o*g)+Q(Q(m*i)+Q(l*n)));A=N[c+52>>2];B=N[c+56>>2];m=N[a+160>>2];n=N[a+164>>2];o=N[a+168>>2];d=N[c+20>>2];e=N[c+24>>2];p=N[a+128>>2];q=N[a+144>>2];s=N[a+116>>2];t=N[a+132>>2];u=N[a+148>>2];v=N[a+120>>2];w=N[a+136>>2];f=N[c+36>>2];x=N[a+152>>2];h=N[c+40>>2];C=N[c+48>>2];g=N[c+8>>2];i=N[c>>2];l=N[c+4>>2];k=N[c+16>>2];r=N[a+112>>2];j=N[c+32>>2];J[a+1360>>2]=0;J[a+1344>>2]=0;J[a+1328>>2]=0;J[a+1312>>2]=0;N[a+1340>>2]=Q(x*h)+Q(Q(v*j)+Q(w*f));N[a+1336>>2]=Q(u*h)+Q(Q(s*j)+Q(t*f));N[a+1332>>2]=Q(q*h)+Q(Q(r*j)+Q(p*f));N[a+1324>>2]=Q(x*e)+Q(Q(v*k)+Q(w*d));N[a+1320>>2]=Q(u*e)+Q(Q(s*k)+Q(t*d));N[a+1316>>2]=Q(q*e)+Q(Q(r*k)+Q(p*d));N[a+1308>>2]=Q(x*g)+Q(Q(v*i)+Q(l*w));N[a+1304>>2]=Q(u*g)+Q(Q(s*i)+Q(l*t));N[a+1300>>2]=Q(q*g)+Q(Q(r*i)+Q(p*l));c=a+1356|0;N[c>>2]=B+Q(Q(o*h)+Q(Q(m*j)+Q(f*n)));T=a+1352|0;N[T>>2]=A+Q(Q(o*e)+Q(Q(m*k)+Q(d*n)));U=a+1348|0;N[U>>2]=C+Q(Q(o*g)+Q(Q(m*i)+Q(l*n)));J[a+1440>>2]=0;f=N[M>>2];i=N[L>>2];l=N[z>>2];k=N[G>>2];j=N[K>>2];e=Q(Q(i*l)-Q(k*j));h=N[a+1236>>2];m=N[b>>2];n=N[I>>2];s=Q(Q(j*m)-Q(l*n));g=N[O>>2];t=Q(Q(n*k)-Q(m*i));d=Q(Q(1)/Q(Q(f*e)+Q(Q(h*s)+Q(g*t))));o=Q(N[c>>2]-N[P>>2]);p=Q(N[U>>2]-N[S>>2]);q=Q(N[T>>2]-N[R>>2]);e=Q(Q(Q(Q(Q(h*j)-Q(i*g))*d)*o)+Q(Q(Q(e*d)*p)+Q(q*Q(Q(Q(g*k)-Q(l*h))*d))));N[a+1436>>2]=e;h=Q(Q(Q(Q(Q(f*i)-Q(n*h))*d)*o)+Q(Q(Q(t*d)*p)+Q(q*Q(Q(Q(h*m)-Q(k*f))*d))));N[a+1432>>2]=h;d=Q(Q(Q(Q(Q(g*n)-Q(j*f))*d)*o)+Q(Q(Q(s*d)*p)+Q(q*Q(Q(Q(f*l)-Q(m*g))*d))));N[a+1428>>2]=d;N[a+940>>2]=d;b=a+924|0;f=Q(0);c=a+908|0;g=N[a+680>>2];i=N[a+696>>2];a:{if(g>i){z=c;}else {N[c>>2]=d-g;y=3;if(g==i){break a}f=Q(d-i);y=4;z=b;}N[z>>2]=f;}N[a+944>>2]=h;J[a+956>>2]=y;d=N[a+684>>2];f=N[a+700>>2];b:{c:{if(d>f){y=0;d=Q(0);z=c;break c}N[a+912>>2]=h-d;y=3;if(d==f){break b}d=Q(h-f);y=4;z=b;}N[z+4>>2]=d;e=N[a+1436>>2];}N[a+948>>2]=e;J[a+960>>2]=y;d=N[a+688>>2];f=N[a+704>>2];d:{e:{if(d>f){y=0;d=Q(0);break e}N[a+916>>2]=e-d;y=3;if(d==f){break d}c=b;y=4;d=Q(e-f);}N[c+8>>2]=d;}J[a+964>>2]=y;c=sa-48|0;sa=c;o=N[a+1332>>2];p=N[a+1316>>2];q=N[a+1336>>2];s=N[a+1304>>2];t=N[a+1320>>2];u=N[a+1340>>2];v=N[a+1308>>2];w=N[a+1324>>2];h=N[a+1244>>2];i=N[a+1256>>2];l=N[a+1272>>2];g=N[a+1240>>2];f=N[a+1268>>2];k=N[a+1260>>2];j=N[a+1252>>2];m=N[a+1276>>2];x=N[a+1300>>2];e=N[a+1236>>2];J[c+44>>2]=0;J[c+28>>2]=0;n=Q(Q(j*l)-Q(f*i));V=Q(Q(i*m)-Q(l*k));D=Q(Q(k*f)-Q(m*j));d=Q(Q(1)/Q(Q(h*n)+Q(Q(e*V)+Q(g*D))));r=Q(Q(Q(e*i)-Q(j*g))*d);A=Q(n*d);B=Q(Q(Q(g*f)-Q(l*e))*d);n=Q(Q(u*r)+Q(Q(v*A)+Q(w*B)));N[c+40>>2]=n;C=Q(Q(q*r)+Q(Q(s*A)+Q(B*t)));N[c+36>>2]=C;E=Q(Q(Q(h*j)-Q(k*e))*d);D=Q(D*d);F=Q(Q(Q(e*m)-Q(f*h))*d);e=Q(Q(u*E)+Q(Q(v*D)+Q(w*F)));N[c+24>>2]=e;j=Q(Q(q*E)+Q(Q(s*D)+Q(F*t)));N[c+20>>2]=j;J[c+12>>2]=0;f=Q(Q(o*r)+Q(Q(x*A)+Q(p*B)));N[c+32>>2]=f;r=Q(Q(o*E)+Q(Q(x*D)+Q(p*F)));N[c+16>>2]=r;i=Q(Q(Q(g*k)-Q(i*h))*d);k=Q(V*d);h=Q(Q(Q(h*l)-Q(m*g))*d);g=Q(Q(u*i)+Q(Q(v*k)+Q(w*h)));N[c+8>>2]=g;d=Q(Q(q*i)+Q(Q(s*k)+Q(h*t)));N[c+4>>2]=d;h=Q(Q(o*i)+Q(Q(x*k)+Q(p*h)));N[c>>2]=h;f:{g:{h:{i:{j:{k:{l:{m:{b=J[a+1232>>2];switch(b|0){case 5:break h;case 4:break i;case 3:break j;case 2:break k;case 1:break l;case 0:break m;default:break f}}b=a+1372|0;n:{o:{if(f<Q(1)){if(f>Q(-1)){W=a,X=Ia(Q(-C),n),N[W+1364>>2]=X;d=f<Q(-1)?Q(-1):f;W=a+1368|0,X=hb(d>Q(1)?Q(1):d),N[W>>2]=X;d=Ia(Q(-r),h);break n}J[a+1368>>2]=-1077342245;W=a,X=Q(-Ia(d,j)),N[W+1364>>2]=X;break o}J[a+1368>>2]=1070141403;W=a,X=Ia(d,j),N[W+1364>>2]=X;}d=Q(0);}N[b>>2]=d;break g}b=a+1364|0;d=N[c+16>>2];p:{if(d<Q(1)){if(d>Q(-1)){W=b,X=Ia(N[c+24>>2],N[c+20>>2]),N[W>>2]=X;W=b,X=Ia(N[c+32>>2],N[c>>2]),N[W+4>>2]=X;d=N[c+16>>2];d=d>Q(1)?Q(-1):Q(-d);W=b,X=hb(d>Q(1)?Q(1):d),N[W+8>>2]=X;break p}d=N[c+40>>2];e=N[c+8>>2];J[b+4>>2]=0;W=b,X=Q(-Ia(Q(-e),d)),N[W>>2]=X;N[b+8>>2]=1.5707963705062866;break p}d=N[c+40>>2];e=N[c+8>>2];J[b+4>>2]=0;W=b,X=Ia(Q(-e),d),N[W>>2]=X;N[b+8>>2]=-1.5707963705062866;}break g}b=a+1364|0;d=N[c+36>>2];q:{r:{if(d<Q(1)){if(d>Q(-1)){d=d>Q(1)?Q(-1):Q(-d);W=b,X=hb(d>Q(1)?Q(1):d),N[W>>2]=X;W=b,X=Ia(N[c+32>>2],N[c+40>>2]),N[W+4>>2]=X;W=b,X=Ia(N[c+4>>2],N[c+20>>2]),N[W+8>>2]=X;break q}J[b>>2]=1070141403;W=b,X=Q(-Ia(Q(-N[c+16>>2]),N[c>>2])),N[W+4>>2]=X;break r}J[b>>2]=-1077342245;W=b,X=Ia(Q(-N[c+16>>2]),N[c>>2]),N[W+4>>2]=X;}N[b+8>>2]=0;}break g}b=a+1372|0;s:{if(d<Q(1)){if(d>Q(-1)){W=a,X=Ia(Q(-C),j),N[W+1364>>2]=X;W=a+1368|0,X=Ia(Q(-g),h),N[W>>2]=X;d=d<Q(-1)?Q(-1):d;d=hb(d>Q(1)?Q(1):d);break s}J[a+1364>>2]=0;W=a+1368|0,X=Q(-Ia(e,n)),N[W>>2]=X;d=Q(-1.5707963705062866);break s}J[a+1364>>2]=0;W=a+1368|0,X=Ia(e,n),N[W>>2]=X;d=Q(1.5707963705062866);}N[b>>2]=d;break g}b=a+1372|0;t:{if(e<Q(1)){if(e>Q(-1)){d=e<Q(-1)?Q(-1):e;W=a,X=hb(d>Q(1)?Q(1):d),N[W+1364>>2]=X;W=a+1368|0,X=Ia(Q(-g),n),N[W>>2]=X;d=Ia(Q(-r),j);break t}J[a+1364>>2]=-1077342245;J[a+1368>>2]=0;d=Q(-Ia(f,h));break t}J[a+1364>>2]=1070141403;J[a+1368>>2]=0;d=Ia(f,h);}N[b>>2]=d;break g}b=a+1364|0;d=N[c+8>>2];u:{if(d<Q(1)){if(d>Q(-1)){W=b,X=Ia(N[c+24>>2],N[c+40>>2]),N[W>>2]=X;d=N[c+8>>2];d=d>Q(1)?Q(-1):Q(-d);W=b,X=hb(d>Q(1)?Q(1):d),N[W+4>>2]=X;W=b,X=Ia(N[c+4>>2],N[c>>2]),N[W+8>>2]=X;break u}J[b>>2]=0;J[b+4>>2]=1070141403;W=b,X=Q(-Ia(N[c+16>>2],N[c+32>>2])),N[W+8>>2]=X;break u}J[b>>2]=0;J[b+4>>2]=-1077342245;W=b,X=Ia(Q(-N[c+16>>2]),Q(-N[c+32>>2])),N[W+8>>2]=X;}}b=J[a+1232>>2];}v:{w:{x:{switch(b|0){default:l=N[a+1420>>2];e=N[a+1416>>2];f=N[a+1412>>2];k=N[a+1404>>2];h=N[a+1400>>2];j=N[a+1396>>2];g=N[a+1388>>2];i=N[a+1384>>2];d=N[a+1380>>2];break v;case 0:J[a+1408>>2]=0;J[a+1424>>2]=0;J[a+1392>>2]=0;d=N[a+1300>>2];m=N[a+1276>>2];f=N[a+1332>>2];i=N[a+1244>>2];h=Q(Q(d*m)-Q(f*i));n=N[a+1260>>2];g=N[a+1316>>2];j=Q(Q(n*f)-Q(g*m));l=Q(Q(d*h)-Q(j*g));k=Q(Q(i*g)-Q(d*n));e=Q(Q(f*j)-Q(k*d));f=Q(Q(g*k)-Q(h*f));g=Q(Q(j*n)-Q(i*h));i=Q(Q(k*i)-Q(m*j));d=Q(Q(h*m)-Q(n*k));break v;case 1:J[a+1424>>2]=0;J[a+1408>>2]=0;J[a+1392>>2]=0;d=N[a+1316>>2];m=N[a+1272>>2];n=N[a+1256>>2];g=N[a+1332>>2];f=Q(Q(d*m)-Q(n*g));i=N[a+1240>>2];h=N[a+1300>>2];e=Q(Q(g*i)-Q(m*h));k=Q(Q(f*d)-Q(h*e));l=Q(Q(h*n)-Q(i*d));h=Q(Q(l*h)-Q(g*f));j=Q(Q(e*g)-Q(d*l));g=Q(Q(i*e)-Q(f*n));i=Q(Q(m*f)-Q(l*i));d=Q(Q(n*l)-Q(e*m));break v;case 2:J[a+1424>>2]=0;J[a+1408>>2]=0;J[a+1392>>2]=0;e=N[a+1304>>2];k=N[a+1260>>2];m=N[a+1244>>2];f=N[a+1320>>2];g=Q(Q(e*k)-Q(m*f));N[a+1388>>2]=g;n=N[a+1336>>2];l=N[a+1276>>2];i=Q(Q(m*n)-Q(e*l));N[a+1384>>2]=i;d=Q(Q(f*l)-Q(k*n));N[a+1380>>2]=d;h=Q(Q(l*d)-Q(g*m));N[a+1400>>2]=h;j=Q(Q(k*g)-Q(i*l));N[a+1396>>2]=j;l=Q(Q(d*f)-Q(e*i));e=Q(Q(g*e)-Q(n*d));f=Q(Q(i*n)-Q(f*g));k=Q(Q(m*i)-Q(d*k));break v;case 3:J[a+1424>>2]=0;J[a+1408>>2]=0;J[a+1392>>2]=0;d=N[a+1236>>2];m=N[a+1320>>2];i=N[a+1304>>2];g=N[a+1252>>2];l=Q(Q(d*m)-Q(i*g));N[a+1420>>2]=l;j=N[a+1268>>2];n=N[a+1336>>2];e=Q(Q(i*j)-Q(d*n));N[a+1416>>2]=e;f=Q(Q(g*n)-Q(m*j));N[a+1412>>2]=f;k=Q(Q(f*g)-Q(d*e));N[a+1404>>2]=k;h=Q(Q(l*d)-Q(j*f));N[a+1400>>2]=h;j=Q(Q(e*j)-Q(g*l));N[a+1396>>2]=j;g=Q(Q(i*e)-Q(f*m));N[a+1388>>2]=g;i=Q(Q(n*f)-Q(l*i));N[a+1384>>2]=i;d=Q(Q(m*l)-Q(e*n));break w;case 4:J[a+1424>>2]=0;J[a+1408>>2]=0;J[a+1392>>2]=0;e=N[a+1240>>2];j=N[a+1324>>2];h=N[a+1308>>2];f=N[a+1256>>2];g=Q(Q(e*j)-Q(h*f));N[a+1388>>2]=g;k=N[a+1272>>2];m=N[a+1340>>2];i=Q(Q(h*k)-Q(e*m));N[a+1384>>2]=i;d=Q(Q(f*m)-Q(j*k));N[a+1380>>2]=d;l=Q(Q(d*f)-Q(e*i));N[a+1420>>2]=l;e=Q(Q(g*e)-Q(k*d));N[a+1416>>2]=e;f=Q(Q(i*k)-Q(f*g));N[a+1412>>2]=f;k=Q(Q(h*i)-Q(d*j));N[a+1404>>2]=k;h=Q(Q(m*d)-Q(g*h));N[a+1400>>2]=h;j=Q(Q(j*g)-Q(i*m));N[a+1396>>2]=j;break v;case 5:break x}}J[a+1408>>2]=0;J[a+1424>>2]=0;J[a+1392>>2]=0;d=N[a+1308>>2];f=N[a+1252>>2];e=N[a+1236>>2];m=N[a+1324>>2];k=Q(Q(d*f)-Q(e*m));N[a+1404>>2]=k;n=N[a+1340>>2];g=N[a+1268>>2];h=Q(Q(e*n)-Q(d*g));N[a+1400>>2]=h;j=Q(Q(m*g)-Q(f*n));N[a+1396>>2]=j;l=Q(Q(e*h)-Q(j*f));N[a+1420>>2]=l;e=Q(Q(g*j)-Q(k*e));N[a+1416>>2]=e;f=Q(Q(f*k)-Q(h*g));N[a+1412>>2]=f;g=Q(Q(j*m)-Q(d*h));N[a+1388>>2]=g;i=Q(Q(k*d)-Q(n*j));N[a+1384>>2]=i;d=Q(Q(h*n)-Q(m*k));}N[a+1380>>2]=d;}m=l;l=Q(Q(1)/Q(Y(Q(Q(l*l)+Q(Q(f*f)+Q(e*e))))));N[a+1420>>2]=m*l;N[a+1416>>2]=e*l;N[a+1412>>2]=f*l;e=Q(Q(1)/Q(Y(Q(Q(k*k)+Q(Q(j*j)+Q(h*h))))));N[a+1404>>2]=k*e;N[a+1400>>2]=h*e;N[a+1396>>2]=j*e;e=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(d*d)+Q(i*i))))));N[a+1388>>2]=g*e;N[a+1384>>2]=i*e;N[a+1380>>2]=d*e;sa=c+48|0;e=N[J[a+28>>2]+404>>2];d=N[J[a+32>>2]+404>>2];H[a+1452|0]=e<Q(1.1920928955078125e-7)|d<Q(1.1920928955078125e-7);l=d;d=Q(e+d);d=d>Q(0)?Q(l/d):Q(.5);N[a+1444>>2]=d;N[a+1448>>2]=Q(1)-d;}function Za(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=0,G=Q(0),H=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),P=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0),da=Q(0),ea=Q(0),fa=Q(0),ga=Q(0);e=sa-272|0;sa=e;J[a+56>>2]=0;J[e+264>>2]=0;J[e+268>>2]=0;J[e+256>>2]=0;J[e+260>>2]=0;h=J[b+12>>2];J[e+168>>2]=J[b+8>>2];J[e+172>>2]=h;h=J[b+4>>2];J[e+160>>2]=J[b>>2];J[e+164>>2]=h;h=J[b+28>>2];J[e+184>>2]=J[b+24>>2];J[e+188>>2]=h;h=J[b+20>>2];J[e+176>>2]=J[b+16>>2];J[e+180>>2]=h;h=J[b+44>>2];J[e+200>>2]=J[b+40>>2];J[e+204>>2]=h;h=J[b+36>>2];J[e+192>>2]=J[b+32>>2];J[e+196>>2]=h;h=J[b+60>>2];J[e+216>>2]=J[b+56>>2];J[e+220>>2]=h;h=J[b+52>>2];J[e+208>>2]=J[b+48>>2];J[e+212>>2]=h;h=J[b+76>>2];J[e+104>>2]=J[b+72>>2];J[e+108>>2]=h;h=J[b+68>>2];J[e+96>>2]=J[b+64>>2];J[e+100>>2]=h;h=J[b+92>>2];J[e+120>>2]=J[b+88>>2];J[e+124>>2]=h;h=J[b+84>>2];J[e+112>>2]=J[b+80>>2];J[e+116>>2]=h;h=J[b+108>>2];J[e+136>>2]=J[b+104>>2];J[e+140>>2]=h;h=J[b+100>>2];J[e+128>>2]=J[b+96>>2];J[e+132>>2]=h;h=J[b+124>>2];J[e+152>>2]=J[b+120>>2];J[e+156>>2]=h;h=J[b+116>>2];J[e+144>>2]=J[b+112>>2];J[e+148>>2]=h;f=N[e+212>>2];i=N[e+148>>2];C=Q(Q(f+i)*Q(.5));N[e+212>>2]=f-C;f=N[e+216>>2];g=N[e+152>>2];D=Q(Q(f+g)*Q(.5));N[e+216>>2]=f-D;N[e+148>>2]=i-C;N[e+152>>2]=g-D;f=N[e+208>>2];i=N[e+144>>2];E=Q(Q(f+i)*Q(.5));N[e+208>>2]=f-E;N[e+144>>2]=i-E;l=J[J[a+28>>2]+4>>2]-17>>>0<=1?J[J[a+32>>2]+4>>2]-17>>>0<2:l;f=N[a+44>>2];i=N[a+48>>2];J[8502]=J[8502]+1;J[a+68>>2]=0;J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=0;J[a+8>>2]=1065353216;J[a+60>>2]=-1;J[a+64>>2]=0;h=K[a+52|0];Kb(J[a+24>>2]);p=h?Q(0):f;q=h?Q(0):i;s=Q(p+q);h=a+4|0;i=Q(0xde0b6b000000000);a:{b:{c:{while(1){m=N[b+32>>2];r=N[b>>2];o=N[b+16>>2];n=N[b+36>>2];u=N[b+4>>2];w=N[b+20>>2];x=N[b+40>>2];f=N[a+12>>2];k=N[b+8>>2];j=N[a+4>>2];y=N[b+24>>2];g=N[a+8>>2];J[e+252>>2]=0;v=k;k=Q(-j);N[e+248>>2]=Q(Q(v*k)-Q(y*g))-Q(x*f);N[e+244>>2]=Q(Q(u*k)-Q(w*g))-Q(n*f);N[e+240>>2]=Q(Q(r*k)-Q(o*g))-Q(m*f);k=N[b+96>>2];m=N[b+64>>2];r=N[b+80>>2];o=N[b+100>>2];n=N[b+68>>2];u=N[b+84>>2];w=N[b+104>>2];x=N[b+72>>2];y=N[b+88>>2];J[e+236>>2]=0;N[e+232>>2]=Q(w*f)+Q(Q(x*j)+Q(g*y));N[e+228>>2]=Q(o*f)+Q(Q(n*j)+Q(g*u));N[e+224>>2]=Q(k*f)+Q(Q(m*j)+Q(g*r));ab(e+80|0,J[a+28>>2],e+240|0);ab(e- -64|0,J[a+32>>2],e+224|0);J[e+60>>2]=0;f=N[e+88>>2];g=N[e+80>>2];k=N[e+84>>2];j=Q(Q(Q(f*N[e+200>>2])+Q(Q(g*N[e+192>>2])+Q(k*N[e+196>>2])))+N[e+216>>2]);N[e+56>>2]=j;r=Q(Q(Q(f*N[e+184>>2])+Q(Q(g*N[e+176>>2])+Q(k*N[e+180>>2])))+N[e+212>>2]);N[e+52>>2]=r;o=Q(Q(Q(f*N[e+168>>2])+Q(Q(g*N[e+160>>2])+Q(k*N[e+164>>2])))+N[e+208>>2]);N[e+48>>2]=o;J[e+44>>2]=0;f=N[e+72>>2];g=N[e+64>>2];m=N[e+68>>2];k=Q(Q(Q(f*N[e+136>>2])+Q(Q(g*N[e+128>>2])+Q(m*N[e+132>>2])))+N[e+152>>2]);N[e+40>>2]=k;n=Q(Q(Q(f*N[e+120>>2])+Q(Q(g*N[e+112>>2])+Q(m*N[e+116>>2])))+N[e+148>>2]);N[e+36>>2]=n;f=Q(Q(Q(f*N[e+104>>2])+Q(Q(g*N[e+96>>2])+Q(m*N[e+100>>2])))+N[e+144>>2]);N[e+32>>2]=f;if(l){J[e+40>>2]=0;J[e+56>>2]=0;k=Q(0);j=Q(0);}J[e+28>>2]=0;g=Q(j-k);N[e+24>>2]=g;f=Q(o-f);N[e+16>>2]=f;j=Q(r-n);N[e+20>>2]=j;f=Q(Q(N[a+12>>2]*g)+Q(Q(N[a+4>>2]*f)+Q(j*N[a+8>>2])));if(!(!(f>Q(0))|!(Q(f*f)>Q(i*N[b+128>>2])))){J[a+68>>2]=10;break c}if(Pd(J[a+24>>2],e+16|0)){J[a+68>>2]=1;break c}f=Q(i-f);if(f<=Q(i*Q(9.999999974752427e-7))){J[a+68>>2]=f<=Q(0)?2:11;break c}Sd(J[a+24>>2],e+16|0,e+48|0,e+32|0);d:{if(!Qd(J[a+24>>2],e)){l=3;break d}f=N[e+8>>2];g=Q(f*f);f=N[e>>2];k=Q(f*f);f=N[e+4>>2];f=Q(g+Q(k+Q(f*f)));if(f<Q(9.999999974752427e-7)){l=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=l;l=J[e+12>>2];J[h+8>>2]=J[e+8>>2];J[h+12>>2]=l;l=6;break d}if(Q(i-f)<=Q(i*Q(1.1920928955078125e-7))){l=12;i=f;break d}t=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=t;t=J[e+12>>2];J[h+8>>2]=J[e+8>>2];J[h+12>>2]=t;t=J[a+64>>2];J[a+64>>2]=t+1;if((t|0)>1e3){break b}if(J[J[a+24>>2]>>2]==4){J[a+68>>2]=13;break b}i=f;continue}break}J[a+68>>2]=l;}Od(J[a+24>>2],e+240|0,e+224|0);l=J[h+12>>2];J[e+264>>2]=J[h+8>>2];J[e+268>>2]=l;l=J[h+4>>2];J[e+256>>2]=J[h>>2];J[e+260>>2]=l;f=N[a+12>>2];g=N[a+4>>2];j=N[a+8>>2];k=Q(Q(f*f)+Q(Q(g*g)+Q(j*j)));if(k<Q(9.999999974752427e-7)){J[a+68>>2]=5;}if(k>Q(14210854715202004e-30)){k=Q(Q(1)/Q(Y(k)));N[e+256>>2]=k*N[e+256>>2];N[e+260>>2]=k*N[e+260>>2];N[e+264>>2]=k*N[e+264>>2];m=Q(Y(i));i=Q(p/m);N[e+240>>2]=N[e+240>>2]-Q(i*g);N[e+244>>2]=N[e+244>>2]-Q(i*j);N[e+248>>2]=N[e+248>>2]-Q(i*f);i=Q(q/m);N[e+224>>2]=Q(i*g)+N[e+224>>2];N[e+228>>2]=Q(i*j)+N[e+228>>2];N[e+232>>2]=Q(i*f)+N[e+232>>2];l=1;J[a+60>>2]=1;f=Q(Q(Q(1)/k)-s);break a}J[a+60>>2]=2;}l=0;f=Q(0);}F=1;t=J[a+20>>2];if(!(!J[a+68>>2]|(!J[a+72>>2]|!t))){F=!(N[8264]>Q(s+f));}e:{f:{g:{if(!t|l&F){break g}J[8501]=J[8501]+1;J[h+8>>2]=0;J[h+12>>2]=0;J[h>>2]=0;J[h+4>>2]=0;if(ua[J[J[t>>2]+8>>2]](t,J[a+24>>2],J[a+28>>2],J[a+32>>2],e+160|0,e+96|0,h,e+80|0,e- -64|0,d)|0){k=Q(0);g=N[e+72>>2];s=N[e+88>>2];p=Q(g-s);m=N[e+64>>2];r=N[e+80>>2];i=Q(m-r);o=N[e+68>>2];n=N[e+84>>2];q=Q(o-n);j=Q(Q(p*p)+Q(Q(i*i)+Q(q*q)));if(j<=Q(14210854715202004e-30)){k=N[a+16>>2];p=N[a+12>>2];i=N[a+4>>2];q=N[a+8>>2];j=Q(Q(p*p)+Q(Q(i*i)+Q(q*q)));}if(j>Q(14210854715202004e-30)){J[a+60>>2]=3;g=Q(s-g);v=Q(g*g);g=Q(r-m);m=Q(g*g);g=Q(n-o);g=Q(-Q(Y(Q(v+Q(m+Q(g*g))))));if(!(!(g<f)&l)){d=J[e+92>>2];J[e+248>>2]=J[e+88>>2];J[e+252>>2]=d;d=J[e+76>>2];J[e+232>>2]=J[e+72>>2];J[e+236>>2]=d;d=J[e+84>>2];J[e+240>>2]=J[e+80>>2];J[e+244>>2]=d;d=J[e+68>>2];J[e+224>>2]=J[e+64>>2];J[e+228>>2]=d;N[e+268>>2]=k;f=Q(Q(1)/Q(Y(j)));N[e+264>>2]=p*f;N[e+260>>2]=q*f;N[e+256>>2]=i*f;f=g;break f}J[a+60>>2]=8;break f}J[a+60>>2]=9;if(l){break f}break e}g=N[a+12>>2];j=N[a+4>>2];k=N[a+8>>2];if(!(Q(Q(g*g)+Q(Q(j*j)+Q(k*k)))>Q(0))){break g}i=Q(N[e+88>>2]-N[e+72>>2]);o=Q(i*i);i=Q(N[e+80>>2]-N[e+64>>2]);v=Q(i*i);i=Q(N[e+84>>2]-N[e+68>>2]);i=Q(Q(Y(Q(o+Q(v+Q(i*i)))))-s);if(!(!(i<f)&l)){d=J[e+92>>2];J[e+248>>2]=J[e+88>>2];J[e+252>>2]=d;d=J[e+76>>2];J[e+232>>2]=J[e+72>>2];J[e+236>>2]=d;N[e+248>>2]=N[e+248>>2]-Q(p*g);N[e+232>>2]=Q(q*g)+N[e+232>>2];d=J[e+68>>2];J[e+224>>2]=J[e+64>>2];J[e+228>>2]=d;d=J[e+84>>2];J[e+240>>2]=J[e+80>>2];J[e+244>>2]=d;N[e+224>>2]=Q(q*j)+N[e+224>>2];N[e+228>>2]=Q(q*k)+N[e+228>>2];N[e+240>>2]=N[e+240>>2]-Q(p*j);N[e+244>>2]=N[e+244>>2]-Q(p*k);d=J[h+12>>2];J[e+264>>2]=J[h+8>>2];J[e+268>>2]=d;d=J[h+4>>2];J[e+256>>2]=J[h>>2];J[e+260>>2]=d;g=N[e+264>>2];j=N[e+256>>2];k=N[e+260>>2];f=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(j*j)+Q(k*k))))));N[e+264>>2]=g*f;N[e+260>>2]=k*f;N[e+256>>2]=j*f;J[a+60>>2]=6;f=i;break f}J[a+60>>2]=5;break f}if(!l){break e}}if(!(f<Q(0)|N[b+128>>2]>Q(f*f))){break e}d=J[e+260>>2];J[h>>2]=J[e+256>>2];J[h+4>>2]=d;d=J[e+268>>2];J[h+8>>2]=J[e+264>>2];J[h+12>>2]=d;N[a+56>>2]=f;k=N[b+32>>2];p=N[b>>2];q=N[b+16>>2];s=N[b+36>>2];m=N[b+4>>2];r=N[b+20>>2];i=N[b+40>>2];g=N[b+8>>2];o=N[b+24>>2];J[e+92>>2]=0;v=i;i=N[e+264>>2];j=N[e+256>>2];n=Q(g*j);g=N[e+260>>2];N[e+88>>2]=Q(v*i)+Q(n+Q(o*g));N[e+84>>2]=Q(s*i)+Q(Q(m*j)+Q(g*r));N[e+80>>2]=Q(k*i)+Q(Q(p*j)+Q(q*g));k=N[b+96>>2];p=N[b+64>>2];q=N[b+80>>2];s=N[b+100>>2];m=N[b+68>>2];r=N[b+84>>2];o=N[b+104>>2];n=N[b+72>>2];u=N[b+88>>2];J[e+76>>2]=0;j=Q(-j);N[e+72>>2]=Q(Q(n*j)-Q(u*g))-Q(o*i);N[e+68>>2]=Q(Q(m*j)-Q(r*g))-Q(s*i);N[e+64>>2]=Q(Q(p*j)-Q(q*g))-Q(k*i);d=e+48|0;h=e+80|0;ab(d,J[a+28>>2],h);l=e+32|0;t=e- -64|0;ab(l,J[a+32>>2],t);i=N[e+264>>2];G=N[e+216>>2];H=N[e+200>>2];I=N[e+192>>2];L=N[e+196>>2];M=N[e+152>>2];O=N[e+136>>2];P=N[e+128>>2];R=N[e+132>>2];S=N[e+208>>2];T=N[e+168>>2];U=N[e+160>>2];V=N[e+164>>2];W=N[e+144>>2];X=N[e+104>>2];Z=N[e+96>>2];_=N[e+100>>2];$=N[e+212>>2];aa=N[e+184>>2];k=N[e+56>>2];ba=N[e+176>>2];p=N[e+48>>2];ca=N[e+180>>2];q=N[e+52>>2];da=N[e+148>>2];ea=N[e+120>>2];s=N[e+40>>2];fa=N[e+112>>2];m=N[e+32>>2];ga=N[e+116>>2];r=N[e+36>>2];j=N[e+256>>2];g=N[e+260>>2];n=N[b+32>>2];u=N[b>>2];w=N[b+16>>2];x=N[b+36>>2];y=N[b+4>>2];z=N[b+20>>2];A=N[b+40>>2];o=N[b+8>>2];B=N[b+24>>2];J[e+92>>2]=0;v=o;o=Q(-j);N[e+88>>2]=Q(Q(v*o)-Q(B*g))-Q(A*i);N[e+84>>2]=Q(Q(y*o)-Q(z*g))-Q(x*i);N[e+80>>2]=Q(Q(u*o)-Q(w*g))-Q(n*i);n=N[b+96>>2];u=N[b+64>>2];w=N[b+80>>2];x=N[b+100>>2];y=N[b+68>>2];z=N[b+84>>2];A=N[b+104>>2];B=N[b+72>>2];v=N[b+88>>2];J[e+76>>2]=0;N[e+72>>2]=Q(A*i)+Q(Q(B*j)+Q(g*v));N[e+68>>2]=Q(x*i)+Q(Q(y*j)+Q(g*z));N[e+64>>2]=Q(n*i)+Q(Q(u*j)+Q(g*w));ab(d,J[a+28>>2],h);ab(l,J[a+32>>2],t);z=N[e+264>>2];j=N[e+56>>2];n=N[e+48>>2];u=N[e+52>>2];w=N[e+40>>2];x=N[e+32>>2];y=N[e+36>>2];v=Q(z*Q(Q(Q(Q(j*N[e+200>>2])+Q(Q(n*N[e+192>>2])+Q(u*N[e+196>>2])))+N[e+216>>2])-Q(Q(Q(w*N[e+136>>2])+Q(Q(x*N[e+128>>2])+Q(y*N[e+132>>2])))+N[e+152>>2])));A=N[e+256>>2];B=Q(A*Q(Q(Q(Q(j*N[e+168>>2])+Q(Q(n*N[e+160>>2])+Q(u*N[e+164>>2])))+N[e+208>>2])-Q(Q(Q(w*N[e+104>>2])+Q(Q(x*N[e+96>>2])+Q(y*N[e+100>>2])))+N[e+144>>2])));n=Q(Q(Q(Q(j*N[e+184>>2])+Q(Q(n*N[e+176>>2])+Q(u*N[e+180>>2])))+N[e+212>>2])-Q(Q(Q(w*N[e+120>>2])+Q(Q(x*N[e+112>>2])+Q(y*N[e+116>>2])))+N[e+148>>2]));j=N[e+260>>2];if(Q(v+Q(B+Q(n*j)))<Q(Q(Q(o*Q(Q(S+Q(Q(k*T)+Q(Q(p*U)+Q(q*V))))-Q(W+Q(Q(s*X)+Q(Q(m*Z)+Q(r*_))))))-Q(g*Q(Q($+Q(Q(k*aa)+Q(Q(p*ba)+Q(q*ca))))-Q(da+Q(Q(s*ea)+Q(Q(m*fa)+Q(r*ga)))))))-Q(i*Q(Q(G+Q(Q(k*H)+Q(Q(p*I)+Q(q*L))))-Q(M+Q(Q(s*O)+Q(Q(m*P)+Q(r*R)))))))){J[a+60>>2]=10;N[e+264>>2]=-z;N[e+260>>2]=-j;N[e+256>>2]=-A;}J[e+92>>2]=0;N[e+88>>2]=D+N[e+232>>2];N[e+84>>2]=C+N[e+228>>2];N[e+80>>2]=E+N[e+224>>2];ua[J[J[c>>2]+16>>2]](c,e+256|0,e+80|0,f);}sa=e+272|0;}function zb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=sa-16|0;sa=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{if(a>>>0<=244){g=J[8952];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=g>>>c|0;if(b&3){c=c+((b^-1)&1)|0;a=c<<3;b=a+35848|0;d=J[a+35856>>2];a=J[d+8>>2];o:{if((b|0)==(a|0)){m=35808,n=vs(c)&g,J[m>>2]=n;break o}J[a+12>>2]=b;J[b+8>>2]=a;}a=d+8|0;b=c<<3;J[d+4>>2]=b|3;b=b+d|0;J[b+4>>2]=J[b+4>>2]|1;break a}k=J[8954];if(k>>>0>=h>>>0){break n}if(b){a=2<<c;a=(0-a|a)&b<<c;d=ts(0-a&a);a=d<<3;b=a+35848|0;e=J[a+35856>>2];a=J[e+8>>2];p:{if((b|0)==(a|0)){g=vs(d)&g;J[8952]=g;break p}J[a+12>>2]=b;J[b+8>>2]=a;}J[e+4>>2]=h|3;c=e+h|0;a=d<<3;d=a-h|0;J[c+4>>2]=d|1;J[a+e>>2]=d;if(k){b=(k&-8)+35848|0;f=J[8957];a=1<<(k>>>3);q:{if(!(a&g)){J[8952]=a|g;a=b;break q}a=J[b+8>>2];}J[b+8>>2]=f;J[a+12>>2]=f;J[f+12>>2]=b;J[f+8>>2]=a;}a=e+8|0;J[8957]=c;J[8954]=d;break a}j=J[8953];if(!j){break n}c=J[(ts(0-j&j)<<2)+36112>>2];f=(J[c+4>>2]&-8)-h|0;b=c;while(1){r:{a=J[b+16>>2];if(!a){a=J[b+20>>2];if(!a){break r}}b=(J[a+4>>2]&-8)-h|0;d=b>>>0<f>>>0;f=d?b:f;c=d?a:c;b=a;continue}break}i=J[c+24>>2];d=J[c+12>>2];if((d|0)!=(c|0)){a=J[c+8>>2];J[a+12>>2]=d;J[d+8>>2]=a;break b}b=c+20|0;a=J[b>>2];if(!a){a=J[c+16>>2];if(!a){break m}b=c+16|0;}while(1){e=b;d=a;b=a+20|0;a=J[b>>2];if(a){continue}b=d+16|0;a=J[d+16>>2];if(a){continue}break}J[e>>2]=0;break b}h=-1;if(a>>>0>4294967231){break n}a=a+11|0;h=a&-8;j=J[8953];if(!j){break n}f=0-h|0;g=0;s:{if(h>>>0<256){break s}g=31;if(h>>>0>16777215){break s}a=S(a>>>8|0);g=((h>>>38-a&1)-(a<<1)|0)+62|0;}b=J[(g<<2)+36112>>2];t:{u:{v:{if(!b){a=0;break v}a=0;c=h<<((g|0)!=31?25-(g>>>1|0)|0:0);while(1){w:{e=(J[b+4>>2]&-8)-h|0;if(e>>>0>=f>>>0){break w}d=b;f=e;if(e){break w}f=0;a=b;break u}e=J[b+20>>2];b=J[((c>>>29&4)+b|0)+16>>2];a=e?(e|0)==(b|0)?a:e:a;c=c<<1;if(b){continue}break}}if(!(a|d)){d=0;a=2<<g;a=(0-a|a)&j;if(!a){break n}a=J[(ts(a&0-a)<<2)+36112>>2];}if(!a){break t}}while(1){b=(J[a+4>>2]&-8)-h|0;c=b>>>0<f>>>0;f=c?b:f;d=c?a:d;b=J[a+16>>2];if(b){a=b;}else {a=J[a+20>>2];}if(a){continue}break}}if(!d|J[8954]-h>>>0<=f>>>0){break n}g=J[d+24>>2];c=J[d+12>>2];if((d|0)!=(c|0)){a=J[d+8>>2];J[a+12>>2]=c;J[c+8>>2]=a;break c}b=d+20|0;a=J[b>>2];if(!a){a=J[d+16>>2];if(!a){break l}b=d+16|0;}while(1){e=b;c=a;b=a+20|0;a=J[b>>2];if(a){continue}b=c+16|0;a=J[c+16>>2];if(a){continue}break}J[e>>2]=0;break c}a=J[8954];if(a>>>0>=h>>>0){d=J[8957];b=a-h|0;x:{if(b>>>0>=16){c=d+h|0;J[c+4>>2]=b|1;J[a+d>>2]=b;J[d+4>>2]=h|3;break x}J[d+4>>2]=a|3;a=a+d|0;J[a+4>>2]=J[a+4>>2]|1;c=0;b=0;}J[8954]=b;J[8957]=c;a=d+8|0;break a}i=J[8955];if(i>>>0>h>>>0){b=i-h|0;J[8955]=b;c=J[8958];a=c+h|0;J[8958]=a;J[a+4>>2]=b|1;J[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(J[9070]){c=J[9072];}else {J[9073]=-1;J[9074]=-1;J[9071]=4096;J[9072]=4096;J[9070]=l+12&-16^1431655768;J[9075]=0;J[9063]=0;c=4096;}e=j+c|0;f=0-c|0;b=e&f;if(b>>>0<=h>>>0){break a}d=J[9062];if(d){c=J[9060];g=c+b|0;if(d>>>0<g>>>0|c>>>0>=g>>>0){break a}}y:{if(!(K[36252]&4)){z:{A:{B:{C:{d=J[8958];if(d){a=36256;while(1){c=J[a>>2];if(c>>>0<=d>>>0&d>>>0<c+J[a+4>>2]>>>0){break C}a=J[a+8>>2];if(a){continue}break}}c=gb(0);if((c|0)==-1){break z}g=b;d=J[9071];a=d-1|0;if(a&c){g=(b-c|0)+(a+c&0-d)|0;}if(g>>>0<=h>>>0){break z}d=J[9062];if(d){a=J[9060];f=a+g|0;if(d>>>0<f>>>0|a>>>0>=f>>>0){break z}}a=gb(g);if((c|0)!=(a|0)){break B}break y}g=f&e-i;c=gb(g);if((c|0)==(J[a>>2]+J[a+4>>2]|0)){break A}a=c;}if((a|0)==-1){break z}if(h+48>>>0<=g>>>0){c=a;break y}c=J[9072];c=c+(j-g|0)&0-c;if((gb(c)|0)==-1){break z}g=c+g|0;c=a;break y}if((c|0)!=-1){break y}}J[9063]=J[9063]|4;}c=gb(b);a=gb(0);if((c|0)==-1|(a|0)==-1|a>>>0<=c>>>0){break i}g=a-c|0;if(g>>>0<=h+40>>>0){break i}}a=J[9060]+g|0;J[9060]=a;if(a>>>0>M[9061]){J[9061]=a;}D:{e=J[8958];if(e){a=36256;while(1){d=J[a>>2];b=J[a+4>>2];if((d+b|0)==(c|0)){break D}a=J[a+8>>2];if(a){continue}break}break k}a=J[8956];if(!(a>>>0<=c>>>0?a:0)){J[8956]=c;}a=0;J[9065]=g;J[9064]=c;J[8960]=-1;J[8961]=J[9070];J[9067]=0;while(1){d=a<<3;b=d+35848|0;J[d+35856>>2]=b;J[d+35860>>2]=b;a=a+1|0;if((a|0)!=32){continue}break}d=g-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;J[8955]=b;a=a+c|0;J[8958]=a;J[a+4>>2]=b|1;J[(c+d|0)+4>>2]=40;J[8959]=J[9074];break j}if(J[a+12>>2]&8|(c>>>0<=e>>>0|d>>>0>e>>>0)){break k}J[a+4>>2]=b+g;a=e+8&7?-8-e&7:0;c=a+e|0;J[8958]=c;b=J[8955]+g|0;a=b-a|0;J[8955]=a;J[c+4>>2]=a|1;J[(b+e|0)+4>>2]=40;J[8959]=J[9074];break j}d=0;break b}c=0;break c}if(M[8956]>c>>>0){J[8956]=c;}b=c+g|0;a=36256;E:{F:{G:{while(1){if((b|0)!=J[a>>2]){a=J[a+8>>2];if(a){continue}break G}break}if(!(K[a+12|0]&8)){break F}}a=36256;while(1){b=J[a>>2];if(b>>>0<=e>>>0){f=b+J[a+4>>2]|0;if(f>>>0>e>>>0){break E}}a=J[a+8>>2];continue}}J[a>>2]=c;J[a+4>>2]=J[a+4>>2]+g;j=(c+8&7?-8-c&7:0)+c|0;J[j+4>>2]=h|3;g=b+(b+8&7?-8-b&7:0)|0;i=h+j|0;a=g-i|0;if((e|0)==(g|0)){J[8958]=i;a=J[8955]+a|0;J[8955]=a;J[i+4>>2]=a|1;break d}if(J[8957]==(g|0)){J[8957]=i;a=J[8954]+a|0;J[8954]=a;J[i+4>>2]=a|1;J[a+i>>2]=a;break d}f=J[g+4>>2];if((f&3)!=1){break e}e=f&-8;if(f>>>0<=255){c=J[g+12>>2];b=J[g+8>>2];if((c|0)==(b|0)){m=35808,n=J[8952]&vs(f>>>3|0),J[m>>2]=n;break f}J[b+12>>2]=c;J[c+8>>2]=b;break f}h=J[g+24>>2];c=J[g+12>>2];if((g|0)!=(c|0)){b=J[g+8>>2];J[b+12>>2]=c;J[c+8>>2]=b;break g}b=g+20|0;f=J[b>>2];if(!f){f=J[g+16>>2];if(!f){break h}b=g+16|0;}while(1){d=b;c=f;b=c+20|0;f=J[b>>2];if(f){continue}b=c+16|0;f=J[c+16>>2];if(f){continue}break}J[d>>2]=0;break g}d=g-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;J[8955]=b;a=a+c|0;J[8958]=a;J[a+4>>2]=b|1;J[(c+d|0)+4>>2]=40;J[8959]=J[9074];a=(f+(f-39&7?39-f&7:0)|0)-47|0;d=a>>>0<e+16>>>0?e:a;J[d+4>>2]=27;a=J[9067];J[d+16>>2]=J[9066];J[d+20>>2]=a;a=J[9065];J[d+8>>2]=J[9064];J[d+12>>2]=a;J[9066]=d+8;J[9065]=g;J[9064]=c;J[9067]=0;a=d+24|0;while(1){J[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0<f>>>0){continue}break}if((d|0)==(e|0)){break j}J[d+4>>2]=J[d+4>>2]&-2;f=d-e|0;J[e+4>>2]=f|1;J[d>>2]=f;if(f>>>0<=255){b=(f&-8)+35848|0;c=J[8952];a=1<<(f>>>3);H:{if(!(c&a)){J[8952]=a|c;a=b;break H}a=J[b+8>>2];}J[b+8>>2]=e;J[a+12>>2]=e;J[e+12>>2]=b;J[e+8>>2]=a;break j}a=31;if(f>>>0<=16777215){a=S(f>>>8|0);a=((f>>>38-a&1)-(a<<1)|0)+62|0;}J[e+28>>2]=a;J[e+16>>2]=0;J[e+20>>2]=0;b=(a<<2)+36112|0;I:{d=J[8953];c=1<<a;J:{if(!(d&c)){J[8953]=c|d;J[b>>2]=e;break J}a=f<<((a|0)!=31?25-(a>>>1|0)|0:0);d=J[b>>2];while(1){b=d;if((f|0)==(J[b+4>>2]&-8)){break I}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;d=J[c+16>>2];if(d){continue}break}J[c+16>>2]=e;}J[e+24>>2]=b;J[e+12>>2]=e;J[e+8>>2]=e;break j}a=J[b+8>>2];J[a+12>>2]=e;J[b+8>>2]=e;J[e+24>>2]=0;J[e+12>>2]=b;J[e+8>>2]=a;}a=J[8955];if(a>>>0<=h>>>0){break i}b=a-h|0;J[8955]=b;c=J[8958];a=c+h|0;J[8958]=a;J[a+4>>2]=b|1;J[c+4>>2]=h|3;a=c+8|0;break a}J[8951]=48;a=0;break a}c=0;}if(!h){break f}d=J[g+28>>2];b=(d<<2)+36112|0;K:{if(J[b>>2]==(g|0)){J[b>>2]=c;if(c){break K}m=35812,n=J[8953]&vs(d),J[m>>2]=n;break f}J[h+(J[h+16>>2]==(g|0)?16:20)>>2]=c;if(!c){break f}}J[c+24>>2]=h;b=J[g+16>>2];if(b){J[c+16>>2]=b;J[b+24>>2]=c;}b=J[g+20>>2];if(!b){break f}J[c+20>>2]=b;J[b+24>>2]=c;}a=a+e|0;g=e+g|0;f=J[g+4>>2];}J[g+4>>2]=f&-2;J[i+4>>2]=a|1;J[a+i>>2]=a;if(a>>>0<=255){b=(a&-8)+35848|0;c=J[8952];a=1<<(a>>>3);L:{if(!(c&a)){J[8952]=a|c;a=b;break L}a=J[b+8>>2];}J[b+8>>2]=i;J[a+12>>2]=i;J[i+12>>2]=b;J[i+8>>2]=a;break d}f=31;if(a>>>0<=16777215){b=S(a>>>8|0);f=((a>>>38-b&1)-(b<<1)|0)+62|0;}J[i+28>>2]=f;J[i+16>>2]=0;J[i+20>>2]=0;b=(f<<2)+36112|0;M:{d=J[8953];c=1<<f;N:{if(!(d&c)){J[8953]=c|d;J[b>>2]=i;break N}f=a<<((f|0)!=31?25-(f>>>1|0)|0:0);c=J[b>>2];while(1){b=c;if((J[c+4>>2]&-8)==(a|0)){break M}c=f>>>29|0;f=f<<1;d=(c&4)+b|0;c=J[d+16>>2];if(c){continue}break}J[d+16>>2]=i;}J[i+24>>2]=b;J[i+12>>2]=i;J[i+8>>2]=i;break d}a=J[b+8>>2];J[a+12>>2]=i;J[b+8>>2]=i;J[i+24>>2]=0;J[i+12>>2]=b;J[i+8>>2]=a;}a=j+8|0;break a}O:{if(!g){break O}b=J[d+28>>2];a=(b<<2)+36112|0;P:{if(J[a>>2]==(d|0)){J[a>>2]=c;if(c){break P}j=vs(b)&j;J[8953]=j;break O}J[g+(J[g+16>>2]==(d|0)?16:20)>>2]=c;if(!c){break O}}J[c+24>>2]=g;a=J[d+16>>2];if(a){J[c+16>>2]=a;J[a+24>>2]=c;}a=J[d+20>>2];if(!a){break O}J[c+20>>2]=a;J[a+24>>2]=c;}Q:{if(f>>>0<=15){a=f+h|0;J[d+4>>2]=a|3;a=a+d|0;J[a+4>>2]=J[a+4>>2]|1;break Q}J[d+4>>2]=h|3;e=d+h|0;J[e+4>>2]=f|1;J[e+f>>2]=f;if(f>>>0<=255){b=(f&-8)+35848|0;c=J[8952];a=1<<(f>>>3);R:{if(!(c&a)){J[8952]=a|c;a=b;break R}a=J[b+8>>2];}J[b+8>>2]=e;J[a+12>>2]=e;J[e+12>>2]=b;J[e+8>>2]=a;break Q}a=31;if(f>>>0<=16777215){a=S(f>>>8|0);a=((f>>>38-a&1)-(a<<1)|0)+62|0;}J[e+28>>2]=a;J[e+16>>2]=0;J[e+20>>2]=0;b=(a<<2)+36112|0;S:{c=1<<a;T:{if(!(c&j)){J[8953]=c|j;J[b>>2]=e;break T}a=f<<((a|0)!=31?25-(a>>>1|0)|0:0);h=J[b>>2];while(1){b=h;if((J[b+4>>2]&-8)==(f|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=J[c+16>>2];if(h){continue}break}J[c+16>>2]=e;}J[e+24>>2]=b;J[e+12>>2]=e;J[e+8>>2]=e;break Q}a=J[b+8>>2];J[a+12>>2]=e;J[b+8>>2]=e;J[e+24>>2]=0;J[e+12>>2]=b;J[e+8>>2]=a;}a=d+8|0;break a}U:{if(!i){break U}b=J[c+28>>2];a=(b<<2)+36112|0;V:{if(J[a>>2]==(c|0)){J[a>>2]=d;if(d){break V}m=35812,n=vs(b)&j,J[m>>2]=n;break U}J[i+(J[i+16>>2]==(c|0)?16:20)>>2]=d;if(!d){break U}}J[d+24>>2]=i;a=J[c+16>>2];if(a){J[d+16>>2]=a;J[a+24>>2]=d;}a=J[c+20>>2];if(!a){break U}J[d+20>>2]=a;J[a+24>>2]=d;}W:{if(f>>>0<=15){a=f+h|0;J[c+4>>2]=a|3;a=a+c|0;J[a+4>>2]=J[a+4>>2]|1;break W}J[c+4>>2]=h|3;d=c+h|0;J[d+4>>2]=f|1;J[d+f>>2]=f;if(k){b=(k&-8)+35848|0;e=J[8957];a=1<<(k>>>3);X:{if(!(a&g)){J[8952]=a|g;a=b;break X}a=J[b+8>>2];}J[b+8>>2]=e;J[a+12>>2]=e;J[e+12>>2]=b;J[e+8>>2]=a;}J[8957]=d;J[8954]=f;}a=c+8|0;}sa=l+16|0;return a|0}function qi(a,b){a=a|0;b=b|0;var c=0,d=0,e=Q(0),f=0,g=Q(0),h=Q(0),i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=0,q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=0,v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=0,F=0,G=Q(0),I=Q(0),L=Q(0),M=0,O=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=0,ba=0,ca=Q(0),da=Q(0),ea=Q(0),fa=0,ga=0,ha=Q(0),ia=Q(0),ja=Q(0),ka=Q(0),la=Q(0),ma=0,na=0,oa=0;d=J[a+32>>2];aa=d+388|0;c=J[a+28>>2];ba=c+388|0;d=d+4|0;c=c+4|0;if(K[a+739|0]){e=N[J[a+32>>2]+404>>2];V=N[J[a+28>>2]+404>>2];k=Q(e+V);k=k>Q(0)?Q(e/k):Q(.5);n=Q(Q(1)-k);r=N[a+672>>2];q=N[d+40>>2];h=N[a+664>>2];s=N[d+32>>2];l=N[d+36>>2];g=N[a+668>>2];o=N[d+56>>2];ha=Q(Q(Q(r*q)+Q(Q(h*s)+Q(l*g)))+o);B=Q(ha-o);L=B;o=N[a+592>>2];j=N[c+40>>2];m=N[a+560>>2];y=N[c+32>>2];w=N[a+576>>2];z=N[c+36>>2];R=Q(Q(o*j)+Q(Q(m*y)+Q(w*z)));t=N[a+656>>2];I=Q(t*q);q=N[a+624>>2];O=Q(q*s);s=N[a+640>>2];S=Q(I+Q(O+Q(s*l)));l=Q(Q(R*k)+Q(S*n));I=l;T=Q(l*l);v=N[c+8>>2];A=N[c>>2];D=N[c+4>>2];U=Q(Q(o*v)+Q(Q(m*A)+Q(D*w)));x=N[d+8>>2];W=N[d>>2];X=N[d+4>>2];Z=Q(Q(t*x)+Q(Q(q*W)+Q(X*s)));l=Q(Q(U*k)+Q(Z*n));G=N[c+24>>2];C=N[c+16>>2];O=w;w=N[c+20>>2];ca=Q(Q(o*G)+Q(Q(m*C)+Q(O*w)));O=N[d+24>>2];_=N[d+16>>2];o=s;s=N[d+20>>2];da=Q(Q(t*O)+Q(Q(q*_)+Q(o*s)));t=Q(Q(ca*k)+Q(da*n));q=Q(Q(1)/Q(Y(Q(T+Q(Q(l*l)+Q(t*t))))));o=Q(I*q);I=Q(B*o);m=N[d+48>>2];W=Q(m+Q(Q(r*x)+Q(Q(h*W)+Q(X*g))));B=Q(W-m);m=Q(l*q);g=Q(Q(r*O)+Q(Q(h*_)+Q(s*g)));r=N[d+52>>2];X=Q(g+r);s=Q(X-r);r=Q(t*q);h=Q(I+Q(Q(B*m)+Q(s*r)));l=Q(o*h);O=Q(L-l);g=N[a+608>>2];t=N[a+600>>2];q=N[a+604>>2];x=N[c+56>>2];_=Q(Q(Q(g*j)+Q(Q(t*y)+Q(z*q)))+x);x=Q(_-x);I=N[c+48>>2];ia=Q(I+Q(Q(g*v)+Q(Q(t*A)+Q(D*q))));I=Q(ia-I);L=Q(Q(g*G)+Q(Q(t*C)+Q(w*q)));g=N[c+52>>2];ja=Q(L+g);T=Q(ja-g);g=Q(Q(o*x)+Q(Q(I*m)+Q(T*r)));$=Q(o*g);l=Q($-l);t=Q(O-Q(n*l));q=Q(r*h);ka=Q(s-q);ea=Q(r*g);L=Q(ea-q);q=Q(ka-Q(n*L));h=Q(m*h);la=Q(B-h);g=Q(m*g);h=Q(g-h);s=Q(la-Q(n*h));$=Q(x-$);l=Q($+Q(k*l));T=Q(T-ea);B=Q(T+Q(k*L));g=Q(I-g);x=Q(g+Q(k*h));d=!(e<Q(1.1920928955078125e-7))&(V<Q(1.1920928955078125e-7)^-1);e=Q(Q(k*O)+Q(n*$));g=Q(Q(k*la)+Q(n*g));V=Q(Q(k*ka)+Q(n*T));h=Q(Q(e*e)+Q(Q(g*g)+Q(V*V)));a:{if(h>Q(1.1920928955078125e-7)){j=Q(Q(1)/Q(Y(h)));h=Q(e*j);e=Q(V*j);g=Q(g*j);break a}h=N[a+588>>2];e=Q(h*v);v=N[a+556>>2];g=Q(v*A);A=N[a+572>>2];g=Q(e+Q(g+Q(D*A)));e=Q(Q(h*G)+Q(Q(v*C)+Q(A*w)));h=Q(Q(h*j)+Q(Q(v*y)+Q(A*z)));}p=J[b+24>>2];f=J[b+12>>2];N[f+8>>2]=Q(x*e)-Q(g*B);N[f+4>>2]=Q(l*g)-Q(h*x);N[f>>2]=Q(B*h)-Q(e*l);c=J[b+20>>2];N[c+8>>2]=-Q(Q(s*e)-Q(g*q));N[c+4>>2]=-Q(Q(t*g)-Q(h*s));N[c>>2]=-Q(Q(q*h)-Q(e*t));y=Q(Q(o*g)-Q(h*m));w=Q(Q(r*h)-Q(e*o));j=Q(Q(s*y)-Q(w*q));z=Q(Q(m*e)-Q(g*r));v=Q(Q(t*w)-Q(z*s));A=Q(Q(q*z)-Q(y*t));D=Q(Q(x*y)-Q(w*B));G=Q(Q(l*w)-Q(z*x));C=Q(Q(B*z)-Q(y*l));E=K[a+716|0];fa=!E;if(!(fa|d)){D=Q(k*D);G=Q(k*G);C=Q(k*C);v=Q(n*v);A=Q(n*A);j=Q(n*j);}i=p<<2;u=i+f|0;N[u+8>>2]=D;N[u+4>>2]=G;N[u>>2]=C;N[c+i>>2]=-A;M=p+1|0;N[c+(M<<2)>>2]=-v;ga=p+2|0;N[c+(ga<<2)>>2]=-j;j=Q(Q(s*r)+Q(m*Q(-q)));s=Q(Q(t*m)+Q(o*Q(-s)));t=Q(Q(q*o)+Q(r*Q(-t)));q=Q(Q(x*r)+Q(m*Q(-B)));x=Q(Q(l*m)+Q(o*Q(-x)));l=Q(Q(B*o)+Q(r*Q(-l)));if(!d){q=Q(k*q);x=Q(k*x);l=Q(k*l);s=Q(n*s);t=Q(n*t);j=Q(n*j);}n=Q(-r);B=Q(-m);v=Q(-o);ma=p<<3;d=f+ma|0;N[d+8>>2]=q;N[d+4>>2]=x;N[d>>2]=l;u=p<<1;N[c+(u<<2)>>2]=-t;na=u|1;N[c+(na<<2)>>2]=-s;oa=u+2|0;N[c+(oa<<2)>>2]=-j;k=N[(K[a+748|0]&8?a+756|0:b+4|0)>>2];b:{if(K[a+736|0]){s=Q(-z);t=Q(-y);j=Q(-w);x=Q(-h);l=Q(-e);q=Q(-g);d=J[b+28>>2];break b}C=N[b>>2];d=J[b+8>>2];N[d+8>>2]=h;N[d+4>>2]=e;N[d>>2]=g;F=d+i|0;N[F+8>>2]=z;N[F+4>>2]=y;N[F>>2]=w;d=d+ma|0;N[d+8>>2]=o;N[d+4>>2]=r;N[d>>2]=m;d=J[b+16>>2];x=Q(-h);N[d+8>>2]=x;l=Q(-e);N[d+4>>2]=l;q=Q(-g);N[d>>2]=q;F=p<<2;j=Q(-w);N[F+d>>2]=j;t=Q(-y);N[d+(M<<2)>>2]=t;s=Q(-z);N[d+(ga<<2)>>2]=s;u=u<<2;N[u+d>>2]=B;N[d+(na<<2)>>2]=n;N[d+(oa<<2)>>2]=v;d=J[b+28>>2];A=Q(ha-_);D=Q(W-ia);G=Q(X-ja);C=Q(k*C);N[d>>2]=Q(Q(h*A)+Q(Q(g*D)+Q(G*e)))*C;N[d+F>>2]=Q(Q(z*A)+Q(Q(w*D)+Q(G*y)))*C;N[d+u>>2]=C*Q(Q(o*A)+Q(Q(m*D)+Q(G*r)));}p=P(p,12);N[p+f>>2]=g;u=p+8|0;N[u+f>>2]=h;F=p+4|0;N[F+f>>2]=e;i=i<<2;N[i+f>>2]=w;M=i|4;N[M+f>>2]=y;ga=i|8;N[ga+f>>2]=z;N[c+p>>2]=q;N[c+u>>2]=x;N[c+F>>2]=l;N[c+i>>2]=j;N[c+M>>2]=t;N[c+ga>>2]=s;j=Q(Q(U*da)-Q(Z*ca));l=Q(j*h);h=Q(Q(ca*S)-Q(da*R));s=Q(h*g);g=Q(Q(R*Z)-Q(S*U));l=Q(l+Q(s+Q(g*e)));e=Q(k*N[b>>2]);N[d+p>>2]=l*e;N[d+i>>2]=Q(Q(j*z)+Q(Q(h*w)+Q(g*y)))*e;c:{d:{if(E){u=K[a+737|0]!=0;e=Q(N[a+708>>2]*N[a+732>>2]);d=e>Q(0)?1:2;break d}if(!K[a+737|0]){break c}e=Q(0);u=1;d=0;}p=P(J[b+24>>2],5);i=p<<2;N[i+f>>2]=m;F=i+8|0;N[F+f>>2]=o;M=f;f=i+4|0;N[M+f>>2]=r;N[c+F>>2]=v;N[c+f>>2]=n;N[c+i>>2]=B;c=a+688|0;n=Eb(c);h=Fb(c);c=J[b+28>>2];J[i+c>>2]=0;i=J[a+748>>2];k=i&2?N[a+764>>2]:k;f=h!=n;if(!(!u|!(f|fa))){if(i&4){N[J[b+32>>2]+(p<<2)>>2]=N[a+752>>2];}n=Hb(N[a+728>>2],n,h,N[a+680>>2],Q(k*N[b>>2]));c=J[b+28>>2];i=p<<2;u=c+i|0;N[u>>2]=Q(Q(n*N[a+680>>2])*N[a+732>>2])+N[u>>2];N[i+J[b+36>>2]>>2]=-N[a+684>>2];N[i+J[b+40>>2]>>2]=N[a+684>>2];}if(!E){break c}i=p<<2;c=i+c|0;N[c>>2]=Q(Q(k*N[b>>2])*e)+N[c>>2];if(H[a+748|0]&1){N[i+J[b+32>>2]>>2]=N[a+760>>2];}e:{if(!f){J[J[b+36>>2]+(p<<2)>>2]=-8388609;e=Q(34028234663852886e22);break e}f=J[b+36>>2]+(p<<2)|0;if((d|0)==1){J[f>>2]=0;e=Q(34028234663852886e22);break e}J[f>>2]=-8388609;e=Q(0);}N[J[b+40>>2]+(p<<2)>>2]=e;k=N[a+704>>2];f:{if(!(k>Q(0))){break f}e=Q(Q(Q(N[ba+8>>2]*o)+Q(Q(N[ba>>2]*m)+Q(N[ba+4>>2]*r)))-Q(Q(N[aa+8>>2]*o)+Q(Q(N[aa>>2]*m)+Q(r*N[aa+4>>2]))));g:{if((d|0)==1){if(!(e<Q(0))){break f}e=Q(e*Q(-k));if(e>N[c>>2]){break g}break f}if(!(e>Q(0))){break f}e=Q(e*Q(-k));if(!(e<N[c>>2])){break f}}N[c>>2]=e;}N[c>>2]=N[a+700>>2]*N[c>>2];}return}h=N[a+656>>2];A=N[d+40>>2];V=Q(h*A);g=N[a+624>>2];D=N[d+32>>2];j=N[a+640>>2];G=N[d+36>>2];ha=Q(Q(g*D)+Q(j*G));C=N[d+24>>2];W=Q(h*C);R=N[d+16>>2];S=N[d+20>>2];X=Q(Q(g*R)+Q(j*S));y=N[a+592>>2];e=N[c+40>>2];O=Q(y*e);w=N[a+560>>2];k=N[c+32>>2];z=N[a+576>>2];n=N[c+36>>2];_=Q(Q(w*k)+Q(z*n));t=N[a+588>>2];I=Q(t*e);q=N[a+556>>2];s=N[a+572>>2];ia=Q(Q(q*k)+Q(s*n));l=N[a+584>>2];ja=Q(l*e);B=N[a+552>>2];x=N[a+568>>2];T=Q(Q(B*k)+Q(x*n));o=N[c+24>>2];$=Q(y*o);m=N[c+16>>2];r=N[c+20>>2];ka=Q(Q(w*m)+Q(z*r));v=N[a+672>>2];L=Q(v*A);A=N[a+664>>2];U=Q(A*D);D=N[a+668>>2];G=Q(Q(L+Q(U+Q(G*D)))+N[d+56>>2]);C=Q(Q(Q(v*C)+Q(Q(A*R)+Q(S*D)))+N[d+52>>2]);R=N[a+608>>2];S=N[a+600>>2];U=N[a+604>>2];Z=N[c+56>>2];ca=Q(Q(Q(R*e)+Q(Q(S*k)+Q(n*U)))+Z);e=N[c+52>>2];da=Q(Q(Q(R*o)+Q(Q(S*m)+Q(r*U)))+e);L=g;g=N[d>>2];ea=N[d+4>>2];L=Q(Q(L*g)+Q(ea*j));j=N[d+8>>2];la=Q(h*j);k=N[c>>2];n=N[c+4>>2];w=Q(Q(w*k)+Q(n*z));h=N[c+8>>2];z=Q(y*h);g=Q(N[d+48>>2]+Q(Q(v*j)+Q(Q(A*g)+Q(ea*D))));j=N[c+48>>2];y=Q(j+Q(Q(R*h)+Q(Q(S*k)+Q(n*U))));p=J[b+24>>2];u=K[a+736|0];if(!u){f=J[b+8>>2];J[f>>2]=1065353216;i=(p<<2)+4|0;J[i+f>>2]=1065353216;E=(p<<3)+8|0;J[E+f>>2]=1065353216;f=J[b+16>>2];J[f>>2]=-1082130432;J[f+i>>2]=-1082130432;J[f+E>>2]=-1082130432;Z=N[c+56>>2];j=N[c+48>>2];e=N[c+52>>2];}c=J[b+12>>2];J[c+12>>2]=0;v=Q(ca-Z);N[c+4>>2]=v;J[c>>2]=0;e=Q(da-e);N[c+8>>2]=-e;i=p<<2;f=i+c|0;J[f+12>>2]=0;j=Q(y-j);N[f+8>>2]=j;J[f+4>>2]=0;N[f>>2]=-v;E=p<<3;f=E+c|0;J[f+8>>2]=0;J[f+12>>2]=0;N[f+4>>2]=-j;N[f>>2]=e;e=N[d+48>>2];j=N[d+56>>2];v=N[d+52>>2];f=J[b+20>>2];J[f+12>>2]=0;J[f>>2]=0;v=Q(C-v);N[f+8>>2]=v;j=Q(G-j);N[f+4>>2]=-j;d=f+i|0;J[d+12>>2]=0;e=Q(g-e);N[d+8>>2]=-e;J[d+4>>2]=0;N[d>>2]=j;d=f+E|0;J[d+8>>2]=0;J[d+12>>2]=0;N[d+4>>2]=e;N[d>>2]=-v;v=N[(K[a+748|0]&8?a+756|0:b+4|0)>>2];e=Q(v*N[b>>2]);d=J[b+28>>2];if(!u){N[d>>2]=e*Q(g-y);N[d+i>>2]=e*Q(C-da);N[d+(p<<3)>>2]=e*Q(G-ca);}i=P(p,12);g=Q(Q(l*h)+Q(Q(B*k)+Q(x*n)));N[i+c>>2]=g;E=i+8|0;j=Q(ja+T);N[E+c>>2]=j;F=i+4|0;y=Q(Q(l*o)+Q(Q(B*m)+Q(x*r)));N[F+c>>2]=y;u=p<<4;h=Q(Q(t*h)+Q(Q(q*k)+Q(n*s)));N[u+c>>2]=h;fa=u|4;m=Q(Q(t*o)+Q(Q(q*m)+Q(s*r)));N[fa+c>>2]=m;M=u|8;r=Q(I+ia);N[M+c>>2]=r;N[f+i>>2]=-g;N[f+E>>2]=-j;N[f+F>>2]=-y;N[f+u>>2]=-h;N[f+fa>>2]=-m;N[f+M>>2]=-r;k=Q(z+w);o=Q(W+X);w=Q(la+L);n=Q($+ka);z=Q(Q(k*o)-Q(w*n));s=Q(z*j);j=Q(V+ha);l=o;o=Q(O+_);t=Q(Q(n*j)-Q(l*o));l=Q(t*g);g=Q(Q(o*w)-Q(j*k));N[d+i>>2]=Q(s+Q(l+Q(y*g)))*e;N[d+u>>2]=Q(Q(z*r)+Q(Q(t*h)+Q(m*g)))*e;u=K[a+716|0];h:{i:{if(u){E=K[a+737|0]!=0;e=Q(N[a+708>>2]*N[a+732>>2]);d=e>Q(0)?1:2;break i}if(!K[a+737|0]){break h}e=Q(0);E=1;d=0;}p=P(p,5);i=p<<2;N[i+c>>2]=k;F=i+8|0;N[F+c>>2]=o;M=c;c=i+4|0;N[M+c>>2]=n;N[f+F>>2]=-o;N[c+f>>2]=-n;N[f+i>>2]=-k;c=a+688|0;m=Eb(c);r=Fb(c);c=J[b+28>>2];J[i+c>>2]=0;i=J[a+748>>2];h=i&2?N[a+764>>2]:v;f=m!=r;if(!(!E|!(f|!u))){if(i&4){N[J[b+32>>2]+(p<<2)>>2]=N[a+752>>2];}m=Hb(N[a+728>>2],m,r,N[a+680>>2],Q(h*N[b>>2]));c=J[b+28>>2];i=p<<2;E=c+i|0;N[E>>2]=Q(Q(m*N[a+680>>2])*N[a+732>>2])+N[E>>2];N[i+J[b+36>>2]>>2]=-N[a+684>>2];N[i+J[b+40>>2]>>2]=N[a+684>>2];}if(!u){break h}i=p<<2;c=i+c|0;N[c>>2]=Q(Q(h*N[b>>2])*e)+N[c>>2];if(H[a+748|0]&1){N[i+J[b+32>>2]>>2]=N[a+760>>2];}j:{if(!f){J[J[b+36>>2]+(p<<2)>>2]=-8388609;e=Q(34028234663852886e22);break j}f=J[b+36>>2]+(p<<2)|0;if((d|0)==1){J[f>>2]=0;e=Q(34028234663852886e22);break j}J[f>>2]=-8388609;e=Q(0);}N[J[b+40>>2]+(p<<2)>>2]=e;m=N[a+704>>2];k:{if(!(m>Q(0))){break k}e=Q(Q(Q(N[ba+8>>2]*o)+Q(Q(N[ba>>2]*k)+Q(n*N[ba+4>>2])))-Q(Q(N[aa+8>>2]*o)+Q(Q(N[aa>>2]*k)+Q(n*N[aa+4>>2]))));l:{if((d|0)==1){if(!(e<Q(0))){break k}e=Q(e*Q(-m));if(e>N[c>>2]){break l}break k}if(!(e>Q(0))){break k}e=Q(e*Q(-m));if(!(e<N[c>>2])){break k}}N[c>>2]=e;}N[c>>2]=N[a+700>>2]*N[c>>2];}}function Tc(a,b,c,d,e,f){var g=0,h=Q(0),i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0,p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=0,G=Q(0),I=Q(0),L=0,M=Q(0),O=Q(0),R=Q(0);g=sa-672|0;sa=g;i=J[d+12>>2];F=J[d+4>>2];L=J[F+4>>2];a:{if((L|0)<=19){N[g+644>>2]=f;J[g+640>>2]=0;J[g+472>>2]=13156;N[g+636>>2]=N[e+4>>2];H[g+444|0]=0;J[g+420>>2]=953267991;J[g+36>>2]=22676;o=g+648|0;J[o+20>>2]=0;J[o+16>>2]=F;J[o+12>>2]=a;J[o+8>>2]=g+36;J[o+4>>2]=g+112;J[o>>2]=22452;b:{if(!(ua[J[J[o>>2]+8>>2]](o,b,c,i,i,g+472|0)|0)){break b}j=N[g+612>>2];k=N[g+604>>2];n=N[g+608>>2];h=Q(Q(j*j)+Q(Q(k*k)+Q(n*n)));if(!(h>Q(9999999747378752e-20))){break b}f=N[g+636>>2];if(!(f<N[e+4>>2])){break b}h=Q(Q(1)/Q(Y(h)));N[g+612>>2]=j*h;N[g+608>>2]=n*h;N[g+604>>2]=k*h;J[g+60>>2]=F;J[g+68>>2]=J[d+8>>2];J[g+72>>2]=g+52;a=J[g+616>>2];J[g+84>>2]=J[g+612>>2];J[g+88>>2]=a;c=J[g+604>>2];b=J[g+608>>2];a=J[g+632>>2];J[g+100>>2]=J[g+628>>2];J[g+104>>2]=a;J[g+76>>2]=c;J[g+80>>2]=b;a=J[g+624>>2];J[g+92>>2]=J[g+620>>2];J[g+96>>2]=a;N[g+108>>2]=f;Q(ua[J[J[e>>2]+12>>2]](e,g+68|0,1));}break a}o=L-21|0;if(o>>>0<=8){c:{switch(o|0){case 0:r=N[i+20>>2];s=N[i+36>>2];p=N[i+52>>2];t=N[i+24>>2];q=N[i+56>>2];u=N[i+40>>2];A=N[i+32>>2];B=N[i>>2];C=N[i+16>>2];D=N[i+4>>2];E=N[i+8>>2];h=N[i+48>>2];m=N[b+52>>2];l=N[b+56>>2];j=N[b+48>>2];J[g+80>>2]=0;h=Q(-h);k=Q(Q(Q(E*h)-Q(t*p))-Q(u*q));N[g+76>>2]=k+Q(Q(l*u)+Q(Q(j*E)+Q(t*m)));n=Q(Q(Q(D*h)-Q(r*p))-Q(s*q));N[g+72>>2]=n+Q(Q(l*s)+Q(Q(j*D)+Q(r*m)));h=Q(Q(Q(B*h)-Q(C*p))-Q(A*q));N[g+68>>2]=h+Q(Q(l*A)+Q(Q(j*B)+Q(C*m)));m=N[c+52>>2];l=N[c+56>>2];j=N[c+48>>2];J[g+660>>2]=0;N[g+656>>2]=k+Q(Q(l*u)+Q(Q(j*E)+Q(t*m)));N[g+652>>2]=n+Q(Q(l*s)+Q(Q(j*D)+Q(r*m)));N[g+648>>2]=h+Q(Q(l*A)+Q(Q(j*B)+Q(C*m)));G=N[c+20>>2];p=N[c+36>>2];q=N[c+24>>2];m=N[c+40>>2];l=N[c+32>>2];j=N[c>>2];k=N[c+16>>2];n=N[c+4>>2];h=N[c+8>>2];J[g+516>>2]=0;J[g+520>>2]=0;J[g+500>>2]=0;J[g+524>>2]=0;J[g+528>>2]=0;J[g+532>>2]=0;N[g+512>>2]=Q(m*u)+Q(Q(h*E)+Q(t*q));N[g+508>>2]=Q(p*u)+Q(Q(n*E)+Q(t*G));N[g+496>>2]=Q(m*s)+Q(Q(h*D)+Q(r*q));N[g+492>>2]=Q(p*s)+Q(Q(n*D)+Q(r*G));J[g+484>>2]=0;N[g+504>>2]=Q(l*u)+Q(Q(j*E)+Q(t*k));N[g+488>>2]=Q(l*s)+Q(Q(j*D)+Q(r*k));N[g+480>>2]=Q(m*A)+Q(Q(h*B)+Q(C*q));N[g+476>>2]=Q(p*A)+Q(Q(n*B)+Q(C*G));N[g+472>>2]=Q(l*A)+Q(Q(j*B)+Q(C*k));d=J[d+8>>2];b=Ud(g+112|0,a,b,c,i,Q(ua[J[J[F>>2]+48>>2]](F)));J[b+220>>2]=F;J[b+216>>2]=d;J[b+212>>2]=e;J[b>>2]=13756;h=N[e+4>>2];N[b+208>>2]=f;N[b+200>>2]=h;e=g+52|0;d=g+36|0;ua[J[J[a>>2]+8>>2]](a,g+472|0,e,d);L=sa-16|0;sa=L;a=J[F+56>>2];J[L+12>>2]=b;J[L+8>>2]=a;J[L+4>>2]=18824;c=L+4|0;b=g+68|0;a=g+648|0;o=J[F+60>>2];d:{if(K[o+60|0]){ye(o,c,b,a,e,d,J[o+56>>2]);break d}ze(o,c,b,a,e,d);}sa=L+16|0;break a;case 7:N[g+284>>2]=f;J[g+280>>2]=0;J[g+112>>2]=13156;N[g+276>>2]=N[e+4>>2];o=g+68|0;J[o+20>>2]=F;J[o+16>>2]=0;J[o+12>>2]=a;J[o+4>>2]=0;J[o+8>>2]=0;J[o>>2]=22452;e:{if(!(ua[J[J[o>>2]+8>>2]](o,b,c,i,i,g+112|0)|0)){break e}j=N[g+252>>2];k=N[g+244>>2];n=N[g+248>>2];h=Q(Q(j*j)+Q(Q(k*k)+Q(n*n)));if(!(h>Q(9999999747378752e-20))){break e}f=N[g+276>>2];if(!(f<N[e+4>>2])){break e}h=Q(Q(1)/Q(Y(h)));N[g+252>>2]=j*h;N[g+248>>2]=n*h;N[g+244>>2]=k*h;J[g+656>>2]=F;J[g+472>>2]=J[d+8>>2];J[g+476>>2]=g+648;a=J[g+256>>2];J[g+488>>2]=J[g+252>>2];J[g+492>>2]=a;c=J[g+244>>2];b=J[g+248>>2];a=J[g+272>>2];J[g+504>>2]=J[g+268>>2];J[g+508>>2]=a;J[g+480>>2]=c;J[g+484>>2]=b;a=J[g+264>>2];J[g+496>>2]=J[g+260>>2];J[g+500>>2]=a;N[g+512>>2]=f;Q(ua[J[J[e>>2]+12>>2]](e,g+472|0,1));}break a;default:break c}}r=N[b+52>>2];s=N[b+56>>2];t=N[i+52>>2];u=N[i+56>>2];A=N[c+52>>2];B=N[c+56>>2];M=N[i+20>>2];O=N[i+36>>2];R=N[i+24>>2];I=N[i+40>>2];C=N[b+48>>2];n=N[i+48>>2];D=N[c+48>>2];v=N[i+32>>2];w=N[i>>2];x=N[i+16>>2];y=N[i+4>>2];z=N[i+8>>2];E=N[c+20>>2];G=N[c+36>>2];p=N[c+24>>2];q=N[c+40>>2];m=N[c+32>>2];l=N[c>>2];j=N[c+16>>2];k=N[c+4>>2];h=N[c+8>>2];J[g+516>>2]=0;J[g+520>>2]=0;J[g+500>>2]=0;J[g+524>>2]=0;J[g+528>>2]=0;J[g+532>>2]=0;N[g+512>>2]=Q(q*I)+Q(Q(h*z)+Q(R*p));N[g+508>>2]=Q(G*I)+Q(Q(k*z)+Q(R*E));N[g+496>>2]=Q(q*O)+Q(Q(h*y)+Q(M*p));N[g+492>>2]=Q(G*O)+Q(Q(k*y)+Q(M*E));J[g+484>>2]=0;N[g+504>>2]=Q(m*I)+Q(Q(l*z)+Q(R*j));N[g+488>>2]=Q(m*O)+Q(Q(l*y)+Q(M*j));N[g+480>>2]=Q(q*v)+Q(Q(h*w)+Q(x*p));N[g+476>>2]=Q(G*v)+Q(Q(k*w)+Q(x*E));N[g+472>>2]=Q(m*v)+Q(Q(l*w)+Q(x*j));d=J[d+8>>2];b=Ud(g+112|0,a,b,c,i,Q(ua[J[J[F>>2]+48>>2]](F)));J[b+220>>2]=F;J[b+216>>2]=d;J[b+212>>2]=e;J[b>>2]=13968;h=N[e+4>>2];N[b+208>>2]=f;N[b+200>>2]=h;ua[J[J[a>>2]+8>>2]](a,g+472|0,g+68|0,g+648|0);J[g+64>>2]=0;f=Q(-n);k=Q(Q(Q(z*f)-Q(R*t))-Q(I*u));h=Q(Q(Q(y*f)-Q(M*t))-Q(O*u));l=Q(h+Q(Q(B*O)+Q(Q(D*y)+Q(M*A))));f=Q(Q(Q(w*f)-Q(x*t))-Q(v*u));p=Q(f+Q(Q(s*v)+Q(Q(C*w)+Q(x*r))));n=p;j=Q(f+Q(Q(B*v)+Q(Q(D*w)+Q(x*A))));if(j<p){N[g+52>>2]=j;n=j;}m=Q(h+Q(Q(s*O)+Q(Q(C*y)+Q(M*r))));h=m;if(l<h){N[g+56>>2]=l;h=l;}q=Q(k+Q(Q(s*I)+Q(Q(C*z)+Q(R*r))));f=q;k=Q(k+Q(Q(B*I)+Q(Q(D*z)+Q(R*A))));if(k<q){N[g+60>>2]=k;f=k;}J[g+48>>2]=0;N[g+52>>2]=N[g+68>>2]+n;N[g+56>>2]=N[g+72>>2]+h;N[g+60>>2]=N[g+76>>2]+f;N[g+36>>2]=N[g+648>>2]+(j>p?j:p);N[g+40>>2]=N[g+652>>2]+(l>m?l:m);N[g+44>>2]=N[g+656>>2]+(k>q?k:q);ua[J[J[F>>2]+64>>2]](F,b,g+52|0,g+36|0);break a}if((L|0)!=31){break a}ua[J[8262]](7733);u=N[i+52>>2];A=N[i+56>>2];B=N[b+52>>2];C=N[b+56>>2];I=N[i+20>>2];v=N[i+36>>2];D=N[b+20>>2];E=N[b+36>>2];G=N[b+24>>2];w=N[i+24>>2];p=N[b+40>>2];x=N[i+40>>2];y=N[i+32>>2];z=N[i>>2];r=N[i+16>>2];q=N[b+32>>2];m=N[b>>2];l=N[b+16>>2];h=N[i+48>>2];j=N[b+48>>2];s=N[i+4>>2];k=N[b+4>>2];n=N[b+8>>2];t=N[i+8>>2];J[g+172>>2]=0;J[g+156>>2]=0;J[g+140>>2]=0;N[g+152>>2]=Q(p*x)+Q(Q(n*t)+Q(w*G));N[g+148>>2]=Q(E*x)+Q(Q(k*t)+Q(w*D));N[g+136>>2]=Q(p*v)+Q(Q(n*s)+Q(I*G));N[g+132>>2]=Q(E*v)+Q(Q(k*s)+Q(I*D));h=Q(-h);N[g+168>>2]=Q(Q(Q(t*h)-Q(w*u))-Q(x*A))+Q(Q(C*x)+Q(Q(j*t)+Q(w*B)));N[g+164>>2]=Q(Q(Q(s*h)-Q(I*u))-Q(v*A))+Q(Q(C*v)+Q(Q(j*s)+Q(I*B)));J[g+124>>2]=0;N[g+144>>2]=Q(q*x)+Q(Q(m*t)+Q(w*l));N[g+128>>2]=Q(q*v)+Q(Q(m*s)+Q(I*l));N[g+120>>2]=Q(p*y)+Q(Q(n*z)+Q(r*G));N[g+116>>2]=Q(E*y)+Q(Q(k*z)+Q(r*D));N[g+112>>2]=Q(q*y)+Q(Q(m*z)+Q(r*l));N[g+160>>2]=Q(Q(Q(z*h)-Q(r*u))-Q(y*A))+Q(Q(C*y)+Q(Q(j*z)+Q(r*B)));o=g+112|0;ua[J[J[a>>2]+8>>2]](a,o,g+52|0,g+36|0);u=N[i+52>>2];A=N[i+56>>2];B=N[c+52>>2];C=N[c+56>>2];I=N[i+20>>2];v=N[i+36>>2];D=N[c+20>>2];E=N[c+36>>2];G=N[c+24>>2];w=N[i+24>>2];p=N[c+40>>2];x=N[i+40>>2];y=N[i+32>>2];z=N[i>>2];r=N[i+16>>2];q=N[c+32>>2];m=N[c>>2];l=N[c+16>>2];h=N[i+48>>2];j=N[c+48>>2];s=N[i+4>>2];k=N[c+4>>2];n=N[c+8>>2];t=N[i+8>>2];J[g+172>>2]=0;J[g+156>>2]=0;J[g+140>>2]=0;N[g+152>>2]=Q(p*x)+Q(Q(n*t)+Q(w*G));N[g+148>>2]=Q(E*x)+Q(Q(k*t)+Q(w*D));N[g+136>>2]=Q(p*v)+Q(Q(n*s)+Q(I*G));N[g+132>>2]=Q(E*v)+Q(Q(k*s)+Q(I*D));h=Q(-h);N[g+168>>2]=Q(Q(Q(t*h)-Q(w*u))-Q(x*A))+Q(Q(C*x)+Q(Q(j*t)+Q(w*B)));N[g+164>>2]=Q(Q(Q(s*h)-Q(I*u))-Q(v*A))+Q(Q(C*v)+Q(Q(j*s)+Q(I*B)));J[g+124>>2]=0;N[g+144>>2]=Q(q*x)+Q(Q(m*t)+Q(w*l));N[g+128>>2]=Q(q*v)+Q(Q(m*s)+Q(I*l));N[g+120>>2]=Q(p*y)+Q(Q(n*z)+Q(r*G));N[g+116>>2]=Q(E*y)+Q(Q(k*z)+Q(r*D));N[g+112>>2]=Q(q*y)+Q(Q(m*z)+Q(r*l));N[g+160>>2]=Q(Q(Q(z*h)-Q(r*u))-Q(y*A))+Q(Q(C*y)+Q(Q(j*z)+Q(r*B)));ua[J[J[a>>2]+8>>2]](a,o,g+16|0,g);h=N[g+16>>2];if(h<N[g+52>>2]){N[g+52>>2]=h;}h=N[g+20>>2];if(h<N[g+56>>2]){N[g+56>>2]=h;}h=N[g+24>>2];if(h<N[g+60>>2]){N[g+60>>2]=h;}h=N[g+28>>2];if(h<N[g+64>>2]){N[g+64>>2]=h;}h=N[g>>2];if(h>N[g+36>>2]){N[g+36>>2]=h;}h=N[g+4>>2];if(h>N[g+40>>2]){N[g+40>>2]=h;}h=N[g+8>>2];if(h>N[g+44>>2]){N[g+44>>2]=h;}h=N[g+12>>2];if(h>N[g+48>>2]){N[g+48>>2]=h;}J[g+504>>2]=e;J[g+500>>2]=i;N[g+492>>2]=f;J[g+488>>2]=c;J[g+484>>2]=b;J[g+480>>2]=a;J[g+476>>2]=d;J[g+472>>2]=14184;J[g+496>>2]=F;b=J[F+72>>2];f:{if(!b){if(J[F+24>>2]<=0){break f}c=0;while(1){a=J[F+32>>2]+P(c,80)|0;d=J[a+64>>2];A=N[a+48>>2];B=N[a+52>>2];C=N[a+56>>2];D=N[a>>2];E=N[a+16>>2];G=N[a+32>>2];p=N[a+4>>2];q=N[a+20>>2];m=N[a+36>>2];l=N[a+8>>2];j=N[a+24>>2];k=N[a+40>>2];a=J[g+500>>2];n=N[a+52>>2];h=N[a+56>>2];v=N[a+20>>2];w=N[a+24>>2];x=N[a+36>>2];y=N[a+40>>2];f=N[a+48>>2];z=N[a+8>>2];r=N[a>>2];s=N[a+4>>2];t=N[a+16>>2];u=N[a+32>>2];J[g+172>>2]=0;J[g+156>>2]=0;J[g+140>>2]=0;J[g+124>>2]=0;N[g+152>>2]=Q(k*y)+Q(Q(l*u)+Q(j*x));N[g+148>>2]=Q(m*y)+Q(Q(p*u)+Q(q*x));N[g+144>>2]=Q(G*y)+Q(Q(D*u)+Q(E*x));N[g+136>>2]=Q(k*w)+Q(Q(l*t)+Q(j*v));N[g+132>>2]=Q(m*w)+Q(Q(p*t)+Q(q*v));N[g+128>>2]=Q(G*w)+Q(Q(D*t)+Q(E*v));N[g+120>>2]=Q(k*z)+Q(Q(l*r)+Q(j*s));N[g+116>>2]=Q(m*z)+Q(Q(p*r)+Q(q*s));N[g+112>>2]=Q(G*z)+Q(Q(D*r)+Q(E*s));N[g+168>>2]=h+Q(Q(C*y)+Q(Q(A*u)+Q(B*x)));N[g+164>>2]=n+Q(Q(C*w)+Q(Q(A*t)+Q(B*v)));N[g+160>>2]=f+Q(Q(C*z)+Q(Q(A*r)+Q(B*s)));J[g+80>>2]=-1;J[g+84>>2]=0;J[g+72>>2]=1065353216;J[g+76>>2]=1;J[g+96>>2]=c;a=J[g+504>>2];J[g+92>>2]=a;J[g+88>>2]=d;J[g+68>>2]=14400;N[g+72>>2]=N[a+4>>2];b=J[g+476>>2];a=J[b+8>>2];J[g+668>>2]=c;J[g+664>>2]=-1;J[g+656>>2]=a;J[g+652>>2]=d;J[g+648>>2]=b;J[g+660>>2]=g+112;Tc(J[g+480>>2],J[g+484>>2],J[g+488>>2],g+648|0,g+68|0,N[g+492>>2]);c=c+1|0;if((c|0)<J[F+24>>2]){continue}break}break f}a=J[g+64>>2];J[g+120>>2]=J[g+60>>2];J[g+124>>2]=a;a=J[g+48>>2];J[g+136>>2]=J[g+44>>2];J[g+140>>2]=a;a=J[g+40>>2];J[g+128>>2]=J[g+36>>2];J[g+132>>2]=a;a=J[g+56>>2];J[g+112>>2]=J[g+52>>2];J[g+116>>2]=a;xb(J[b>>2],g+112|0,g+472|0);}ua[J[8263]]();}sa=g+672|0;}function Se(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=0,t=Q(0),u=Q(0),v=Q(0),w=0,x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),I=Q(0),L=Q(0),M=Q(0),O=0,R=Q(0),S=Q(0),T=0;f=sa-176|0;sa=f;i=K[a+68|0];T=i?c:b;O=J[T+4>>2];if(J[O+76>>2]!=J[a+80>>2]){j=J[a+52>>2];if((j|0)>0){while(1){s=g<<2;h=J[s+J[a+60>>2]>>2];if(h){ua[J[J[h>>2]>>2]](h)|0;h=J[a+4>>2];ua[J[J[h>>2]+60>>2]](h,J[s+J[a+60>>2]>>2]);}g=g+1|0;if((j|0)!=(g|0)){continue}break}}Te(a,b,c);J[a+80>>2]=J[O+76>>2];}h=J[a+52>>2];a:{if(!h){break a}j=J[O+72>>2];g=J[a+60>>2];s=J[a+4>>2];J[f+172>>2]=J[a+72>>2];J[f+168>>2]=g;J[f+164>>2]=e;J[f+160>>2]=d;J[f+156>>2]=s;s=i?b:c;J[f+152>>2]=s;J[f+148>>2]=T;J[f+144>>2]=16264;b=J[a+32>>2];if((b|0)<0){if(J[a+36>>2]<0){c=J[a+40>>2];if(!(c?!c|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}H[a+44|0]=1;J[a+36>>2]=0;J[a+40>>2]=0;}h=0;g=b;c=0-b&3;if(c){while(1){J[J[a+40>>2]+(g<<2)>>2]=0;g=g+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}if(b>>>0<=4294967292){while(1){b=g<<2;J[b+J[a+40>>2]>>2]=0;J[(b+J[a+40>>2]|0)+4>>2]=0;J[(b+J[a+40>>2]|0)+8>>2]=0;J[(b+J[a+40>>2]|0)+12>>2]=0;g=g+4|0;if(g){continue}break}}h=J[a+52>>2];}J[a+32>>2]=0;if((h|0)>0){i=a+28|0;b=0;while(1){c=J[J[a+60>>2]+(b<<2)>>2];if(c){ua[J[J[c>>2]+16>>2]](c,i);g=0;c=J[a+32>>2];if((c|0)>0){while(1){d=J[J[a+40>>2]+(g<<2)>>2];if(J[d+844>>2]){J[e+4>>2]=d;h=J[d+836>>2];r=J[J[e+8>>2]+8>>2];c=(h|0)==(r|0);l=d;d=J[J[e+12>>2]+8>>2];Ua(l,(c?h:d)+4|0,(c?d:r)+4|0);J[e+4>>2]=0;c=J[a+32>>2];}g=g+1|0;if((g|0)<(c|0)){continue}break}}b:{if((c|0)>=0){break b}if(J[a+36>>2]<0){d=J[a+40>>2];if(!(d?!d|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[a+44|0]=1;J[a+36>>2]=0;J[a+40>>2]=0;}h=0;g=c;d=0-c&3;if(d){while(1){J[J[a+40>>2]+(g<<2)>>2]=0;g=g+1|0;h=h+1|0;if((d|0)!=(h|0)){continue}break}}if(c>>>0>4294967292){break b}while(1){c=g<<2;J[c+J[a+40>>2]>>2]=0;J[(c+J[a+40>>2]|0)+4>>2]=0;J[(c+J[a+40>>2]|0)+8>>2]=0;J[(c+J[a+40>>2]|0)+12>>2]=0;g=g+4|0;if(g){continue}break}}J[a+32>>2]=0;h=J[a+52>>2];}b=b+1|0;if((h|0)>(b|0)){continue}break}}c:{if(!j){if((h|0)<=0){break c}g=0;while(1){Re(f+144|0,J[(J[O+32>>2]+P(g,80)|0)+64>>2],g);g=g+1|0;if((h|0)!=(g|0)){continue}break}break c}b=J[T+12>>2];x=N[b+52>>2];y=N[b+56>>2];c=J[s+12>>2];z=N[c+52>>2];A=N[c+56>>2];k=N[b+20>>2];m=N[b+36>>2];B=N[c+20>>2];C=N[c+36>>2];D=N[c+24>>2];n=N[b+24>>2];E=N[c+40>>2];o=N[b+40>>2];F=N[c+32>>2];p=N[b+32>>2];G=N[c>>2];q=N[b>>2];I=N[c+16>>2];t=N[b+16>>2];L=N[b+48>>2];M=N[c+48>>2];u=N[b+4>>2];R=N[c+4>>2];S=N[c+8>>2];v=N[b+8>>2];J[f+108>>2]=0;J[f+92>>2]=0;J[f+76>>2]=0;N[f+88>>2]=Q(E*o)+Q(Q(S*v)+Q(n*D));N[f+84>>2]=Q(C*o)+Q(Q(R*v)+Q(n*B));N[f+72>>2]=Q(E*m)+Q(Q(S*u)+Q(k*D));N[f+68>>2]=Q(C*m)+Q(Q(R*u)+Q(k*B));L=Q(-L);N[f+104>>2]=Q(Q(Q(v*L)-Q(n*x))-Q(o*y))+Q(Q(A*o)+Q(Q(M*v)+Q(n*z)));N[f+100>>2]=Q(Q(Q(u*L)-Q(k*x))-Q(m*y))+Q(Q(A*m)+Q(Q(M*u)+Q(k*z)));J[f+60>>2]=0;N[f+48>>2]=Q(F*p)+Q(Q(G*q)+Q(t*I));N[f+80>>2]=Q(F*o)+Q(Q(G*v)+Q(n*I));N[f+64>>2]=Q(F*m)+Q(Q(G*u)+Q(k*I));N[f+56>>2]=Q(E*p)+Q(Q(S*q)+Q(t*D));N[f+52>>2]=Q(C*p)+Q(Q(R*q)+Q(t*B));N[f+96>>2]=Q(Q(Q(q*L)-Q(t*x))-Q(p*y))+Q(Q(A*p)+Q(Q(M*q)+Q(t*z)));b=J[s+4>>2];ua[J[J[b>>2]+8>>2]](b,f+48|0,f+128|0,f+112|0);k=N[e+32>>2];N[f+136>>2]=N[f+136>>2]-k;N[f+120>>2]=k+N[f+120>>2];N[f+128>>2]=N[f+128>>2]-k;N[f+132>>2]=N[f+132>>2]-k;N[f+112>>2]=k+N[f+112>>2];N[f+116>>2]=k+N[f+116>>2];b=J[f+140>>2];J[f+24>>2]=J[f+136>>2];J[f+28>>2]=b;b=J[f+124>>2];J[f+40>>2]=J[f+120>>2];J[f+44>>2]=b;b=J[f+116>>2];J[f+32>>2]=J[f+112>>2];J[f+36>>2]=b;b=J[f+132>>2];J[f+16>>2]=J[f+128>>2];J[f+20>>2]=b;c=0;i=0;h=J[j>>2];if(h){d=J[a+16>>2];k=N[f+40>>2];m=N[f+36>>2];n=N[f+32>>2];o=N[f+24>>2];p=N[f+20>>2];q=N[f+16>>2];e=J[a+12>>2];d:{if((e|0)>=0){break d}if((d|0)<0){b=J[a+20>>2];if(!(b?!b|!K[a+24|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+24|0]=1;J[a+16>>2]=0;J[a+20>>2]=0;d=0;}b=e;g=0-b&3;if(g){while(1){J[J[a+20>>2]+(b<<2)>>2]=0;b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(e>>>0>4294967292){break d}while(1){c=b<<2;J[c+J[a+20>>2]>>2]=0;J[(c+J[a+20>>2]|0)+4>>2]=0;J[(c+J[a+20>>2]|0)+8>>2]=0;J[(c+J[a+20>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}e=0;J[a+12>>2]=0;if((d|0)<=63){J[8456]=J[8456]+1;c=ua[J[8258]](256,16)|0;e=J[a+12>>2];e:{if((e|0)<=0){break e}d=0;b=0;if(e>>>0>=4){j=e&-4;while(1){g=b<<2;J[g+c>>2]=J[g+J[a+20>>2]>>2];r=g|4;J[r+c>>2]=J[r+J[a+20>>2]>>2];r=g|8;J[r+c>>2]=J[r+J[a+20>>2]>>2];g=g|12;J[g+c>>2]=J[g+J[a+20>>2]>>2];b=b+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}g=e&3;if(!g){break e}while(1){j=b<<2;J[j+c>>2]=J[j+J[a+20>>2]>>2];b=b+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}b=J[a+20>>2];if(!(!b|!K[a+24|0])){if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}e=J[a+12>>2];}J[a+20>>2]=c;H[a+24|0]=1;J[a+16>>2]=64;d=64;}r=f+144|0;f:{if((d|0)!=(e|0)){break f}j=d<<1;if((j|0)<=(d|0)){e=d;break f}b=0;g:{h:{if(!d){c=0;e=d;break h}J[8456]=J[8456]+1;c=ua[J[8258]](d<<3,16)|0;e=J[a+12>>2];if((e|0)<=0){break g}}if(e-1>>>0>=3){i=e&-4;d=0;while(1){g=b<<2;J[g+c>>2]=J[g+J[a+20>>2]>>2];w=g|4;J[w+c>>2]=J[w+J[a+20>>2]>>2];w=g|8;J[w+c>>2]=J[w+J[a+20>>2]>>2];g=g|12;J[g+c>>2]=J[g+J[a+20>>2]>>2];b=b+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}}g=e&3;if(!g){break g}d=0;while(1){i=b<<2;J[i+c>>2]=J[i+J[a+20>>2]>>2];b=b+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}b=J[a+20>>2];if(!(!b|!K[a+24|0])){if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}e=J[a+12>>2];}J[a+20>>2]=c;H[a+24|0]=1;J[a+16>>2]=j;}J[J[a+20>>2]+(e<<2)>>2]=h;b=e+1|0;while(1){d=J[a+20>>2];c=b-1|0;j=J[d+(c<<2)>>2];J[a+12>>2]=c;i:{if(!(n>=N[j>>2])){b=c;break i}if(!(q<=N[j+16>>2])){b=c;break i}if(!(m>=N[j+4>>2])){b=c;break i}if(!(p<=N[j+20>>2])){b=c;break i}if(!(k>=N[j+8>>2])){b=c;break i}if(!(o<=N[j+24>>2])){b=c;break i}if(J[j+40>>2]){g=J[a+16>>2];j:{if((g|0)!=(c|0)){break j}g=c?c<<1:1;if((g|0)<(b|0)){g=c;break j}k:{if(!g){d=0;break k}J[8456]=J[8456]+1;d=ua[J[8258]](g<<2,16)|0;c=J[a+12>>2];}l:{if((c|0)<=0){break l}h=0;b=0;if(c>>>0>=4){w=c&-4;e=0;while(1){i=b<<2;J[i+d>>2]=J[i+J[a+20>>2]>>2];l=i|4;J[l+d>>2]=J[l+J[a+20>>2]>>2];l=i|8;J[l+d>>2]=J[l+J[a+20>>2]>>2];i=i|12;J[i+d>>2]=J[i+J[a+20>>2]>>2];b=b+4|0;e=e+4|0;if((w|0)!=(e|0)){continue}break}}e=c&3;if(!e){break l}while(1){i=b<<2;J[i+d>>2]=J[i+J[a+20>>2]>>2];b=b+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=J[a+20>>2];if(!(!b|!K[a+24|0])){if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}c=J[a+12>>2];}J[a+20>>2]=d;H[a+24|0]=1;J[a+16>>2]=g;}J[(c<<2)+d>>2]=J[j+36>>2];h=c+1|0;J[a+12>>2]=h;m:{if((g|0)!=(h|0)){break m}e=g?g<<1:1;if((e|0)<=(g|0)){h=g;break m}n:{if(!e){c=0;break n}J[8456]=J[8456]+1;c=ua[J[8258]](e<<2,16)|0;g=J[a+12>>2];}h=g;o:{if((g|0)<=0){break o}i=0;b=0;if(h>>>0>=4){w=h&-4;g=0;while(1){d=b<<2;J[d+c>>2]=J[d+J[a+20>>2]>>2];l=d|4;J[l+c>>2]=J[l+J[a+20>>2]>>2];l=d|8;J[l+c>>2]=J[l+J[a+20>>2]>>2];d=d|12;J[d+c>>2]=J[d+J[a+20>>2]>>2];b=b+4|0;g=g+4|0;if((w|0)!=(g|0)){continue}break}}d=h&3;if(!d){break o}while(1){g=b<<2;J[g+c>>2]=J[g+J[a+20>>2]>>2];b=b+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}b=J[a+20>>2];if(!(!b|!K[a+24|0])){if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}h=J[a+12>>2];}J[a+20>>2]=c;H[a+24|0]=1;J[a+16>>2]=e;}J[J[a+20>>2]+(h<<2)>>2]=J[j+40>>2];b=h+1|0;J[a+12>>2]=b;break i}ua[J[J[r>>2]+12>>2]](r,j);b=J[a+12>>2];}if((b|0)>0){continue}break}}}j=J[a+52>>2];b=J[a+32>>2];p:{if((b|0)>=0){break p}if(J[a+36>>2]<0){c=J[a+40>>2];if(!(c?!c|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}H[a+44|0]=1;J[a+36>>2]=0;J[a+40>>2]=0;}h=0;g=b;c=0-b&3;if(c){while(1){J[J[a+40>>2]+(g<<2)>>2]=0;g=g+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}if(b>>>0>4294967292){break p}while(1){b=g<<2;J[b+J[a+40>>2]>>2]=0;J[(b+J[a+40>>2]|0)+4>>2]=0;J[(b+J[a+40>>2]|0)+8>>2]=0;J[(b+J[a+40>>2]|0)+12>>2]=0;g=g+4|0;if(g){continue}break}}J[a+32>>2]=0;if((j|0)<=0){break a}e=0;while(1){d=e<<2;q:{if(!J[d+J[a+60>>2]>>2]){break q}b=J[O+32>>2]+P(e,80)|0;g=J[b+64>>2];c=J[T+12>>2];R=N[c+52>>2];S=N[c+56>>2];x=N[b+48>>2];y=N[b+52>>2];z=N[b+56>>2];A=N[b+4>>2];B=N[b+20>>2];C=N[b+36>>2];D=N[b+8>>2];E=N[b+24>>2];F=N[b+40>>2];k=N[c+20>>2];m=N[c+24>>2];G=N[b>>2];I=N[b+16>>2];n=N[c+36>>2];M=N[b+32>>2];o=N[c+40>>2];L=N[c+48>>2];p=N[c+8>>2];q=N[c>>2];t=N[c+4>>2];u=N[c+16>>2];v=N[c+32>>2];h=0;J[f+108>>2]=0;J[f+92>>2]=0;J[f+76>>2]=0;J[f+60>>2]=0;N[f+80>>2]=Q(M*o)+Q(Q(G*v)+Q(n*I));N[f+64>>2]=Q(M*m)+Q(Q(G*u)+Q(k*I));N[f+48>>2]=Q(M*p)+Q(Q(G*q)+Q(t*I));N[f+88>>2]=Q(F*o)+Q(Q(D*v)+Q(n*E));N[f+84>>2]=Q(C*o)+Q(Q(A*v)+Q(n*B));N[f+72>>2]=Q(F*m)+Q(Q(D*u)+Q(k*E));N[f+68>>2]=Q(C*m)+Q(Q(A*u)+Q(k*B));N[f+56>>2]=Q(F*p)+Q(Q(D*q)+Q(t*E));N[f+52>>2]=Q(C*p)+Q(Q(A*q)+Q(t*B));N[f+104>>2]=S+Q(Q(z*o)+Q(Q(x*v)+Q(n*y)));N[f+100>>2]=R+Q(Q(z*m)+Q(Q(x*u)+Q(k*y)));N[f+96>>2]=L+Q(Q(z*p)+Q(Q(x*q)+Q(t*y)));ua[J[J[g>>2]+8>>2]](g,f+48|0,f+16|0,f+128|0);b=J[s+4>>2];ua[J[J[b>>2]+8>>2]](b,J[s+12>>2],f+112|0,f);b=0;r:{if(N[f+16>>2]>N[f>>2]){break r}b=0;if(N[f+128>>2]<N[f+112>>2]){break r}b=1;}if(!(N[f+20>>2]>N[f+4>>2])&(!(N[f+132>>2]<N[f+116>>2])&(N[f+136>>2]<N[f+120>>2]|N[f+24>>2]>N[f+8>>2]?h:b))){break q}b=J[d+J[a+60>>2]>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+4>>2];ua[J[J[b>>2]+60>>2]](b,J[d+J[a+60>>2]>>2]);J[d+J[a+60>>2]>>2]=0;}e=e+1|0;if((j|0)!=(e|0)){continue}break}}sa=f+176|0;}function Ii(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=Q(0),l=Q(0),m=0,n=0,o=0,p=Q(0),q=0,r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=0,y=0,z=Q(0),A=0,B=0,C=0,D=0,E=Q(0),F=0,G=0,I=0,L=Q(0),O=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=0,Z=Q(0);a=sa-80|0;sa=a;k=N[e+52>>2];l=N[f+52>>2];p=N[e+56>>2];s=N[f+56>>2];r=N[e+48>>2];t=N[f+48>>2];J[a+76>>2]=0;N[a+64>>2]=t-r;N[a+72>>2]=s-p;N[a+68>>2]=l-k;o=sa-19040|0;sa=o;q=e;y=a+8|0;e=o+18912|0;Xd(c,q,d,f,y,e,1);b=o+18668|0;J[b>>2]=0;J[b+4>>2]=0;J[o+18660>>2]=0;J[o+18664>>2]=0;J[o+18896>>2]=0;J[o+18900>>2]=0;J[o+18908>>2]=2;J[o+18676>>2]=0;b=a- -64|0;k=N[b>>2];l=N[b+4>>2];p=N[b+8>>2];J[o+32>>2]=0;N[o+28>>2]=-p;N[o+24>>2]=-l;N[o+20>>2]=-k;a:{b:{c:{switch(Wd(o+18532|0,e,o+20|0)-1|0){case 0:J[o+68>>2]=0;J[o+72>>2]=0;J[o+76>>2]=0;J[o+18512>>2]=0;J[o+20>>2]=9;J[o+18516>>2]=0;J[o+18520>>2]=0;J[o+60>>2]=0;J[o+64>>2]=0;e=0;while(1){m=P(255-e|0,56);j=m+(o+20|0)|0;J[j+4204>>2]=A;J[j+4200>>2]=0;j=j+4156|0;if(A){J[A+44>>2]=j;}J[o+18524>>2]=j;n=o+4176|0;A=n+P(254-e|0,56)|0;J[A+44>>2]=0;J[A+48>>2]=j;J[(m+n|0)+44>>2]=A;J[o+18524>>2]=A;e=e+2|0;if((e|0)!=256){continue}break}J[o+18528>>2]=256;k=N[b>>2];l=N[b+4>>2];p=N[b+8>>2];A=0;J[o+16>>2]=0;N[o+12>>2]=-p;N[o+8>>2]=-l;N[o+4>>2]=-k;m=o+20|0;C=sa-32|0;sa=C;d:{e:{X=o+18532|0;n=J[X+372>>2];if(M[n+32>>2]<2){break e}if(!Xa(X)){break e}b=J[m+18496>>2];if(b){j=J[m+18508>>2];e=J[m+18500>>2];while(1){x=J[b+48>>2];if(x){J[x+44>>2]=J[b+44>>2];}x=J[b+44>>2];if(x){J[x+48>>2]=J[b+48>>2];}if(J[m+18496>>2]==(b|0)){J[m+18496>>2]=J[b+48>>2];}J[b+44>>2]=0;J[b+48>>2]=J[m+18504>>2];x=J[m+18504>>2];if(x){J[x+44>>2]=b;}e=e-1|0;J[m+18504>>2]=b;j=j+1|0;b=J[m+18496>>2];if(b){continue}break}J[m+18508>>2]=j;J[m+18500>>2]=e;}J[m+18492>>2]=0;J[m>>2]=0;j=J[n>>2];e=J[n+12>>2];k=N[e+16>>2];s=Q(N[j+16>>2]-k);b=J[n+4>>2];l=N[e+20>>2];r=Q(N[b+20>>2]-l);x=J[n+8>>2];p=N[e+24>>2];t=Q(N[x+24>>2]-p);u=Q(N[j+20>>2]-l);v=Q(N[b+24>>2]-p);w=Q(N[x+16>>2]-k);p=Q(N[j+24>>2]-p);k=Q(N[b+16>>2]-k);l=Q(N[x+20>>2]-l);f:{if(!(Q(Q(Q(Q(s*r)*t)+Q(Q(Q(Q(Q(u*v)*w)+Q(Q(p*k)*l))-Q(Q(v*s)*l))-Q(Q(k*u)*t)))-Q(Q(r*p)*w))<Q(0))){e=b;b=j;break f}J[n+4>>2]=j;J[n>>2]=b;ta=J[n+16>>2];J[n+16>>2]=J[n+20>>2];J[n+20>>2]=ta;e=j;}e=rb(m,b,e,x,1);x=rb(m,J[n+4>>2],J[n>>2],J[n+12>>2],1);B=rb(m,J[n+8>>2],J[n+4>>2],J[n+12>>2],1);D=rb(m,J[n>>2],J[n+8>>2],J[n+12>>2],1);if(J[m+18500>>2]!=4){break e}j=J[m+18496>>2];b=J[j+48>>2];if(b){k=N[j+16>>2];k=Q(k*k);while(1){l=N[b+16>>2];l=Q(l*l);n=l<k;j=n?b:j;k=n?l:k;b=J[b+48>>2];if(b){continue}break}}F=J[j+28>>2];G=J[j+24>>2];I=J[j+20>>2];k=N[j+16>>2];v=N[j+12>>2];s=N[j+8>>2];l=N[j+4>>2];p=N[j>>2];J[e+32>>2]=x;H[e+52|0]=0;J[x+32>>2]=e;H[x+52|0]=0;J[e+36>>2]=B;H[e+53|0]=0;J[B+32>>2]=e;H[B+52|0]=1;J[e+40>>2]=D;H[e+54|0]=0;J[D+32>>2]=e;H[D+52|0]=2;J[x+36>>2]=D;H[x+53|0]=2;J[D+40>>2]=x;H[D+54|0]=1;J[x+40>>2]=B;H[x+54|0]=1;J[B+36>>2]=x;H[B+53|0]=2;H[B+54|0]=1;J[B+40>>2]=D;J[D+36>>2]=B;H[D+53|0]=2;J[m>>2]=0;e=0;while(1){g:{h:{n=J[m+18492>>2];if(n>>>0<=127){b=0;J[C+12>>2]=0;J[C+4>>2]=0;J[C+8>>2]=0;J[m+18492>>2]=n+1;e=e+1|0;H[j+55|0]=e;r=N[j+8>>2];t=N[j>>2];u=N[j+4>>2];n=m+(n<<5)|0;J[n+72>>2]=0;E=r;r=Q(Q(1)/Q(Y(Q(Q(r*r)+Q(Q(t*t)+Q(u*u))))));N[n+68>>2]=E*r;N[n- -64>>2]=u*r;x=n+60|0;N[x>>2]=t*r;Ra(C+16|0,X,x);B=J[C+28>>2];J[n+84>>2]=J[C+24>>2];J[n+88>>2]=B;B=J[C+20>>2];J[n+76>>2]=J[C+16>>2];J[n+80>>2]=B;if(!(Q(Q(Q(N[j+8>>2]*N[n+84>>2])+Q(Q(N[j>>2]*N[n+76>>2])+Q(N[j+4>>2]*N[n+80>>2])))-N[j+16>>2])>Q(9999999747378752e-20))){J[m>>2]=7;break g}while(1){n=uc(m,e,x,J[((b<<2)+j|0)+32>>2],K[(b+j|0)+52|0],C+4|0);if(!n){break h}B=b>>>0<2;b=b+1|0;if(B){continue}break}break h}J[m>>2]=6;break g}if(!(n&M[C+12>>2]>2)){J[m>>2]=4;break g}b=J[C+4>>2];n=J[C+8>>2];J[b+36>>2]=n;H[b+53|0]=2;J[n+40>>2]=b;H[n+54|0]=1;b=J[j+48>>2];if(b){J[b+44>>2]=J[j+44>>2];}b=J[j+44>>2];if(b){J[b+48>>2]=J[j+48>>2];}if(J[m+18496>>2]==(j|0)){J[m+18496>>2]=J[j+48>>2];}J[m+18500>>2]=J[m+18500>>2]-1;J[j+44>>2]=0;J[j+48>>2]=J[m+18504>>2];b=J[m+18504>>2];if(b){J[b+44>>2]=j;}J[m+18504>>2]=j;J[m+18508>>2]=J[m+18508>>2]+1;j=J[m+18496>>2];b=J[j+48>>2];if(b){k=N[j+16>>2];k=Q(k*k);while(1){l=N[b+16>>2];l=Q(l*l);n=l<k;j=n?b:j;k=n?l:k;b=J[b+48>>2];if(b){continue}break}}F=J[j+28>>2];G=J[j+24>>2];I=J[j+20>>2];k=N[j+16>>2];v=N[j+12>>2];s=N[j+8>>2];l=N[j+4>>2];p=N[j>>2];if((e|0)!=255){continue}}break}N[m+56>>2]=k;N[m+40>>2]=p;J[m+4>>2]=I;N[m+52>>2]=v;N[m+48>>2]=s;N[m+44>>2]=l;J[m+36>>2]=3;J[m+12>>2]=F;J[m+8>>2]=G;p=Q(p*k);r=Q(N[G+16>>2]-p);l=Q(l*k);t=Q(N[F+20>>2]-l);u=Q(N[F+16>>2]-p);v=Q(N[G+20>>2]-l);w=Q(Q(r*t)-Q(u*v));k=Q(s*k);s=Q(N[F+24>>2]-k);E=t;t=Q(N[G+24>>2]-k);v=Q(Q(v*s)-Q(E*t));s=Q(Q(t*u)-Q(s*r));s=Q(Y(Q(Q(w*w)+Q(Q(v*v)+Q(s*s)))));N[m+20>>2]=s;r=Q(N[F+16>>2]-p);t=Q(N[I+20>>2]-l);u=Q(N[I+16>>2]-p);v=Q(N[F+20>>2]-l);w=Q(Q(r*t)-Q(u*v));z=Q(w*w);E=v;v=Q(N[I+24>>2]-k);w=t;t=Q(N[F+24>>2]-k);w=Q(Q(E*v)-Q(w*t));r=Q(Q(t*u)-Q(v*r));r=Q(Y(Q(z+Q(Q(w*w)+Q(r*r)))));N[m+24>>2]=r;t=Q(N[I+16>>2]-p);u=Q(N[G+20>>2]-l);p=Q(N[G+16>>2]-p);l=Q(N[I+20>>2]-l);v=Q(Q(t*u)-Q(p*l));E=l;l=Q(N[G+24>>2]-k);k=Q(N[I+24>>2]-k);u=Q(Q(E*l)-Q(u*k));k=Q(Q(k*p)-Q(l*t));l=Q(Y(Q(Q(v*v)+Q(Q(u*u)+Q(k*k)))));k=Q(l+Q(s+r));N[m+28>>2]=l/k;N[m+24>>2]=r/k;N[m+20>>2]=s/k;b=J[m>>2];break d}b=8;J[m>>2]=8;k=Q(0);p=Q(1);l=Q(0);s=N[o+12>>2];r=N[o+4>>2];t=N[o+8>>2];u=Q(Y(Q(Q(s*s)+Q(Q(r*r)+Q(t*t)))));if(u>Q(0)){p=Q(Q(1)/u);l=Q(p*Q(-s));k=Q(p*Q(-t));p=Q(p*Q(-r));}J[m+52>>2]=0;J[m+56>>2]=0;N[m+48>>2]=l;N[m+44>>2]=k;N[m+40>>2]=p;J[m+36>>2]=1;e=J[n>>2];J[m+20>>2]=1065353216;J[m+4>>2]=e;}sa=C+32|0;if((b|0)==9){break b}i:{if(!J[o+56>>2]){k=Q(0);l=Q(0);p=Q(0);break i}j=o+24|0;p=Q(0);l=Q(0);k=Q(0);while(1){b=J[o+19032>>2];m=J[o+19036>>2];e=J[o+18912>>2]+(m>>1)|0;n=A<<2;ua[(m&1?J[b+J[e>>2]>>2]:b)|0](o+4|0,e,J[n+j>>2]);s=N[(o+n|0)+40>>2];p=Q(p+Q(s*N[o+12>>2]));l=Q(l+Q(s*N[o+8>>2]));k=Q(k+Q(N[o+4>>2]*s));A=A+1|0;if(A>>>0<M[o+56>>2]){continue}break}}A=1;J[y>>2]=1;s=N[q+52>>2];r=N[q+24>>2];t=N[q+20>>2];u=N[q+56>>2];v=N[q+40>>2];w=N[q+36>>2];z=N[q+48>>2];L=N[q+8>>2];O=N[q>>2];R=N[q+4>>2];S=N[q+16>>2];T=N[q+32>>2];J[y+16>>2]=0;N[y+12>>2]=u+Q(Q(p*v)+Q(Q(k*T)+Q(l*w)));N[y+8>>2]=s+Q(Q(p*r)+Q(Q(k*S)+Q(l*t)));N[y+4>>2]=z+Q(Q(p*L)+Q(Q(k*O)+Q(l*R)));v=N[q+52>>2];w=N[q+20>>2];z=N[q+24>>2];L=N[q+56>>2];O=N[q+36>>2];R=N[q+40>>2];S=N[q+48>>2];T=N[q+8>>2];U=N[q>>2];V=N[q+4>>2];W=N[q+16>>2];Z=N[q+32>>2];r=N[o- -64>>2];t=N[o+68>>2];u=N[o+60>>2];s=N[o+76>>2];J[y+48>>2]=0;J[y+32>>2]=0;N[y+52>>2]=-s;N[y+44>>2]=-t;N[y+40>>2]=-r;N[y+36>>2]=-u;p=Q(p-Q(s*t));k=Q(k-Q(u*s));l=Q(l-Q(s*r));N[y+28>>2]=L+Q(Q(R*p)+Q(Q(Z*k)+Q(O*l)));N[y+24>>2]=v+Q(Q(p*z)+Q(Q(k*W)+Q(l*w)));N[y+20>>2]=S+Q(Q(p*T)+Q(Q(k*U)+Q(l*V)));break a;case 1:break c;default:break a}}J[y>>2]=2;break a}J[y>>2]=3;}sa=o+19040|0;j:{if(!A){k=Q(0);l=Q(0);p=Q(0);s=Q(0);r=Q(0);t=Q(0);e=sa-544|0;sa=e;b=e+384|0;Xd(c,q,d,f,a+8|0,b,0);J[e+140>>2]=0;J[e+144>>2]=0;J[e+132>>2]=0;J[e+136>>2]=0;J[e+368>>2]=0;J[e+372>>2]=0;J[e+380>>2]=2;J[e+148>>2]=0;k:{l:{c=Wd(e+4|0,b,a- -64|0);if(!c){d=J[e+376>>2];if(!J[d+32>>2]){break l}f=0;while(1){j=f<<2;m=d+j|0;u=N[m+16>>2];b=J[e+504>>2];n=e+528|0;o=J[e+508>>2];d=J[e+384>>2]+(o>>1)|0;ua[(o&1?J[b+J[d>>2]>>2]:b)|0](n,d,J[m>>2]);b=J[j+J[e+376>>2]>>2];v=Q(-N[b+8>>2]);w=Q(-N[b+4>>2]);z=Q(-N[b>>2]);b=J[e+504>>2];d=J[e+508>>2];j=J[e+388>>2]+(d>>1)|0;b=d&1?J[b+J[j>>2]>>2]:b;k=Q(k+Q(u*N[e+536>>2]));p=Q(p+Q(u*N[e+532>>2]));l=Q(l+Q(u*N[e+528>>2]));J[e+524>>2]=0;N[e+520>>2]=Q(N[e+432>>2]*v)+Q(Q(N[e+424>>2]*z)+Q(N[e+428>>2]*w));N[e+516>>2]=Q(N[e+416>>2]*v)+Q(Q(N[e+408>>2]*z)+Q(N[e+412>>2]*w));N[e+512>>2]=Q(N[e+400>>2]*v)+Q(Q(N[e+392>>2]*z)+Q(N[e+396>>2]*w));ua[b|0](n,j,e+512|0);v=N[e+536>>2];w=N[e+528>>2];z=N[e+532>>2];t=Q(t+Q(u*Q(Q(Q(v*N[e+480>>2])+Q(Q(w*N[e+472>>2])+Q(z*N[e+476>>2])))+N[e+496>>2])));r=Q(r+Q(u*Q(Q(Q(v*N[e+464>>2])+Q(Q(w*N[e+456>>2])+Q(z*N[e+460>>2])))+N[e+492>>2])));s=Q(s+Q(u*Q(Q(Q(v*N[e+448>>2])+Q(Q(w*N[e+440>>2])+Q(z*N[e+444>>2])))+N[e+488>>2])));f=f+1|0;d=J[e+376>>2];if(f>>>0<M[d+32>>2]){continue}break}break l}J[a+8>>2]=(c|0)==1?1:2;break k}u=N[q+52>>2];v=N[q+24>>2];w=N[q+20>>2];z=N[q+56>>2];L=N[q+40>>2];O=N[q+36>>2];R=N[q+16>>2];S=N[q+32>>2];T=N[q+48>>2];U=N[q+8>>2];V=N[q>>2];W=N[q+4>>2];J[a+24>>2]=0;N[a+12>>2]=T+Q(Q(k*U)+Q(Q(l*V)+Q(p*W)));N[a+20>>2]=z+Q(Q(k*L)+Q(Q(l*S)+Q(p*O)));N[a+16>>2]=u+Q(Q(k*v)+Q(Q(l*R)+Q(p*w)));v=N[q+52>>2];w=N[q+24>>2];z=N[q+20>>2];L=N[q+56>>2];O=N[q+40>>2];R=N[q+36>>2];S=N[q+48>>2];T=N[q+8>>2];U=N[q>>2];V=N[q+4>>2];W=N[q+16>>2];Z=N[q+32>>2];k=Q(k-t);l=Q(l-s);p=Q(p-r);u=Q(Y(Q(Q(k*k)+Q(Q(l*l)+Q(p*p)))));N[a+60>>2]=u;J[a+56>>2]=0;J[a+40>>2]=0;E=k;k=u>Q(9999999747378752e-20)?Q(Q(1)/u):Q(1);N[a+52>>2]=E*k;N[a+48>>2]=p*k;N[a+44>>2]=l*k;N[a+36>>2]=L+Q(Q(t*O)+Q(Q(s*Z)+Q(r*R)));N[a+32>>2]=v+Q(Q(t*w)+Q(Q(s*W)+Q(r*z)));N[a+28>>2]=S+Q(Q(t*T)+Q(Q(s*U)+Q(r*V)));}sa=e+544|0;if(c){break j}}b=J[a+16>>2];J[h>>2]=J[a+12>>2];J[h+4>>2]=b;b=J[a+24>>2];J[h+8>>2]=J[a+20>>2];J[h+12>>2]=b;b=J[a+40>>2];J[i+8>>2]=J[a+36>>2];J[i+12>>2]=b;b=J[a+32>>2];J[i>>2]=J[a+28>>2];J[i+4>>2]=b;b=J[a+56>>2];J[g+8>>2]=J[a+52>>2];J[g+12>>2]=b;b=J[a+48>>2];J[g>>2]=J[a+44>>2];J[g+4>>2]=b;}sa=a+80|0;return A|0}function cm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=0,r=0,s=Q(0),t=Q(0),u=Q(0),v=0,w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=0,B=Q(0),C=Q(0),D=0,E=0,F=Q(0),G=Q(0),I=Q(0),L=0,M=Q(0),O=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Y=Q(0),Z=Q(0),_=0,$=0,aa=Q(0),ba=0,ca=Q(0),da=0,ea=0,fa=0,ga=Q(0),ha=Q(0),ia=Q(0),ja=Q(0);f=sa-3584|0;sa=f;a:{b:{ea=J[b+4>>2];q=J[ea+72>>2];if(q){fa=J[c+4>>2];j=J[fa+72>>2];if(j){break b}}Se(a,b,c,d,e);break a}if(!(J[ea+76>>2]==J[a+108>>2]&J[fa+76>>2]==J[a+112>>2])){g=J[a+84>>2];k=J[g+8>>2];if((k|0)>0){while(1){E=J[(J[g+16>>2]+P(h,12)|0)+8>>2];if(E){ua[J[J[E>>2]>>2]](E)|0;i=J[a+4>>2];ua[J[J[i>>2]+60>>2]](i,E);}h=h+1|0;if((k|0)!=(h|0)){continue}break}g=J[a+84>>2];}Le(g);J[a+108>>2]=J[ea+76>>2];J[a+112>>2]=J[fa+76>>2];}J[f+88>>2]=0;H[f+92|0]=1;h=Lb(f+112|0);Lb(h+868|0);Lb(h+1736|0);Lb(h+2604|0);g=J[f+88>>2];if(!(g?!g|!K[f+92|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](g);}J[f+88>>2]=h;J[f+80>>2]=0;J[f+84>>2]=4;H[f+92|0]=0;E=J[a+84>>2];v=J[E+8>>2];c:{if((v|0)<=0){break c}while(1){g=J[(J[E+16>>2]+P(L,12)|0)+8>>2];if(g){ua[J[J[g>>2]+16>>2]](g,f+76|0);h=0;g=J[f+80>>2];if((g|0)>0){while(1){l=J[J[f+88>>2]+(h<<2)>>2];if(J[l+844>>2]){J[e+4>>2]=l;g=J[l+836>>2];i=J[J[e+8>>2]+8>>2];k=(g|0)==(i|0);$=g;g=J[J[e+12>>2]+8>>2];Ua(l,(k?$:g)+4|0,(k?g:i)+4|0);J[e+4>>2]=0;g=J[f+80>>2];}h=h+1|0;if((h|0)<(g|0)){continue}break}}d:{if((g|0)>=0){break d}if(J[f+84>>2]<0){h=J[f+88>>2];if(!(h?!h|!K[f+92|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](h);}H[f+92|0]=1;J[f+84>>2]=0;J[f+88>>2]=0;}v=0;h=g;i=0-g&3;if(i){while(1){J[J[f+88>>2]+(h<<2)>>2]=0;h=h+1|0;v=v+1|0;if((i|0)!=(v|0)){continue}break}}if(g>>>0>4294967292){break d}while(1){g=h<<2;J[g+J[f+88>>2]>>2]=0;J[(g+J[f+88>>2]|0)+4>>2]=0;J[(g+J[f+88>>2]|0)+8>>2]=0;J[(g+J[f+88>>2]|0)+12>>2]=0;h=h+4|0;if(h){continue}break}}J[f+80>>2]=0;v=J[E+8>>2];}L=L+1|0;if((L|0)<(v|0)){continue}break}g=J[f+88>>2];if(!g|!K[f+92|0]){break c}if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}}h=J[a+4>>2];g=J[a+84>>2];J[f+108>>2]=J[a+72>>2];J[f+104>>2]=g;J[f+96>>2]=d;J[f+92>>2]=h;J[f+80>>2]=0;J[f+76>>2]=16420;J[f+100>>2]=e;J[f+88>>2]=c;J[f+84>>2]=b;g=J[q>>2];e:{if(!g){break e}d=J[j>>2];if(!d){break e}i=J[b+12>>2];w=N[i+8>>2];m=Q(-N[i+48>>2]);u=N[i+24>>2];o=N[i+52>>2];x=N[i+40>>2];s=N[i+56>>2];h=J[c+12>>2];t=N[h+56>>2];p=N[h+48>>2];n=N[h+52>>2];ia=Q(Q(Q(Q(w*m)-Q(u*o))-Q(x*s))+Q(Q(t*x)+Q(Q(p*w)+Q(u*n))));y=N[i+4>>2];B=N[i+20>>2];z=N[i+36>>2];ja=Q(Q(Q(Q(y*m)-Q(B*o))-Q(z*s))+Q(Q(t*z)+Q(Q(p*y)+Q(B*n))));M=N[h+40>>2];F=N[h+24>>2];O=N[h+8>>2];G=N[h+36>>2];S=N[h+20>>2];I=N[h+4>>2];Z=N[i>>2];ca=Q(Z*m);m=N[i+16>>2];ca=Q(ca-Q(m*o));o=N[i+32>>2];ca=Q(Q(ca-Q(o*s))+Q(Q(t*o)+Q(Q(p*Z)+Q(m*n))));t=N[h+16>>2];p=N[h>>2];n=N[h+32>>2];aa=N[e+32>>2];J[f+116>>2]=d;J[f+112>>2]=g;C=Q(Q(M*x)+Q(Q(O*w)+Q(u*F)));W=Q(R(C));T=Q(Q(G*x)+Q(Q(I*w)+Q(u*S)));X=Q(R(T));U=Q(Q(n*x)+Q(Q(p*w)+Q(u*t)));Y=Q(R(U));V=Q(Q(M*z)+Q(Q(O*y)+Q(B*F)));w=Q(R(V));u=Q(Q(G*z)+Q(Q(I*y)+Q(B*S)));x=Q(R(u));y=Q(Q(n*z)+Q(Q(p*y)+Q(B*t)));B=Q(R(y));z=Q(Q(M*o)+Q(Q(O*Z)+Q(m*F)));M=Q(R(z));F=Q(Q(G*o)+Q(Q(I*Z)+Q(m*S)));O=Q(R(F));G=Q(Q(n*o)+Q(Q(p*Z)+Q(m*t)));S=Q(R(G));L=124;E=0;g=f+112|0;k=128;d=128;j=1;while(1){f:{g:{h:{q=j-1|0;$=q<<3;h=$+g|0;D=J[h>>2];A=J[h+4>>2];I=N[A+24>>2];m=N[A+8>>2];ga=Q(Q(Q(I-m)*Q(.5))+Q(0));o=N[A+16>>2];s=N[A>>2];ha=Q(Q(Q(o-s)*Q(.5))+Q(0));t=N[A+20>>2];n=N[A+4>>2];Z=Q(Q(Q(t-n)*Q(.5))+Q(0));p=Q(Q(ga*M)+Q(Q(ha*S)+Q(O*Z)));m=Q(Q(I+m)*Q(.5));s=Q(Q(o+s)*Q(.5));t=Q(Q(t+n)*Q(.5));n=Q(ca+Q(Q(m*z)+Q(Q(s*G)+Q(F*t))));i:{if(!(N[D>>2]<=Q(aa+Q(p+n)))|!(N[D+16>>2]>=Q(Q(n-p)-aa))){break i}p=Q(Q(ga*w)+Q(Q(ha*B)+Q(x*Z)));n=Q(ja+Q(Q(m*V)+Q(Q(s*y)+Q(u*t))));if(!(N[D+4>>2]<=Q(aa+Q(p+n)))|!(N[D+20>>2]>=Q(Q(n-p)-aa))){break i}p=Q(Q(ga*W)+Q(Q(ha*Y)+Q(X*Z)));n=Q(ia+Q(Q(m*C)+Q(Q(s*U)+Q(T*t))));if(!(N[D+8>>2]<=Q(aa+Q(p+n)))|!(N[D+24>>2]>=Q(Q(n-p)-aa))){break i}j:{if((q|0)<=(L|0)){h=k;i=g;break j}h=k<<1;k:{if((k|0)>=(h|0)){i=g;break k}if((d|0)>=(h|0)){i=g;break k}l:{if(!k){i=0;break l}J[8456]=J[8456]+1;i=ua[J[8258]](k<<4,16)|0;if((k|0)<=0){break l}v=0;L=0;if(k>>>0>=4){ba=k&-4;_=0;while(1){da=L<<3;r=da+i|0;l=g+da|0;d=J[l+4>>2];J[r>>2]=J[l>>2];J[r+4>>2]=d;d=da|8;r=d+i|0;l=d+g|0;d=J[l+4>>2];J[r>>2]=J[l>>2];J[r+4>>2]=d;d=da|16;r=d+i|0;l=d+g|0;d=J[l+4>>2];J[r>>2]=J[l>>2];J[r+4>>2]=d;d=da|24;r=d+i|0;l=d+g|0;d=J[l+4>>2];J[r>>2]=J[l>>2];J[r+4>>2]=d;L=L+4|0;_=_+4|0;if((ba|0)!=(_|0)){continue}break}}r=k&3;if(!r){break l}while(1){d=L<<3;l=d+i|0;k=d+g|0;d=J[k+4>>2];J[l>>2]=J[k>>2];J[l+4>>2]=d;L=L+1|0;v=v+1|0;if((r|0)!=(v|0)){continue}break}}d=E;E=1;if(g?d:0){J[8457]=J[8457]+1;ua[J[8259]](g);}d=h;}L=h-4|0;}g=J[A+40>>2];if(J[D+40>>2]){k=J[D+36>>2];if(g){g=i+$|0;J[g+4>>2]=J[A+36>>2];J[g>>2]=k;g=J[D+40>>2];k=(j<<3)+i|0;J[k+4>>2]=J[A+36>>2];J[k>>2]=g;g=J[D+36>>2];J[k+12>>2]=J[A+40>>2];J[k+8>>2]=g;g=J[D+40>>2];J[k+20>>2]=J[A+40>>2];J[k+16>>2]=g;j=j+3|0;break g}g=i+$|0;J[g+4>>2]=A;J[g>>2]=k;k=J[D+40>>2];g=(j<<3)+i|0;J[g+4>>2]=A;J[g>>2]=k;break h}if(g){g=i+$|0;J[g+4>>2]=J[A+36>>2];J[g>>2]=D;g=(j<<3)+i|0;J[g+4>>2]=J[A+40>>2];J[g>>2]=D;break h}ua[J[J[f+76>>2]+8>>2]](f+76|0,D,A);k=h;g=i;}j=q;break f}j=j+1|0;}k=h;g=i;}if(j){continue}break}if(!g|!E){break e}if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}}_=J[a+84>>2];if(J[_+8>>2]>0){g=0;while(1){i=P(g,12);d=i+J[_+16>>2]|0;k=J[d+8>>2];m:{if(!k){break m}j=J[ea+32>>2]+P(J[d>>2],80)|0;h=J[j+64>>2];d=J[b+12>>2];t=N[d+52>>2];p=N[d+56>>2];y=N[j+48>>2];B=N[j+52>>2];z=N[j+56>>2];M=N[j+4>>2];F=N[j+20>>2];O=N[j+36>>2];G=N[j+8>>2];S=N[j+24>>2];I=N[j+40>>2];W=N[d+20>>2];T=N[d+24>>2];m=N[j>>2];X=N[d+36>>2];o=N[j+16>>2];U=N[d+40>>2];s=N[j+32>>2];n=N[d+48>>2];Y=N[d+8>>2];V=N[d>>2];w=N[d+4>>2];u=N[d+16>>2];x=N[d+32>>2];J[f+172>>2]=0;J[f+156>>2]=0;J[f+140>>2]=0;J[f+124>>2]=0;N[f+144>>2]=Q(s*U)+Q(Q(m*x)+Q(X*o));N[f+128>>2]=Q(s*T)+Q(Q(m*u)+Q(W*o));N[f+112>>2]=Q(s*Y)+Q(Q(m*V)+Q(w*o));N[f+152>>2]=Q(I*U)+Q(Q(G*x)+Q(X*S));N[f+148>>2]=Q(O*U)+Q(Q(M*x)+Q(X*F));N[f+136>>2]=Q(I*T)+Q(Q(G*u)+Q(W*S));N[f+132>>2]=Q(O*T)+Q(Q(M*u)+Q(W*F));N[f+120>>2]=Q(I*Y)+Q(Q(G*V)+Q(w*S));N[f+116>>2]=Q(O*Y)+Q(Q(M*V)+Q(w*F));N[f+168>>2]=p+Q(Q(z*U)+Q(Q(y*x)+Q(X*B)));N[f+164>>2]=t+Q(Q(z*T)+Q(Q(y*u)+Q(W*B)));N[f+160>>2]=n+Q(Q(z*Y)+Q(Q(y*V)+Q(w*B)));d=f+112|0;ua[J[J[h>>2]+8>>2]](h,d,f+60|0,f+44|0);C=N[e+32>>2];N[f+60>>2]=N[f+60>>2]-C;N[f+64>>2]=N[f+64>>2]-C;N[f+68>>2]=N[f+68>>2]-C;N[f+44>>2]=C+N[f+44>>2];N[f+48>>2]=C+N[f+48>>2];N[f+52>>2]=C+N[f+52>>2];q=J[fa+32>>2]+P(J[(i+J[_+16>>2]|0)+4>>2],80)|0;h=J[q+64>>2];j=J[c+12>>2];t=N[j+52>>2];p=N[j+56>>2];y=N[q+48>>2];B=N[q+52>>2];z=N[q+56>>2];M=N[q+4>>2];F=N[q+20>>2];O=N[q+36>>2];G=N[q+8>>2];S=N[q+24>>2];I=N[q+40>>2];W=N[j+20>>2];T=N[j+24>>2];m=N[q>>2];X=N[j+36>>2];o=N[q+16>>2];U=N[j+40>>2];s=N[q+32>>2];n=N[j+48>>2];Y=N[j+8>>2];V=N[j>>2];w=N[j+4>>2];u=N[j+16>>2];x=N[j+32>>2];J[f+172>>2]=0;J[f+156>>2]=0;J[f+140>>2]=0;J[f+124>>2]=0;N[f+144>>2]=Q(s*U)+Q(Q(m*x)+Q(X*o));N[f+128>>2]=Q(s*T)+Q(Q(m*u)+Q(W*o));N[f+112>>2]=Q(s*Y)+Q(Q(m*V)+Q(w*o));N[f+152>>2]=Q(I*U)+Q(Q(G*x)+Q(X*S));N[f+148>>2]=Q(O*U)+Q(Q(M*x)+Q(X*F));N[f+136>>2]=Q(I*T)+Q(Q(G*u)+Q(W*S));N[f+132>>2]=Q(O*T)+Q(Q(M*u)+Q(W*F));N[f+120>>2]=Q(I*Y)+Q(Q(G*V)+Q(w*S));N[f+116>>2]=Q(O*Y)+Q(Q(M*V)+Q(w*F));N[f+168>>2]=p+Q(Q(z*U)+Q(Q(y*x)+Q(X*B)));N[f+164>>2]=t+Q(Q(z*T)+Q(Q(y*u)+Q(W*B)));N[f+160>>2]=n+Q(Q(z*Y)+Q(Q(y*V)+Q(w*B)));ua[J[J[h>>2]+8>>2]](h,d,f+28|0,f+12|0);m=Q(N[f+28>>2]-C);N[f+28>>2]=m;o=Q(N[f+32>>2]-C);N[f+32>>2]=o;s=Q(N[f+36>>2]-C);N[f+36>>2]=s;t=Q(C+N[f+12>>2]);N[f+12>>2]=t;p=Q(C+N[f+20>>2]);N[f+20>>2]=p;n=Q(C+N[f+16>>2]);N[f+16>>2]=n;n:{if(n<N[f+64>>2]|o>N[f+48>>2]|(p<N[f+68>>2]|s>N[f+52>>2])){break n}if(t<N[f+60>>2]){break n}if(!(m>N[f+44>>2])){break m}}ua[J[J[k>>2]>>2]](k)|0;d=J[a+4>>2];ua[J[J[d>>2]+60>>2]](d,k);d=i+J[_+16>>2]|0;E=J[d+4>>2];q=J[d>>2];i=J[a+92>>2];o:{if((i|0)!=J[a+96>>2]){break o}ba=i?i<<1:1;if((ba|0)<=(i|0)){break o}p:{if(!ba){v=0;break p}J[8456]=J[8456]+1;v=ua[J[8258]](P(ba,12),16)|0;i=J[a+92>>2];}q:{if((i|0)<=0){break q}j=i&1;h=0;if((i|0)!=1){k=i&-2;i=0;while(1){d=P(h,12);r=d+v|0;l=d+J[a+100>>2]|0;d=J[l+4>>2];J[r>>2]=J[l>>2];J[r+4>>2]=d;J[r+8>>2]=J[l+8>>2];d=P(h|1,12);r=d+v|0;l=d+J[a+100>>2]|0;d=J[l+4>>2];J[r>>2]=J[l>>2];J[r+4>>2]=d;J[r+8>>2]=J[l+8>>2];h=h+2|0;i=i+2|0;if((k|0)!=(i|0)){continue}break}}if(!j){break q}d=P(h,12);i=d+v|0;h=d+J[a+100>>2]|0;d=J[h+4>>2];J[i>>2]=J[h>>2];J[i+4>>2]=d;J[i+8>>2]=J[h+8>>2];}d=J[a+100>>2];if(!(d?!d|!K[a+104|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+100>>2]=v;H[a+104|0]=1;J[a+96>>2]=ba;i=J[a+92>>2];}d=J[a+100>>2]+P(i,12)|0;J[d+8>>2]=0;J[d+4>>2]=E;J[d>>2]=q;J[a+92>>2]=J[a+92>>2]+1;}g=g+1|0;if((g|0)<J[_+8>>2]){continue}break}}if(J[a+92>>2]>0){h=0;while(1){c=J[a+84>>2];b=J[a+100>>2]+P(h,12)|0;ua[J[J[c>>2]+8>>2]](c,J[b>>2],J[b+4>>2])|0;h=h+1|0;if((h|0)<J[a+92>>2]){continue}break}}b=J[a+100>>2];if(!(b?!b|!K[a+104|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+100>>2]=0;H[a+104|0]=1;J[a+92>>2]=0;J[a+96>>2]=0;}sa=f+3584|0;}function If(){var a=0;fa(31140,31152,31168,0,11001,7,11004,0,11004,0,2234,11006,6);a=La(8);J[a>>2]=100;J[a+4>>2]=1;da(31132,4404,2,31184,11025,8,a|0,0,0);a=La(8);J[a>>2]=104;J[a+4>>2]=1;da(31132,4415,2,31184,11025,8,a|0,0,0);a=La(8);J[a>>2]=108;J[a+4>>2]=1;da(31140,7459,5,31216,11029,9,a|0,0,0);fa(31276,31288,31304,31140,11001,13,11001,12,11001,11,5292,11006,10);a=La(4);J[a>>2]=14;da(31276,5645,2,31320,11025,15,a|0,0,0);ea(31140,2650,2,31328,11196,17,16,0);ea(31140,7753,3,31616,11263,19,18,0);fa(31644,31656,31672,0,11001,21,11004,0,11004,0,2346,11006,20);a=La(8);J[a>>2]=16;J[a+4>>2]=1;da(31644,2251,4,31696,11371,22,a|0,0,0);fa(31744,31756,31772,31644,11001,26,11001,25,11001,24,5304,11006,23);a=La(4);J[a>>2]=27;da(31744,5645,2,31788,11025,28,a|0,0,0);ea(31644,2650,2,31796,11196,30,29,0);ea(31644,7753,3,31616,11263,19,31,0);fa(31872,31884,31900,0,11001,33,11004,0,11004,0,7053,11006,32);a=La(8);J[a>>2]=16;J[a+4>>2]=1;da(31872,4677,3,31916,11587,34,a|0,0,0);fa(31960,31972,31988,31872,11001,38,11001,37,11001,36,5331,11006,35);a=La(4);J[a>>2]=39;da(31960,5645,2,32004,11025,40,a|0,0,0);ea(31872,2650,2,32012,11196,42,41,0);ea(31872,7753,3,31616,11263,19,43,0);Z(8259,2,32084,11196,45,44,0);Z(7549,2,32092,11025,47,46,0);Z(10143,2,32100,11709,49,48,0);Z(10132,3,32108,11713,51,50,0);Z(6981,3,32120,11587,53,52,0);Z(2225,4,32144,11718,55,54,0);Z(1593,2,32100,11709,49,56,0);Z(1469,2,32100,11709,49,57,0);Z(1031,2,32100,11709,49,58,0);Z(3127,5,32160,11724,60,59,0);Z(1725,5,32192,11731,62,61,0);Z(1586,2,32100,11709,49,63,0);Z(1462,2,32100,11709,49,64,0);Z(1024,2,32100,11709,49,65,0);Z(2244,2,32100,11709,49,66,0);Z(3103,6,32224,11738,68,67,0);Z(1854,1,32248,11001,70,69,0);Z(1090,2,32092,11025,47,71,0);Z(5750,3,32120,11587,53,72,0);Z(6011,2,32084,11196,45,73,0);Z(5772,3,32252,11263,75,74,0);Z(6031,3,32252,11263,75,76,0);Z(6154,3,32120,11587,53,77,0);Z(6062,3,32120,11587,53,78,0);Z(5364,4,32272,11371,80,79,0);Z(6832,2,32084,11196,45,81,0);Z(3482,3,32252,11263,75,82,0);Z(3495,3,32252,11263,75,83,0);Z(1433,1,32248,11001,70,84,0);Z(6878,2,32100,11709,49,85,0);Z(6847,3,32108,11713,51,86,0);Z(8215,3,32108,11713,51,87,0);Z(1614,5,32288,11746,89,88,0);Z(4426,4,32272,11371,80,90,0);Z(2694,7,32320,11753,92,91,0);Z(4798,3,32348,11587,94,93,0);Z(1345,3,32348,11587,94,95,0);Z(7182,3,32108,11713,51,96,0);Z(3136,4,32368,11762,98,97,0);Z(1159,3,32108,11713,51,99,0);Z(1654,5,32288,11746,89,100,0);Z(9347,3,32120,11587,53,101,0);Z(9219,3,32120,11587,53,102,0);Z(1634,5,32288,11746,89,103,0);Z(4452,4,32272,11371,80,104,0);Z(1672,6,32384,11768,106,105,0);Z(4478,4,32272,11371,80,107,0);Z(2719,5,32416,11776,109,108,0);Z(6627,4,32448,11371,111,110,0);Z(3753,4,32464,11783,113,112,0);Z(6710,4,32464,11783,113,114,0);Z(7668,4,32464,11783,113,115,0);Z(2444,4,32464,11783,113,116,0);Z(4826,4,32448,11371,111,117,0);Z(7622,4,32464,11783,113,118,0);Z(1112,4,32464,11783,113,119,0);Z(5511,4,32448,11371,111,120,0);Z(3167,4,32464,11783,113,121,0);Z(7707,2,32480,11196,123,122,0);Z(6801,3,32120,11587,53,124,0);Z(9112,4,32496,11789,126,125,0);Z(8432,5,32512,11029,128,127,0);Z(5986,3,32108,11713,51,129,0);Z(6370,3,32120,11587,53,130,0);Z(5262,3,32120,11587,53,131,0);Z(8414,1,32248,11001,70,132,0);Z(4143,2,32084,11196,45,133,0);Z(1919,2,32084,11196,45,134,0);Z(3662,3,32120,11587,53,135,0);Z(2043,2,32532,11795,137,136,0);Z(3615,3,32108,11713,51,138,0);Z(1949,2,32084,11196,45,139,0);Z(5424,5,32544,11799,141,140,0);Z(2094,3,32564,11806,143,142,0);Z(5449,5,32544,11799,141,144,0);Z(2059,3,32564,11806,143,145,0);Z(3555,3,32108,11713,51,146,0);Z(2869,3,32108,11713,51,147,0);Z(1561,3,32120,11587,53,148,0);Z(2073,3,32576,11811,150,149,0);Z(6278,2,32084,11196,45,151,0);Z(2660,3,32108,11713,51,152,0);Z(1967,7,32592,11816,154,153,0);Z(1883,1,32248,11001,70,155,0);Z(7517,6,32624,11825,157,156,0);Z(2018,4,32656,11833,159,158,0);Z(6474,2,32084,11196,45,160,0);Z(6437,6,32672,11839,162,161,0);Z(2012,5,32704,11847,164,163,0);Z(1984,2,32084,11196,45,165,0);Z(1932,1,32248,11001,70,166,0);Z(1480,3,32120,11587,53,167,0);Z(2111,1,32248,11001,70,168,0);Z(4372,2,32084,11196,45,169,0);Z(7426,4,32272,11371,80,170,0);Z(7367,3,32252,11263,75,171,0);Z(7395,3,32120,11587,53,172,0);Z(6184,5,32736,11029,174,173,0);Z(1705,1,32248,11001,70,175,0);Z(7282,2,32084,11196,45,176,0);Z(7248,3,32120,11587,53,177,0);Z(8132,3,32120,11587,53,178,0);Z(6774,2,32084,11196,45,179,0);Z(7065,2,32084,11196,45,180,0);Z(7122,3,32120,11587,53,181,0);Z(6994,3,32348,11587,94,182,0);Z(6934,2,32480,11196,123,183,0);Z(3400,2,32480,11196,123,184,0);Z(3369,2,32480,11196,123,185,0);Z(3434,2,32480,11196,123,186,0);Z(6120,2,32084,11196,45,187,0);Z(4304,3,32120,11587,53,188,0);Z(4338,2,32084,11196,45,189,0);Z(8094,3,32108,11713,51,190,0);Z(3575,3,32108,11713,51,191,0);Z(1503,3,32120,11587,53,192,0);Z(1532,2,32084,11196,45,193,0);Z(6342,6,32224,11738,68,194,0);Z(6397,4,32448,11371,111,195,0);Z(1600,3,32756,11854,197,196,0);Z(4285,2,32084,11196,45,198,0);Z(4210,3,32120,11587,53,199,0);Z(1044,3,32120,11587,53,200,0);Z(6689,4,32368,11762,98,201,0);Z(3835,3,32108,11713,51,202,0);Z(4043,4,32496,11789,126,203,0);Z(4894,3,32120,11587,53,204,0);Z(4867,3,32120,11587,53,205,0);Z(1250,3,32120,11587,53,206,0);Z(1278,2,32084,11196,45,207,0);Z(1192,3,32120,11587,53,208,0);Z(1221,2,32084,11196,45,209,0);Z(7019,2,32092,11025,47,210,0);Z(4517,2,32092,11025,47,211,0);Z(6750,2,32480,11196,123,212,0);Z(4581,4,32368,11762,98,213,0);Z(8178,2,32100,11709,49,214,0);Z(7040,2,32084,11196,45,215,0);Z(6959,3,32120,11587,53,216,0);Z(7601,4,32272,11371,80,217,0);Z(7159,4,32272,11371,80,218,0);Z(6092,3,32120,11587,53,219,0);Z(8267,1,32248,11001,70,220,0);Z(1830,1,32248,11001,70,221,0);Z(4650,2,32084,11196,45,222,0);Z(6240,3,32252,11263,75,223,0);Z(10287,2,32084,11196,45,224,0);Z(10208,2,32084,11196,45,225,0);Z(10260,2,32084,11196,45,226,0);Z(10181,2,32084,11196,45,227,0);Z(10232,2,32084,11196,45,228,0);Z(10153,2,32084,11196,45,229,0);Z(3694,2,32084,11196,45,230,0);Z(2409,3,32252,11263,75,231,0);Z(9371,2,32084,11196,45,232,0);Z(9243,2,32084,11196,45,233,0);Z(9403,2,32084,11196,45,234,0);Z(9275,2,32084,11196,45,235,0);Z(9312,2,32084,11196,45,236,0);Z(9275,2,32084,11196,45,235,0);Z(1900,1,32248,11001,70,237,0);Z(1734,1,32248,11001,70,238,0);Z(3335,5,32768,11029,240,239,0);Z(3298,3,32120,11587,53,241,0);Z(2265,5,32512,11029,128,242,0);Z(2288,7,32800,11859,244,243,0);Z(5232,3,32120,11587,53,245,0);Z(7760,2,32092,11025,47,246,0);Z(2131,4,32832,11833,248,247,0);Z(5473,3,32348,11587,94,249,0);Z(1065,3,32120,11587,53,250,0);Z(5843,5,32848,11868,252,251,0);Z(1406,5,32768,11029,240,253,0);Z(1376,3,32120,11587,53,254,0);Z(2524,4,32448,11371,111,255,0);Z(2493,3,32120,11587,53,256,0);Z(5726,3,32120,11587,53,257,0);Z(5699,3,32120,11587,53,258,0);Z(7555,3,32120,11587,53,259,0);Z(7578,2,32084,11196,45,260,0);Z(5148,5,32160,11724,60,261,0);Z(5115,5,32160,11724,60,262,0);Z(4985,5,32160,11724,60,263,0);Z(5027,5,32160,11724,60,264,0);Z(5072,5,32160,11724,60,265,0);Z(5179,5,32160,11724,60,266,0);Z(4920,5,32160,11724,60,267,0);Z(4951,5,32160,11724,60,268,0);Z(2791,2,32480,11196,123,269,0);Z(2810,2,32480,11196,123,270,0);Z(8332,1,32248,11001,70,271,0);Z(4259,3,32120,11587,53,272,0);Z(3024,6,32880,11825,274,273,0);Z(7828,2,32084,11196,45,275,0);Z(7979,2,32084,11196,45,276,0);Z(3853,2,32084,11196,45,277,0);Z(8304,1,32248,11001,70,278,0);Z(4229,3,32120,11587,53,279,0);Z(2997,6,32880,11825,274,280,0);Z(7790,2,32084,11196,45,281,0);Z(7940,2,32084,11196,45,282,0);Z(4711,2,32084,11196,45,283,0);Z(8387,1,32248,11001,70,284,0);Z(3077,6,32880,11825,274,285,0);Z(7903,2,32084,11196,45,286,0);Z(8056,2,32084,11196,45,287,0);Z(3892,2,32084,11196,45,288,0);Z(8356,1,32248,11001,70,289,0);Z(3047,6,32880,11825,274,290,0);Z(7862,2,32084,11196,45,291,0);Z(8014,2,32084,11196,45,292,0);Z(4753,2,32084,11196,45,293,0);Z(1868,1,32248,11001,70,294,0);Z(3112,6,32224,11738,68,295,0);Z(3222,2,32084,11196,45,296,0);Z(7316,2,32084,11196,45,297,0);Z(4066,2,32084,11196,45,298,0);Z(6310,2,32084,11196,45,299,0);Z(5202,2,32084,11196,45,300,0);Z(6511,2,32100,11709,49,301,0);Z(7217,2,32084,11196,45,302,0);Z(3257,2,32084,11196,45,303,0);Z(6909,5,32912,11875,305,304,0);Z(5613,2,32084,11196,45,306,0);Z(2926,3,32108,11713,51,307,0);Z(2963,3,32108,11713,51,308,0);Z(2757,3,32108,11713,51,309,0);Z(5901,3,32348,11587,94,310,0);Z(1306,3,32348,11587,94,311,0);Z(2190,9,32944,11882,313,312,0);Z(1799,4,32832,11833,248,314,0);Z(3518,3,32108,11713,51,315,0);Z(2832,3,32108,11713,51,316,0);Z(2159,10,32992,11893,318,317,0);Z(1772,4,32832,11833,248,319,0);Z(2889,3,32108,11713,51,320,0);Z(2565,3,32108,11713,51,321,0);Z(2606,3,32108,11713,51,322,0);}function he(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,L=0,M=0,N=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;l=sa-48|0;sa=l;s=J[e>>2];u=b;S=J[d>>2];if(S){u=J[S+12>>2];}E=J[u+96>>2];n=c;j=J[b+96>>2];F=J[c+96>>2]-j|0;i=J[(S?S:s)+12>>2];r=J[b+92>>2];h=J[i+92>>2]-r|0;M=J[c+92>>2]-r|0;v=J[i+96>>2]-j|0;I=P(F,h)-P(M,v)|0;N=I>>31;w=F>>31;k=us(I,N,F,w);g=ta;q=J[b+88>>2];i=J[i+88>>2]-q|0;T=J[c+88>>2]-q|0;K=P(i,M)-P(h,T)|0;O=K>>31;o=T;p=o>>31;h=us(K,O,o,p);b=k-h|0;z=J[u+92>>2];c=z;G=b;A=g-(ta+(h>>>0>k>>>0)|0)|0;m=us(b,A,c,c>>31);f=ta;c=M;k=c>>31;y=us(K,O,c,k);g=ta;L=P(o,v)-P(i,F)|0;Q=L>>31;i=us(L,Q,F,w);b=y-i|0;u=J[u+88>>2];h=u;H=b;B=g-(ta+(i>>>0>y>>>0)|0)|0;b=us(b,B,h,h>>31);i=b+m|0;f=ta+f|0;f=b>>>0>i>>>0?f+1|0:f;h=us(o,p,L,Q);o=ta;c=us(c,k,I,N);C=h-c|0;D=o-(ta+(c>>>0>h>>>0)|0)|0;c=us(C,D,E,E>>31);b=c+i|0;f=ta+f|0;o=b>>>0<c>>>0?f+1|0:f;c=us(I,N,q,q>>31);h=ta;g=c;c=us(K,O,j,j>>31);i=g+c|0;j=ta+h|0;j=c>>>0>i>>>0?j+1|0:j;h=us(L,Q,r,r>>31);c=h+i|0;g=ta+j|0;q=c;r=c>>>0<h>>>0?g+1|0:g;n=s?J[s+12>>2]:n;y=J[n+96>>2];v=J[n+92>>2];w=J[n+88>>2];c=s;a:{if(!S){break a}c=s;if(!J[S+12>>2]){break a}c=J[J[S+8>>2]+4>>2];m=J[c+12>>2];h=m;i=J[h+92>>2];k=i>>31;g=us(i,k,L,Q);f=ta;n=g;h=J[h+88>>2];p=h>>31;g=us(h,p,I,N);n=n+g|0;f=ta+f|0;f=g>>>0>n>>>0?f+1|0:f;g=J[m+96>>2];R=g>>31;m=us(g,R,K,O);n=m+n|0;f=ta+f|0;f=m>>>0>n>>>0?f+1|0:f;b:{if(n>>>0<q>>>0&(r|0)>=(f|0)|(f|0)<(r|0)){break b}n=c+12|0;t=J[a+100>>2];while(1){if((t|0)==J[c+20>>2]){break b}k=us(i,k,G,A);i=ta;h=us(h,p,H,B);k=h+k|0;f=ta+i|0;f=h>>>0>k>>>0?f+1|0:f;i=us(g,R,C,D);h=i+k|0;f=ta+f|0;f=h>>>0<i>>>0?f+1|0:f;if((o|0)>=(f|0)&b>>>0>=h>>>0|(f|0)<(o|0)){break b}J[d>>2]=c;b=J[n>>2];E=J[b+96>>2];z=J[b+92>>2];u=J[b+88>>2];if(b){c=J[J[c+8>>2]+4>>2];n=c+12|0;b=h;o=f;m=J[c+12>>2];h=m;i=J[h+92>>2];k=i>>31;g=us(i,k,L,Q);f=ta;j=g;h=J[h+88>>2];p=h>>31;g=us(h,p,I,N);j=j+g|0;f=ta+f|0;f=g>>>0>j>>>0?f+1|0:f;g=J[m+96>>2];R=g>>31;m=us(g,R,K,O);x=m+j|0;j=ta+f|0;j=m>>>0>x>>>0?j+1|0:j;if(q>>>0>x>>>0&(r|0)>=(j|0)|(j|0)<(r|0)){break b}continue}break}b=h;o=f;}c=J[e>>2];}h=us(G,A,v,v>>31);i=ta;g=h;h=us(H,B,w,w>>31);g=g+h|0;f=ta+i|0;f=g>>>0<h>>>0?f+1|0:f;h=us(C,D,y,y>>31);i=h+g|0;f=ta+f|0;k=h>>>0>i>>>0?f+1|0:f;c:{if(!c){c=0;break c}if(!J[c+12>>2]){break c}n=J[J[c+8>>2]>>2];t=J[n+12>>2];g=t;h=J[g+92>>2];p=h>>31;f=us(h,p,L,Q);m=ta;j=f;g=J[g+88>>2];R=g>>31;f=us(g,R,I,N);x=j+f|0;j=ta+m|0;j=f>>>0>x>>>0?j+1|0:j;m=J[t+96>>2];V=m>>31;f=us(m,V,K,O);t=f+x|0;j=ta+j|0;j=f>>>0>t>>>0?j+1|0:j;if(q>>>0>t>>>0&(r|0)>=(j|0)|(j|0)<(r|0)){break c}W=n+12|0;x=J[a+100>>2];while(1){f=n;if((x|0)==J[f+20>>2]){break c}h=us(h,p,G,A);n=ta;j=h;h=us(g,R,H,B);p=j+h|0;g=ta+n|0;g=h>>>0>p>>>0?g+1|0:g;m=us(C,D,m,V);h=m+p|0;j=ta+g|0;j=h>>>0<m>>>0?j+1|0:j;g=j;if(h>>>0<=i>>>0&(k|0)>=(g|0)|(g|0)<(k|0)){break c}J[e>>2]=f;c=J[W>>2];y=J[c+96>>2];v=J[c+92>>2];w=J[c+88>>2];if(c){n=J[J[f+8>>2]>>2];W=n+12|0;c=f;i=h;k=g;t=J[n+12>>2];g=t;h=J[g+92>>2];p=h>>31;f=us(h,p,L,Q);m=ta;j=f;g=J[g+88>>2];R=g>>31;f=us(g,R,I,N);U=j+f|0;j=ta+m|0;j=f>>>0>U>>>0?j+1|0:j;m=J[t+96>>2];V=m>>31;t=us(m,V,K,O);U=t+U|0;f=ta+j|0;f=t>>>0>U>>>0?f+1|0:f;if(q>>>0>U>>>0&(r|0)>=(f|0)|(f|0)<(r|0)){break c}continue}break}c=f;i=h;k=g;}o=k-((b>>>0>i>>>0)+o|0)|0;d:{b=i-b|0;if(!!b&(o|0)>=0|(o|0)>0){t=J[a+100>>2];while(1){c=J[d>>2];while(1){e:{h=(P(v-z|0,M)+P(w-u|0,T)|0)+P(y-E|0,F)|0;p=h>>31;if(!c|!J[c+12>>2]){break e}n=J[J[c>>2]+8>>2];if((t|0)>=J[n+20>>2]){break e}i=J[n+12>>2];s=J[i+92>>2];a=s-z|0;m=J[i+88>>2];k=m-u|0;g=J[i+96>>2];f=g-E|0;q=(P(a,M)+P(k,T)|0)+P(f,F)|0;a=us(G,A,a,a>>31);i=ta;j=a;a=us(H,B,k,k>>31);k=j+a|0;j=ta+i|0;j=a>>>0>k>>>0?j+1|0:j;i=us(C,D,f,f>>31);a=i+k|0;f=ta+j|0;f=a>>>0<i>>>0?f+1|0:f;f:{if(!(f|a)){if((q|0)<0){break f}break e}if((f|0)>0|(f|0)>=0){break e}J[l+32>>2]=0-a;J[l+36>>2]=0-(((a|0)!=0)+f|0);k=(q|0)>0;J[l+40>>2]=k?-1:q>>>31|0;i=(q|0)<0;J[l+24>>2]=k?q:i?0-q|0:0;a=q>>31;J[l+28>>2]=k?a:i?0-(((q|0)!=0)+a|0)|0:0;g:{if((h|0)>0){J[l+16>>2]=1;k=p;f=-1;a=h;break g}if((h|0)<0){J[l+16>>2]=-1;k=0-(((h|0)!=0)+p|0)|0;f=1;a=0-h|0;break g}J[l+16>>2]=0;k=0;f=0;a=0;}J[l>>2]=a;J[l+4>>2]=k;a=b;i=o;h:{if(!!a&(i|0)>=0|(i|0)>0){break h}i=0;a=0;if((o|0)>0|(o|0)>=0){break h}J[l+16>>2]=f;i=0-(((b|0)!=0)+o|0)|0;a=0-b|0;}J[l+8>>2]=a;J[l+12>>2]=i;if((lb(l+24|0,l)|0)<0){break e}}c=(c|0)!=(S|0)?n:0;J[d>>2]=c;a=v-s|0;a=us(G,A,a,a>>31);b=ta;h=a;a=w-m|0;a=us(H,B,a,a>>31);o=h+a|0;j=ta+b|0;j=a>>>0>o>>>0?j+1|0:j;a=y-g|0;a=us(C,D,a,a>>31);b=a+o|0;f=ta+j|0;o=a>>>0>b>>>0?f+1|0:f;u=m;z=s;E=g;continue}break}a=J[e>>2];if(!a|!J[a+12>>2]){break d}x=J[J[a+8>>2]>>2];if((t|0)>=J[x+20>>2]){break d}i=J[x+12>>2];r=J[i+92>>2];f=r-v|0;q=f>>31;a=us(f,q,L,Q);c=ta;g=a;v=J[i+88>>2];k=v-w|0;n=k>>31;a=us(k,n,I,N);w=g+a|0;g=ta+c|0;g=a>>>0>w>>>0?g+1|0:g;s=J[i+96>>2];i=s-y|0;m=i>>31;c=us(K,O,i,m);if((0-c|0)!=(w|0)|(0-(ta+((c|0)!=0)|0)|0)!=(g|0)){break d}a=r-z|0;a=us(G,A,a,a>>31);c=ta;g=a;a=v-u|0;a=us(H,B,a,a>>31);g=g+a|0;j=ta+c|0;j=a>>>0>g>>>0?j+1|0:j;a=s-E|0;a=us(C,D,a,a>>31);c=a+g|0;j=ta+j|0;j=a>>>0>c>>>0?j+1|0:j;a=j;if(!c&(a|0)<=0|(a|0)<0){break d}s=(P(f,M)+P(k,T)|0)+P(i,F)|0;g=us(f,q,G,A);f=ta;j=g;g=us(H,B,k,n);k=j+g|0;f=ta+f|0;f=g>>>0>k>>>0?f+1|0:f;g=us(C,D,i,m);i=g+k|0;f=ta+f|0;f=g>>>0>i>>>0?f+1|0:f;i:{if(!(f|i)){if((s|0)<0){break i}break d}if((f|0)>0|(f|0)>=0){break d}J[l+32>>2]=0-i;J[l+36>>2]=0-(((i|0)!=0)+f|0);k=(s|0)>0;J[l+40>>2]=k?-1:s>>>31|0;g=(s|0)<0;J[l+24>>2]=k?s:g?0-s|0:0;i=s>>31;J[l+28>>2]=k?i:g?0-(((s|0)!=0)+i|0)|0:0;j:{if((h|0)>0){J[l+16>>2]=1;i=-1;break j}if((h|0)<0){J[l+16>>2]=-1;i=h;h=0-h|0;p=0-(((i|0)!=0)+p|0)|0;i=1;break j}J[l+16>>2]=0;h=0;p=0;i=0;}J[l>>2]=h;J[l+4>>2]=p;h=b;g=o;k:{if(!!h&(g|0)>=0|(g|0)>0){break k}g=0;h=0;if((o|0)>0|(o|0)>=0){break k}J[l+16>>2]=i;g=0-(((b|0)!=0)+o|0)|0;h=0-b|0;}J[l+8>>2]=h;J[l+12>>2]=g;if((lb(l+24|0,l)|0)<=0){break d}}J[e>>2]=x;b=J[x+12>>2];y=J[b+96>>2];v=J[b+92>>2];w=J[b+88>>2];b=c;o=a;continue}}if((o|0)>0|(o|0)>=0){break d}t=J[a+100>>2];while(1){h=(P(v-z|0,M)+P(w-u|0,T)|0)+P(y-E|0,F)|0;p=h>>31;l:{if(!c|!J[c+12>>2]){break l}r=J[J[c+4>>2]+8>>2];if((t|0)>=J[r+20>>2]){break l}i=J[r+12>>2];m=J[i+92>>2];a=m-v|0;k=J[i+88>>2];f=k-w|0;i=J[i+96>>2];q=i-y|0;j=(P(a,M)+P(f,T)|0)+P(q,F)|0;a=us(G,A,a,a>>31);g=ta;n=a;a=us(H,B,f,f>>31);n=n+a|0;f=ta+g|0;f=a>>>0>n>>>0?f+1|0:f;a=n;n=us(C,D,q,q>>31);a=a+n|0;g=ta+f|0;g=a>>>0<n>>>0?g+1|0:g;m:{if(!(g|a)){if((j|0)>0){break m}break l}if((g|0)>0|(g|0)>=0){break l}J[l+32>>2]=0-a;J[l+36>>2]=0-(((a|0)!=0)+g|0);f=(j|0)>0;J[l+40>>2]=f?-1:j>>>31|0;g=(j|0)<0;J[l+24>>2]=f?j:g?0-j|0:0;a=j>>31;J[l+28>>2]=f?a:g?0-(((j|0)!=0)+a|0)|0:0;n:{if((h|0)>0){J[l+16>>2]=1;n=-1;g=p;a=h;break n}if((h|0)<0){J[l+16>>2]=-1;n=1;g=0-(((h|0)!=0)+p|0)|0;a=0-h|0;break n}n=0;J[l+16>>2]=0;g=0;a=0;}J[l>>2]=a;J[l+4>>2]=g;a=b;g=o;o:{if(!!a&(g|0)>=0|(g|0)>0){break o}g=0;a=0;if((o|0)>0|(o|0)>=0){break o}J[l+16>>2]=n;g=0-(((b|0)!=0)+o|0)|0;a=0-b|0;}J[l+8>>2]=a;J[l+12>>2]=g;if((lb(l+24|0,l)|0)>0){break l}}c=(c|0)!=(s|0)?r:0;J[e>>2]=c;a=m-z|0;a=us(G,A,a,a>>31);b=ta;h=a;a=k-u|0;a=us(H,B,a,a>>31);o=h+a|0;f=ta+b|0;f=a>>>0>o>>>0?f+1|0:f;a=i-E|0;a=us(C,D,a,a>>31);b=a+o|0;f=ta+f|0;o=a>>>0>b>>>0?f+1|0:f;w=k;v=m;y=i;continue}a=J[d>>2];if(!a|!J[a+12>>2]){break d}x=J[J[a+8>>2]+4>>2];if((t|0)>=J[x+20>>2]){break d}i=J[x+12>>2];r=J[i+92>>2];k=r-z|0;q=k>>31;a=us(k,q,L,Q);c=ta;f=a;z=J[i+88>>2];g=z-u|0;n=g>>31;a=us(g,n,I,N);j=f+a|0;f=ta+c|0;f=a>>>0>j>>>0?f+1|0:f;m=J[i+96>>2];c=m-E|0;u=c>>31;i=us(K,O,c,u);if((0-i|0)!=(j|0)|(0-(ta+((i|0)!=0)|0)|0)!=(f|0)){break d}a=v-r|0;a=us(G,A,a,a>>31);i=ta;f=a;a=w-z|0;a=us(H,B,a,a>>31);f=f+a|0;j=ta+i|0;j=a>>>0>f>>>0?j+1|0:j;a=y-m|0;a=us(C,D,a,a>>31);i=a+f|0;f=ta+j|0;f=a>>>0>i>>>0?f+1|0:f;a=f;if((f|0)>0|(f|0)>=0){break d}m=(P(k,M)+P(g,T)|0)+P(c,F)|0;f=us(k,q,G,A);k=ta;g=us(H,B,g,n);f=g+f|0;j=ta+k|0;k=us(C,D,c,u);c=k+f|0;g=ta+(f>>>0<g>>>0?j+1|0:j)|0;g=c>>>0<k>>>0?g+1|0:g;p:{if(!(g|c)){if((m|0)>0){break p}break d}if((g|0)>0|(g|0)>=0){break d}J[l+32>>2]=0-c;J[l+36>>2]=0-(((c|0)!=0)+g|0);k=(m|0)>0;J[l+40>>2]=k?-1:m>>>31|0;g=(m|0)<0;J[l+24>>2]=k?m:g?0-m|0:0;c=m>>31;J[l+28>>2]=k?c:g?0-(((m|0)!=0)+c|0)|0:0;q:{if((h|0)>0){J[l+16>>2]=1;g=-1;break q}if((h|0)<0){J[l+16>>2]=-1;c=h;h=0-h|0;p=0-(((c|0)!=0)+p|0)|0;g=1;break q}J[l+16>>2]=0;h=0;p=0;g=0;}J[l>>2]=h;J[l+4>>2]=p;c=b;h=o;r:{if(!!c&(h|0)>=0|(h|0)>0){break r}h=0;c=0;if((o|0)>0|(o|0)>=0){break r}J[l+16>>2]=g;h=0-(((b|0)!=0)+o|0)|0;c=0-b|0;}J[l+8>>2]=c;J[l+12>>2]=h;if((lb(l+24|0,l)|0)>=0){break d}}J[d>>2]=x;b=J[x+12>>2];E=J[b+96>>2];z=J[b+92>>2];c=J[e>>2];u=J[b+88>>2];b=i;o=a;continue}}sa=l+48|0;}function jh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;w=sa-16|0;sa=w;ua[J[8262]](3645);d=J[a+196>>2];j=J[a+228>>2];a:{if((d|0)>=(j|0)){break a}if((j|0)>J[a+200>>2]){if(j){J[8456]=J[8456]+1;g=ua[J[8258]](j<<2,16)|0;c=J[a+196>>2];}else {c=d;}b:{if((c|0)<=0){break b}if(c>>>0>=4){i=c&-4;while(1){f=h<<2;J[f+g>>2]=J[f+J[a+204>>2]>>2];m=f|4;J[m+g>>2]=J[m+J[a+204>>2]>>2];m=f|8;J[m+g>>2]=J[m+J[a+204>>2]>>2];f=f|12;J[f+g>>2]=J[f+J[a+204>>2]>>2];h=h+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}c=c&3;if(!c){break b}while(1){e=h<<2;J[e+g>>2]=J[e+J[a+204>>2]>>2];h=h+1|0;q=q+1|0;if((c|0)!=(q|0)){continue}break}}c=J[a+204>>2];if(!(c?!c|!K[a+208|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+204>>2]=g;H[a+208|0]=1;J[a+200>>2]=j;}c=j+(d^-1)|0;e=j-d&3;if(e){h=0;while(1){J[J[a+204>>2]+(d<<2)>>2]=0;d=d+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}if(c>>>0<3){break a}while(1){c=d<<2;J[c+J[a+204>>2]>>2]=0;J[(c+J[a+204>>2]|0)+4>>2]=0;J[(c+J[a+204>>2]|0)+8>>2]=0;J[(c+J[a+204>>2]|0)+12>>2]=0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}J[a+196>>2]=j;if((ua[J[J[a>>2]+104>>2]](a)|0)>0){d=0;while(1){c=d<<2;J[c+J[a+204>>2]>>2]=J[c+J[a+236>>2]>>2];d=d+1|0;if((ua[J[J[a>>2]+104>>2]](a)|0)>(d|0)){continue}break}}d=J[a+196>>2];if((d|0)>=2){xd(a+192|0,w+14|0,0,d-1|0);}d=ua[J[J[a>>2]+104>>2]](a)|0;d=d?J[a+204>>2]:0;c=J[a+196>>2];g=J[a+212>>2];A=g,B=ua[J[J[a>>2]+20>>2]](a)|0,J[A+20>>2]=B;J[g+16>>2]=c;J[g+12>>2]=d;J[g+4>>2]=b;c=J[g+32>>2];c:{if((c|0)>=0){break c}if(J[g+36>>2]<0){d=J[g+40>>2];if(!(d?!d|!K[g+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[g+44|0]=1;J[g+36>>2]=0;J[g+40>>2]=0;}e=0;d=c;j=0-c&3;if(j){while(1){J[J[g+40>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break c}while(1){c=d<<2;J[c+J[g+40>>2]>>2]=0;J[(c+J[g+40>>2]|0)+4>>2]=0;J[(c+J[g+40>>2]|0)+8>>2]=0;J[(c+J[g+40>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}J[g+32>>2]=0;c=J[g+52>>2];d:{if((c|0)>=0){break d}if(J[g+56>>2]<0){d=J[g+60>>2];if(!(d?!d|!K[g- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[g+64|0]=1;J[g+56>>2]=0;J[g+60>>2]=0;}e=0;d=c;j=0-c&3;if(j){while(1){J[J[g+60>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break d}while(1){c=d<<2;J[c+J[g+60>>2]>>2]=0;J[(c+J[g+60>>2]|0)+4>>2]=0;J[(c+J[g+60>>2]|0)+8>>2]=0;J[(c+J[g+60>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}J[g+52>>2]=0;c=J[g+72>>2];e:{if((c|0)>=0){break e}if(J[g+76>>2]<0){d=J[g+80>>2];if(!(d?!d|!K[g+84|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[g+84|0]=1;J[g+76>>2]=0;J[g+80>>2]=0;}e=0;d=c;j=0-c&3;if(j){while(1){J[J[g+80>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break e}while(1){c=d<<2;J[c+J[g+80>>2]>>2]=0;J[(c+J[g+80>>2]|0)+4>>2]=0;J[(c+J[g+80>>2]|0)+8>>2]=0;J[(c+J[g+80>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}J[g+72>>2]=0;d=J[a+216>>2];c=J[a+24>>2];B=d,C=J[a+8>>2],D=ua[J[J[c>>2]+36>>2]](c)|0,A=J[J[d>>2]+8>>2],ua[A](B|0,C|0,D|0);f=J[a+220>>2];m=J[a+24>>2];v=J[a+212>>2];g=0;q=0;x=sa-16|0;sa=x;j=a;d=0;t=sa-16|0;sa=t;ua[J[8262]](2381);a=J[f+28>>2];f:{if((a|0)>=0){break f}if(J[f+32>>2]<0){c=J[f+36>>2];if(!(c?!c|!K[f+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}H[f+40|0]=1;J[f+32>>2]=0;J[f+36>>2]=0;}c=a;e=0-c&3;if(e){while(1){J[J[f+36>>2]+(c<<2)>>2]=0;c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(a>>>0>4294967292){break f}while(1){a=c<<2;J[a+J[f+36>>2]>>2]=0;J[(a+J[f+36>>2]|0)+4>>2]=0;J[(a+J[f+36>>2]|0)+8>>2]=0;J[(a+J[f+36>>2]|0)+12>>2]=0;c=c+4|0;if(c){continue}break}}J[f+28>>2]=0;a=0;l=sa-16|0;sa=l;k=f+4|0;h=J[k+4>>2];g:{if((h|0)<=0){break g}i=J[k+12>>2];while(1){d=a;n=i+(a<<3)|0;e=n;c=J[e>>2];if((c|0)!=(a|0)){while(1){d=i+(c<<3)|0;J[e>>2]=J[d>>2];d=J[d>>2];e=i+(d<<3)|0;c=J[e>>2];if((c|0)!=(d|0)){continue}break}}J[n>>2]=d;a=a+1|0;if((h|0)!=(a|0)){continue}break}if((h|0)<2){break g}Cd(k,l+15|0,0,h-1|0);}sa=l+16|0;k=J[f+8>>2];if((k|0)>0){d=0;while(1){a=d;c=a+1|0;h=(c|0)<(k|0)?k:c;e=h-1|0;n=J[f+16>>2];l=J[n+(a<<3)>>2];while(1){h:{c=d;if((e|0)==(c|0)){c=e;d=h;break h}d=c+1|0;if((l|0)==J[n+(d<<3)>>2]){continue}}break}p=(a|0)>(c|0);i:{if(p){break i}i=1;h=(c-a|0)+1|0;r=h&1;o=J[j+16>>2];e=a;if((a|0)!=(c|0)){s=h&-2;h=0;while(1){u=n+(e<<3)|0;z=J[o+(J[u+4>>2]<<2)>>2];if((l|0)==J[z+208>>2]){y=i;i=J[z+220>>2];i=y&((i|0)!=4&(i|0)!=1);}u=J[o+(J[u+12>>2]<<2)>>2];if((l|0)==J[u+208>>2]){y=i;i=J[u+220>>2];i=y&((i|0)!=4&(i|0)!=1);}e=e+2|0;h=h+2|0;if((s|0)!=(h|0)){continue}break}}j:{if(!r){break j}e=J[o+(J[(n+(e<<3)|0)+4>>2]<<2)>>2];if((l|0)!=J[e+208>>2]){break j}e=J[e+220>>2];i=(e|0)!=4&(e|0)!=1&i;}if(i){if(p){break i}while(1){e=J[J[j+16>>2]+(J[(J[f+16>>2]+(a<<3)|0)+4>>2]<<2)>>2];if((l|0)==J[e+208>>2]&(J[e+220>>2]&-2)!=4){J[e+220>>2]=2;}e=(a|0)==(c|0);a=a+1|0;if(!e){continue}break}break i}while(1){e=a;a=J[J[j+16>>2]+(J[(J[f+16>>2]+(a<<3)|0)+4>>2]<<2)>>2];if(!((l|0)!=J[a+208>>2]|J[a+220>>2]!=2)){if((J[a+220>>2]&-2)!=4){J[a+220>>2]=3;}J[a+224>>2]=0;}a=e+1|0;if((c|0)!=(e|0)){continue}break}}if((d|0)<(k|0)){continue}break}}o=ua[J[J[m>>2]+36>>2]](m)|0;if((o|0)>0){d=0;while(1){n=ua[J[J[m>>2]+40>>2]](m,d)|0;a=J[n+840>>2];c=J[n+836>>2];k:{if(!(J[c+220>>2]!=2?c:0)&(!a|J[a+220>>2]==2)){break k}e=J[c+204>>2];if(!(!(e&2)|e&4|J[c+220>>2]==2)){Xc(a,0);}e=J[a+204>>2];if(!(!(e&2)|e&4|J[a+220>>2]==2)){Xc(c,0);}if(!K[f+64|0]){break k}if(!(ua[J[J[m>>2]+28>>2]](m,c,a)|0)){break k}e=J[f+28>>2];l:{if((e|0)!=J[f+32>>2]){break l}k=e?e<<1:1;if((k|0)<=(e|0)){break l}m:{if(!k){a=0;break m}J[8456]=J[8456]+1;a=ua[J[8258]](k<<2,16)|0;e=J[f+28>>2];}n:{if((e|0)<=0){break n}i=0;c=0;if(e>>>0>=4){p=e&-4;h=0;while(1){l=c<<2;J[l+a>>2]=J[l+J[f+36>>2]>>2];r=l|4;J[r+a>>2]=J[r+J[f+36>>2]>>2];r=l|8;J[r+a>>2]=J[r+J[f+36>>2]>>2];l=l|12;J[l+a>>2]=J[l+J[f+36>>2]>>2];c=c+4|0;h=h+4|0;if((p|0)!=(h|0)){continue}break}}h=e&3;if(!h){break n}while(1){l=c<<2;J[l+a>>2]=J[l+J[f+36>>2]>>2];c=c+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}c=J[f+36>>2];if(!(!c|!K[f+40|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}e=J[f+28>>2];}J[f+36>>2]=a;H[f+40|0]=1;J[f+32>>2]=k;}J[J[f+36>>2]+(e<<2)>>2]=n;J[f+28>>2]=e+1;}d=d+1|0;if((o|0)!=(d|0)){continue}break}}ua[J[8263]]();sa=t+16|0;n=J[f+8>>2];ua[J[8262]](4539);o:{if(!K[f+64|0]){a=ua[J[J[m>>2]+44>>2]](m)|0;d=ua[J[J[m>>2]+36>>2]](m)|0;ua[J[J[v>>2]+8>>2]](v,J[j+16>>2],J[j+8>>2],a,d,-1);break o}m=J[f+28>>2];if((m|0)>=2){Ad(f+24|0,x+14|0,0,m-1|0);}if((n|0)<=0){break o}a=1;while(1){l=J[J[f+16>>2]+(q<<3)>>2];i=1;while(1){d=J[f+16>>2]+(q<<3)|0;if((l|0)==J[d>>2]){t=J[J[j+16>>2]+(J[d+4>>2]<<2)>>2];c=J[f+48>>2];p:{if((c|0)!=J[f+52>>2]){break p}o=c?c<<1:1;if((o|0)<=(c|0)){break p}q:{if(!o){e=0;break q}J[8456]=J[8456]+1;e=ua[J[8258]](o<<2,16)|0;c=J[f+48>>2];}r:{if((c|0)<=0){break r}h=0;d=0;if(c>>>0>=4){r=c&-4;p=0;while(1){k=d<<2;J[k+e>>2]=J[k+J[f+56>>2]>>2];s=k|4;J[s+e>>2]=J[s+J[f+56>>2]>>2];s=k|8;J[s+e>>2]=J[s+J[f+56>>2]>>2];k=k|12;J[k+e>>2]=J[k+J[f+56>>2]>>2];d=d+4|0;p=p+4|0;if((r|0)!=(p|0)){continue}break}}k=c&3;if(!k){break r}while(1){p=d<<2;J[p+e>>2]=J[p+J[f+56>>2]>>2];d=d+1|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}d=J[f+56>>2];if(!(!d|!K[f+60|0])){if(d){J[8457]=J[8457]+1;ua[J[8259]](d);}c=J[f+48>>2];}J[f+56>>2]=e;H[f+60|0]=1;J[f+52>>2]=o;}J[J[f+56>>2]+(c<<2)>>2]=t;J[f+48>>2]=c+1;d=J[t+220>>2];i=((d|0)==2|(d|0)==5)&i;q=q+1|0;if((n|0)>(q|0)){continue}}break}h=0;d=0;s:{if((g|0)>=(m|0)){break s}k=J[f+36>>2];e=k+(g<<2)|0;d=J[e>>2];c=J[J[d+836>>2]+208>>2];if((c|0)<0){c=J[J[d+840>>2]+208>>2];}d=0;if((c|0)!=(l|0)){break s}a=g+1|0;c=(a|0)<(m|0)?m:a;h=c-1|0;a=g;while(1){t:{if((a|0)==(h|0)){a=c;break t}a=a+1|0;o=J[k+(a<<2)>>2];d=J[J[o+836>>2]+208>>2];if((d|0)<0){d=J[J[o+840>>2]+208>>2];}if((d|0)==(l|0)){continue}}break}h=a-g|0;d=e;}if(!i){ua[J[J[v>>2]+8>>2]](v,J[f+56>>2],J[f+48>>2],d,h,l);}c=J[f+48>>2];u:{if((c|0)>=0){break u}if(J[f+52>>2]<0){d=J[f+56>>2];if(!(d?!d|!K[f+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[f+60|0]=1;J[f+52>>2]=0;J[f+56>>2]=0;}e=0;d=c;i=0-c&3;if(i){while(1){J[J[f+56>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break u}while(1){c=d<<2;J[c+J[f+56>>2]>>2]=0;J[(c+J[f+56>>2]|0)+4>>2]=0;J[(c+J[f+56>>2]|0)+8>>2]=0;J[(c+J[f+56>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}g=h?a:g;J[f+48>>2]=0;if((n|0)>(q|0)){continue}break}}ua[J[8263]]();sa=x+16|0;wd(J[j+212>>2]);a=J[j+216>>2];ua[J[J[a>>2]+16>>2]](a,b,J[j+72>>2]);ua[J[8263]]();sa=w+16|0;}function Uc(a,b,c,d){var e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=0,q=Q(0),r=0,s=Q(0),t=0,u=Q(0),v=0,w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),I=0,L=0,M=Q(0),O=Q(0),R=Q(0),S=0,T=Q(0),U=Q(0),V=Q(0),W=0,X=0,Z=Q(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0;e=sa-704|0;sa=e;t=Sa(e+620|0);f=t;J[f+20>>2]=1065353216;J[f+24>>2]=1065353216;J[f+4>>2]=8;J[f>>2]=21396;J[f+32>>2]=0;J[f+36>>2]=0;J[f+28>>2]=1065353216;J[f+40>>2]=0;J[f+44>>2]=0;J[f+48>>2]=0;J[f+52>>2]=0;J[f+56>>2]=0;f=J[c+12>>2];r=J[c+4>>2];v=J[r+4>>2];a:{if((v|0)<=19){J[e+612>>2]=0;J[e+616>>2]=0;J[e+444>>2]=13156;N[e+608>>2]=N[d+4>>2];H[e+416|0]=0;J[e+392>>2]=953267991;v=e+680|0;J[v+12>>2]=r;J[v+8>>2]=t;p=e+84|0;J[v+4>>2]=p;J[v>>2]=23248;m=e+68|0;J[m+12>>2]=r;J[m+8>>2]=t;J[m+4>>2]=p;J[m>>2]=22600;r=J[d+16>>2]&8?m:v;b:{if(!(ua[J[J[r>>2]+8>>2]](r,a,b,f,f,e+444|0)|0)){break b}g=N[e+584>>2];h=N[e+576>>2];i=N[e+580>>2];j=Q(Q(g*g)+Q(Q(h*h)+Q(i*i)));if(!(j>Q(9999999747378752e-20))){break b}k=N[e+608>>2];if(!(k<N[d+4>>2])){break b}n=g;g=Q(Q(1)/Q(Y(j)));N[e+584>>2]=n*g;N[e+580>>2]=i*g;N[e+576>>2]=h*g;a=J[c+8>>2];J[e+44>>2]=0;J[e+40>>2]=a;a=J[e+588>>2];J[e+56>>2]=J[e+584>>2];J[e+60>>2]=a;a=J[e+580>>2];J[e+48>>2]=J[e+576>>2];J[e+52>>2]=a;N[e+64>>2]=k;Q(ua[J[J[d>>2]+12>>2]](d,e+40|0,1));}break a}if(v-21>>>0<=8){q=N[f+20>>2];i=N[f+36>>2];u=N[f+24>>2];s=N[f+52>>2];j=N[f+56>>2];k=N[f+40>>2];l=N[f+32>>2];w=N[f+16>>2];n=N[f>>2];x=N[f+4>>2];o=N[f+48>>2];A=N[f+8>>2];h=N[a+52>>2];y=N[a+56>>2];g=N[a+48>>2];J[e+456>>2]=0;s=Q(-s);D=Q(u*s);z=Q(Q(D-Q(A*o))-Q(k*j));E=Q(y*k);F=Q(u*h);N[e+452>>2]=z+Q(E+Q(Q(g*A)+F));G=Q(q*s);B=Q(Q(G-Q(x*o))-Q(i*j));M=Q(y*i);O=Q(q*h);N[e+448>>2]=B+Q(M+Q(Q(g*x)+O));R=Q(w*s);T=Q(Q(R-Q(n*o))-Q(l*j));U=Q(y*l);V=Q(w*h);N[e+444>>2]=T+Q(U+Q(Q(g*n)+V));y=N[b+52>>2];s=N[b+56>>2];h=N[b+48>>2];J[e+52>>2]=0;C=z;z=Q(s*k);Z=Q(h*A);A=Q(u*y);N[e+48>>2]=C+Q(z+Q(Z+A));C=B;B=Q(s*i);u=Q(h*x);x=Q(q*y);N[e+44>>2]=C+Q(B+Q(u+x));s=Q(s*l);C=Q(h*n);n=Q(w*y);N[e+40>>2]=T+Q(s+Q(C+n));if((v|0)==21){b=J[c+8>>2];v=e+444|0;m=e+40|0;a=Vd(e+84|0,v,m,J[d+16>>2]);J[a+52>>2]=r;J[a+48>>2]=b;J[a+44>>2]=d;J[a>>2]=13224;c=J[f+12>>2];b=a- -64|0;J[b>>2]=J[f+8>>2];J[b+4>>2]=c;b=J[f+4>>2];J[a+56>>2]=J[f>>2];J[a+60>>2]=b;b=J[f+28>>2];J[a+80>>2]=J[f+24>>2];J[a+84>>2]=b;b=J[f+20>>2];J[a+72>>2]=J[f+16>>2];J[a+76>>2]=b;b=J[f+44>>2];J[a+96>>2]=J[f+40>>2];J[a+100>>2]=b;b=J[f+36>>2];J[a+88>>2]=J[f+32>>2];J[a+92>>2]=b;b=J[f+60>>2];J[a+112>>2]=J[f+56>>2];J[a+116>>2]=b;b=J[f+52>>2];J[a+104>>2]=J[f+48>>2];J[a+108>>2]=b;N[a+40>>2]=N[d+4>>2];b=sa-16|0;sa=b;c=J[r+56>>2];J[b+12>>2]=a;J[b+8>>2]=c;J[b+4>>2]=18656;c=J[r+60>>2];d=b+4|0;a=sa-32|0;sa=a;J[a+24>>2]=0;J[a+28>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;c:{if(K[c+60|0]){ye(c,d,v,m,a+16|0,a,J[c+56>>2]);break c}ze(c,d,v,m,a+16|0,a);}sa=a+32|0;sa=b+16|0;break a}q=N[f>>2];u=N[f+4>>2];j=Q(-j);C=Q(k*j);k=N[f+8>>2];o=Q(-o);w=Q(C+Q(Q(k*o)+D));N[e+688>>2]=Q(E+Q(Q(g*k)+F))+w;J[e+692>>2]=0;i=Q(Q(i*j)+Q(Q(u*o)+G));N[e+684>>2]=Q(M+Q(Q(g*u)+O))+i;C=Q(U+Q(Q(g*q)+V));g=Q(Q(l*j)+Q(Q(q*o)+R));N[e+680>>2]=C+g;J[e+80>>2]=0;N[e+76>>2]=Q(z+Q(Q(h*k)+A))+w;N[e+72>>2]=Q(B+Q(Q(h*u)+x))+i;N[e+68>>2]=Q(s+Q(Q(h*q)+n))+g;b=J[c+8>>2];a=Vd(e+84|0,e+680|0,e+68|0,J[d+16>>2]);J[a+52>>2]=r;J[a+48>>2]=b;J[a+44>>2]=d;J[a>>2]=13224;c=J[f+12>>2];b=a- -64|0;J[b>>2]=J[f+8>>2];J[b+4>>2]=c;b=J[f+4>>2];J[a+56>>2]=J[f>>2];J[a+60>>2]=b;b=J[f+28>>2];J[a+80>>2]=J[f+24>>2];J[a+84>>2]=b;b=J[f+20>>2];J[a+72>>2]=J[f+16>>2];J[a+76>>2]=b;b=J[f+44>>2];J[a+96>>2]=J[f+40>>2];J[a+100>>2]=b;b=J[f+36>>2];J[a+88>>2]=J[f+32>>2];J[a+92>>2]=b;b=J[f+60>>2];J[a+112>>2]=J[f+56>>2];J[a+116>>2]=b;b=J[f+52>>2];J[a+104>>2]=J[f+48>>2];J[a+108>>2]=b;N[a+40>>2]=N[d+4>>2];b=J[e+692>>2];J[e+32>>2]=J[e+688>>2];J[e+36>>2]=b;b=J[e+684>>2];J[e+24>>2]=J[e+680>>2];J[e+28>>2]=b;g=N[e+68>>2];if(g<N[e+24>>2]){N[e+24>>2]=g;}h=N[e+72>>2];if(h<N[e+28>>2]){N[e+28>>2]=h;}i=N[e+76>>2];if(i<N[e+32>>2]){N[e+32>>2]=i;}j=N[e+80>>2];if(j<N[e+36>>2]){N[e+36>>2]=j;}b=J[e+692>>2];J[e+16>>2]=J[e+688>>2];J[e+20>>2]=b;b=J[e+684>>2];J[e+8>>2]=J[e+680>>2];J[e+12>>2]=b;if(g>N[e+8>>2]){N[e+8>>2]=g;}if(h>N[e+12>>2]){N[e+12>>2]=h;}if(i>N[e+16>>2]){N[e+16>>2]=i;}if(j>N[e+20>>2]){N[e+20>>2]=j;}ua[J[J[r>>2]+64>>2]](r,a,e+24|0,e+8|0);break a}if((v|0)!=31){break a}t=J[r+72>>2];c=J[c+8>>2];J[e+64>>2]=d;J[e+60>>2]=b;J[e+56>>2]=a;J[e+52>>2]=f;J[e+48>>2]=r;J[e+44>>2]=c;J[e+40>>2]=13408;if(t){g=N[f+20>>2];h=N[f+36>>2];i=N[f+24>>2];j=N[f+52>>2];x=N[a+52>>2];k=N[f+40>>2];l=N[f+56>>2];w=N[a+56>>2];A=N[f>>2];o=N[f+16>>2];q=N[f+32>>2];y=N[f+4>>2];n=N[f+8>>2];u=N[f+48>>2];s=N[a+48>>2];J[e+96>>2]=0;w=Q(w-l);z=n;n=Q(s-u);x=Q(x-j);N[e+92>>2]=Q(k*w)+Q(Q(z*n)+Q(i*x));N[e+88>>2]=Q(h*w)+Q(Q(y*n)+Q(x*g));N[e+84>>2]=Q(q*w)+Q(Q(A*n)+Q(x*o));w=N[b+52>>2];n=N[b+56>>2];x=N[f>>2];A=N[f+4>>2];y=N[f+8>>2];s=N[b+48>>2];J[e+456>>2]=0;z=k;k=Q(n-l);l=Q(s-u);n=i;i=Q(w-j);N[e+452>>2]=Q(z*k)+Q(Q(y*l)+Q(n*i));N[e+448>>2]=Q(h*k)+Q(Q(A*l)+Q(g*i));N[e+444>>2]=Q(q*k)+Q(Q(x*l)+Q(o*i));W=e+40|0;v=0;m=sa-544|0;sa=m;a=J[t>>2];d:{if(!a){break d}g=N[e+92>>2];h=N[e+452>>2];i=N[e+84>>2];j=N[e+444>>2];k=N[e+88>>2];l=N[e+448>>2];J[m+32>>2]=a;g=Q(h-g);h=Q(j-i);i=Q(l-k);j=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(h*h)+Q(i*i))))));k=Q(g*j);n=Q(k*g);g=Q(h*j);z=Q(g*h);h=Q(i*j);u=Q(n+Q(z+Q(i*h)));i=k==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/k);a=i<Q(0);_=m+(a<<4)|8;h=h==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/h);b=h<Q(0);$=m+(b<<4)|4;aa=m+(!a<<4)|8;ba=m+(!b<<4)|4;g=g==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/g);a=g<Q(0);ca=m+(a<<4)|0;da=m+(!a<<4)|0;c=126;f=128;b=m+32|0;d=128;r=1;while(1){a=r-1|0;X=a<<2;t=J[X+b>>2];p=J[t+4>>2];J[m>>2]=J[t>>2];J[m+4>>2]=p;p=J[t+12>>2];J[m+8>>2]=J[t+8>>2];J[m+12>>2]=p;p=J[t+28>>2];J[m+24>>2]=J[t+24>>2];J[m+28>>2]=p;p=J[t+20>>2];J[m+16>>2]=J[t+16>>2];J[m+20>>2]=p;o=N[e+84>>2];j=Q(g*Q(N[ca>>2]-o));l=N[e+88>>2];k=Q(h*Q(N[ba>>2]-l));e:{if(j>k){break e}l=Q(h*Q(N[$>>2]-l));o=Q(g*Q(N[da>>2]-o));if(l>o){break e}j=j<l?l:j;q=N[e+92>>2];l=Q(i*Q(N[aa>>2]-q));if(j>l){break e}q=Q(i*Q(N[_>>2]-q));k=k<o?k:o;if(q>k|!(u>(j<q?q:j))|!((k>l?l:k)>Q(0))){break e}if(J[t+40>>2]){if((a|0)>(c|0)){a=d<<1;if((a|0)>(d|0)){if((a|0)>(f|0)){f:{if(!d){c=0;break f}J[8456]=J[8456]+1;c=ua[J[8258]](d<<3,16)|0;if((d|0)<=0){break f}S=0;f=0;if(d>>>0>=4){ea=d&-4;I=0;while(1){p=f<<2;J[p+c>>2]=J[b+p>>2];L=p|4;J[L+c>>2]=J[b+L>>2];L=p|8;J[L+c>>2]=J[b+L>>2];p=p|12;J[p+c>>2]=J[b+p>>2];f=f+4|0;I=I+4|0;if((ea|0)!=(I|0)){continue}break}}p=d&3;if(!p){break f}while(1){I=f<<2;J[I+c>>2]=J[b+I>>2];f=f+1|0;S=S+1|0;if((p|0)!=(S|0)){continue}break}}f=v;v=1;if(b?f:0){J[8457]=J[8457]+1;ua[J[8259]](b);}f=a;b=c;}c=d<<2;Fa(c+b|0,0,c);}d=a;c=a-2|0;}J[b+X>>2]=J[t+36>>2];J[(r<<2)+b>>2]=J[t+40>>2];a=r+1|0;break e}ua[J[J[W>>2]+12>>2]](W,t);}r=a;if(a){continue}break}if(!v){break d}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}sa=m+544|0;break a}d=J[r+24>>2];if((d|0)<=0){break a}c=0;while(1){a=J[J[e+48>>2]+32>>2]+P(c,80)|0;b=J[a+64>>2];w=N[a+56>>2];n=N[a+48>>2];x=N[a+52>>2];A=N[a+32>>2];y=N[a>>2];s=N[a+16>>2];D=N[a+36>>2];z=N[a+4>>2];E=N[a+20>>2];F=N[a+40>>2];G=N[a+8>>2];B=N[a+24>>2];a=J[e+52>>2];M=N[a+52>>2];O=N[a+56>>2];g=N[a+24>>2];h=N[a+20>>2];i=N[a+40>>2];j=N[a+36>>2];R=N[a+48>>2];k=N[a+8>>2];l=N[a>>2];o=N[a+4>>2];q=N[a+16>>2];u=N[a+32>>2];J[e+144>>2]=0;J[e+128>>2]=0;J[e+112>>2]=0;J[e+96>>2]=0;N[e+124>>2]=Q(F*i)+Q(Q(G*u)+Q(B*j));N[e+120>>2]=Q(D*i)+Q(Q(z*u)+Q(E*j));N[e+116>>2]=Q(A*i)+Q(Q(y*u)+Q(s*j));N[e+108>>2]=Q(F*g)+Q(Q(G*q)+Q(B*h));N[e+104>>2]=Q(D*g)+Q(Q(z*q)+Q(E*h));N[e+100>>2]=Q(A*g)+Q(Q(y*q)+Q(s*h));N[e+92>>2]=Q(F*k)+Q(Q(G*l)+Q(o*B));N[e+88>>2]=Q(D*k)+Q(Q(z*l)+Q(o*E));N[e+84>>2]=Q(A*k)+Q(Q(y*l)+Q(s*o));N[e+140>>2]=O+Q(Q(w*i)+Q(Q(n*u)+Q(j*x)));N[e+136>>2]=M+Q(Q(w*g)+Q(Q(n*q)+Q(h*x)));N[e+132>>2]=R+Q(Q(w*k)+Q(Q(n*l)+Q(o*x)));J[e+700>>2]=c;J[e+696>>2]=-1;J[e+688>>2]=J[e+44>>2];J[e+684>>2]=b;J[e+680>>2]=0;J[e+692>>2]=e+84;J[e+460>>2]=0;J[e+448>>2]=1065353216;J[e+452>>2]=0;J[e+472>>2]=c;J[e+464>>2]=b;J[e+444>>2]=13584;a=J[e+64>>2];J[e+468>>2]=a;N[e+448>>2]=N[a+4>>2];J[e+460>>2]=J[a+16>>2];Uc(J[e+56>>2],J[e+60>>2],e+680|0,e+444|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}}sa=e+704|0;}function Wd(a,b,c){var d=Q(0),e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0,l=0,m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=0,v=0,w=0,x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),K=Q(0),L=Q(0),M=0,O=Q(0),R=Q(0),S=Q(0),T=Q(0),U=0,V=0,W=0,X=0,Z=Q(0),_=Q(0),$=0,aa=0;e=sa-96|0;sa=e;J[a+376>>2]=0;J[a+364>>2]=4;J[a+368>>2]=0;k=a+316|0;J[a+360>>2]=k;J[a+356>>2]=a+284;J[a+352>>2]=a+252;J[a+348>>2]=a+220;f=J[b+4>>2];J[a>>2]=J[b>>2];J[a+4>>2]=f;f=J[b+20>>2];J[a+16>>2]=J[b+16>>2];J[a+20>>2]=f;f=J[b+12>>2];J[a+8>>2]=J[b+8>>2];J[a+12>>2]=f;f=J[b+36>>2];J[a+32>>2]=J[b+32>>2];J[a+36>>2]=f;f=J[b+28>>2];J[a+24>>2]=J[b+24>>2];J[a+28>>2]=f;f=J[b+52>>2];J[a+48>>2]=J[b+48>>2];J[a+52>>2]=f;f=J[b+44>>2];J[a+40>>2]=J[b+40>>2];J[a+44>>2]=f;l=b- -64|0;f=J[l+4>>2];w=a- -64|0;J[w>>2]=J[l>>2];J[w+4>>2]=f;f=J[b+60>>2];J[a+56>>2]=J[b+56>>2];J[a+60>>2]=f;f=J[b+84>>2];J[a+80>>2]=J[b+80>>2];J[a+84>>2]=f;f=J[b+76>>2];J[a+72>>2]=J[b+72>>2];J[a+76>>2]=f;f=J[b+100>>2];J[a+96>>2]=J[b+96>>2];J[a+100>>2]=f;f=J[b+92>>2];J[a+88>>2]=J[b+88>>2];J[a+92>>2]=f;f=J[b+108>>2];J[a+104>>2]=J[b+104>>2];J[a+108>>2]=f;f=J[b+116>>2];J[a+112>>2]=J[b+112>>2];J[a+116>>2]=f;f=J[b+124>>2];b=J[b+120>>2];J[a+144>>2]=0;J[a+180>>2]=0;J[a+120>>2]=b;J[a+124>>2]=f;b=J[c+4>>2];J[a+128>>2]=J[c>>2];J[a+132>>2]=b;b=J[c+12>>2];J[a+136>>2]=J[c+8>>2];J[a+140>>2]=b;J[a+364>>2]=3;J[a+164>>2]=0;J[a+328>>2]=0;J[a+180>>2]=1;J[a+148>>2]=k;h=N[a+136>>2];i=N[a+128>>2];d=N[a+132>>2];g=Q(Q(h*h)+Q(Q(i*i)+Q(d*d)));b=g>Q(0);h=b?Q(-h):Q(0);i=b?Q(-i):Q(1);d=b?Q(-d):Q(0);j=Q(Q(1)/Q(Y(Q(Q(h*h)+Q(Q(i*i)+Q(d*d))))));N[a+324>>2]=h*j;N[a+320>>2]=d*j;N[k>>2]=i*j;Ra(e+16|0,a,k);b=J[e+28>>2];J[a+340>>2]=J[e+24>>2];J[a+344>>2]=b;b=J[e+20>>2];J[a+332>>2]=J[e+16>>2];J[a+336>>2]=b;J[a+164>>2]=1065353216;c=J[a+148>>2];b=J[c+20>>2];J[a+128>>2]=J[c+16>>2];J[a+132>>2]=b;b=J[c+28>>2];J[a+136>>2]=J[c+24>>2];J[a+140>>2]=b;b=J[c+28>>2];J[e+72>>2]=J[c+24>>2];J[e+76>>2]=b;b=J[c+20>>2];J[e+64>>2]=J[c+16>>2];J[e+68>>2]=b;b=J[c+28>>2];J[e+56>>2]=J[c+24>>2];J[e+60>>2]=b;b=J[c+20>>2];J[e+48>>2]=J[c+16>>2];J[e+52>>2]=b;b=J[c+28>>2];J[e+40>>2]=J[c+24>>2];J[e+44>>2]=b;b=J[c+20>>2];J[e+32>>2]=J[c+16>>2];J[e+36>>2]=b;b=J[c+28>>2];J[e+24>>2]=J[c+24>>2];J[e+28>>2]=b;b=J[c+20>>2];J[e+16>>2]=J[c+16>>2];J[e+20>>2]=b;d=N[a+136>>2];n=N[a+132>>2];j=N[a+128>>2];u=J[a+368>>2];W=a+148|0;while(1){a:{b:{o=Q(Y(Q(Q(d*d)+Q(Q(j*j)+Q(n*n)))));c:{if(o<Q(9999999747378752e-20)){J[a+376>>2]=1;break c}f=P(u,36);w=f+a|0;c=J[w+180>>2];l=c<<2;J[(l+w|0)+164>>2]=0;b=J[a+364>>2]-1|0;J[a+364>>2]=b;v=f+W|0;f=J[((b<<2)+a|0)+348>>2];J[l+v>>2]=f;J[w+180>>2]=c+1;J[f+12>>2]=0;i=Q(Q(1)/o);N[f+8>>2]=i*Q(-d);N[f+4>>2]=i*Q(-n);N[f>>2]=i*Q(-j);Ra(e+80|0,a,f);b=J[e+92>>2];J[f+24>>2]=J[e+88>>2];J[f+28>>2]=b;b=J[e+84>>2];J[f+16>>2]=J[e+80>>2];J[f+20>>2]=b;d:{f=J[w+180>>2];l=J[((f<<2)+v|0)-4>>2];j=N[l+24>>2];d=Q(j-N[e+24>>2]);s=Q(d*d);h=N[l+16>>2];d=Q(h-N[e+16>>2]);p=Q(d*d);i=N[l+20>>2];d=Q(i-N[e+20>>2]);if(Q(s+Q(p+Q(d*d)))<Q(9999999747378752e-20)){break d}d=Q(j-N[e+40>>2]);s=Q(d*d);d=Q(h-N[e+32>>2]);p=Q(d*d);d=Q(i-N[e+36>>2]);if(Q(s+Q(p+Q(d*d)))<Q(9999999747378752e-20)){break d}d=Q(j-N[e+56>>2]);s=Q(d*d);d=Q(h-N[e+48>>2]);p=Q(d*d);d=Q(i-N[e+52>>2]);if(Q(s+Q(p+Q(d*d)))<Q(9999999747378752e-20)){break d}d=Q(j-N[e+72>>2]);s=Q(d*d);d=Q(h-N[e+64>>2]);p=Q(d*d);d=Q(i-N[e+68>>2]);if(Q(s+Q(p+Q(d*d)))<Q(9999999747378752e-20)){break d}b=J[l+28>>2];X=X+1&3;c=(e+16|0)+(X<<4)|0;J[c+8>>2]=J[l+24>>2];J[c+12>>2]=b;b=J[l+20>>2];J[c>>2]=J[l+16>>2];J[c+4>>2]=b;d=Q(Q(Q(N[a+136>>2]*j)+Q(Q(N[a+128>>2]*h)+Q(N[a+132>>2]*i)))/o);O=d>O?d:O;if(Q(Q(o*Q(-9999999747378752e-20))+Q(o-O))<=Q(0)){u=J[a+368>>2];c=P(u,36)+a|0;b=J[c+180>>2]-1|0;J[c+180>>2]=b;c=J[(c+(b<<2)|0)+148>>2];b=J[a+364>>2];J[a+364>>2]=b+1;J[((b<<2)+a|0)+348>>2]=c;break c}J[e+12>>2]=0;e:{f:{g:{switch(f-2|0){case 0:c=J[v+4>>2];h=N[c+24>>2];b=J[v>>2];x=N[b+24>>2];n=Q(h-x);i=N[c+16>>2];q=N[b+16>>2];o=Q(i-q);g=N[c+20>>2];r=N[b+20>>2];j=Q(g-r);d=Q(Q(n*n)+Q(Q(o*o)+Q(j*j)));if(!(d>Q(0))){break e}t=Q(Q(-Q(Q(x*n)+Q(Q(q*o)+Q(r*j))))/d);if(t>=Q(1)){J[e+12>>2]=2;J[e+80>>2]=0;J[e+84>>2]=1065353216;g=Q(Q(h*h)+Q(Q(i*i)+Q(g*g)));break f}if(t<=Q(0)){J[e+12>>2]=1;J[e+80>>2]=1065353216;J[e+84>>2]=0;g=Q(Q(x*x)+Q(Q(q*q)+Q(r*r)));break f}J[e+12>>2]=3;N[e+84>>2]=t;N[e+80>>2]=Q(1)-t;d=Q(x+Q(n*t));p=Q(d*d);d=Q(q+Q(o*t));g=Q(d*d);d=Q(r+Q(j*t));g=Q(p+Q(g+Q(d*d)));break f;case 1:g=Nb(J[v>>2]+16|0,J[v+4>>2]+16|0,J[v+8>>2]+16|0,e+80|0,e+12|0);break f;case 2:break g;default:break f}}m=sa-32|0;sa=m;d=Q(-1);l=J[v+4>>2]+16|0;s=N[l+4>>2];k=J[v+12>>2]+16|0;C=N[k+4>>2];D=Q(s-C);f=J[v>>2]+16|0;p=N[f+8>>2];E=N[k+8>>2];F=Q(p-E);Z=Q(D*Q(-F));c=J[v+8>>2]+16|0;i=N[c>>2];G=N[k>>2];z=Q(i-G);R=N[f>>2];H=Q(R-G);_=Q(H*D);t=N[c+8>>2];A=Q(t-E);h=N[l>>2];I=Q(h-G);S=N[f+4>>2];K=Q(S-C);x=Q(I*Q(-K));T=N[l+8>>2];L=Q(T-E);q=Q(L*Q(-H));g=N[c+4>>2];B=Q(g-C);r=Q(K*L);n=Q(F*I);y=Q(Q(Z*z)+Q(Q(_*A)+Q(Q(x*A)+Q(Q(q*B)+Q(Q(r*z)+Q(n*B))))));h:{if(!(y>Q(0)|y<Q(0))){break h}o=Q(h-i);j=Q(S-s);h=Q(R-h);g=Q(s-g);s=Q(p*Q(Q(o*j)-Q(h*g)));i=Q(p-T);p=Q(g*i);g=Q(T-t);if(!(Q(Q(s+Q(Q(R*Q(p-Q(j*g)))+Q(S*Q(Q(g*h)-Q(i*o)))))*y)<=Q(0))){break h}J[m+24>>2]=0;J[m+16>>2]=0;J[m+20>>2]=0;J[m+12>>2]=0;if(Q(y*Q(Q(E*Q(_+x))+Q(Q(G*Q(r+Z))+Q(C*Q(n+q)))))>Q(0)){d=Nb(f,l,k,m+16|0,m+12|0);b=J[m+12>>2];J[e+12>>2]=b&3|b<<1&8;N[e+80>>2]=N[m+16>>2];g=N[m+20>>2];J[e+88>>2]=0;N[e+84>>2]=g;N[e+92>>2]=N[m+24>>2];}i:{if(!(Q(y*Q(Q(N[k+8>>2]*Q(Q(I*B)-Q(z*D)))+Q(Q(N[k>>2]*Q(Q(D*A)-Q(B*L)))+Q(N[k+4>>2]*Q(Q(L*z)-Q(A*I))))))>Q(0))){break i}g=Nb(l,c,k,m+16|0,m+12|0);if(!(d<Q(0)|g<d)){break i}J[e+12>>2]=J[m+12>>2]<<1&14;N[e+84>>2]=N[m+16>>2];d=N[m+20>>2];J[e+80>>2]=0;N[e+88>>2]=d;N[e+92>>2]=N[m+24>>2];d=g;}j:{if(!(Q(y*Q(Q(N[k+8>>2]*Q(Q(z*K)-Q(H*B)))+Q(Q(N[k>>2]*Q(Q(B*F)-Q(K*A)))+Q(N[k+4>>2]*Q(Q(A*H)-Q(F*z))))))>Q(0))){break j}g=Nb(c,f,k,m+16|0,m+12|0);if(!(d<Q(0)|g<d)){break j}b=J[m+12>>2];J[e+12>>2]=b>>>1&1|b<<1&8|b<<2&4;N[e+88>>2]=N[m+16>>2];d=N[m+20>>2];J[e+84>>2]=0;N[e+80>>2]=d;N[e+92>>2]=N[m+24>>2];d=g;}if(!(d<Q(0))){break h}J[e+12>>2]=15;q=N[c>>2];r=N[l+4>>2];n=N[k+8>>2];o=N[c+4>>2];j=N[l+8>>2];h=N[k>>2];i=N[c+8>>2];g=N[l>>2];d=N[k+4>>2];t=Q(Q(Q(Q(Q(q*r)*n)+Q(Q(Q(Q(Q(o*j)*h)+Q(Q(i*g)*d))-Q(Q(j*q)*d))-Q(Q(g*o)*n)))-Q(Q(r*i)*h))/y);N[e+80>>2]=t;q=N[f>>2];r=N[c+4>>2];n=N[k+8>>2];o=N[f+4>>2];j=N[c+8>>2];h=N[k>>2];i=N[f+8>>2];g=N[c>>2];d=N[k+4>>2];x=Q(Q(Q(Q(Q(q*r)*n)+Q(Q(Q(Q(Q(o*j)*h)+Q(Q(i*g)*d))-Q(Q(j*q)*d))-Q(Q(g*o)*n)))-Q(Q(r*i)*h))/y);N[e+84>>2]=x;q=N[l>>2];r=N[f+4>>2];n=N[k+8>>2];o=N[l+4>>2];j=N[f+8>>2];h=N[k>>2];i=N[l+8>>2];g=N[f>>2];d=N[k+4>>2];d=Q(Q(Q(Q(Q(q*r)*n)+Q(Q(Q(Q(Q(o*j)*h)+Q(Q(i*g)*d))-Q(Q(j*q)*d))-Q(Q(g*o)*n)))-Q(Q(r*i)*h))/y);N[e+88>>2]=d;N[e+92>>2]=Q(1)-Q(Q(t+x)+d);d=Q(0);}sa=m+32|0;g=d;}if(!(g>=Q(0))){break e}u=1-u|0;b=P(u,36);U=b+a|0;J[U+180>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+368>>2]=u;m=J[w+180>>2];if(!m){d=Q(0);V=J[e+12>>2];n=Q(0);j=Q(0);break b}k=b+W|0;c=J[a+364>>2];d=Q(0);M=0;V=J[e+12>>2];n=Q(0);j=Q(0);b=0;while(1){w=b<<2;l=w+v|0;$=J[l>>2];k:{if(V>>>b&1){f=M<<2;J[f+k>>2]=$;h=N[w+(e+80|0)>>2];M=M+1|0;J[U+180>>2]=M;N[(f+U|0)+164>>2]=h;f=J[l>>2];i=N[f+24>>2];d=N[f+20>>2];j=Q(Q(h*N[f+16>>2])+N[a+128>>2]);N[a+128>>2]=j;n=Q(Q(h*d)+N[a+132>>2]);N[a+132>>2]=n;d=Q(Q(h*i)+N[a+136>>2]);N[a+136>>2]=d;break k}f=c+1|0;J[a+364>>2]=f;J[((c<<2)+a|0)+348>>2]=$;c=f;}b=b+1|0;if((m|0)!=(b|0)){continue}break}break b}u=J[a+368>>2];c=P(u,36)+a|0;b=J[c+180>>2]-1|0;J[c+180>>2]=b;c=J[(c+(b<<2)|0)+148>>2];b=J[a+364>>2];J[a+364>>2]=b+1;J[((b<<2)+a|0)+348>>2]=c;break c}u=J[a+368>>2];c=P(u,36)+a|0;b=J[c+180>>2]-1|0;J[c+180>>2]=b;c=J[(c+(b<<2)|0)+148>>2];b=J[a+364>>2];J[a+364>>2]=b+1;J[((b<<2)+a|0)+348>>2]=c;}b=J[a+376>>2];break a}aa=aa+1|0;b=aa>>>0>=128?2:(V|0)==15?1:J[a+376>>2];J[a+376>>2]=b;if(!b){continue}}break}J[a+372>>2]=(P(u,36)+a|0)+148;d=Q(0);l:{switch(b|0){case 0:d=N[a+136>>2];p=Q(d*d);d=N[a+128>>2];g=Q(d*d);d=N[a+132>>2];d=Q(Y(Q(p+Q(g+Q(d*d)))));case 1:N[a+144>>2]=d;break;default:break l}}sa=e+96|0;return b}function Nd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=Q(0),p=0,q=0,r=0,s=Q(0),t=Q(0),u=Q(0),v=0,w=Q(0),x=0,y=0,z=0,A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),I=Q(0),L=0,M=0,O=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=0,W=0,X=Q(0),Y=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0);n=sa-32|0;sa=n;if((J[e+4>>2]&J[e+8>>2])<0){j=J[e+12>>2];if(!(j?!j|!K[e+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](j);}H[e+16|0]=1;J[e+8>>2]=0;J[e+12>>2]=0;}j=0;J[e+4>>2]=0;x=J[d+4>>2];if((x|0)>J[e+8>>2]){a:{if(!x){break a}J[8456]=J[8456]+1;j=ua[J[8258]](x<<4,16)|0;l=J[e+4>>2];if((l|0)<=0){break a}if((l|0)!=1){m=l&-2;while(1){y=i<<4;r=y+j|0;v=y+J[e+12>>2]|0;M=J[v+4>>2];J[r>>2]=J[v>>2];J[r+4>>2]=M;M=J[v+12>>2];J[r+8>>2]=J[v+8>>2];J[r+12>>2]=M;v=y|16;y=v+j|0;v=v+J[e+12>>2]|0;r=J[v+4>>2];J[y>>2]=J[v>>2];J[y+4>>2]=r;r=J[v+12>>2];J[y+8>>2]=J[v+8>>2];J[y+12>>2]=r;i=i+2|0;k=k+2|0;if((m|0)!=(k|0)){continue}break}}if(!(l&1)){break a}i=i<<4;k=i+j|0;i=i+J[e+12>>2]|0;l=J[i+4>>2];J[k>>2]=J[i>>2];J[k+4>>2]=l;l=J[i+12>>2];J[k+8>>2]=J[i+8>>2];J[k+12>>2]=l;}i=J[e+12>>2];if(!(i?!i|!K[e+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](i);}J[e+12>>2]=j;H[e+16|0]=1;J[e+8>>2]=x;}k=J[b+28>>2];b:{if((k|0)<=0){break b}w=N[c+40>>2];A=N[c+36>>2];C=N[c+24>>2];D=N[c+20>>2];l=J[b+36>>2];E=N[a+8>>2];F=N[a+4>>2];I=N[a>>2];O=N[c+32>>2];R=N[c+16>>2];S=N[c+8>>2];T=N[c+4>>2];B=N[c>>2];i=0;o=Q(34028234663852886e22);j=-1;while(1){x=l+P(i,36)|0;u=N[x+28>>2];t=N[x+20>>2];s=N[x+24>>2];u=Q(Q(Q(Q(w*u)+Q(Q(O*t)+Q(s*A)))*E)+Q(Q(Q(Q(S*u)+Q(Q(B*t)+Q(s*T)))*I)+Q(Q(Q(C*u)+Q(Q(R*t)+Q(s*D)))*F)));x=u<o;o=x?u:o;j=x?i:j;i=i+1|0;if((k|0)!=(i|0)){continue}break}if((j|0)<0){break b}v=J[b+36>>2]+P(j,36)|0;W=J[v+4>>2];c:{if((W|0)<=0){j=d;break c}x=0;while(1){j=e;e=x;x=e+1|0;M=(W|0)==(x|0);l=J[b+16>>2];k=J[v+12>>2];i=l+(J[k+((M?0:x)<<2)>>2]<<4)|0;B=N[i+8>>2];G=N[i>>2];U=N[i+4>>2];e=l+(J[k+(e<<2)>>2]<<4)|0;o=N[e+8>>2];u=N[e>>2];t=N[e+4>>2];aa=N[c+56>>2];ba=N[c+48>>2];ca=N[c+52>>2];C=N[c+40>>2];D=N[c+32>>2];E=N[c+36>>2];s=N[v+28>>2];F=N[c+8>>2];w=N[v+20>>2];I=N[c>>2];A=N[v+24>>2];O=N[c+4>>2];R=N[c+24>>2];S=N[c+16>>2];T=N[c+20>>2];J[n+28>>2]=0;B=Q(o-B);G=Q(u-G);U=Q(t-U);X=Q(Q(F*B)+Q(Q(I*G)+Q(O*U)));Y=Q(Q(R*s)+Q(Q(S*w)+Q(T*A)));Z=Q(Q(F*s)+Q(Q(I*w)+Q(O*A)));_=Q(Q(R*B)+Q(Q(S*G)+Q(U*T)));$=Q(Q(X*Y)-Q(Z*_));N[n+24>>2]=-$;B=Q(Q(C*B)+Q(Q(D*G)+Q(U*E)));s=Q(Q(C*s)+Q(Q(D*w)+Q(E*A)));G=Q(Q(B*Z)-Q(s*X));N[n+20>>2]=-G;B=Q(-Q(Q(_*s)-Q(Y*B)));N[n+16>>2]=B;y=0;e=d;V=J[d+4>>2];if((V|0)>=2){d=(J[e+12>>2]+(V<<4)|0)-16|0;s=N[d+8>>2];w=N[d>>2];A=N[d+4>>2];F=Q(-Q(Q(Q(Q(ba+Q(Q(o*F)+Q(Q(u*I)+Q(t*O))))*B)-Q(Q(ca+Q(Q(o*R)+Q(Q(u*S)+Q(t*T))))*G))-Q(Q(aa+Q(Q(o*C)+Q(Q(u*D)+Q(t*E))))*$)));o=Q(Q(Q(N[n+24>>2]*s)+Q(Q(N[n+16>>2]*w)+Q(A*N[n+20>>2])))+F);while(1){d=J[e+12>>2]+(y<<4)|0;u=N[d+8>>2];D=N[d>>2];t=N[d+4>>2];C=Q(Q(Q(N[n+24>>2]*u)+Q(Q(N[n+16>>2]*D)+Q(t*N[n+20>>2])))+F);E=N[d+12>>2];d:{e:{f:{if(o<Q(0)){if(C<Q(0)){d=J[j+4>>2];g:{if((d|0)!=J[j+8>>2]){break g}r=d?d<<1:1;if((r|0)<=(d|0)){break g}h:{if(!r){k=0;break h}J[8456]=J[8456]+1;k=ua[J[8258]](r<<4,16)|0;d=J[j+4>>2];}i:{if((d|0)<=0){break i}i=0;if((d|0)!=1){L=d&-2;l=0;while(1){p=i<<4;q=p+k|0;m=p+J[j+12>>2]|0;z=J[m+4>>2];J[q>>2]=J[m>>2];J[q+4>>2]=z;z=J[m+12>>2];J[q+8>>2]=J[m+8>>2];J[q+12>>2]=z;m=p|16;p=m+k|0;m=m+J[j+12>>2]|0;q=J[m+4>>2];J[p>>2]=J[m>>2];J[p+4>>2]=q;q=J[m+12>>2];J[p+8>>2]=J[m+8>>2];J[p+12>>2]=q;i=i+2|0;l=l+2|0;if((L|0)!=(l|0)){continue}break}}if(!(d&1)){break i}d=i<<4;i=d+k|0;d=d+J[j+12>>2]|0;l=J[d+4>>2];J[i>>2]=J[d>>2];J[i+4>>2]=l;l=J[d+12>>2];J[i+8>>2]=J[d+8>>2];J[i+12>>2]=l;}d=J[j+12>>2];if(!(d?!d|!K[j+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[j+12>>2]=k;H[j+16|0]=1;J[j+8>>2]=r;d=J[j+4>>2];}i=J[j+12>>2]+(d<<4)|0;break f}o=Q(o/Q(o-C));E=Q(Q(u-s)*o);I=Q(Q(t-A)*o);w=Q(Q(Q(D-w)*o)+w);d=J[j+4>>2];j:{if((d|0)!=J[j+8>>2]){break j}r=d?d<<1:1;if((r|0)<=(d|0)){break j}k:{if(!r){k=0;break k}J[8456]=J[8456]+1;k=ua[J[8258]](r<<4,16)|0;d=J[j+4>>2];}l:{if((d|0)<=0){break l}i=0;if((d|0)!=1){L=d&-2;l=0;while(1){p=i<<4;q=p+k|0;m=p+J[j+12>>2]|0;z=J[m+4>>2];J[q>>2]=J[m>>2];J[q+4>>2]=z;z=J[m+12>>2];J[q+8>>2]=J[m+8>>2];J[q+12>>2]=z;m=p|16;p=m+k|0;m=m+J[j+12>>2]|0;q=J[m+4>>2];J[p>>2]=J[m>>2];J[p+4>>2]=q;q=J[m+12>>2];J[p+8>>2]=J[m+8>>2];J[p+12>>2]=q;i=i+2|0;l=l+2|0;if((L|0)!=(l|0)){continue}break}}if(!(d&1)){break l}d=i<<4;i=d+k|0;d=d+J[j+12>>2]|0;l=J[d+4>>2];J[i>>2]=J[d>>2];J[i+4>>2]=l;l=J[d+12>>2];J[i+8>>2]=J[d+8>>2];J[i+12>>2]=l;}d=J[j+12>>2];if(!(d?!d|!K[j+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[j+12>>2]=k;H[j+16|0]=1;J[j+8>>2]=r;d=J[j+4>>2];}o=Q(E+s);i=J[j+12>>2]+(d<<4)|0;N[i>>2]=w;E=Q(0);s=Q(I+A);break e}if(!(C<Q(0))){break d}o=Q(o/Q(o-C));s=Q(Q(Q(u-s)*o)+s);A=Q(Q(Q(t-A)*o)+A);o=Q(Q(Q(D-w)*o)+w);d=J[j+4>>2];m:{if((d|0)!=J[j+8>>2]){break m}r=d?d<<1:1;if((r|0)<=(d|0)){break m}n:{if(!r){k=0;break n}J[8456]=J[8456]+1;k=ua[J[8258]](r<<4,16)|0;d=J[j+4>>2];}o:{if((d|0)<=0){break o}i=0;if((d|0)!=1){L=d&-2;l=0;while(1){p=i<<4;q=p+k|0;m=p+J[j+12>>2]|0;z=J[m+4>>2];J[q>>2]=J[m>>2];J[q+4>>2]=z;z=J[m+12>>2];J[q+8>>2]=J[m+8>>2];J[q+12>>2]=z;m=p|16;p=m+k|0;m=m+J[j+12>>2]|0;q=J[m+4>>2];J[p>>2]=J[m>>2];J[p+4>>2]=q;q=J[m+12>>2];J[p+8>>2]=J[m+8>>2];J[p+12>>2]=q;i=i+2|0;l=l+2|0;if((L|0)!=(l|0)){continue}break}}if(!(d&1)){break o}d=i<<4;i=d+k|0;d=d+J[j+12>>2]|0;l=J[d+4>>2];J[i>>2]=J[d>>2];J[i+4>>2]=l;l=J[d+12>>2];J[i+8>>2]=J[d+8>>2];J[i+12>>2]=l;}d=J[j+12>>2];if(!(d?!d|!K[j+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[j+12>>2]=k;H[j+16|0]=1;J[j+8>>2]=r;d=J[j+4>>2];}d=J[j+12>>2]+(d<<4)|0;J[d+12>>2]=0;N[d+8>>2]=s;N[d+4>>2]=A;N[d>>2]=o;d=J[j+4>>2]+1|0;J[j+4>>2]=d;p:{if(J[j+8>>2]!=(d|0)){break p}r=d?d<<1:1;if((r|0)<=(d|0)){break p}q:{if(!r){k=0;break q}J[8456]=J[8456]+1;k=ua[J[8258]](r<<4,16)|0;d=J[j+4>>2];}r:{if((d|0)<=0){break r}i=0;if((d|0)!=1){L=d&-2;l=0;while(1){p=i<<4;q=p+k|0;m=p+J[j+12>>2]|0;z=J[m+4>>2];J[q>>2]=J[m>>2];J[q+4>>2]=z;z=J[m+12>>2];J[q+8>>2]=J[m+8>>2];J[q+12>>2]=z;m=p|16;p=m+k|0;m=m+J[j+12>>2]|0;q=J[m+4>>2];J[p>>2]=J[m>>2];J[p+4>>2]=q;q=J[m+12>>2];J[p+8>>2]=J[m+8>>2];J[p+12>>2]=q;i=i+2|0;l=l+2|0;if((L|0)!=(l|0)){continue}break}}if(!(d&1)){break r}d=i<<4;i=d+k|0;d=d+J[j+12>>2]|0;l=J[d+4>>2];J[i>>2]=J[d>>2];J[i+4>>2]=l;l=J[d+12>>2];J[i+8>>2]=J[d+8>>2];J[i+12>>2]=l;}d=J[j+12>>2];if(!(d?!d|!K[j+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[j+12>>2]=k;H[j+16|0]=1;J[j+8>>2]=r;d=J[j+4>>2];}i=J[j+12>>2]+(d<<4)|0;}N[i>>2]=D;o=u;s=t;}N[i+12>>2]=E;N[i+8>>2]=o;N[i+4>>2]=s;J[j+4>>2]=J[j+4>>2]+1;}o=C;s=u;A=t;w=D;y=y+1|0;if((V|0)!=(y|0)){continue}break}}d=J[e+4>>2];s:{if((d|0)>=0){break s}if(J[e+8>>2]<0){i=J[e+12>>2];if(!(i?!i|!K[e+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](i);}H[e+16|0]=1;J[e+8>>2]=0;J[e+12>>2]=0;}k=0;i=d;y=0-d&3;if(y){while(1){r=J[n+4>>2];l=J[e+12>>2]+(i<<4)|0;J[l>>2]=J[n>>2];J[l+4>>2]=r;r=J[n+12>>2];J[l+8>>2]=J[n+8>>2];J[l+12>>2]=r;i=i+1|0;k=k+1|0;if((y|0)!=(k|0)){continue}break}}if(d>>>0>4294967292){break s}while(1){l=J[n+4>>2];d=i<<4;k=d+J[e+12>>2]|0;J[k>>2]=J[n>>2];J[k+4>>2]=l;l=J[n+12>>2];J[k+8>>2]=J[n+8>>2];J[k+12>>2]=l;l=J[n+12>>2];k=d+J[e+12>>2]|0;J[k+24>>2]=J[n+8>>2];J[k+28>>2]=l;l=J[n+4>>2];J[k+16>>2]=J[n>>2];J[k+20>>2]=l;l=J[n+12>>2];k=d+J[e+12>>2]|0;J[k+40>>2]=J[n+8>>2];J[k+44>>2]=l;l=J[n+4>>2];J[k+32>>2]=J[n>>2];J[k+36>>2]=l;k=J[n+12>>2];d=d+J[e+12>>2]|0;J[d+56>>2]=J[n+8>>2];J[d+60>>2]=k;k=J[n+4>>2];J[d+48>>2]=J[n>>2];J[d+52>>2]=k;i=i+4|0;if(i){continue}break}}J[e+4>>2]=0;d=j;if(!M){continue}break}}k=J[j+4>>2];if((k|0)<=0){break b}o=N[v+28>>2];u=N[v+20>>2];t=N[v+24>>2];s=Q(Q(N[c+40>>2]*o)+Q(Q(N[c+32>>2]*u)+Q(t*N[c+36>>2])));w=Q(Q(N[c+8>>2]*o)+Q(Q(N[c>>2]*u)+Q(t*N[c+4>>2])));o=Q(Q(N[c+24>>2]*o)+Q(Q(N[c+16>>2]*u)+Q(t*N[c+20>>2])));u=Q(N[v+32>>2]-Q(Q(s*N[c+56>>2])+Q(Q(w*N[c+48>>2])+Q(o*N[c+52>>2]))));e=0;while(1){b=J[j+12>>2]+(e<<4)|0;t=Q(u+Q(Q(s*N[b+8>>2])+Q(Q(w*N[b>>2])+Q(o*N[b+4>>2]))));t=f>=t?f:t;if(t<=g){c=J[b+12>>2];J[n+24>>2]=J[b+8>>2];J[n+28>>2]=c;c=J[b+4>>2];J[n+16>>2]=J[b>>2];J[n+20>>2]=c;ua[J[J[h>>2]+16>>2]](h,a,n+16|0,t);k=J[j+4>>2];}e=e+1|0;if((k|0)>(e|0)){continue}break}}sa=n+32|0;}function an(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=Q(0),h=Q(0),i=0,j=Q(0),k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=0,C=0,D=Q(0),E=Q(0),F=0,G=0,H=0,I=0,K=0,L=Q(0),M=Q(0),O=Q(0),R=0,S=Q(0),T=0;e=sa-144|0;sa=e;a:{if(!(ua[J[J[a>>2]+20>>2]](a)|0)){break a}f=ua[J[J[a>>2]+20>>2]](a)|0;if(!(ua[J[J[f>>2]+56>>2]](f)&32768)){break a}f=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[f>>2]+64>>2]](f,b,Q(.10000000149011612));}b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{f=J[c+4>>2];switch(f|0){case 0:break j;case 31:break k;case 28:break d;case 13:break e;case 11:break f;case 10:break g;case 9:break h;case 8:break i;default:break c}}f=J[c+24>>2];if((f|0)<=0){break b}while(1){k=f-1|0;i=J[c+32>>2]+P(k,80)|0;B=J[i+64>>2];p=N[i+56>>2];q=N[i+48>>2];w=N[i+52>>2];x=N[i+32>>2];y=N[i>>2];z=N[i+16>>2];A=N[i+36>>2];r=N[i+4>>2];s=N[i+20>>2];t=N[i+40>>2];D=N[i+8>>2];E=N[i+24>>2];L=N[b+48>>2];M=N[b+52>>2];O=N[b+56>>2];g=N[b+8>>2];h=N[b>>2];j=N[b+4>>2];l=N[b+24>>2];m=N[b+16>>2];n=N[b+20>>2];u=N[b+40>>2];v=N[b+32>>2];o=N[b+36>>2];J[e+60>>2]=0;J[e+44>>2]=0;J[e+28>>2]=0;J[e+12>>2]=0;N[e+40>>2]=Q(t*u)+Q(Q(D*v)+Q(E*o));N[e+36>>2]=Q(A*u)+Q(Q(r*v)+Q(s*o));N[e+32>>2]=Q(x*u)+Q(Q(y*v)+Q(z*o));N[e+24>>2]=Q(t*l)+Q(Q(D*m)+Q(E*n));N[e+20>>2]=Q(A*l)+Q(Q(r*m)+Q(s*n));N[e+16>>2]=Q(x*l)+Q(Q(y*m)+Q(z*n));N[e+8>>2]=Q(t*g)+Q(Q(D*h)+Q(E*j));N[e+4>>2]=Q(A*g)+Q(Q(r*h)+Q(s*j));N[e>>2]=Q(x*g)+Q(Q(y*h)+Q(z*j));N[e+56>>2]=O+Q(Q(p*u)+Q(Q(q*v)+Q(w*o)));N[e+52>>2]=M+Q(Q(p*l)+Q(Q(q*m)+Q(w*n)));N[e+48>>2]=L+Q(Q(p*g)+Q(Q(q*h)+Q(w*j)));ua[J[J[a>>2]+28>>2]](a,e,B,d);i=f>>>0>1;f=k;if(i){continue}break}break b}f=J[c+48>>2];J[e+8>>2]=J[c+44>>2];J[e+12>>2]=f;f=J[c+40>>2];J[e>>2]=J[c+36>>2];J[e+4>>2]=f;g=Q(ua[J[J[c>>2]+48>>2]](c));h=Q(ua[J[J[c>>2]+48>>2]](c));j=Q(Q(ua[J[J[c>>2]+48>>2]](c))+N[e+8>>2]);N[e+8>>2]=j;g=Q(g+N[e>>2]);N[e>>2]=g;h=Q(h+N[e+4>>2]);N[e+4>>2]=h;a=ua[J[J[a>>2]+20>>2]](a)|0;J[e+140>>2]=0;N[e+136>>2]=-j;N[e+132>>2]=-h;N[e+128>>2]=-g;ua[J[J[a>>2]+80>>2]](a,e+128|0,e,b,d);break b}g=Q(ua[J[J[c>>2]+48>>2]](c));a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+24>>2]](a,g,b,d);break b}f=J[c+100>>2];if((f|0)<=0){break b}while(1){k=f-1|0;i=J[c+108>>2]+(k<<4)|0;g=N[i+8>>2];h=N[i>>2];j=N[i+4>>2];i=ua[J[J[a>>2]+20>>2]](a)|0;x=N[J[c+128>>2]+(k<<2)>>2];y=N[b+48>>2];z=N[b+52>>2];A=N[b+56>>2];l=N[b+8>>2];m=N[b>>2];n=N[b+4>>2];u=N[b+24>>2];v=N[b+16>>2];o=N[b+20>>2];p=N[b+40>>2];q=N[b+32>>2];w=N[b+36>>2];J[e+60>>2]=0;J[e+44>>2]=0;J[e+28>>2]=0;J[e+12>>2]=0;r=Q(q*Q(0));s=Q(w*Q(0));N[e+40>>2]=p+Q(r+s);t=Q(p*Q(0));N[e+36>>2]=t+Q(r+w);N[e+32>>2]=t+Q(q+s);r=Q(v*Q(0));s=Q(o*Q(0));N[e+24>>2]=u+Q(r+s);t=Q(u*Q(0));N[e+20>>2]=t+Q(r+o);N[e+16>>2]=t+Q(v+s);r=Q(m*Q(0));s=Q(n*Q(0));N[e+8>>2]=l+Q(r+s);t=Q(l*Q(0));N[e+4>>2]=t+Q(r+n);N[e>>2]=t+Q(m+s);N[e+56>>2]=A+Q(Q(g*p)+Q(Q(h*q)+Q(j*w)));N[e+52>>2]=z+Q(Q(g*u)+Q(Q(h*v)+Q(j*o)));N[e+48>>2]=y+Q(Q(g*l)+Q(Q(h*m)+Q(j*n)));ua[J[J[i>>2]+24>>2]](i,x,e,d);i=f>>>0>1;f=k;if(i){continue}break}break b}f=J[c+60>>2];c=c+36|0;g=N[(f<<2)+c>>2];h=N[c+((f+2|0)%3<<2)>>2];a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+84>>2]](a,h,g,f,b,d);break b}f=J[c+76>>2];g=N[c+68>>2];h=N[c+64>>2];a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+92>>2]](a,h,g,f,b,d);break b}f=J[c+60>>2];g=Q(ua[J[J[c>>2]+92>>2]](c));k=J[c+48>>2];J[e+8>>2]=J[c+44>>2];J[e+12>>2]=k;k=J[c+40>>2];J[e>>2]=J[c+36>>2];J[e+4>>2]=k;h=Q(ua[J[J[c>>2]+48>>2]](c));j=Q(ua[J[J[c>>2]+48>>2]](c));R=e,S=Q(Q(ua[J[J[c>>2]+48>>2]](c))+N[e+8>>2]),N[R+8>>2]=S;N[e>>2]=h+N[e>>2];N[e+4>>2]=j+N[e+4>>2];h=N[(f<<2)+e>>2];a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+88>>2]](a,g,h,f,b,d);break b}g=N[c+72>>2];a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+96>>2]](a,c+56|0,g,b,d);break b}l:{if((f|0)>6){break l}B=J[c+60>>2];if(B){if(J[B+28>>2]<=0){break l}while(1){i=J[B+36>>2];F=P(G,36);f=i+F|0;H=J[f+4>>2];m:{if((H|0)<=0){g=Q(0);h=Q(0);j=Q(0);break m}k=J[(J[f+12>>2]+(H<<2)|0)-4>>2];j=Q(0);f=0;h=Q(0);g=Q(0);while(1){i=J[J[(i+F|0)+12>>2]+(f<<2)>>2];I=i<<4;C=I+J[B+16>>2]|0;t=N[C>>2];D=N[C+4>>2];E=N[C+8>>2];C=ua[J[J[a>>2]+20>>2]](a)|0;K=J[B+16>>2];k=K+(k<<4)|0;l=N[k+8>>2];m=N[k>>2];n=N[k+4>>2];u=N[b+48>>2];v=N[b+8>>2];o=N[b>>2];p=N[b+4>>2];q=N[b+52>>2];w=N[b+24>>2];x=N[b+16>>2];y=N[b+20>>2];z=N[b+56>>2];A=N[b+40>>2];r=N[b+32>>2];s=N[b+36>>2];J[e+12>>2]=0;N[e+8>>2]=z+Q(Q(l*A)+Q(Q(m*r)+Q(n*s)));N[e+4>>2]=q+Q(Q(l*w)+Q(Q(m*x)+Q(n*y)));N[e>>2]=u+Q(Q(l*v)+Q(Q(m*o)+Q(n*p)));k=I+K|0;l=N[k+8>>2];m=N[k>>2];n=N[k+4>>2];J[e+140>>2]=0;N[e+136>>2]=z+Q(Q(l*A)+Q(Q(m*r)+Q(s*n)));N[e+132>>2]=q+Q(Q(l*w)+Q(Q(m*x)+Q(y*n)));N[e+128>>2]=u+Q(Q(l*v)+Q(Q(m*o)+Q(p*n)));ua[J[J[C>>2]+16>>2]](C,e,e+128|0,d);j=Q(j+E);h=Q(h+D);g=Q(g+t);k=i;f=f+1|0;i=J[B+36>>2];if((f|0)<J[(F+i|0)+4>>2]){continue}break}}f=ua[J[J[a>>2]+20>>2]](a)|0;if(ua[J[J[f>>2]+56>>2]](f)&16384){J[e+8>>2]=0;J[e+12>>2]=0;J[e>>2]=1065353216;J[e+4>>2]=1065353216;f=J[B+36>>2]+F|0;r=N[f+28>>2];s=N[f+20>>2];t=N[f+24>>2];f=ua[J[J[a>>2]+20>>2]](a)|0;l=N[b+48>>2];m=N[b+8>>2];n=N[b>>2];u=N[b+4>>2];v=N[b+52>>2];o=N[b+24>>2];p=N[b+16>>2];q=N[b+20>>2];w=N[b+56>>2];x=N[b+40>>2];y=N[b+32>>2];z=N[b+36>>2];J[e+140>>2]=0;A=Q(Q(1)/Q(H|0));j=Q(A*j);g=Q(A*g);h=Q(A*h);N[e+136>>2]=w+Q(Q(x*j)+Q(Q(y*g)+Q(z*h)));N[e+132>>2]=v+Q(Q(j*o)+Q(Q(g*p)+Q(h*q)));N[e+128>>2]=l+Q(Q(j*m)+Q(Q(g*n)+Q(h*u)));J[e+124>>2]=0;j=Q(j+r);g=Q(g+s);h=Q(h+t);N[e+120>>2]=w+Q(Q(x*j)+Q(Q(y*g)+Q(z*h)));N[e+116>>2]=v+Q(Q(j*o)+Q(Q(g*p)+Q(h*q)));N[e+112>>2]=l+Q(Q(j*m)+Q(Q(g*n)+Q(h*u)));ua[J[J[f>>2]+16>>2]](f,e+128|0,e+112|0,e);}G=G+1|0;if((G|0)<J[B+28>>2]){continue}break}break l}if((ua[J[J[c>>2]+100>>2]](c)|0)<=0){break l}f=0;while(1){ua[J[J[c>>2]+104>>2]](c,f,e,e+128|0);g=N[b+48>>2];h=N[b+8>>2];j=N[b>>2];l=N[b+4>>2];m=N[b+52>>2];n=N[b+24>>2];u=N[b+16>>2];v=N[b+20>>2];o=N[b+56>>2];p=N[b+40>>2];q=N[b+32>>2];w=N[b+36>>2];J[e+124>>2]=0;x=N[e+8>>2];y=N[e>>2];z=N[e+4>>2];N[e+120>>2]=o+Q(Q(p*x)+Q(Q(q*y)+Q(w*z)));N[e+116>>2]=m+Q(Q(x*n)+Q(Q(y*u)+Q(z*v)));N[e+112>>2]=g+Q(Q(x*h)+Q(Q(y*j)+Q(z*l)));J[e+108>>2]=0;r=o;o=N[e+136>>2];s=Q(p*o);p=N[e+128>>2];t=Q(q*p);q=N[e+132>>2];N[e+104>>2]=r+Q(s+Q(t+Q(w*q)));N[e+100>>2]=m+Q(Q(o*n)+Q(Q(p*u)+Q(v*q)));N[e+96>>2]=g+Q(Q(o*h)+Q(Q(p*j)+Q(l*q)));k=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[k>>2]+16>>2]](k,e+112|0,e+96|0,d);f=f+1|0;if((ua[J[J[c>>2]+100>>2]](c)|0)>(f|0)){continue}break}}f=J[c+4>>2];if(f-21>>>0<=8){J[e+136>>2]=1566444395;J[e+140>>2]=0;J[e+128>>2]=1566444395;J[e+132>>2]=1566444395;J[e+120>>2]=-581039253;J[e+124>>2]=0;J[e+112>>2]=-581039253;J[e+116>>2]=-581039253;R=e,T=ua[J[J[a>>2]+20>>2]](a)|0,J[R+8>>2]=T;J[e+4>>2]=14868;J[e>>2]=14844;f=J[d+12>>2];J[e+20>>2]=J[d+8>>2];J[e+24>>2]=f;f=J[d+4>>2];J[e+12>>2]=J[d>>2];J[e+16>>2]=f;f=J[b+12>>2];J[e+36>>2]=J[b+8>>2];J[e+40>>2]=f;f=J[b+4>>2];J[e+28>>2]=J[b>>2];J[e+32>>2]=f;f=J[b+20>>2];J[e+44>>2]=J[b+16>>2];J[e+48>>2]=f;f=J[b+28>>2];J[e+52>>2]=J[b+24>>2];J[e+56>>2]=f;f=J[b+44>>2];J[e+68>>2]=J[b+40>>2];J[e+72>>2]=f;f=J[b+36>>2];J[e+60>>2]=J[b+32>>2];J[e+64>>2]=f;f=J[b+52>>2];J[e+76>>2]=J[b+48>>2];J[e+80>>2]=f;f=J[b+60>>2];J[e+84>>2]=J[b+56>>2];J[e+88>>2]=f;ua[J[J[c>>2]+64>>2]](c,e,e+112|0,e+128|0);f=J[c+4>>2];}if((f|0)!=3){break b}J[e+136>>2]=1566444395;J[e+140>>2]=0;J[e+128>>2]=1566444395;J[e+132>>2]=1566444395;J[e+120>>2]=-581039253;J[e+124>>2]=0;J[e+112>>2]=-581039253;J[e+116>>2]=-581039253;R=e,T=ua[J[J[a>>2]+20>>2]](a)|0,J[R+8>>2]=T;J[e+4>>2]=14868;J[e>>2]=14844;a=J[d+12>>2];J[e+20>>2]=J[d+8>>2];J[e+24>>2]=a;a=J[d+4>>2];J[e+12>>2]=J[d>>2];J[e+16>>2]=a;a=J[b+12>>2];J[e+36>>2]=J[b+8>>2];J[e+40>>2]=a;a=J[b+4>>2];J[e+28>>2]=J[b>>2];J[e+32>>2]=a;a=J[b+20>>2];J[e+44>>2]=J[b+16>>2];J[e+48>>2]=a;a=J[b+28>>2];J[e+52>>2]=J[b+24>>2];J[e+56>>2]=a;a=J[b+44>>2];J[e+68>>2]=J[b+40>>2];J[e+72>>2]=a;a=J[b+36>>2];J[e+60>>2]=J[b+32>>2];J[e+64>>2]=a;a=J[b+52>>2];J[e+76>>2]=J[b+48>>2];J[e+80>>2]=a;a=J[b+60>>2];J[e+84>>2]=J[b+56>>2];J[e+88>>2]=a;a=J[c+100>>2];ua[J[J[a>>2]+8>>2]](a,e+4|0,e+112|0,e+128|0);}sa=e+144|0;}function ke(a,b,c,d,e){var f=Q(0),g=0,h=0,i=0,j=0,k=0,l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=0,r=Q(0),s=0,t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0);k=sa-48|0;sa=k;H[a+60|0]=c;a:{if(c){f=N[d>>2];m=N[d+4>>2];n=N[d+8>>2];J[a+16>>2]=0;p=Q(n+Q(-1));N[a+12>>2]=p;m=Q(m+Q(-1));N[a+8>>2]=m;n=Q(f+Q(-1));N[a+4>>2]=n;o=N[e>>2];r=N[e+4>>2];f=N[e+8>>2];H[a+60|0]=1;J[a+48>>2]=0;J[a+32>>2]=0;u=Q(f+Q(1));N[a+28>>2]=u;v=Q(r+Q(1));N[a+24>>2]=v;r=Q(o+Q(1));N[a+20>>2]=r;w=Q(Q(65533)/Q(u-p));N[a+44>>2]=w;o=Q(Q(65533)/Q(v-m));N[a+40>>2]=o;x=Q(Q(65533)/Q(r-n));N[a+36>>2]=x;f=Q(Q(p-p)*w);b:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break b}c=0;}y=Q((c&65534)>>>0);f=Q(Q(m-m)*o);c:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break c}c=0;}o=Q(m+Q(Q((c&65534)>>>0)/o));f=Q(Q(n-n)*x);d:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break d}c=0;}f=Q(Q(n+Q(Q((c&65534)>>>0)/x))+Q(-1));if(f<n){N[a+4>>2]=f;n=f;}f=Q(o+Q(-1));if(f<m){N[a+8>>2]=f;m=f;}f=Q(Q(p+Q(y/w))+Q(-1));if(f<p){N[a+12>>2]=f;p=f;}f=Q(u-p);w=Q(Q(65533)/f);f=Q(Q(f*w)+Q(1));e:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break e}c=0;}y=Q((c|1)>>>0);f=Q(v-m);o=Q(Q(65533)/f);f=Q(Q(f*o)+Q(1));f:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break f}c=0;}o=Q(m+Q(Q((c|1)>>>0)/o));f=Q(r-n);x=Q(Q(65533)/f);f=Q(Q(f*x)+Q(1));g:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break g}c=0;}f=Q(Q(n+Q(Q((c|1)>>>0)/x))+Q(1));if(f>r){N[a+20>>2]=f;r=f;}f=Q(o+Q(1));if(f>v){N[a+24>>2]=f;v=f;}f=Q(Q(p+Q(y/w))+Q(1));if(f>u){N[a+28>>2]=f;u=f;}J[a+48>>2]=0;N[a+44>>2]=Q(65533)/Q(u-p);N[a+40>>2]=Q(65533)/Q(v-m);N[a+36>>2]=Q(65533)/Q(r-n);J[k+32>>2]=a;J[k+28>>2]=a+104;J[k+24>>2]=20556;ua[J[J[b>>2]+8>>2]](b,k+24|0,a+4|0,a+20|0);c=J[a+128>>2];s=J[a+108>>2];j=s<<1;h:{if((c|0)>=(j|0)){break h}if((j|0)>J[a+132>>2]){i:{if(!s){d=0;e=c;break i}J[8456]=J[8456]+1;d=ua[J[8258]](s<<5,16)|0;e=J[a+128>>2];}j:{if((e|0)<=0){break j}b=0;if((e|0)!=1){t=e&-2;while(1){i=b<<4;h=i+d|0;q=i+J[a+136>>2]|0;g=J[q+4>>2];J[h>>2]=J[q>>2];J[h+4>>2]=g;g=J[q+12>>2];J[h+8>>2]=J[q+8>>2];J[h+12>>2]=g;g=i|16;h=g+d|0;i=g+J[a+136>>2]|0;g=J[i+4>>2];J[h>>2]=J[i>>2];J[h+4>>2]=g;g=J[i+12>>2];J[h+8>>2]=J[i+8>>2];J[h+12>>2]=g;b=b+2|0;l=l+2|0;if((t|0)!=(l|0)){continue}break}}if(!(e&1)){break j}b=b<<4;e=b+d|0;g=b+J[a+136>>2]|0;b=J[g+4>>2];J[e>>2]=J[g>>2];J[e+4>>2]=b;b=J[g+12>>2];J[e+8>>2]=J[g+8>>2];J[e+12>>2]=b;}b=J[a+136>>2];if(!(b?!b|!K[a+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+136>>2]=d;H[a+140|0]=1;J[a+132>>2]=j;}e=j+(c^-1)|0;d=j-c&3;if(d){b=0;while(1){g=J[a+136>>2]+(c<<4)|0;J[g>>2]=0;J[g+4>>2]=0;J[g+8>>2]=0;J[g+12>>2]=0;c=c+1|0;b=b+1|0;if((d|0)!=(b|0)){continue}break}}if(e>>>0<3){break h}while(1){d=c<<4;b=d+J[a+136>>2]|0;J[b>>2]=0;J[b+4>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;b=d+J[a+136>>2]|0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+16>>2]=0;J[b+20>>2]=0;b=d+J[a+136>>2]|0;J[b+40>>2]=0;J[b+44>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;b=d+J[a+136>>2]|0;J[b+56>>2]=0;J[b+60>>2]=0;J[b+48>>2]=0;J[b+52>>2]=0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}J[a+128>>2]=j;break a}J[k+40>>2]=20688;J[k+44>>2]=a- -64;J[k+32>>2]=-581039253;J[k+36>>2]=0;J[k+24>>2]=-581039253;J[k+28>>2]=-581039253;J[k+16>>2]=1566444395;J[k+20>>2]=0;J[k+8>>2]=1566444395;J[k+12>>2]=1566444395;ua[J[J[b>>2]+8>>2]](b,k+40|0,k+24|0,k+8|0);b=J[a+88>>2];s=J[a+68>>2];l=s<<1;k:{if((b|0)>=(l|0)){break k}if((l|0)>J[a+92>>2]){if(s){J[8456]=J[8456]+1;q=ua[J[8258]](s<<7,16)|0;c=J[a+88>>2];}else {c=b;}l:{if((c|0)<=0){break l}d=0;if((c|0)!=1){t=c&-2;while(1){i=d<<6;h=i+q|0;j=i+J[a+96>>2]|0;e=J[j+4>>2];J[h>>2]=J[j>>2];J[h+4>>2]=e;e=J[j+60>>2];J[h+56>>2]=J[j+56>>2];J[h+60>>2]=e;e=J[j+52>>2];J[h+48>>2]=J[j+48>>2];J[h+52>>2]=e;e=J[j+44>>2];J[h+40>>2]=J[j+40>>2];J[h+44>>2]=e;e=J[j+36>>2];J[h+32>>2]=J[j+32>>2];J[h+36>>2]=e;e=J[j+28>>2];J[h+24>>2]=J[j+24>>2];J[h+28>>2]=e;e=J[j+20>>2];J[h+16>>2]=J[j+16>>2];J[h+20>>2]=e;e=J[j+12>>2];J[h+8>>2]=J[j+8>>2];J[h+12>>2]=e;e=i|64;h=e+q|0;i=e+J[a+96>>2]|0;e=J[i+4>>2];J[h>>2]=J[i>>2];J[h+4>>2]=e;e=J[i+12>>2];J[h+8>>2]=J[i+8>>2];J[h+12>>2]=e;e=J[i+20>>2];J[h+16>>2]=J[i+16>>2];J[h+20>>2]=e;e=J[i+28>>2];J[h+24>>2]=J[i+24>>2];J[h+28>>2]=e;e=J[i+36>>2];J[h+32>>2]=J[i+32>>2];J[h+36>>2]=e;e=J[i+44>>2];J[h+40>>2]=J[i+40>>2];J[h+44>>2]=e;e=J[i+52>>2];J[h+48>>2]=J[i+48>>2];J[h+52>>2]=e;e=J[i+60>>2];J[h+56>>2]=J[i+56>>2];J[h+60>>2]=e;d=d+2|0;g=g+2|0;if((t|0)!=(g|0)){continue}break}}if(!(c&1)){break l}c=d<<6;d=c+q|0;e=c+J[a+96>>2]|0;c=J[e+4>>2];J[d>>2]=J[e>>2];J[d+4>>2]=c;c=J[e+60>>2];J[d+56>>2]=J[e+56>>2];J[d+60>>2]=c;c=J[e+52>>2];J[d+48>>2]=J[e+48>>2];J[d+52>>2]=c;c=J[e+44>>2];J[d+40>>2]=J[e+40>>2];J[d+44>>2]=c;c=J[e+36>>2];J[d+32>>2]=J[e+32>>2];J[d+36>>2]=c;c=J[e+28>>2];J[d+24>>2]=J[e+24>>2];J[d+28>>2]=c;c=J[e+20>>2];J[d+16>>2]=J[e+16>>2];J[d+20>>2]=c;c=J[e+12>>2];J[d+8>>2]=J[e+8>>2];J[d+12>>2]=c;}c=J[a+96>>2];if(!(c?!c|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+96>>2]=q;H[a+100|0]=1;J[a+92>>2]=l;}d=l+(b^-1)|0;c=l-b&3;if(c){e=0;while(1){g=J[a+96>>2]+(b<<6)|0;J[g>>2]=0;J[g+4>>2]=0;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;J[g+40>>2]=0;J[g+44>>2]=0;J[g+32>>2]=0;J[g+36>>2]=0;J[g+24>>2]=0;J[g+28>>2]=0;J[g+16>>2]=0;J[g+20>>2]=0;J[g+8>>2]=0;J[g+12>>2]=0;b=b+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}if(d>>>0<3){break k}while(1){d=b<<6;c=d+J[a+96>>2]|0;J[c>>2]=0;J[c+4>>2]=0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+J[a+96>>2]|0;J[c+120>>2]=0;J[c+124>>2]=0;J[c+112>>2]=0;J[c+116>>2]=0;J[c+104>>2]=0;J[c+108>>2]=0;J[c+96>>2]=0;J[c+100>>2]=0;J[c+88>>2]=0;J[c+92>>2]=0;J[c+80>>2]=0;J[c+84>>2]=0;J[c+72>>2]=0;J[c+76>>2]=0;c=c- -64|0;J[c>>2]=0;J[c+4>>2]=0;c=d+J[a+96>>2]|0;J[c+184>>2]=0;J[c+188>>2]=0;J[c+176>>2]=0;J[c+180>>2]=0;J[c+168>>2]=0;J[c+172>>2]=0;J[c+160>>2]=0;J[c+164>>2]=0;J[c+152>>2]=0;J[c+156>>2]=0;J[c+144>>2]=0;J[c+148>>2]=0;J[c+136>>2]=0;J[c+140>>2]=0;J[c+128>>2]=0;J[c+132>>2]=0;c=d+J[a+96>>2]|0;J[c+248>>2]=0;J[c+252>>2]=0;J[c+240>>2]=0;J[c+244>>2]=0;J[c+232>>2]=0;J[c+236>>2]=0;J[c+224>>2]=0;J[c+228>>2]=0;J[c+216>>2]=0;J[c+220>>2]=0;J[c+208>>2]=0;J[c+212>>2]=0;J[c+200>>2]=0;J[c+204>>2]=0;J[c+192>>2]=0;J[c+196>>2]=0;b=b+4|0;if((l|0)!=(b|0)){continue}break}}J[a+88>>2]=l;}J[a+56>>2]=0;Hc(a,0,s);if(!(J[a+152>>2]|!K[a+60|0])){if(J[a+156>>2]){b=1;}else {J[8456]=J[8456]+1;t=ua[J[8258]](32,16)|0;h=J[a+152>>2];m:{if((h|0)<=0){break m}e=0;if((h|0)!=1){d=h&-2;l=0;while(1){g=e<<5;c=g+t|0;i=g+J[a+160>>2]|0;b=J[i+4>>2];J[c>>2]=J[i>>2];J[c+4>>2]=b;b=J[i+28>>2];J[c+24>>2]=J[i+24>>2];J[c+28>>2]=b;b=J[i+20>>2];J[c+16>>2]=J[i+16>>2];J[c+20>>2]=b;b=J[i+12>>2];J[c+8>>2]=J[i+8>>2];J[c+12>>2]=b;b=g|32;c=b+t|0;g=b+J[a+160>>2]|0;b=J[g+4>>2];J[c>>2]=J[g>>2];J[c+4>>2]=b;b=J[g+12>>2];J[c+8>>2]=J[g+8>>2];J[c+12>>2]=b;b=J[g+20>>2];J[c+16>>2]=J[g+16>>2];J[c+20>>2]=b;b=J[g+28>>2];J[c+24>>2]=J[g+24>>2];J[c+28>>2]=b;e=e+2|0;l=l+2|0;if((d|0)!=(l|0)){continue}break}}if(!(h&1)){break m}b=e<<5;c=b+t|0;d=b+J[a+160>>2]|0;b=J[d+4>>2];J[c>>2]=J[d>>2];J[c+4>>2]=b;b=J[d+28>>2];J[c+24>>2]=J[d+24>>2];J[c+28>>2]=b;b=J[d+20>>2];J[c+16>>2]=J[d+16>>2];J[c+20>>2]=b;b=J[d+12>>2];J[c+8>>2]=J[d+8>>2];J[c+12>>2]=b;}b=J[a+160>>2];if(!(b?!b|!K[a+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+160>>2]=t;H[a+164|0]=1;J[a+156>>2]=1;b=J[a+152>>2]+1|0;}J[a+152>>2]=b;d=J[a+160>>2];c=J[a+136>>2];I[d>>1]=L[c>>1];I[d+2>>1]=L[c+2>>1];I[d+4>>1]=L[c+4>>1];I[d+6>>1]=L[c+6>>1];I[d+8>>1]=L[c+8>>1];b=L[c+10>>1];J[d+12>>2]=0;I[d+10>>1]=b;b=J[c+12>>2];J[d+16>>2]=(b|0)>=0?1:0-b|0;}J[a+168>>2]=J[a+152>>2];b=J[a+116>>2];if(!(b?!b|!K[a+120|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+116>>2]=0;H[a+120|0]=1;J[a+108>>2]=0;J[a+112>>2]=0;b=J[a+76>>2];if(!(b?!b|!K[a+80|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+76>>2]=0;H[a+80|0]=1;J[a+68>>2]=0;J[a+72>>2]=0;sa=k+48|0;}function si(a){a=a|0;var b=0,c=Q(0),d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0,p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),S=Q(0),T=0,U=0,V=0,W=Q(0),X=Q(0),Z=Q(0),_=0;r=sa-48|0;sa=r;if(K[a+738|0]){J[a+744>>2]=0;J[a+36>>2]=0;if(!K[a+736|0]){e=N[a+672>>2];b=J[a+32>>2];g=N[a+664>>2];h=N[a+668>>2];p=Q(Q(Q(e*N[b+44>>2])+Q(Q(g*N[b+36>>2])+Q(h*N[b+40>>2])))+N[b+60>>2]);f=N[a+608>>2];d=J[a+28>>2];c=N[a+600>>2];j=N[a+604>>2];m=Q(Q(Q(f*N[d+44>>2])+Q(Q(c*N[d+36>>2])+Q(j*N[d+40>>2])))+N[d+60>>2]);i=Q(p-m);t=Q(Q(Q(e*N[b+12>>2])+Q(Q(g*N[b+4>>2])+Q(h*N[b+8>>2])))+N[b+52>>2]);u=Q(Q(Q(f*N[d+12>>2])+Q(Q(c*N[d+4>>2])+Q(j*N[d+8>>2])))+N[d+52>>2]);k=Q(t-u);C=Q(Q(Q(e*N[b+28>>2])+Q(Q(g*N[b+20>>2])+Q(h*N[b+24>>2])))+N[b+56>>2]);D=Q(Q(Q(f*N[d+28>>2])+Q(Q(c*N[d+20>>2])+Q(j*N[d+24>>2])))+N[d+56>>2]);g=Q(C-D);e=Q(Q(i*i)+Q(Q(k*k)+Q(g*g)));a:{if(e>Q(1.1920928955078125e-7)){h=Q(Q(1)/Q(Y(e)));e=Q(i*h);N[r+8>>2]=e;g=Q(g*h);N[r+4>>2]=g;h=Q(k*h);N[r>>2]=h;break a}J[r+8>>2]=0;J[r>>2]=1065353216;J[r+4>>2]=0;h=Q(1);g=Q(0);e=Q(0);}J[r+12>>2]=0;b:{if(Q(R(e))>Q(.7071067690849304)){f=Q(Q(g*g)+Q(e*e));i=Q(Q(1)/Q(Y(f)));f=Q(f*i);c=Q(i*Q(-e));j=Q(c*h);e=Q(g*i);g=Q(e*Q(-h));i=Q(0);break b}c=Q(Q(h*h)+Q(g*g));f=Q(Q(1)/Q(Y(c)));j=Q(c*f);i=Q(f*Q(-g));g=Q(e*i);c=Q(h*f);f=Q(c*Q(-e));e=Q(0);}N[r+40>>2]=j;N[r+36>>2]=g;N[r+20>>2]=c;N[r+32>>2]=f;N[r+24>>2]=e;N[r+16>>2]=i;while(1){E=N[b+404>>2];M=N[d+404>>2];z=N[d+36>>2];A=N[d+4>>2];B=N[d+20>>2];l=N[d+40>>2];v=N[d+8>>2];s=N[d+24>>2];n=N[d+44>>2];q=N[d+12>>2];w=N[d+56>>2];x=N[d+28>>2];y=N[d+60>>2];G=N[d+52>>2];H=N[b+36>>2];I=N[b+4>>2];O=N[b+20>>2];k=N[b+40>>2];S=N[b+8>>2];Z=N[b+24>>2];e=N[b+44>>2];h=N[b+12>>2];g=N[b+56>>2];j=N[b+28>>2];f=N[b+52>>2];c=N[b+60>>2];U=(T<<4)+r|0;_=J[U+4>>2];o=P(T,84)+a|0;V=o+48|0;J[V>>2]=J[U>>2];J[V+4>>2]=_;V=J[U+12>>2];J[o+56>>2]=J[U+8>>2];J[o+60>>2]=V;J[o+92>>2]=0;J[o+76>>2]=0;F=e;i=Q(C-g);e=N[o+48>>2];W=Q(t-f);g=N[o+52>>2];f=Q(Q(i*e)-Q(W*g));L=h;X=Q(p-c);h=N[o+56>>2];c=Q(Q(X*g)-Q(i*h));i=j;j=Q(Q(W*h)-Q(X*e));i=Q(Q(F*f)+Q(Q(L*c)+Q(i*j)));N[o+88>>2]=i;k=Q(Q(k*f)+Q(Q(S*c)+Q(Z*j)));N[o+84>>2]=k;f=Q(Q(H*f)+Q(Q(I*c)+Q(O*j)));N[o+80>>2]=f;F=n;j=Q(u-G);n=Q(D-w);c=Q(Q(g*j)-Q(e*n));L=Q(n*h);n=Q(m-y);g=Q(L-Q(g*n));e=Q(Q(n*e)-Q(h*j));h=Q(Q(F*c)+Q(Q(q*g)+Q(x*e)));N[o+72>>2]=h;j=Q(Q(l*c)+Q(Q(v*g)+Q(s*e)));N[o+68>>2]=j;e=Q(Q(z*c)+Q(Q(A*g)+Q(B*e)));N[o- -64>>2]=e;g=N[d+464>>2];c=N[d+460>>2];z=N[d+456>>2];J[o+108>>2]=0;z=Q(e*z);N[o+96>>2]=z;c=Q(j*c);N[o+100>>2]=c;g=Q(h*g);N[o+104>>2]=g;A=N[b+464>>2];B=N[b+460>>2];l=N[b+456>>2];J[o+124>>2]=0;l=Q(f*l);N[o+112>>2]=l;B=Q(k*B);N[o+116>>2]=B;A=Q(i*A);N[o+120>>2]=A;N[o+128>>2]=Q(E+Q(M+Q(Q(g*h)+Q(Q(z*e)+Q(j*c)))))+Q(Q(A*i)+Q(Q(l*f)+Q(k*B)));T=T+1|0;if((T|0)!=3){continue}break}}e=N[a+576>>2];g=N[a+560>>2];h=N[a+592>>2];c:{if(Q(R(h))>Q(.7071067690849304)){f=Q(Q(e*e)+Q(h*h));i=Q(Q(1)/Q(Y(f)));c=Q(i*Q(-h));j=Q(g*c);k=Q(e*i);p=Q(k*Q(-g));m=Q(0);f=Q(f*i);break c}c=Q(Q(g*g)+Q(e*e));f=Q(Q(1)/Q(Y(c)));j=Q(c*f);m=Q(f*Q(-e));p=Q(h*m);k=Q(0);c=Q(g*f);f=Q(c*Q(-h));}b=J[a+32>>2];q=N[b+36>>2];w=N[b+20>>2];n=N[b+40>>2];x=N[b+8>>2];y=N[b+24>>2];s=N[b+44>>2];G=N[b+12>>2];H=N[b+28>>2];d=J[a+28>>2];t=N[d+44>>2];u=N[d+36>>2];C=N[d+40>>2];D=N[d+12>>2];E=N[d+8>>2];M=N[d+28>>2];z=N[d+20>>2];A=N[d+24>>2];I=N[b+4>>2];B=N[d+4>>2];J[a+308>>2]=0;J[a+312>>2]=0;J[a+300>>2]=0;J[a+304>>2]=0;J[a+344>>2]=0;J[a+328>>2]=0;i=Q(Q(t*k)+Q(Q(u*m)+Q(c*C)));l=Q(Q(D*k)+Q(Q(B*m)+Q(c*E)));c=Q(Q(M*k)+Q(Q(z*m)+Q(c*A)));k=Q(Q(t*i)+Q(Q(D*l)+Q(M*c)));N[a+324>>2]=k;m=Q(Q(C*i)+Q(Q(E*l)+Q(A*c)));N[a+320>>2]=m;v=Q(Q(u*i)+Q(Q(B*l)+Q(z*c)));N[a+316>>2]=v;l=Q(-l);s=Q(Q(Q(G*l)-Q(H*c))-Q(s*i));N[a+340>>2]=s;n=Q(Q(Q(x*l)-Q(y*c))-Q(n*i));N[a+336>>2]=n;c=Q(Q(Q(I*l)-Q(w*c))-Q(q*i));N[a+332>>2]=c;i=N[d+460>>2];l=N[d+464>>2];q=N[d+456>>2];J[a+360>>2]=0;l=Q(k*l);N[a+356>>2]=l;i=Q(m*i);N[a+352>>2]=i;q=Q(v*q);N[a+348>>2]=q;w=N[b+460>>2];x=N[b+464>>2];y=N[b+456>>2];J[a+376>>2]=0;x=Q(s*x);N[a+372>>2]=x;w=Q(n*w);N[a+368>>2]=w;y=Q(c*y);N[a+364>>2]=y;N[a+380>>2]=Q(Q(l*k)+Q(Q(q*v)+Q(m*i)))+Q(Q(x*s)+Q(Q(y*c)+Q(n*w)));v=N[d+36>>2];s=N[d+20>>2];l=N[d+40>>2];n=N[d+8>>2];q=N[d+24>>2];m=N[d+44>>2];w=N[d+12>>2];x=N[d+28>>2];y=N[b+36>>2];G=N[b+20>>2];H=N[b+40>>2];I=N[b+8>>2];O=N[b+24>>2];S=N[b+44>>2];c=N[b+12>>2];Z=N[b+28>>2];W=N[d+4>>2];X=N[b+4>>2];J[a+392>>2]=0;J[a+396>>2]=0;J[a+384>>2]=0;J[a+388>>2]=0;J[a+428>>2]=0;J[a+412>>2]=0;i=Q(Q(D*j)+Q(Q(B*f)+Q(p*E)));k=Q(-i);F=Q(c*k);c=Q(Q(M*j)+Q(Q(z*f)+Q(p*A)));f=Q(Q(t*j)+Q(Q(u*f)+Q(p*C)));j=Q(Q(F-Q(Z*c))-Q(S*f));N[a+424>>2]=j;p=Q(Q(Q(I*k)-Q(O*c))-Q(H*f));N[a+420>>2]=p;k=Q(Q(Q(X*k)-Q(G*c))-Q(y*f));N[a+416>>2]=k;m=Q(Q(m*f)+Q(Q(w*i)+Q(c*x)));N[a+408>>2]=m;l=Q(Q(l*f)+Q(Q(n*i)+Q(c*q)));N[a+404>>2]=l;f=Q(Q(v*f)+Q(Q(W*i)+Q(c*s)));N[a+400>>2]=f;c=N[d+460>>2];i=N[d+464>>2];v=N[d+456>>2];J[a+444>>2]=0;i=Q(m*i);N[a+440>>2]=i;c=Q(l*c);N[a+436>>2]=c;v=Q(f*v);N[a+432>>2]=v;s=N[b+460>>2];n=N[b+464>>2];q=N[b+456>>2];J[a+460>>2]=0;n=Q(j*n);N[a+456>>2]=n;s=Q(p*s);N[a+452>>2]=s;q=Q(k*q);N[a+448>>2]=q;N[a+464>>2]=Q(Q(i*m)+Q(Q(v*f)+Q(l*c)))+Q(Q(n*j)+Q(Q(q*k)+Q(p*s)));p=N[d+36>>2];m=N[d+20>>2];k=N[d+40>>2];l=N[d+8>>2];v=N[d+24>>2];i=N[d+44>>2];s=N[d+12>>2];n=N[d+28>>2];q=N[b+36>>2];w=N[b+20>>2];x=N[b+40>>2];y=N[b+8>>2];G=N[b+24>>2];H=N[b+44>>2];f=N[b+12>>2];I=N[b+28>>2];O=N[d+4>>2];S=N[b+4>>2];J[a+476>>2]=0;J[a+480>>2]=0;J[a+468>>2]=0;J[a+472>>2]=0;J[a+512>>2]=0;J[a+496>>2]=0;c=Q(Q(D*h)+Q(Q(B*g)+Q(e*E)));j=Q(-c);F=Q(f*j);f=Q(Q(M*h)+Q(Q(z*g)+Q(e*A)));e=Q(Q(t*h)+Q(Q(u*g)+Q(e*C)));g=Q(Q(F-Q(I*f))-Q(H*e));N[a+508>>2]=g;h=Q(Q(Q(y*j)-Q(G*f))-Q(x*e));N[a+504>>2]=h;j=Q(Q(Q(S*j)-Q(w*f))-Q(q*e));N[a+500>>2]=j;i=Q(Q(i*e)+Q(Q(s*c)+Q(f*n)));N[a+492>>2]=i;k=Q(Q(k*e)+Q(Q(l*c)+Q(f*v)));N[a+488>>2]=k;e=Q(Q(p*e)+Q(Q(O*c)+Q(f*m)));N[a+484>>2]=e;f=N[d+460>>2];c=N[d+464>>2];p=N[d+456>>2];J[a+528>>2]=0;c=Q(i*c);N[a+524>>2]=c;f=Q(k*f);N[a+520>>2]=f;p=Q(e*p);N[a+516>>2]=p;m=N[b+460>>2];t=N[b+464>>2];u=N[b+456>>2];J[a+724>>2]=0;J[a+544>>2]=0;t=Q(g*t);N[a+540>>2]=t;m=Q(h*m);N[a+536>>2]=m;u=Q(j*u);N[a+532>>2]=u;N[a+548>>2]=Q(Q(c*i)+Q(Q(p*e)+Q(k*f)))+Q(Q(t*g)+Q(Q(u*j)+Q(h*m)));e=N[a+652>>2];g=N[a+620>>2];h=N[a+636>>2];i=Q(Q(N[b+44>>2]*e)+Q(Q(N[b+36>>2]*g)+Q(h*N[b+40>>2])));k=N[d+44>>2];f=N[a+584>>2];p=N[d+36>>2];c=N[a+552>>2];j=N[a+568>>2];m=N[d+40>>2];n=Q(i*Q(Q(k*f)+Q(Q(p*c)+Q(j*m))));t=Q(Q(N[b+12>>2]*e)+Q(Q(N[b+4>>2]*g)+Q(h*N[b+8>>2])));u=N[d+12>>2];C=N[d+4>>2];D=N[d+8>>2];F=Q(t*Q(Q(u*f)+Q(Q(C*c)+Q(j*D))));E=N[d+28>>2];L=Q(E*f);f=N[d+20>>2];l=Q(f*c);c=N[d+24>>2];L=Q(L+Q(l+Q(j*c)));j=Q(Q(N[b+28>>2]*e)+Q(Q(N[b+20>>2]*g)+Q(h*N[b+24>>2])));e=N[a+588>>2];g=N[a+556>>2];h=N[a+572>>2];e=Q(Ia(Q(n+Q(F+Q(L*j))),Q(Q(i*Q(Q(k*e)+Q(Q(p*g)+Q(m*h))))+Q(Q(t*Q(Q(u*e)+Q(Q(C*g)+Q(D*h))))+Q(Q(Q(E*e)+Q(Q(f*g)+Q(c*h)))*j))))*N[a+732>>2]);N[a+728>>2]=e;Id(a+688|0,e);d=a;b=J[a+28>>2];h=N[a+592>>2];f=N[a+560>>2];c=N[a+576>>2];e=Q(Q(N[b+44>>2]*h)+Q(Q(N[b+36>>2]*f)+Q(c*N[b+40>>2])));g=Q(Q(N[b+12>>2]*h)+Q(Q(N[b+4>>2]*f)+Q(c*N[b+8>>2])));h=Q(Q(N[b+28>>2]*h)+Q(Q(N[b+20>>2]*f)+Q(c*N[b+24>>2])));a=J[a+32>>2];N[d+720>>2]=Q(1)/Q(Q(Q(e*Q(Q(e*N[b+364>>2])+Q(Q(N[b+332>>2]*g)+Q(h*N[b+348>>2]))))+Q(Q(g*Q(Q(N[b+356>>2]*e)+Q(Q(g*N[b+324>>2])+Q(h*N[b+340>>2]))))+Q(h*Q(Q(N[b+360>>2]*e)+Q(Q(N[b+328>>2]*g)+Q(h*N[b+344>>2]))))))+Q(Q(e*Q(Q(e*N[a+364>>2])+Q(Q(N[a+332>>2]*g)+Q(h*N[a+348>>2]))))+Q(Q(g*Q(Q(N[a+356>>2]*e)+Q(Q(g*N[a+324>>2])+Q(h*N[a+340>>2]))))+Q(h*Q(Q(N[a+360>>2]*e)+Q(Q(N[a+328>>2]*g)+Q(h*N[a+344>>2])))))));}sa=r+48|0;}function Vj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=sa-48|0;sa=h;e=N[a+48>>2];f=N[a+32>>2];j=Q(Q(1)/N[a+124>>2]);k=N[a- -64>>2];g=Q(Q(j*N[d+8>>2])+k);g=f>g?f:g;g=e<g?e:g;m=(g<Q(0)?-.5:.5)+ +g;a:{if(R(m)<2147483648){o=~~m;break a}o=-2147483648;}o=o+1|0;j=Q(Q(j*N[c+8>>2])+k);f=f>j?f:j;e=e<f?e:f;m=(e<Q(0)?-.5:.5)+ +e;b:{if(R(m)<2147483648){l=~~m;break b}l=-2147483648;}q=l-1|0;e=N[a+44>>2];f=N[a+28>>2];j=Q(Q(1)/N[a+120>>2]);k=N[a+60>>2];g=Q(Q(j*N[d+4>>2])+k);g=f>g?f:g;g=e<g?e:g;m=(g<Q(0)?-.5:.5)+ +g;c:{if(R(m)<2147483648){l=~~m;break c}l=-2147483648;}r=l+1|0;j=Q(Q(j*N[c+4>>2])+k);f=f>j?f:j;e=e<f?e:f;m=(e<Q(0)?-.5:.5)+ +e;d:{if(R(m)<2147483648){l=~~m;break d}l=-2147483648;}s=l-1|0;e=N[a+40>>2];f=N[a+24>>2];j=Q(Q(1)/N[a+116>>2]);k=N[a+56>>2];g=Q(Q(j*N[d>>2])+k);g=f>g?f:g;g=e<g?e:g;m=(g<Q(0)?-.5:.5)+ +g;e:{if(R(m)<2147483648){d=~~m;break e}d=-2147483648;}d=d+1|0;j=Q(Q(j*N[c>>2])+k);f=f>j?f:j;e=e<f?e:f;m=(e<Q(0)?-.5:.5)+ +e;f:{if(R(m)<2147483648){c=~~m;break f}c=-2147483648;}c=c-1|0;l=J[a+76>>2]-1|0;p=J[a+72>>2]-1|0;g:{h:{switch(J[a+112>>2]){case 0:l=(o|0)<(l|0)?o:l;n=(q|0)>0?q:0;p=(p|0)>(r|0)?r:p;t=(s|0)>0?s:0;break g;case 1:l=(o|0)<(l|0)?o:l;n=(q|0)>0?q:0;p=(d|0)<(p|0)?d:p;t=(c|0)>0?c:0;break g;case 2:break h;default:break g}}l=(l|0)>(r|0)?r:l;n=(s|0)>0?s:0;p=(d|0)<(p|0)?d:p;t=(c|0)>0?c:0;}if(!((p|0)<=(t|0)|(n|0)>=(l|0))){while(1){q=n&1;o=n+1|0;j=Q(o|0);k=Q(n|0);c=t;while(1){i:{j:{d=c;if(!(!(K[a+110|0]?q:1)|(K[a+108|0]|(c+n&1?0:K[a+109|0])))){g=Q(ua[J[J[a>>2]+68>>2]](a,d,n));k:{l:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+12>>2]=0;e=Q(k-Q(e*Q(.5)));f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(g-i);break k;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+12>>2]=0;e=Q(g-e);f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(k-Q(i*Q(.5)));break k;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+12>>2]=0;f=Q(g-f);e=Q(Q(d|0)-Q(e*Q(.5)));g=Q(k-Q(i*Q(.5)));break k;default:break l}}e=N[h+4>>2];f=N[h>>2];g=N[h+8>>2];}N[h>>2]=f*N[a+116>>2];N[h+4>>2]=e*N[a+120>>2];N[h+8>>2]=g*N[a+124>>2];g=Q(ua[J[J[a>>2]+68>>2]](a,d,o));m:{n:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+28>>2]=0;e=Q(j-Q(e*Q(.5)));f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(g-i);break m;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+28>>2]=0;e=Q(g-e);f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(j-Q(i*Q(.5)));break m;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+28>>2]=0;f=Q(g-f);e=Q(Q(d|0)-Q(e*Q(.5)));g=Q(j-Q(i*Q(.5)));break m;default:break n}}e=N[h+20>>2];f=N[h+16>>2];g=N[h+24>>2];}N[h+16>>2]=f*N[a+116>>2];N[h+20>>2]=e*N[a+120>>2];N[h+24>>2]=g*N[a+124>>2];c=d+1|0;g=Q(ua[J[J[a>>2]+68>>2]](a,c,n));o:{p:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+44>>2]=0;e=Q(k-Q(e*Q(.5)));f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(g-i);break o;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+44>>2]=0;e=Q(g-e);f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(k-Q(i*Q(.5)));break o;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+44>>2]=0;f=Q(g-f);e=Q(Q(c|0)-Q(e*Q(.5)));g=Q(k-Q(i*Q(.5)));break o;default:break p}}e=N[h+36>>2];f=N[h+32>>2];g=N[h+40>>2];}N[h+32>>2]=f*N[a+116>>2];N[h+36>>2]=e*N[a+120>>2];N[h+40>>2]=g*N[a+124>>2];ua[J[J[b>>2]+8>>2]](b,h,d,n);g=Q(ua[J[J[a>>2]+68>>2]](a,c,n));q:{r:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+12>>2]=0;e=Q(k-Q(e*Q(.5)));f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(g-i);break q;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+12>>2]=0;e=Q(g-e);f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(k-Q(i*Q(.5)));break q;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+12>>2]=0;f=Q(g-f);e=Q(Q(c|0)-Q(e*Q(.5)));g=Q(k-Q(i*Q(.5)));break q;default:break r}}e=N[h+4>>2];f=N[h>>2];g=N[h+8>>2];}N[h>>2]=f*N[a+116>>2];N[h+4>>2]=e*N[a+120>>2];N[h+8>>2]=g*N[a+124>>2];g=Q(ua[J[J[a>>2]+68>>2]](a,c,o));s:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+44>>2]=0;e=Q(j-Q(e*Q(.5)));f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(g-i);break i;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+44>>2]=0;e=Q(g-e);f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(j-Q(i*Q(.5)));break i;case 0:break s;default:break j}}e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+44>>2]=0;f=Q(g-f);e=Q(Q(c|0)-Q(e*Q(.5)));g=Q(j-Q(i*Q(.5)));break i}g=Q(ua[J[J[a>>2]+68>>2]](a,d,n));t:{u:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+12>>2]=0;e=Q(k-Q(e*Q(.5)));f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(g-i);break t;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+12>>2]=0;e=Q(g-e);f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(k-Q(i*Q(.5)));break t;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+12>>2]=0;f=Q(g-f);e=Q(Q(d|0)-Q(e*Q(.5)));g=Q(k-Q(i*Q(.5)));break t;default:break u}}e=N[h+4>>2];f=N[h>>2];g=N[h+8>>2];}N[h>>2]=f*N[a+116>>2];N[h+4>>2]=e*N[a+120>>2];N[h+8>>2]=g*N[a+124>>2];g=Q(ua[J[J[a>>2]+68>>2]](a,d,o));v:{w:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+28>>2]=0;e=Q(j-Q(e*Q(.5)));f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(g-i);break v;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+28>>2]=0;e=Q(g-e);f=Q(Q(d|0)-Q(f*Q(.5)));g=Q(j-Q(i*Q(.5)));break v;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+28>>2]=0;f=Q(g-f);e=Q(Q(d|0)-Q(e*Q(.5)));g=Q(j-Q(i*Q(.5)));break v;default:break w}}e=N[h+20>>2];f=N[h+16>>2];g=N[h+24>>2];}N[h+16>>2]=f*N[a+116>>2];N[h+20>>2]=e*N[a+120>>2];N[h+24>>2]=g*N[a+124>>2];c=d+1|0;g=Q(ua[J[J[a>>2]+68>>2]](a,c,o));x:{y:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+44>>2]=0;e=Q(j-Q(e*Q(.5)));f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(g-i);break x;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+44>>2]=0;e=Q(g-e);f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(j-Q(i*Q(.5)));break x;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+44>>2]=0;f=Q(g-f);e=Q(Q(c|0)-Q(e*Q(.5)));g=Q(j-Q(i*Q(.5)));break x;default:break y}}e=N[h+36>>2];f=N[h+32>>2];g=N[h+40>>2];}N[h+32>>2]=f*N[a+116>>2];N[h+36>>2]=e*N[a+120>>2];N[h+40>>2]=g*N[a+124>>2];ua[J[J[b>>2]+8>>2]](b,h,d,n);g=Q(ua[J[J[a>>2]+68>>2]](a,c,o));z:{A:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+28>>2]=0;e=Q(j-Q(e*Q(.5)));f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(g-i);break z;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+28>>2]=0;e=Q(g-e);f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(j-Q(i*Q(.5)));break z;case 0:e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+28>>2]=0;f=Q(g-f);e=Q(Q(c|0)-Q(e*Q(.5)));g=Q(j-Q(i*Q(.5)));break z;default:break A}}e=N[h+20>>2];f=N[h+16>>2];g=N[h+24>>2];}N[h+16>>2]=f*N[a+116>>2];N[h+20>>2]=e*N[a+120>>2];N[h+24>>2]=g*N[a+124>>2];g=Q(ua[J[J[a>>2]+68>>2]](a,c,n));B:{switch(J[a+112>>2]){case 2:f=N[a+88>>2];e=N[a+92>>2];i=N[a+64>>2];J[h+44>>2]=0;e=Q(k-Q(e*Q(.5)));f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(g-i);break i;case 1:f=N[a+88>>2];i=N[a+92>>2];e=N[a+60>>2];J[h+44>>2]=0;e=Q(g-e);f=Q(Q(c|0)-Q(f*Q(.5)));g=Q(k-Q(i*Q(.5)));break i;case 0:break B;default:break j}}e=N[a+88>>2];i=N[a+92>>2];f=N[a+56>>2];J[h+44>>2]=0;f=Q(g-f);e=Q(Q(c|0)-Q(e*Q(.5)));g=Q(k-Q(i*Q(.5)));break i}e=N[h+36>>2];f=N[h+32>>2];g=N[h+40>>2];}N[h+32>>2]=f*N[a+116>>2];N[h+36>>2]=e*N[a+120>>2];N[h+40>>2]=g*N[a+124>>2];ua[J[J[b>>2]+8>>2]](b,h,d,n);if((c|0)!=(p|0)){continue}break}n=o;if((l|0)!=(n|0)){continue}break}}sa=h+48|0;}function il(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;N[a+20>>2]=O[b+32>>3];N[a+24>>2]=O[b+40>>3];N[a+28>>2]=O[b+48>>3];N[a+32>>2]=O[b+56>>3];N[a+4>>2]=O[b>>3];N[a+8>>2]=O[b+8>>3];N[a+12>>2]=O[b+16>>3];N[a+16>>2]=O[b+24>>3];N[a+36>>2]=O[b+64>>3];N[a+40>>2]=O[b+72>>3];N[a+44>>2]=O[b+80>>3];N[a+48>>2]=O[b+88>>3];J[a+56>>2]=J[b+96>>2];H[a+60|0]=J[b+100>>2]!=0;f=J[a+88>>2];k=J[b+104>>2];a:{if((f|0)>=(k|0)){break a}if((k|0)>J[a+92>>2]){if(k){J[8456]=J[8456]+1;j=ua[J[8258]](k<<6,16)|0;c=J[a+88>>2];}else {c=f;}b:{if((c|0)<=0){break b}if((c|0)!=1){m=c&-2;while(1){h=l<<6;g=h+j|0;i=h+J[a+96>>2]|0;e=J[i+4>>2];J[g>>2]=J[i>>2];J[g+4>>2]=e;e=J[i+60>>2];J[g+56>>2]=J[i+56>>2];J[g+60>>2]=e;e=J[i+52>>2];J[g+48>>2]=J[i+48>>2];J[g+52>>2]=e;e=J[i+44>>2];J[g+40>>2]=J[i+40>>2];J[g+44>>2]=e;e=J[i+36>>2];J[g+32>>2]=J[i+32>>2];J[g+36>>2]=e;e=J[i+28>>2];J[g+24>>2]=J[i+24>>2];J[g+28>>2]=e;e=J[i+20>>2];J[g+16>>2]=J[i+16>>2];J[g+20>>2]=e;e=J[i+12>>2];J[g+8>>2]=J[i+8>>2];J[g+12>>2]=e;e=h|64;g=e+j|0;h=e+J[a+96>>2]|0;e=J[h+4>>2];J[g>>2]=J[h>>2];J[g+4>>2]=e;e=J[h+12>>2];J[g+8>>2]=J[h+8>>2];J[g+12>>2]=e;e=J[h+20>>2];J[g+16>>2]=J[h+16>>2];J[g+20>>2]=e;e=J[h+28>>2];J[g+24>>2]=J[h+24>>2];J[g+28>>2]=e;e=J[h+36>>2];J[g+32>>2]=J[h+32>>2];J[g+36>>2]=e;e=J[h+44>>2];J[g+40>>2]=J[h+40>>2];J[g+44>>2]=e;e=J[h+52>>2];J[g+48>>2]=J[h+48>>2];J[g+52>>2]=e;e=J[h+60>>2];J[g+56>>2]=J[h+56>>2];J[g+60>>2]=e;l=l+2|0;d=d+2|0;if((m|0)!=(d|0)){continue}break}}if(!(c&1)){break b}c=l<<6;d=c+j|0;e=c+J[a+96>>2]|0;c=J[e+4>>2];J[d>>2]=J[e>>2];J[d+4>>2]=c;c=J[e+60>>2];J[d+56>>2]=J[e+56>>2];J[d+60>>2]=c;c=J[e+52>>2];J[d+48>>2]=J[e+48>>2];J[d+52>>2]=c;c=J[e+44>>2];J[d+40>>2]=J[e+40>>2];J[d+44>>2]=c;c=J[e+36>>2];J[d+32>>2]=J[e+32>>2];J[d+36>>2]=c;c=J[e+28>>2];J[d+24>>2]=J[e+24>>2];J[d+28>>2]=c;c=J[e+20>>2];J[d+16>>2]=J[e+16>>2];J[d+20>>2]=c;c=J[e+12>>2];J[d+8>>2]=J[e+8>>2];J[d+12>>2]=c;}c=J[a+96>>2];if(!(c?!c|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+96>>2]=j;H[a+100|0]=1;J[a+92>>2]=k;}d=k+(f^-1)|0;c=k-f&3;if(c){j=0;while(1){e=J[a+96>>2]+(f<<6)|0;J[e>>2]=0;J[e+4>>2]=0;J[e+56>>2]=0;J[e+60>>2]=0;J[e+48>>2]=0;J[e+52>>2]=0;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;J[e+24>>2]=0;J[e+28>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(d>>>0<3){break a}while(1){d=f<<6;c=d+J[a+96>>2]|0;J[c>>2]=0;J[c+4>>2]=0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+J[a+96>>2]|0;J[c+120>>2]=0;J[c+124>>2]=0;J[c+112>>2]=0;J[c+116>>2]=0;J[c+104>>2]=0;J[c+108>>2]=0;J[c+96>>2]=0;J[c+100>>2]=0;J[c+88>>2]=0;J[c+92>>2]=0;J[c+80>>2]=0;J[c+84>>2]=0;J[c+72>>2]=0;J[c+76>>2]=0;c=c- -64|0;J[c>>2]=0;J[c+4>>2]=0;c=d+J[a+96>>2]|0;J[c+184>>2]=0;J[c+188>>2]=0;J[c+176>>2]=0;J[c+180>>2]=0;J[c+168>>2]=0;J[c+172>>2]=0;J[c+160>>2]=0;J[c+164>>2]=0;J[c+152>>2]=0;J[c+156>>2]=0;J[c+144>>2]=0;J[c+148>>2]=0;J[c+136>>2]=0;J[c+140>>2]=0;J[c+128>>2]=0;J[c+132>>2]=0;c=d+J[a+96>>2]|0;J[c+248>>2]=0;J[c+252>>2]=0;J[c+240>>2]=0;J[c+244>>2]=0;J[c+232>>2]=0;J[c+236>>2]=0;J[c+224>>2]=0;J[c+228>>2]=0;J[c+216>>2]=0;J[c+220>>2]=0;J[c+208>>2]=0;J[c+212>>2]=0;J[c+200>>2]=0;J[c+204>>2]=0;J[c+192>>2]=0;J[c+196>>2]=0;f=f+4|0;if((k|0)!=(f|0)){continue}break}}J[a+88>>2]=k;if((k|0)>0){c=J[a+96>>2];d=J[b+112>>2];j=0;while(1){f=c+(j<<6)|0;N[f+16>>2]=O[d+32>>3];N[f+20>>2]=O[d+40>>3];N[f+24>>2]=O[d+48>>3];N[f+28>>2]=O[d+56>>3];N[f>>2]=O[d>>3];N[f+4>>2]=O[d+8>>3];N[f+8>>2]=O[d+16>>3];N[f+12>>2]=O[d+24>>3];J[f+32>>2]=J[d+64>>2];J[f+36>>2]=J[d+68>>2];J[f+40>>2]=J[d+72>>2];d=d+80|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}d=J[a+128>>2];n=J[b+108>>2];c:{if((d|0)>=(n|0)){break c}if((n|0)>J[a+132>>2]){d:{if(!n){l=0;c=d;break d}J[8456]=J[8456]+1;l=ua[J[8258]](n<<4,16)|0;c=J[a+128>>2];}e:{if((c|0)<=0){break e}f=0;if((c|0)!=1){m=c&-2;i=0;while(1){h=f<<4;g=h+l|0;k=h+J[a+136>>2]|0;e=J[k+4>>2];J[g>>2]=J[k>>2];J[g+4>>2]=e;e=J[k+12>>2];J[g+8>>2]=J[k+8>>2];J[g+12>>2]=e;e=h|16;g=e+l|0;h=e+J[a+136>>2]|0;e=J[h+4>>2];J[g>>2]=J[h>>2];J[g+4>>2]=e;e=J[h+12>>2];J[g+8>>2]=J[h+8>>2];J[g+12>>2]=e;f=f+2|0;i=i+2|0;if((m|0)!=(i|0)){continue}break}}if(!(c&1)){break e}c=f<<4;f=c+l|0;e=c+J[a+136>>2]|0;c=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=c;c=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=c;}c=J[a+136>>2];if(!(c?!c|!K[a+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+136>>2]=l;H[a+140|0]=1;J[a+132>>2]=n;}e=n+(d^-1)|0;c=n-d&3;if(c){f=0;while(1){g=J[a+136>>2]+(d<<4)|0;J[g>>2]=0;J[g+4>>2]=0;J[g+8>>2]=0;J[g+12>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(e>>>0<3){break c}while(1){f=d<<4;c=f+J[a+136>>2]|0;J[c>>2]=0;J[c+4>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=f+J[a+136>>2]|0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;c=f+J[a+136>>2]|0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;c=f+J[a+136>>2]|0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;d=d+4|0;if((n|0)!=(d|0)){continue}break}}J[a+128>>2]=n;if((n|0)>0){c=J[a+136>>2];d=J[b+116>>2];j=0;while(1){f=c+(j<<4)|0;J[f+12>>2]=J[d+12>>2];I[f+6>>1]=L[d+6>>1];I[f+8>>1]=L[d+8>>1];I[f+10>>1]=L[d+10>>1];I[f>>1]=L[d>>1];I[f+2>>1]=L[d+2>>1];I[f+4>>1]=L[d+4>>1];d=d+16|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}J[a+144>>2]=J[b+120>>2];d=J[a+152>>2];h=J[b+124>>2];if(!((d|0)>=(h|0)|(h|0)<=J[a+156>>2])){f:{if(!h){i=0;break f}J[8456]=J[8456]+1;i=ua[J[8258]](h<<5,16)|0;d=J[a+152>>2];}g:{if((d|0)<=0){break g}l=0;if((d|0)!=1){e=d&-2;j=0;while(1){g=l<<5;f=g+i|0;m=g+J[a+160>>2]|0;c=J[m+4>>2];J[f>>2]=J[m>>2];J[f+4>>2]=c;c=J[m+28>>2];J[f+24>>2]=J[m+24>>2];J[f+28>>2]=c;c=J[m+20>>2];J[f+16>>2]=J[m+16>>2];J[f+20>>2]=c;c=J[m+12>>2];J[f+8>>2]=J[m+8>>2];J[f+12>>2]=c;c=g|32;f=c+i|0;g=c+J[a+160>>2]|0;c=J[g+4>>2];J[f>>2]=J[g>>2];J[f+4>>2]=c;c=J[g+12>>2];J[f+8>>2]=J[g+8>>2];J[f+12>>2]=c;c=J[g+20>>2];J[f+16>>2]=J[g+16>>2];J[f+20>>2]=c;c=J[g+28>>2];J[f+24>>2]=J[g+24>>2];J[f+28>>2]=c;l=l+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(!(d&1)){break g}c=l<<5;f=c+i|0;d=c+J[a+160>>2]|0;c=J[d+4>>2];J[f>>2]=J[d>>2];J[f+4>>2]=c;c=J[d+28>>2];J[f+24>>2]=J[d+24>>2];J[f+28>>2]=c;c=J[d+20>>2];J[f+16>>2]=J[d+16>>2];J[f+20>>2]=c;c=J[d+12>>2];J[f+8>>2]=J[d+8>>2];J[f+12>>2]=c;}c=J[a+160>>2];if(!(c?!c|!K[a+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+160>>2]=i;H[a+164|0]=1;J[a+156>>2]=h;}J[a+152>>2]=h;if((h|0)>0){c=J[a+160>>2];d=J[b+128>>2];a=0;while(1){b=c+(a<<5)|0;I[b+6>>1]=L[d+14>>1];I[b+8>>1]=L[d+16>>1];I[b+10>>1]=L[d+18>>1];I[b>>1]=L[d+8>>1];I[b+2>>1]=L[d+10>>1];I[b+4>>1]=L[d+12>>1];J[b+12>>2]=J[d>>2];J[b+16>>2]=J[d+4>>2];d=d+20|0;a=a+1|0;if((h|0)!=(a|0)){continue}break}}}function jl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;N[a+20>>2]=N[b+16>>2];N[a+24>>2]=N[b+20>>2];N[a+28>>2]=N[b+24>>2];N[a+32>>2]=N[b+28>>2];N[a+4>>2]=N[b>>2];N[a+8>>2]=N[b+4>>2];N[a+12>>2]=N[b+8>>2];N[a+16>>2]=N[b+12>>2];N[a+36>>2]=N[b+32>>2];N[a+40>>2]=N[b+36>>2];N[a+44>>2]=N[b+40>>2];N[a+48>>2]=N[b+44>>2];J[a+56>>2]=J[b+48>>2];H[a+60|0]=J[b+52>>2]!=0;f=J[a+88>>2];k=J[b+56>>2];a:{if((f|0)>=(k|0)){break a}if((k|0)>J[a+92>>2]){if(k){J[8456]=J[8456]+1;j=ua[J[8258]](k<<6,16)|0;c=J[a+88>>2];}else {c=f;}b:{if((c|0)<=0){break b}if((c|0)!=1){m=c&-2;while(1){h=l<<6;g=h+j|0;i=h+J[a+96>>2]|0;e=J[i+4>>2];J[g>>2]=J[i>>2];J[g+4>>2]=e;e=J[i+60>>2];J[g+56>>2]=J[i+56>>2];J[g+60>>2]=e;e=J[i+52>>2];J[g+48>>2]=J[i+48>>2];J[g+52>>2]=e;e=J[i+44>>2];J[g+40>>2]=J[i+40>>2];J[g+44>>2]=e;e=J[i+36>>2];J[g+32>>2]=J[i+32>>2];J[g+36>>2]=e;e=J[i+28>>2];J[g+24>>2]=J[i+24>>2];J[g+28>>2]=e;e=J[i+20>>2];J[g+16>>2]=J[i+16>>2];J[g+20>>2]=e;e=J[i+12>>2];J[g+8>>2]=J[i+8>>2];J[g+12>>2]=e;e=h|64;g=e+j|0;h=e+J[a+96>>2]|0;e=J[h+4>>2];J[g>>2]=J[h>>2];J[g+4>>2]=e;e=J[h+12>>2];J[g+8>>2]=J[h+8>>2];J[g+12>>2]=e;e=J[h+20>>2];J[g+16>>2]=J[h+16>>2];J[g+20>>2]=e;e=J[h+28>>2];J[g+24>>2]=J[h+24>>2];J[g+28>>2]=e;e=J[h+36>>2];J[g+32>>2]=J[h+32>>2];J[g+36>>2]=e;e=J[h+44>>2];J[g+40>>2]=J[h+40>>2];J[g+44>>2]=e;e=J[h+52>>2];J[g+48>>2]=J[h+48>>2];J[g+52>>2]=e;e=J[h+60>>2];J[g+56>>2]=J[h+56>>2];J[g+60>>2]=e;l=l+2|0;d=d+2|0;if((m|0)!=(d|0)){continue}break}}if(!(c&1)){break b}c=l<<6;d=c+j|0;e=c+J[a+96>>2]|0;c=J[e+4>>2];J[d>>2]=J[e>>2];J[d+4>>2]=c;c=J[e+60>>2];J[d+56>>2]=J[e+56>>2];J[d+60>>2]=c;c=J[e+52>>2];J[d+48>>2]=J[e+48>>2];J[d+52>>2]=c;c=J[e+44>>2];J[d+40>>2]=J[e+40>>2];J[d+44>>2]=c;c=J[e+36>>2];J[d+32>>2]=J[e+32>>2];J[d+36>>2]=c;c=J[e+28>>2];J[d+24>>2]=J[e+24>>2];J[d+28>>2]=c;c=J[e+20>>2];J[d+16>>2]=J[e+16>>2];J[d+20>>2]=c;c=J[e+12>>2];J[d+8>>2]=J[e+8>>2];J[d+12>>2]=c;}c=J[a+96>>2];if(!(c?!c|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+96>>2]=j;H[a+100|0]=1;J[a+92>>2]=k;}d=k+(f^-1)|0;c=k-f&3;if(c){j=0;while(1){e=J[a+96>>2]+(f<<6)|0;J[e>>2]=0;J[e+4>>2]=0;J[e+56>>2]=0;J[e+60>>2]=0;J[e+48>>2]=0;J[e+52>>2]=0;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;J[e+24>>2]=0;J[e+28>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(d>>>0<3){break a}while(1){d=f<<6;c=d+J[a+96>>2]|0;J[c>>2]=0;J[c+4>>2]=0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+J[a+96>>2]|0;J[c+120>>2]=0;J[c+124>>2]=0;J[c+112>>2]=0;J[c+116>>2]=0;J[c+104>>2]=0;J[c+108>>2]=0;J[c+96>>2]=0;J[c+100>>2]=0;J[c+88>>2]=0;J[c+92>>2]=0;J[c+80>>2]=0;J[c+84>>2]=0;J[c+72>>2]=0;J[c+76>>2]=0;c=c- -64|0;J[c>>2]=0;J[c+4>>2]=0;c=d+J[a+96>>2]|0;J[c+184>>2]=0;J[c+188>>2]=0;J[c+176>>2]=0;J[c+180>>2]=0;J[c+168>>2]=0;J[c+172>>2]=0;J[c+160>>2]=0;J[c+164>>2]=0;J[c+152>>2]=0;J[c+156>>2]=0;J[c+144>>2]=0;J[c+148>>2]=0;J[c+136>>2]=0;J[c+140>>2]=0;J[c+128>>2]=0;J[c+132>>2]=0;c=d+J[a+96>>2]|0;J[c+248>>2]=0;J[c+252>>2]=0;J[c+240>>2]=0;J[c+244>>2]=0;J[c+232>>2]=0;J[c+236>>2]=0;J[c+224>>2]=0;J[c+228>>2]=0;J[c+216>>2]=0;J[c+220>>2]=0;J[c+208>>2]=0;J[c+212>>2]=0;J[c+200>>2]=0;J[c+204>>2]=0;J[c+192>>2]=0;J[c+196>>2]=0;f=f+4|0;if((k|0)!=(f|0)){continue}break}}J[a+88>>2]=k;if((k|0)>0){c=J[a+96>>2];d=J[b+64>>2];j=0;while(1){f=c+(j<<6)|0;N[f+16>>2]=N[d+16>>2];N[f+20>>2]=N[d+20>>2];N[f+24>>2]=N[d+24>>2];N[f+28>>2]=N[d+28>>2];N[f>>2]=N[d>>2];N[f+4>>2]=N[d+4>>2];N[f+8>>2]=N[d+8>>2];N[f+12>>2]=N[d+12>>2];J[f+32>>2]=J[d+32>>2];J[f+36>>2]=J[d+36>>2];J[f+40>>2]=J[d+40>>2];d=d+48|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}d=J[a+128>>2];n=J[b+60>>2];c:{if((d|0)>=(n|0)){break c}if((n|0)>J[a+132>>2]){d:{if(!n){l=0;c=d;break d}J[8456]=J[8456]+1;l=ua[J[8258]](n<<4,16)|0;c=J[a+128>>2];}e:{if((c|0)<=0){break e}f=0;if((c|0)!=1){m=c&-2;i=0;while(1){h=f<<4;g=h+l|0;k=h+J[a+136>>2]|0;e=J[k+4>>2];J[g>>2]=J[k>>2];J[g+4>>2]=e;e=J[k+12>>2];J[g+8>>2]=J[k+8>>2];J[g+12>>2]=e;e=h|16;g=e+l|0;h=e+J[a+136>>2]|0;e=J[h+4>>2];J[g>>2]=J[h>>2];J[g+4>>2]=e;e=J[h+12>>2];J[g+8>>2]=J[h+8>>2];J[g+12>>2]=e;f=f+2|0;i=i+2|0;if((m|0)!=(i|0)){continue}break}}if(!(c&1)){break e}c=f<<4;f=c+l|0;e=c+J[a+136>>2]|0;c=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=c;c=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=c;}c=J[a+136>>2];if(!(c?!c|!K[a+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+136>>2]=l;H[a+140|0]=1;J[a+132>>2]=n;}e=n+(d^-1)|0;c=n-d&3;if(c){f=0;while(1){g=J[a+136>>2]+(d<<4)|0;J[g>>2]=0;J[g+4>>2]=0;J[g+8>>2]=0;J[g+12>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(e>>>0<3){break c}while(1){f=d<<4;c=f+J[a+136>>2]|0;J[c>>2]=0;J[c+4>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=f+J[a+136>>2]|0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;c=f+J[a+136>>2]|0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;c=f+J[a+136>>2]|0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;d=d+4|0;if((n|0)!=(d|0)){continue}break}}J[a+128>>2]=n;if((n|0)>0){c=J[a+136>>2];d=J[b+68>>2];j=0;while(1){f=c+(j<<4)|0;J[f+12>>2]=J[d+12>>2];I[f+6>>1]=L[d+6>>1];I[f+8>>1]=L[d+8>>1];I[f+10>>1]=L[d+10>>1];I[f>>1]=L[d>>1];I[f+2>>1]=L[d+2>>1];I[f+4>>1]=L[d+4>>1];d=d+16|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}J[a+144>>2]=J[b+76>>2];d=J[a+152>>2];h=J[b+80>>2];if(!((d|0)>=(h|0)|(h|0)<=J[a+156>>2])){f:{if(!h){i=0;break f}J[8456]=J[8456]+1;i=ua[J[8258]](h<<5,16)|0;d=J[a+152>>2];}g:{if((d|0)<=0){break g}l=0;if((d|0)!=1){e=d&-2;j=0;while(1){g=l<<5;f=g+i|0;m=g+J[a+160>>2]|0;c=J[m+4>>2];J[f>>2]=J[m>>2];J[f+4>>2]=c;c=J[m+28>>2];J[f+24>>2]=J[m+24>>2];J[f+28>>2]=c;c=J[m+20>>2];J[f+16>>2]=J[m+16>>2];J[f+20>>2]=c;c=J[m+12>>2];J[f+8>>2]=J[m+8>>2];J[f+12>>2]=c;c=g|32;f=c+i|0;g=c+J[a+160>>2]|0;c=J[g+4>>2];J[f>>2]=J[g>>2];J[f+4>>2]=c;c=J[g+12>>2];J[f+8>>2]=J[g+8>>2];J[f+12>>2]=c;c=J[g+20>>2];J[f+16>>2]=J[g+16>>2];J[f+20>>2]=c;c=J[g+28>>2];J[f+24>>2]=J[g+24>>2];J[f+28>>2]=c;l=l+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(!(d&1)){break g}c=l<<5;f=c+i|0;d=c+J[a+160>>2]|0;c=J[d+4>>2];J[f>>2]=J[d>>2];J[f+4>>2]=c;c=J[d+28>>2];J[f+24>>2]=J[d+24>>2];J[f+28>>2]=c;c=J[d+20>>2];J[f+16>>2]=J[d+16>>2];J[f+20>>2]=c;c=J[d+12>>2];J[f+8>>2]=J[d+8>>2];J[f+12>>2]=c;}c=J[a+160>>2];if(!(c?!c|!K[a+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+160>>2]=i;H[a+164|0]=1;J[a+156>>2]=h;}J[a+152>>2]=h;if((h|0)>0){c=J[a+160>>2];d=J[b+72>>2];a=0;while(1){b=c+(a<<5)|0;I[b+6>>1]=L[d+14>>1];I[b+8>>1]=L[d+16>>1];I[b+10>>1]=L[d+18>>1];I[b>>1]=L[d+8>>1];I[b+2>>1]=L[d+10>>1];I[b+4>>1]=L[d+12>>1];J[b+12>>2]=J[d>>2];J[b+16>>2]=J[d+4>>2];d=d+20|0;a=a+1|0;if((h|0)!=(a|0)){continue}break}}}function Yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=0,o=Q(0),p=0,q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),P=Q(0),S=Q(0),T=Q(0),U=Q(0),V=0,W=Q(0),X=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0),da=Q(0),ea=Q(0),fa=Q(0),ga=Q(0),ha=Q(0),ia=0,ja=0,ka=Q(0),la=Q(0),ma=0,na=Q(0);d=sa-48|0;sa=d;a:{if(!J[a+12>>2]){break a}n=K[a+16|0];k=n?c:b;f=J[k+12>>2];y=N[f+56>>2];z=N[f+52>>2];A=N[f+48>>2];p=n?b:c;n=J[p+12>>2];B=N[n+56>>2];fa=N[n+48>>2];C=N[n+52>>2];k=J[k+4>>2];w=N[f+32>>2];D=N[f+16>>2];E=N[f>>2];F=N[f+36>>2];m=N[f+20>>2];s=N[f+4>>2];h=N[n+40>>2];j=N[n+24>>2];g=N[n+8>>2];i=N[n+32>>2];o=N[n+16>>2];r=N[n>>2];t=N[n+36>>2];l=N[f+40>>2];u=N[n+20>>2];H=N[f+24>>2];x=N[n+4>>2];I=N[f+8>>2];n=J[p+4>>2];V=n- -64|0;L=N[V>>2];v=N[n+56>>2];M=N[n+60>>2];J[d+28>>2]=0;X=Q(Q(i*l)+Q(Q(r*I)+Q(H*o)));v=Q(-v);Z=Q(Q(t*l)+Q(Q(x*I)+Q(H*u)));l=Q(Q(h*l)+Q(Q(g*I)+Q(H*j)));N[d+24>>2]=Q(Q(X*v)-Q(M*Z))-Q(L*l);H=Q(Q(i*F)+Q(Q(r*s)+Q(m*o)));I=Q(Q(t*F)+Q(Q(x*s)+Q(m*u)));_=Q(Q(h*F)+Q(Q(g*s)+Q(m*j)));N[d+20>>2]=Q(Q(H*v)-Q(M*I))-Q(L*_);$=Q(Q(i*w)+Q(Q(r*E)+Q(D*o)));q=M;M=Q(Q(t*w)+Q(Q(x*E)+Q(D*u)));ga=L;L=Q(Q(h*w)+Q(Q(g*E)+Q(D*j)));N[d+16>>2]=Q(Q($*v)-Q(q*M))-Q(ga*L);ua[J[J[k>>2]+64>>2]](d+32|0,k,d+16|0);f=J[p+12>>2];v=N[f+48>>2];T=N[f+32>>2];U=N[f+16>>2];q=N[f+8>>2];P=N[f+4>>2];O=N[f>>2];S=N[f+56>>2];G=N[f+52>>2];W=N[f+40>>2];aa=N[f+36>>2];ha=N[f+24>>2];ba=N[f+20>>2];ca=N[n+72>>2];F=N[V>>2];m=N[n+56>>2];s=N[n+60>>2];w=N[d+40>>2];D=N[d+32>>2];E=N[d+36>>2];f=J[a+12>>2];da=N[f+848>>2];J[e+4>>2]=f;ea=Q(Q(y*h)+Q(Q(A*g)+Q(z*j)));ga=g;g=Q(-fa);l=Q(Q(ea+Q(Q(Q(ga*g)-Q(j*C))-Q(h*B)))+Q(Q(w*l)+Q(Q(D*L)+Q(_*E))));o=Q(Q(Q(Q(y*i)+Q(Q(A*r)+Q(z*o)))+Q(Q(Q(r*g)-Q(o*C))-Q(i*B)))+Q(Q(w*X)+Q(Q(D*$)+Q(H*E))));r=Q(Q(Q(Q(y*t)+Q(Q(A*x)+Q(z*u)))+Q(Q(Q(x*g)-Q(u*C))-Q(t*B)))+Q(Q(w*Z)+Q(Q(D*M)+Q(I*E))));h=Q(Q(Q(F*l)+Q(Q(m*o)+Q(s*r)))-ca);if(h<da){f=J[p+12>>2];t=N[f+24>>2];u=N[f+20>>2];x=N[f+40>>2];y=N[f+36>>2];z=N[f+16>>2];A=N[f+32>>2];j=N[n+64>>2];B=N[f+8>>2];g=N[n+56>>2];C=N[f>>2];i=N[n+60>>2];w=N[f+4>>2];J[d+28>>2]=0;N[d+16>>2]=Q(B*j)+Q(Q(C*g)+Q(w*i));N[d+24>>2]=Q(x*j)+Q(Q(A*g)+Q(i*y));N[d+20>>2]=Q(t*j)+Q(Q(z*g)+Q(i*u));J[d+12>>2]=0;j=Q(l-Q(F*h));g=Q(o-Q(m*h));i=Q(r-Q(s*h));N[d+8>>2]=Q(Q(j*W)+Q(Q(g*T)+Q(i*aa)))+S;N[d+4>>2]=Q(Q(j*ha)+Q(Q(g*U)+Q(i*ba)))+G;N[d>>2]=Q(Q(j*q)+Q(Q(g*O)+Q(P*i)))+v;ua[J[J[e>>2]+16>>2]](e,d+16|0,d,h);}b:{if(J[k+4>>2]>6|J[J[e+4>>2]+844>>2]>=J[a+24>>2]){break b}j=N[n+64>>2];c:{if(Q(R(j))>Q(.7071067690849304)){h=N[n+60>>2];g=Q(Q(1)/Q(Y(Q(Q(h*h)+Q(j*j)))));h=Q(h*g);j=Q(g*Q(-j));g=Q(0);break c}h=N[n+56>>2];g=N[n+60>>2];i=Q(Q(1)/Q(Y(Q(Q(h*h)+Q(g*g)))));j=Q(h*i);h=Q(0);g=Q(i*Q(-g));}V=0;i=Q(ua[J[J[k>>2]+16>>2]](k));i=Q(N[8265]/i);i=i>Q(.39269909262657166)?Q(.19634954631328583):Q(i*Q(.5));o=Na(i);f=J[a+20>>2];H=Ma(i);if((f|0)<=0){break b}q=h;h=Q(o/Q(Y(Q(Q(h*h)+Q(Q(g*g)+Q(j*j))))));I=Q(q*h);L=Q(j*h);M=Q(g*h);while(1){j=N[n+60>>2];i=N[n+56>>2];h=N[n+64>>2];g=Q(Q(Q(Q(6.2831854820251465)/Q(f|0))*Q(V|0))*Q(.5));o=Q(Na(g)/Q(Y(Q(Q(h*h)+Q(Q(i*i)+Q(j*j))))));h=Q(h*o);j=Q(j*o);g=Ma(g);i=Q(i*o);o=Q(Q(h*I)+Q(Q(j*L)+Q(Q(g*H)+Q(M*i))));r=Q(Q(h*L)+Q(Q(Q(g*M)-Q(H*i))-Q(j*I)));t=Q(Q(i*I)+Q(Q(Q(g*L)-Q(H*j))-Q(h*M)));u=Q(Q(j*M)+Q(Q(Q(g*I)-Q(H*h))-Q(i*L)));N[d+28>>2]=Q(Q(Q(o*g)-Q(i*r))-Q(t*j))-Q(u*h);N[d+24>>2]=Q(Q(r*j)+Q(Q(o*h)+Q(g*u)))-Q(t*i);N[d+20>>2]=Q(Q(u*i)+Q(Q(o*j)+Q(g*t)))-Q(r*h);N[d+16>>2]=Q(Q(t*h)+Q(Q(o*i)+Q(g*r)))-Q(u*j);f=sa-48|0;sa=f;p=K[a+16|0];ia=p?c:b;k=J[ia+12>>2];fa=N[k+56>>2];X=N[k+52>>2];Z=N[k+48>>2];ja=p?b:c;p=J[ja+12>>2];_=N[p+56>>2];aa=N[p+48>>2];$=N[p+52>>2];ia=J[ia+4>>2];h=N[p+40>>2];j=N[p+8>>2];g=N[p+24>>2];i=N[p+32>>2];o=N[p>>2];r=N[p+16>>2];t=N[p+36>>2];y=N[k+40>>2];z=N[k+32>>2];A=N[k+36>>2];u=N[p+4>>2];B=N[k+8>>2];C=N[k>>2];w=N[k+4>>2];x=N[p+20>>2];D=N[k+24>>2];E=N[k+16>>2];F=N[k+20>>2];s=N[d+28>>2];v=N[d+24>>2];m=N[d+16>>2];l=N[d+20>>2];p=J[ja+4>>2];ma=p- -64|0;T=N[ma>>2];ha=N[p+56>>2];U=N[p+60>>2];J[f+28>>2]=0;q=Q(Q(2)/Q(Q(s*s)+Q(Q(v*v)+Q(Q(m*m)+Q(l*l)))));G=Q(m*q);ba=Q(m*G);P=Q(l*q);ca=Q(l*P);O=Q(Q(1)-Q(ba+ca));q=Q(v*q);da=Q(m*q);ea=Q(s*P);S=Q(da+ea);ka=Q(l*q);la=Q(s*G);l=Q(ka-la);G=Q(Q(y*O)+Q(Q(z*S)+Q(A*l)));W=Q(Q(O*B)+Q(Q(S*C)+Q(w*l)));l=Q(Q(O*D)+Q(Q(S*E)+Q(F*l)));O=Q(-ha);N[f+24>>2]=Q(Q(Q(Q(i*G)+Q(Q(o*W)+Q(r*l)))*O)-Q(U*Q(Q(t*G)+Q(Q(u*W)+Q(x*l)))))-Q(T*Q(Q(h*G)+Q(Q(j*W)+Q(g*l))));l=Q(ka+la);P=Q(m*P);S=Q(s*q);m=Q(P-S);G=Q(v*q);s=Q(Q(1)-Q(ba+G));v=Q(Q(y*l)+Q(Q(z*m)+Q(A*s)));q=Q(Q(l*B)+Q(Q(m*C)+Q(w*s)));m=Q(Q(l*D)+Q(Q(m*E)+Q(F*s)));N[f+20>>2]=Q(Q(Q(Q(i*v)+Q(Q(o*q)+Q(r*m)))*O)-Q(U*Q(Q(t*v)+Q(Q(u*q)+Q(x*m)))))-Q(T*Q(Q(h*v)+Q(Q(j*q)+Q(g*m))));m=Q(da-ea);s=Q(Q(1)-Q(ca+G));l=Q(P+S);v=Q(Q(y*m)+Q(Q(z*s)+Q(A*l)));q=Q(Q(m*B)+Q(Q(s*C)+Q(w*l)));m=Q(Q(m*D)+Q(Q(s*E)+Q(F*l)));N[f+16>>2]=Q(Q(Q(Q(i*v)+Q(Q(o*q)+Q(r*m)))*O)-Q(U*Q(Q(t*v)+Q(Q(u*q)+Q(x*m)))))-Q(T*Q(Q(h*v)+Q(Q(j*q)+Q(g*m))));ua[J[J[ia>>2]+64>>2]](f+32|0,ia,f+16|0);k=J[ja+12>>2];P=N[k+48>>2];O=N[k+32>>2];S=N[k+16>>2];G=N[k+8>>2];W=N[k+4>>2];ha=N[k>>2];ba=N[k+56>>2];ca=N[k+52>>2];da=N[k+40>>2];ea=N[k+36>>2];ka=N[k+24>>2];la=N[k+20>>2];na=N[p+72>>2];v=N[ma>>2];T=N[p+56>>2];U=N[p+60>>2];m=N[f+40>>2];s=N[f+32>>2];l=N[f+36>>2];k=J[a+12>>2];q=N[k+848>>2];J[e+4>>2]=k;ga=q;q=Q(-aa);aa=Q(Q(Q(Q(fa*h)+Q(Q(Z*j)+Q(X*g)))+Q(Q(Q(j*q)-Q(g*$))-Q(h*_)))+Q(Q(m*Q(Q(y*h)+Q(Q(B*j)+Q(D*g))))+Q(Q(s*Q(Q(z*h)+Q(Q(C*j)+Q(E*g))))+Q(l*Q(Q(A*h)+Q(Q(w*j)+Q(F*g)))))));o=Q(Q(Q(Q(fa*i)+Q(Q(Z*o)+Q(X*r)))+Q(Q(Q(o*q)-Q(r*$))-Q(i*_)))+Q(Q(m*Q(Q(y*i)+Q(Q(B*o)+Q(D*r))))+Q(Q(s*Q(Q(z*i)+Q(Q(C*o)+Q(E*r))))+Q(l*Q(Q(A*i)+Q(Q(w*o)+Q(F*r)))))));r=Q(Q(Q(Q(fa*t)+Q(Q(Z*u)+Q(X*x)))+Q(Q(Q(u*q)-Q(x*$))-Q(t*_)))+Q(Q(m*Q(Q(y*t)+Q(Q(B*u)+Q(D*x))))+Q(Q(s*Q(Q(z*t)+Q(Q(C*u)+Q(E*x))))+Q(l*Q(Q(A*t)+Q(Q(w*u)+Q(F*x)))))));h=Q(Q(Q(v*aa)+Q(Q(T*o)+Q(U*r)))-na);if(ga>h){k=J[ja+12>>2];t=N[k+24>>2];u=N[k+20>>2];x=N[k+40>>2];y=N[k+36>>2];z=N[k+16>>2];A=N[k+32>>2];j=N[p+64>>2];B=N[k+8>>2];g=N[p+56>>2];C=N[k>>2];i=N[p+60>>2];w=N[k+4>>2];J[f+28>>2]=0;N[f+16>>2]=Q(B*j)+Q(Q(C*g)+Q(w*i));N[f+24>>2]=Q(x*j)+Q(Q(A*g)+Q(i*y));N[f+20>>2]=Q(t*j)+Q(Q(z*g)+Q(i*u));J[f+12>>2]=0;j=Q(aa-Q(v*h));g=Q(o-Q(T*h));i=Q(r-Q(U*h));N[f+8>>2]=Q(Q(j*da)+Q(Q(g*O)+Q(i*ea)))+ba;N[f+4>>2]=Q(Q(j*ka)+Q(Q(g*S)+Q(i*la)))+ca;N[f>>2]=Q(Q(j*G)+Q(Q(g*ha)+Q(W*i)))+P;ua[J[J[e>>2]+16>>2]](e,f+16|0,f,h);}sa=f+48|0;f=J[a+20>>2];V=V+1|0;if((f|0)>(V|0)){continue}break}}if(!K[a+8|0]|!J[J[a+12>>2]+844>>2]){break a}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];f=J[J[e+8>>2]+8>>2];b=(c|0)==(f|0);k=a;a=J[J[e+12>>2]+8>>2];Ua(k,(b?c:a)+4|0,(b?a:f)+4|0);}sa=d+48|0;}function db(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=Q(0),l=0,m=Q(0),n=Q(0),o=0,p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0);g=sa-256|0;sa=g;h=J[b+212>>2];a:{if((h|0)>=0){break a}b:{h=J[b+252>>2];if(!(h&2)){break b}h=h<<30>>31&b;if(N[h+404>>2]==Q(0)&!(K[h+204|0]&2)){break b}h=J[a+8>>2];Fa(g+12|0,0,244);d=h;e=d;c:{if(J[a+12>>2]!=(d|0)){break c}l=d?d<<1:1;e=h;if((l|0)<=(d|0)){break c}if(l){J[8456]=J[8456]+1;i=ua[J[8258]](P(l,244),16)|0;d=J[a+8>>2];}else {d=h;}if((d|0)>0){while(1){e=P(o,244);f=e+i|0;e=e+J[a+16>>2]|0;j=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=j;j=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=j;j=J[e+28>>2];J[f+24>>2]=J[e+24>>2];J[f+28>>2]=j;j=J[e+20>>2];J[f+16>>2]=J[e+16>>2];J[f+20>>2]=j;j=J[e+44>>2];J[f+40>>2]=J[e+40>>2];J[f+44>>2]=j;j=J[e+36>>2];J[f+32>>2]=J[e+32>>2];J[f+36>>2]=j;j=J[e+52>>2];J[f+48>>2]=J[e+48>>2];J[f+52>>2]=j;j=J[e+60>>2];J[f+56>>2]=J[e+56>>2];J[f+60>>2]=j;Ja(f- -64|0,e- -64|0,180);o=o+1|0;if((d|0)!=(o|0)){continue}break}}d=J[a+16>>2];if(!(d?!d|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+16>>2]=i;H[a+20|0]=1;J[a+12>>2]=l;e=J[a+8>>2];}J[a+8>>2]=e+1;e=P(h,244);d=e+J[a+16>>2]|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;f=J[g+40>>2];J[d+24>>2]=J[g+36>>2];J[d+28>>2]=f;f=J[g+32>>2];J[d+16>>2]=J[g+28>>2];J[d+20>>2]=f;f=J[g+48>>2];J[d+32>>2]=J[g+44>>2];J[d+36>>2]=f;f=J[g+56>>2];J[d+40>>2]=J[g+52>>2];J[d+44>>2]=f;f=J[g+64>>2];J[d+48>>2]=J[g+60>>2];J[d+52>>2]=f;f=J[g+72>>2];J[d+56>>2]=J[g+68>>2];J[d+60>>2]=f;Ja(d- -64|0,g+76|0,180);d=e+J[a+16>>2]|0;a=b?J[b+252>>2]<<30>>31&b:0;J[d+64>>2]=0;J[d+68>>2]=0;J[d+144>>2]=0;J[d+148>>2]=0;J[d+88>>2]=0;J[d+92>>2]=0;J[d+80>>2]=0;J[d+84>>2]=0;J[d+72>>2]=0;J[d+76>>2]=0;J[d+152>>2]=0;J[d+156>>2]=0;J[d+160>>2]=0;J[d+164>>2]=0;J[d+168>>2]=0;J[d+172>>2]=0;d:{if(a){e=J[a+8>>2];J[d>>2]=J[a+4>>2];J[d+4>>2]=e;e=J[a+16>>2];J[d+8>>2]=J[a+12>>2];J[d+12>>2]=e;e=J[a+32>>2];J[d+24>>2]=J[a+28>>2];J[d+28>>2]=e;e=J[a+24>>2];J[d+16>>2]=J[a+20>>2];J[d+20>>2]=e;e=J[a+48>>2];J[d+40>>2]=J[a+44>>2];J[d+44>>2]=e;e=J[a+40>>2];J[d+32>>2]=J[a+36>>2];J[d+36>>2]=e;e=J[a+64>>2];J[d+56>>2]=J[a+60>>2];J[d+60>>2]=e;e=J[a+56>>2];J[d+48>>2]=J[a+52>>2];J[d+52>>2]=e;m=N[a+412>>2];n=N[a+416>>2];p=N[a+408>>2];k=N[a+404>>2];J[d+240>>2]=a;J[d+140>>2]=0;N[d+136>>2]=k*n;N[d+132>>2]=k*m;N[d+128>>2]=k*p;e=J[a+616>>2];J[d+104>>2]=J[a+612>>2];J[d+108>>2]=e;e=J[a+608>>2];J[d+96>>2]=J[a+604>>2];J[d+100>>2]=e;e=J[a+420>>2];J[d+120>>2]=J[a+416>>2];J[d+124>>2]=e;e=J[a+412>>2];J[d+112>>2]=J[a+408>>2];J[d+116>>2]=e;e=J[a+384>>2];J[d+184>>2]=J[a+380>>2];J[d+188>>2]=e;e=J[a+376>>2];J[d+176>>2]=J[a+372>>2];J[d+180>>2]=e;e=J[a+400>>2];J[d+200>>2]=J[a+396>>2];J[d+204>>2]=e;e=J[a+392>>2];J[d+192>>2]=J[a+388>>2];J[d+196>>2]=e;m=N[a+476>>2];n=N[a+480>>2];p=N[a+472>>2];k=N[a+404>>2];J[d+220>>2]=0;N[d+216>>2]=Q(k*n)*c;N[d+212>>2]=Q(k*m)*c;N[d+208>>2]=Q(k*p)*c;p=N[a+332>>2];q=N[a+348>>2];r=N[a+364>>2];s=N[a+340>>2];t=N[a+356>>2];u=N[a+324>>2];k=N[a+496>>2];m=N[a+488>>2];n=N[a+492>>2];N[d+228>>2]=Q(Q(N[a+360>>2]*k)+Q(Q(N[a+328>>2]*m)+Q(n*N[a+344>>2])))*c;N[d+224>>2]=Q(Q(t*k)+Q(Q(u*m)+Q(s*n)))*c;c=Q(Q(Q(r*k)+Q(Q(p*m)+Q(n*q)))*c);break d}J[d+4>>2]=0;J[d+8>>2]=0;J[d>>2]=1065353216;J[d+240>>2]=0;J[d+128>>2]=0;J[d+132>>2]=0;J[d+112>>2]=1065353216;J[d+116>>2]=1065353216;J[d+96>>2]=1065353216;J[d+100>>2]=1065353216;J[d+176>>2]=0;J[d+180>>2]=0;J[d+12>>2]=0;J[d+16>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+20>>2]=1065353216;J[d+32>>2]=0;J[d+36>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;J[d+40>>2]=1065353216;J[d+52>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+136>>2]=0;J[d+140>>2]=0;J[d+120>>2]=1065353216;J[d+124>>2]=0;J[d+104>>2]=1065353216;J[d+108>>2]=0;J[d+224>>2]=0;J[d+228>>2]=0;J[d+216>>2]=0;J[d+220>>2]=0;J[d+208>>2]=0;J[d+212>>2]=0;J[d+200>>2]=0;J[d+204>>2]=0;J[d+192>>2]=0;J[d+196>>2]=0;J[d+184>>2]=0;J[d+188>>2]=0;c=Q(0);}J[d+236>>2]=0;N[d+232>>2]=c;J[b+212>>2]=h;break a}h=J[a+188>>2];if((h|0)>=0){break a}b=J[a+8>>2];J[a+188>>2]=b;Fa(g+12|0,0,244);d=b;e:{if((b|0)!=J[a+12>>2]){break e}l=b?b<<1:1;d=b;if((l|0)<=(b|0)){break e}if(l){J[8456]=J[8456]+1;o=ua[J[8258]](P(l,244),16)|0;d=J[a+8>>2];}else {d=b;}if((d|0)>0){h=0;while(1){e=P(h,244);f=e+o|0;e=e+J[a+16>>2]|0;i=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=i;i=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=i;i=J[e+28>>2];J[f+24>>2]=J[e+24>>2];J[f+28>>2]=i;i=J[e+20>>2];J[f+16>>2]=J[e+16>>2];J[f+20>>2]=i;i=J[e+44>>2];J[f+40>>2]=J[e+40>>2];J[f+44>>2]=i;i=J[e+36>>2];J[f+32>>2]=J[e+32>>2];J[f+36>>2]=i;i=J[e+52>>2];J[f+48>>2]=J[e+48>>2];J[f+52>>2]=i;i=J[e+60>>2];J[f+56>>2]=J[e+56>>2];J[f+60>>2]=i;Ja(f- -64|0,e- -64|0,180);h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=J[a+16>>2];if(!(h?!h|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](h);}J[a+16>>2]=o;H[a+20|0]=1;J[a+12>>2]=l;d=J[a+8>>2];}J[a+8>>2]=d+1;h=P(b,244);b=h+J[a+16>>2]|0;J[b>>2]=0;J[b+4>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;d=J[g+40>>2];J[b+24>>2]=J[g+36>>2];J[b+28>>2]=d;d=J[g+32>>2];J[b+16>>2]=J[g+28>>2];J[b+20>>2]=d;d=J[g+48>>2];J[b+32>>2]=J[g+44>>2];J[b+36>>2]=d;d=J[g+56>>2];J[b+40>>2]=J[g+52>>2];J[b+44>>2]=d;d=J[g+64>>2];J[b+48>>2]=J[g+60>>2];J[b+52>>2]=d;d=J[g+72>>2];J[b+56>>2]=J[g+68>>2];J[b+60>>2]=d;Ja(b- -64|0,g+76|0,180);b=h+J[a+16>>2]|0;J[b+64>>2]=0;J[b+68>>2]=0;J[b+144>>2]=0;J[b+148>>2]=0;J[b+4>>2]=0;J[b+8>>2]=0;J[b>>2]=1065353216;J[b+88>>2]=0;J[b+92>>2]=0;J[b+80>>2]=0;J[b+84>>2]=0;J[b+72>>2]=0;J[b+76>>2]=0;J[b+152>>2]=0;J[b+156>>2]=0;J[b+160>>2]=0;J[b+164>>2]=0;J[b+168>>2]=0;J[b+172>>2]=0;J[b+12>>2]=0;J[b+16>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+20>>2]=1065353216;J[b+32>>2]=0;J[b+36>>2]=0;J[b+44>>2]=0;J[b+48>>2]=0;J[b+40>>2]=1065353216;J[b+52>>2]=0;J[b+56>>2]=0;J[b+60>>2]=0;J[b+136>>2]=0;J[b+140>>2]=0;J[b+240>>2]=0;J[b+128>>2]=0;J[b+132>>2]=0;J[b+120>>2]=1065353216;J[b+124>>2]=0;J[b+112>>2]=1065353216;J[b+116>>2]=1065353216;J[b+104>>2]=1065353216;J[b+108>>2]=0;J[b+96>>2]=1065353216;J[b+100>>2]=1065353216;J[b+232>>2]=0;J[b+236>>2]=0;J[b+224>>2]=0;J[b+228>>2]=0;J[b+216>>2]=0;J[b+220>>2]=0;J[b+208>>2]=0;J[b+212>>2]=0;J[b+200>>2]=0;J[b+204>>2]=0;J[b+192>>2]=0;J[b+196>>2]=0;J[b+184>>2]=0;J[b+188>>2]=0;J[b+176>>2]=0;J[b+180>>2]=0;h=J[a+188>>2];}sa=g+256|0;return h}function Ao(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=0;f=sa-32|0;sa=f;o=N[d+52>>2];i=N[d+24>>2];j=N[d+20>>2];p=N[d+56>>2];k=N[d+40>>2];q=N[d+36>>2];r=N[d+16>>2];s=N[d+32>>2];t=N[d+48>>2];l=N[d+8>>2];g=N[b+8>>2];u=N[d>>2];h=N[b>>2];n=N[d+4>>2];m=N[b+4>>2];J[f+28>>2]=0;l=Q(g*l);n=Q(m*n);N[f+16>>2]=t+Q(l+Q(Q(h*u)+n));k=Q(g*k);q=Q(m*q);N[f+24>>2]=p+Q(k+Q(Q(h*s)+q));i=Q(g*i);g=Q(h*r);h=Q(m*j);N[f+20>>2]=o+Q(i+Q(g+h));g=N[c>>2];J[f+12>>2]=0;N[f+8>>2]=p+Q(k+Q(Q(g*s)+q));N[f+4>>2]=o+Q(i+Q(Q(g*r)+h));N[f>>2]=t+Q(l+Q(Q(g*u)+n));v=f+16|0;ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];p=N[d+20>>2];r=N[d+56>>2];j=N[d+40>>2];s=N[d+36>>2];t=N[d+48>>2];k=N[d+8>>2];q=N[d>>2];u=N[d+4>>2];l=N[d+16>>2];g=N[b+8>>2];n=N[d+32>>2];h=N[c>>2];m=N[b+4>>2];J[f+28>>2]=0;j=Q(g*j);n=Q(h*n);N[f+24>>2]=r+Q(j+Q(n+Q(m*s)));i=Q(g*i);l=Q(h*l);N[f+20>>2]=o+Q(i+Q(l+Q(m*p)));k=Q(g*k);h=Q(h*q);N[f+16>>2]=t+Q(k+Q(h+Q(m*u)));g=N[c+4>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(j+Q(n+Q(s*g)));N[f+4>>2]=o+Q(i+Q(l+Q(p*g)));N[f>>2]=t+Q(k+Q(h+Q(u*g)));ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];j=N[d+20>>2];p=N[d+56>>2];k=N[d+40>>2];q=N[d+36>>2];r=N[d+48>>2];l=N[d+8>>2];s=N[d>>2];n=N[d+4>>2];t=N[d+16>>2];g=N[b+8>>2];u=N[d+32>>2];h=N[c>>2];m=N[c+4>>2];J[f+28>>2]=0;k=Q(g*k);q=Q(m*q);N[f+24>>2]=p+Q(k+Q(Q(h*u)+q));i=Q(g*i);j=Q(m*j);N[f+20>>2]=o+Q(i+Q(Q(h*t)+j));l=Q(g*l);g=Q(h*s);h=Q(m*n);N[f+16>>2]=r+Q(l+Q(g+h));g=N[b>>2];J[f+12>>2]=0;N[f+8>>2]=p+Q(k+Q(Q(g*u)+q));N[f+4>>2]=o+Q(i+Q(Q(g*t)+j));N[f>>2]=r+Q(l+Q(Q(g*s)+h));ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];p=N[d+20>>2];r=N[d+56>>2];j=N[d+40>>2];s=N[d+36>>2];t=N[d+48>>2];k=N[d+8>>2];q=N[d>>2];u=N[d+4>>2];l=N[d+16>>2];g=N[b+8>>2];n=N[d+32>>2];h=N[b>>2];m=N[c+4>>2];J[f+28>>2]=0;j=Q(g*j);n=Q(h*n);N[f+24>>2]=r+Q(j+Q(n+Q(m*s)));i=Q(g*i);l=Q(h*l);N[f+20>>2]=o+Q(i+Q(l+Q(m*p)));k=Q(g*k);h=Q(h*q);N[f+16>>2]=t+Q(k+Q(h+Q(m*u)));g=N[b+4>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(j+Q(n+Q(s*g)));N[f+4>>2]=o+Q(i+Q(l+Q(p*g)));N[f>>2]=t+Q(k+Q(h+Q(u*g)));ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];p=N[d+24>>2];i=N[d+20>>2];r=N[d+56>>2];s=N[d+40>>2];j=N[d+36>>2];t=N[d+48>>2];u=N[d+8>>2];k=N[d>>2];q=N[d+4>>2];l=N[d+16>>2];g=N[b+8>>2];n=N[d+32>>2];h=N[b>>2];m=N[b+4>>2];J[f+28>>2]=0;j=Q(Q(h*n)+Q(m*j));N[f+24>>2]=r+Q(Q(g*s)+j);i=Q(Q(h*l)+Q(m*i));N[f+20>>2]=o+Q(Q(g*p)+i);h=Q(Q(h*k)+Q(m*q));N[f+16>>2]=t+Q(Q(g*u)+h);g=N[c+8>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(Q(g*s)+j);N[f+4>>2]=o+Q(Q(g*p)+i);N[f>>2]=t+Q(Q(g*u)+h);ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];p=N[d+24>>2];i=N[d+20>>2];r=N[d+56>>2];s=N[d+40>>2];j=N[d+36>>2];t=N[d+48>>2];u=N[d+8>>2];k=N[d>>2];q=N[d+4>>2];l=N[d+16>>2];g=N[b+8>>2];n=N[d+32>>2];h=N[c>>2];m=N[b+4>>2];J[f+28>>2]=0;j=Q(Q(h*n)+Q(m*j));N[f+24>>2]=r+Q(Q(g*s)+j);i=Q(Q(h*l)+Q(m*i));N[f+20>>2]=o+Q(Q(g*p)+i);h=Q(Q(h*k)+Q(m*q));N[f+16>>2]=t+Q(Q(g*u)+h);g=N[c+8>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(Q(g*s)+j);N[f+4>>2]=o+Q(Q(g*p)+i);N[f>>2]=t+Q(Q(g*u)+h);ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];p=N[d+24>>2];i=N[d+20>>2];r=N[d+56>>2];s=N[d+40>>2];j=N[d+36>>2];t=N[d+48>>2];u=N[d+8>>2];k=N[d>>2];q=N[d+4>>2];l=N[d+16>>2];g=N[b+8>>2];n=N[d+32>>2];h=N[c>>2];m=N[c+4>>2];J[f+28>>2]=0;j=Q(Q(h*n)+Q(m*j));N[f+24>>2]=r+Q(Q(g*s)+j);i=Q(Q(h*l)+Q(m*i));N[f+20>>2]=o+Q(Q(g*p)+i);h=Q(Q(h*k)+Q(m*q));N[f+16>>2]=t+Q(Q(g*u)+h);g=N[c+8>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(Q(g*s)+j);N[f+4>>2]=o+Q(Q(g*p)+i);N[f>>2]=t+Q(Q(g*u)+h);ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];p=N[d+24>>2];i=N[d+20>>2];r=N[d+56>>2];s=N[d+40>>2];j=N[d+36>>2];t=N[d+48>>2];u=N[d+8>>2];k=N[d>>2];q=N[d+4>>2];l=N[d+16>>2];g=N[b+8>>2];n=N[d+32>>2];h=N[b>>2];m=N[c+4>>2];J[f+28>>2]=0;j=Q(Q(h*n)+Q(m*j));N[f+24>>2]=r+Q(Q(g*s)+j);i=Q(Q(h*l)+Q(m*i));N[f+20>>2]=o+Q(Q(g*p)+i);h=Q(Q(h*k)+Q(m*q));N[f+16>>2]=t+Q(Q(g*u)+h);g=N[c+8>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(Q(g*s)+j);N[f+4>>2]=o+Q(Q(g*p)+i);N[f>>2]=t+Q(Q(g*u)+h);ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];j=N[d+20>>2];p=N[d+56>>2];k=N[d+40>>2];q=N[d+36>>2];r=N[d+48>>2];l=N[d+8>>2];s=N[d>>2];n=N[d+4>>2];t=N[d+16>>2];g=N[c+8>>2];u=N[d+32>>2];h=N[b>>2];m=N[b+4>>2];J[f+28>>2]=0;k=Q(g*k);q=Q(m*q);N[f+24>>2]=p+Q(k+Q(Q(h*u)+q));i=Q(g*i);j=Q(m*j);N[f+20>>2]=o+Q(i+Q(Q(h*t)+j));l=Q(g*l);g=Q(h*s);h=Q(m*n);N[f+16>>2]=r+Q(l+Q(g+h));g=N[c>>2];J[f+12>>2]=0;N[f+8>>2]=p+Q(k+Q(Q(g*u)+q));N[f+4>>2]=o+Q(i+Q(Q(g*t)+j));N[f>>2]=r+Q(l+Q(Q(g*s)+h));ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];p=N[d+20>>2];r=N[d+56>>2];j=N[d+40>>2];s=N[d+36>>2];t=N[d+48>>2];k=N[d+8>>2];q=N[d>>2];u=N[d+4>>2];l=N[d+16>>2];g=N[c+8>>2];n=N[d+32>>2];h=N[c>>2];m=N[b+4>>2];J[f+28>>2]=0;j=Q(g*j);n=Q(h*n);N[f+24>>2]=r+Q(j+Q(n+Q(m*s)));i=Q(g*i);l=Q(h*l);N[f+20>>2]=o+Q(i+Q(l+Q(m*p)));k=Q(g*k);h=Q(h*q);N[f+16>>2]=t+Q(k+Q(h+Q(m*u)));g=N[c+4>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(j+Q(n+Q(s*g)));N[f+4>>2]=o+Q(i+Q(l+Q(p*g)));N[f>>2]=t+Q(k+Q(h+Q(u*g)));ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];j=N[d+20>>2];p=N[d+56>>2];k=N[d+40>>2];q=N[d+36>>2];r=N[d+48>>2];l=N[d+8>>2];s=N[d>>2];n=N[d+4>>2];t=N[d+16>>2];g=N[c+8>>2];u=N[d+32>>2];h=N[c>>2];m=N[c+4>>2];J[f+28>>2]=0;k=Q(g*k);q=Q(m*q);N[f+24>>2]=p+Q(k+Q(Q(h*u)+q));i=Q(g*i);j=Q(m*j);N[f+20>>2]=o+Q(i+Q(Q(h*t)+j));l=Q(g*l);g=Q(h*s);h=Q(m*n);N[f+16>>2]=r+Q(l+Q(g+h));g=N[b>>2];J[f+12>>2]=0;N[f+8>>2]=p+Q(k+Q(Q(g*u)+q));N[f+4>>2]=o+Q(i+Q(Q(g*t)+j));N[f>>2]=r+Q(l+Q(Q(g*s)+h));ua[J[J[a>>2]+16>>2]](a,v,f,e);o=N[d+52>>2];i=N[d+24>>2];p=N[d+20>>2];r=N[d+56>>2];j=N[d+40>>2];s=N[d+36>>2];t=N[d+48>>2];k=N[d+8>>2];q=N[d>>2];u=N[d+4>>2];l=N[d+16>>2];g=N[c+8>>2];n=N[d+32>>2];h=N[b>>2];m=N[c+4>>2];J[f+28>>2]=0;j=Q(g*j);n=Q(h*n);N[f+24>>2]=r+Q(j+Q(n+Q(m*s)));i=Q(g*i);l=Q(h*l);N[f+20>>2]=o+Q(i+Q(l+Q(m*p)));k=Q(g*k);h=Q(h*q);N[f+16>>2]=t+Q(k+Q(h+Q(m*u)));g=N[b+4>>2];J[f+12>>2]=0;N[f+8>>2]=r+Q(j+Q(n+Q(s*g)));N[f+4>>2]=o+Q(i+Q(l+Q(p*g)));N[f>>2]=t+Q(k+Q(h+Q(u*g)));ua[J[J[a>>2]+16>>2]](a,v,f,e);sa=f+32|0;}function jc(a,b,c,d){var e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=0,k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),I=Q(0),L=Q(0);e=sa-144|0;sa=e;g=N[b+8>>2];i=N[b>>2];h=N[b+4>>2];a:{if(Q(Q(g*g)+Q(Q(i*i)+Q(h*h)))<Q(14210854715202004e-30)){break a}f=J[a+4>>2];j=J[f+64>>2];J[e+136>>2]=J[f+60>>2];J[e+140>>2]=j;j=J[f+56>>2];J[e+128>>2]=J[f+52>>2];J[e+132>>2]=j;j=J[f+64>>2];J[e+120>>2]=J[f+60>>2];J[e+124>>2]=j;j=J[f+56>>2];f=J[f+52>>2];z=Q(g+N[e+120>>2]);N[e+120>>2]=z;J[e+112>>2]=f;J[e+116>>2]=j;A=Q(i+N[e+112>>2]);N[e+112>>2]=A;B=Q(h+N[e+116>>2]);N[e+116>>2]=B;b:{c:{if(!d){f=0;break c}f=0;C=N[e+136>>2];g=Q(z-C);D=N[e+128>>2];i=Q(A-D);E=N[e+132>>2];h=Q(B-E);l=Q(Y(Q(Q(g*g)+Q(Q(i*i)+Q(h*h)))));if(l<=c){break c}while(1){n=g;g=Q(Q(1)/l);n=Q(n*g);u=Q(i*g);v=Q(h*g);if(Q(Q(n*N[b+8>>2])+Q(Q(u*N[b>>2])+Q(v*N[b+4>>2])))<=Q(0)){break c}N[e+100>>2]=l+N[a+36>>2];k=Q(0);i=Q(0);f=sa-224|0;sa=f;m=J[(K[a+108|0]?104:8)+a>>2];j=H[33900]&1;d:{if(j){j=!j;h=N[8474];k=N[8473];i=N[8472];g=N[8471];break d}J[8473]=0;J[8474]=1065353216;J[8471]=0;J[8472]=0;H[33900]=1;h=Q(1);j=0;g=Q(0);}w=N[e+100>>2];J[f+204>>2]=0;J[f+188>>2]=0;p=Q(Q(2)/Q(Q(h*h)+Q(Q(k*k)+Q(Q(g*g)+Q(i*i)))));q=Q(k*p);o=Q(i*q);x=Q(g*p);t=Q(h*x);N[f+196>>2]=o+t;N[f+184>>2]=o-t;o=Q(g*x);p=Q(i*p);x=Q(i*p);N[f+200>>2]=Q(1)-Q(o+x);s=o;o=Q(k*q);N[f+180>>2]=Q(1)-Q(s+o);J[f+172>>2]=0;t=Q(g*q);y=Q(h*p);N[f+192>>2]=t-y;p=Q(g*p);q=Q(h*q);N[f+176>>2]=p+q;N[f+168>>2]=t+y;N[f+164>>2]=p-q;N[f+160>>2]=Q(1)-Q(x+o);r=J[e+140>>2];J[f+216>>2]=J[e+136>>2];J[f+220>>2]=r;r=J[e+132>>2];J[f+208>>2]=J[e+128>>2];J[f+212>>2]=r;if(j){J[8473]=0;J[8474]=1065353216;J[8471]=0;J[8472]=0;H[33900]=1;k=Q(0);h=Q(1);i=Q(0);g=Q(0);}p=N[e+136>>2];y=N[e+120>>2];o=N[e+128>>2];F=N[e+112>>2];x=N[e+132>>2];L=N[e+116>>2];J[f+156>>2]=0;J[f+140>>2]=0;J[f+124>>2]=0;t=Q(Q(2)/Q(Q(h*h)+Q(Q(k*k)+Q(Q(g*g)+Q(i*i)))));q=Q(k*t);s=Q(i*q);G=Q(g*t);I=Q(h*G);N[f+132>>2]=s+I;N[f+120>>2]=s-I;s=Q(g*G);t=Q(i*t);G=Q(i*t);N[f+136>>2]=Q(1)-Q(s+G);i=s;s=Q(k*q);N[f+116>>2]=Q(1)-Q(i+s);k=Q(y-p);y=Q(F-o);F=Q(L-x);i=Q(Q(1)/Q(Y(Q(Q(k*k)+Q(Q(y*y)+Q(F*F))))));N[f+152>>2]=p+Q(w*Q(k*i));N[f+148>>2]=x+Q(w*Q(F*i));J[f+108>>2]=0;k=Q(g*q);p=Q(h*t);N[f+128>>2]=k-p;g=Q(g*t);h=Q(h*q);N[f+112>>2]=g+h;N[f+104>>2]=k+p;N[f+100>>2]=g-h;N[f+96>>2]=Q(1)-Q(G+s);N[f+144>>2]=o+Q(w*Q(y*i));j=J[a+4>>2];J[f+20>>2]=0;J[f+8>>2]=1065353216;r=J[e+140>>2];J[f+32>>2]=J[e+136>>2];J[f+36>>2]=r;r=J[e+132>>2];J[f+24>>2]=J[e+128>>2];J[f+28>>2]=r;r=J[e+124>>2];J[f+48>>2]=J[e+120>>2];J[f+52>>2]=r;r=J[e+116>>2];J[f+40>>2]=J[e+112>>2];J[f+44>>2]=r;J[f+92>>2]=j;J[f+88>>2]=0;J[f+4>>2]=25460;j=J[j+188>>2];J[f+12>>2]=J[j+4>>2];J[f+16>>2]=J[j+8>>2];j=J[a+12>>2];vb(j,m,f+160|0,f+96|0,f+4|0,N[j+56>>2]);j=J[f+20>>2];if(j){g=N[f+8>>2];m=J[f+76>>2];J[e+68>>2]=J[f+72>>2];J[e+72>>2]=m;m=J[f+84>>2];J[e+76>>2]=J[f+80>>2];J[e+80>>2]=m;m=f- -64|0;r=J[m+4>>2];J[e+92>>2]=J[m>>2];J[e+96>>2]=r;m=J[f+60>>2];r=J[f+56>>2];J[e+104>>2]=j;N[e+100>>2]=w*g;J[e+84>>2]=r;J[e+88>>2]=m;J[e+108>>2]=J[f+88>>2];}sa=f+224|0;if(!j){b=J[e+124>>2];J[e+136>>2]=J[e+120>>2];J[e+140>>2]=b;b=J[e+116>>2];J[e+128>>2]=J[e+112>>2];J[e+132>>2]=b;f=0;break c}f=J[a+20>>2];e:{if(!f){break e}j=J[e+104>>2];m=J[j+252>>2];if(m&2){J[e+64>>2]=j;j=J[e+108>>2];J[e+60>>2]=j;J[e+4>>2]=a;m=J[e+96>>2];J[e+32>>2]=J[e+92>>2];J[e+36>>2]=m;m=J[e+88>>2];J[e+24>>2]=J[e+84>>2];J[e+28>>2]=m;m=J[e+80>>2];J[e+16>>2]=J[e+76>>2];J[e+20>>2]=m;m=J[e+72>>2];J[e+8>>2]=J[e+68>>2];J[e+12>>2]=m;N[e+56>>2]=l;J[e+52>>2]=0;N[e+48>>2]=n;N[e+44>>2]=v;N[e+40>>2]=u;if(!j){break e}ua[J[J[f>>2]>>2]](f,e+4|0);break e}if(!(m&4)){break e}j=J[j+256>>2];if(!j){break e}J[e+60>>2]=j;J[e+4>>2]=a;j=J[e+96>>2];J[e+32>>2]=J[e+92>>2];J[e+36>>2]=j;j=J[e+88>>2];J[e+24>>2]=J[e+84>>2];J[e+28>>2]=j;j=J[e+80>>2];J[e+16>>2]=J[e+76>>2];J[e+20>>2]=j;j=J[e+72>>2];J[e+8>>2]=J[e+68>>2];J[e+12>>2]=j;N[e+56>>2]=l;J[e+52>>2]=0;N[e+48>>2]=n;N[e+44>>2]=v;N[e+40>>2]=u;ua[J[J[f>>2]+4>>2]](f,e+4|0);}g=N[e+100>>2];if(!(!K[a+63|0]|g!=Q(0))){$a(a);$a(a);$a(a);$a(a);break b}g=Q(g-N[a+36>>2]);if(g>Q(0)){C=Q(C+Q(n*g));N[e+136>>2]=C;E=Q(E+Q(v*g));N[e+132>>2]=E;D=Q(D+Q(u*g));N[e+128>>2]=D;}h=N[a+48>>2];k=N[a+40>>2];w=N[a+44>>2];N[a+68>>2]=Q(N[e+76>>2]*h)+Q(Q(N[e+68>>2]*k)+Q(N[e+72>>2]*w));f=J[e+80>>2];J[a+96>>2]=J[e+76>>2];J[a+100>>2]=f;f=J[e+72>>2];J[a+88>>2]=J[e+68>>2];J[a+92>>2]=f;f=J[e+96>>2];J[a+80>>2]=J[e+92>>2];J[a+84>>2]=f;f=J[e+88>>2];J[a+72>>2]=J[e+84>>2];J[a+76>>2]=f;l=N[a+76>>2];g=N[a+72>>2];f:{if(!K[a+61|0]){i=N[a+80>>2];break f}q=N[a+80>>2];i=Q(Q(q*h)+Q(Q(g*k)+Q(w*l)));h=Q(q-Q(h*i));g=Q(g-Q(k*i));l=Q(l-Q(w*i));i=Q(Q(h*h)+Q(Q(g*g)+Q(l*l)));if(i<Q(14210854715202004e-30)){break b}J[a+84>>2]=0;o=h;h=Q(Q(1)/Q(Y(i)));i=Q(o*h);N[a+80>>2]=i;l=Q(l*h);N[a+76>>2]=l;g=Q(g*h);N[a+72>>2]=g;}f=J[e+140>>2];J[e+120>>2]=J[e+136>>2];J[e+124>>2]=f;h=Q(z-C);o=Q(h*h);h=Q(A-D);s=Q(h*h);h=Q(B-E);h=Q(Y(Q(o+Q(s+Q(h*h)))));k=Q(Q(n*i)+Q(Q(u*g)+Q(v*l)));n=Q(n-Q(Q(i+i)*k));o=n;s=Q(n*n);n=Q(u-Q(Q(g+g)*k));k=Q(v-Q(Q(l+l)*k));u=Q(Q(1)/Q(Y(Q(s+Q(Q(n*n)+Q(k*k))))));v=Q(o*u);o=i;n=Q(n*u);k=Q(k*u);i=Q(Q(v*i)+Q(Q(n*g)+Q(l*k)));z=Q(N[e+120>>2]+Q(h*Q(v-Q(o*i))));N[e+120>>2]=z;f=J[e+132>>2];J[e+112>>2]=J[e+128>>2];J[e+116>>2]=f;A=Q(N[e+112>>2]+Q(h*Q(n-Q(g*i))));N[e+112>>2]=A;B=Q(N[e+116>>2]+Q(h*Q(k-Q(l*i))));N[e+116>>2]=B;d=d-1|0;if(d){f=1;g=Q(z-C);i=Q(A-D);h=Q(B-E);l=Q(Y(Q(Q(g*g)+Q(Q(i*i)+Q(h*h)))));if(l<=c){break c}continue}break}f=1;}b=J[e+140>>2];a=J[a+4>>2];J[a+60>>2]=J[e+136>>2];J[a+64>>2]=b;b=J[e+132>>2];J[a+52>>2]=J[e+128>>2];J[a+56>>2]=b;break a}f=1;}sa=e+144|0;return f}function Xa(a){var b=0,c=0,d=0,e=Q(0),f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0;d=sa-32|0;sa=d;a:{b:{c:{d:{e:{f:{b=J[a+372>>2];switch(J[b+32>>2]-1|0){case 3:break c;case 2:break d;case 1:break e;case 0:break f;default:break b}}b=J[a+364>>2];c=J[a+372>>2];g=J[c+32>>2];f=(g<<2)+c|0;J[f+16>>2]=0;b=b-1|0;J[a+364>>2]=b;b=J[((b<<2)+a|0)+348>>2];J[f>>2]=b;J[c+32>>2]=g+1;J[b+8>>2]=0;J[b+12>>2]=0;J[b>>2]=1065353216;J[b+4>>2]=0;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];J[((J[a+364>>2]<<2)+a|0)+348>>2]=b;c=J[a+372>>2];g=J[c+32>>2];f=(g<<2)+c|0;J[f>>2]=b;J[f+16>>2]=0;J[c+32>>2]=g+1;J[b+8>>2]=-2147483648;J[b+12>>2]=0;J[b>>2]=-1082130432;J[b+4>>2]=-2147483648;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;c=J[b+(c<<2)>>2];b=J[a+364>>2];J[a+364>>2]=b+1;g=(b<<2)+a|0;J[g+348>>2]=c;c=J[a+372>>2];f=J[c+32>>2];l=(f<<2)+c|0;J[l+16>>2]=0;J[a+364>>2]=b;b=J[g+348>>2];J[l>>2]=b;J[c+32>>2]=f+1;J[b+8>>2]=0;J[b+12>>2]=0;J[b>>2]=0;J[b+4>>2]=1065353216;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];J[((J[a+364>>2]<<2)+a|0)+348>>2]=b;c=J[a+372>>2];g=J[c+32>>2];f=(g<<2)+c|0;J[f>>2]=b;J[f+16>>2]=0;J[c+32>>2]=g+1;J[b+8>>2]=-2147483648;J[b+12>>2]=0;J[b>>2]=-2147483648;J[b+4>>2]=-1082130432;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;c=J[b+(c<<2)>>2];b=J[a+364>>2];J[a+364>>2]=b+1;g=(b<<2)+a|0;J[g+348>>2]=c;c=J[a+372>>2];f=J[c+32>>2];l=(f<<2)+c|0;J[l+16>>2]=0;J[a+364>>2]=b;b=J[g+348>>2];J[l>>2]=b;J[c+32>>2]=f+1;J[b+8>>2]=1065353216;J[b+12>>2]=0;J[b>>2]=0;J[b+4>>2]=0;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];J[((J[a+364>>2]<<2)+a|0)+348>>2]=b;c=J[a+372>>2];g=J[c+32>>2];f=(g<<2)+c|0;J[f>>2]=b;J[f+16>>2]=0;J[c+32>>2]=g+1;J[b+8>>2]=-1082130432;J[b+12>>2]=0;J[b>>2]=-2147483648;J[b+4>>2]=-2147483648;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];c=J[a+364>>2];J[a+364>>2]=c+1;J[((c<<2)+a|0)+348>>2]=b;break b}c=J[b+4>>2];b=J[b>>2];k=Q(N[c+20>>2]-N[b+20>>2]);m=Q(-k);n=Q(N[c+24>>2]-N[b+24>>2]);p=Q(-n);o=Q(N[c+16>>2]-N[b+16>>2]);r=Q(-o);while(1){g:{J[d+8>>2]=0;J[d+12>>2]=0;J[d>>2]=0;J[d+4>>2]=0;J[d+(g<<2)>>2]=1065353216;e=N[d+4>>2];j=N[d>>2];h=Q(Q(o*e)+Q(j*m));q=N[d+8>>2];i=Q(Q(k*q)+Q(e*p));j=Q(Q(n*j)+Q(q*r));e=Q(Q(h*h)+Q(Q(i*i)+Q(j*j)));if(e>Q(0)){c=J[a+372>>2];f=J[c+32>>2];b=(f<<2)+c|0;J[b+16>>2]=0;l=J[a+364>>2]-1|0;J[a+364>>2]=l;s=b;b=J[((l<<2)+a|0)+348>>2];J[s>>2]=b;J[c+32>>2]=f+1;J[b+12>>2]=0;e=Q(Q(1)/Q(Y(e)));N[b+8>>2]=h*e;N[b+4>>2]=j*e;N[b>>2]=i*e;Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;if(Xa(a)){break g}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];J[((J[a+364>>2]<<2)+a|0)+348>>2]=b;c=J[a+372>>2];f=J[c+32>>2];l=(f<<2)+c|0;J[l>>2]=b;J[l+16>>2]=0;J[c+32>>2]=f+1;J[b+12>>2]=0;N[b+8>>2]=e*Q(-h);N[b+4>>2]=e*Q(-j);N[b>>2]=e*Q(-i);Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;if(Xa(a)){break g}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];c=J[a+364>>2];J[a+364>>2]=c+1;J[((c<<2)+a|0)+348>>2]=b;}g=g+1|0;if((g|0)!=3){continue}break b}break}c=1;break a}c=J[b+4>>2];g=J[b>>2];e=N[g+16>>2];j=Q(N[c+16>>2]-e);f=J[b+8>>2];h=N[g+20>>2];i=Q(N[f+20>>2]-h);e=Q(N[f+16>>2]-e);k=Q(N[c+20>>2]-h);h=Q(Q(j*i)-Q(e*k));n=k;k=N[g+24>>2];m=Q(N[f+24>>2]-k);k=Q(N[c+24>>2]-k);i=Q(Q(n*m)-Q(i*k));j=Q(Q(k*e)-Q(m*j));e=Q(Q(h*h)+Q(Q(i*i)+Q(j*j)));if(!(e>Q(0))){break b}J[b+28>>2]=0;c=J[a+364>>2]-1|0;J[a+364>>2]=c;c=J[((c<<2)+a|0)+348>>2];J[b+32>>2]=4;J[b+12>>2]=c;J[c+12>>2]=0;e=Q(Q(1)/Q(Y(e)));N[c+8>>2]=h*e;N[c+4>>2]=j*e;N[c>>2]=i*e;Ra(d+16|0,a,c);b=J[d+28>>2];J[c+24>>2]=J[d+24>>2];J[c+28>>2]=b;b=J[d+20>>2];J[c+16>>2]=J[d+16>>2];J[c+20>>2]=b;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];J[((J[a+364>>2]<<2)+a|0)+348>>2]=b;c=J[a+372>>2];g=J[c+32>>2];f=(g<<2)+c|0;J[f>>2]=b;J[f+16>>2]=0;J[c+32>>2]=g+1;J[b+12>>2]=0;N[b+8>>2]=e*Q(-h);N[b+4>>2]=e*Q(-j);N[b>>2]=e*Q(-i);Ra(d+16|0,a,b);c=J[d+28>>2];J[b+24>>2]=J[d+24>>2];J[b+28>>2]=c;c=J[d+20>>2];J[b+16>>2]=J[d+16>>2];J[b+20>>2]=c;c=1;if(Xa(a)){break a}b=J[a+372>>2];c=J[b+32>>2]-1|0;J[b+32>>2]=c;b=J[b+(c<<2)>>2];c=J[a+364>>2];J[a+364>>2]=c+1;J[((c<<2)+a|0)+348>>2]=b;break b}a=J[b>>2];g=J[b+12>>2];e=N[g+16>>2];j=Q(N[a+16>>2]-e);f=J[b+4>>2];h=N[g+20>>2];k=Q(N[f+20>>2]-h);b=J[b+8>>2];i=N[g+24>>2];m=Q(N[b+24>>2]-i);n=Q(N[a+20>>2]-h);p=Q(N[f+24>>2]-i);o=Q(N[b+16>>2]-e);i=Q(N[a+24>>2]-i);e=Q(N[f+16>>2]-e);h=Q(N[b+20>>2]-h);e=Q(Q(Q(Q(j*k)*m)+Q(Q(Q(Q(Q(n*p)*o)+Q(Q(i*e)*h))-Q(Q(p*j)*h))-Q(Q(e*n)*m)))-Q(Q(k*i)*o));c=1;if(e>Q(0)|e<Q(0)){break a}}c=0;}sa=d+32|0;return c}function Gi(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0,p=Q(0),q=0,r=Q(0),s=Q(0),t=Q(0),u=0,v=0,w=0,x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=0,D=Q(0),E=0,F=0;a=sa-4240|0;sa=a;F=J[c+4>>2]-17>>>0<=1?J[d+4>>2]-17>>>0<2:F;while(1){Mb();q=w<<4;k=N[q+34024>>2];n=N[q+34016>>2];l=N[q+34020>>2];r=N[e+32>>2];s=N[e>>2];t=N[e+16>>2];p=N[e+36>>2];x=N[e+4>>2];y=N[e+20>>2];z=N[e+40>>2];m=N[e+8>>2];A=N[e+24>>2];u=q+(a+1264|0)|0;J[u+12>>2]=0;B=m;m=Q(-n);N[u+8>>2]=Q(Q(B*m)-Q(A*l))-Q(z*k);N[u+4>>2]=Q(Q(x*m)-Q(y*l))-Q(p*k);N[u>>2]=Q(Q(s*m)-Q(t*l))-Q(r*k);m=N[f+32>>2];r=N[f>>2];s=N[f+16>>2];t=N[f+36>>2];p=N[f+4>>2];x=N[f+20>>2];y=N[f+40>>2];z=N[f+8>>2];A=N[f+24>>2];q=q+(a+272|0)|0;J[q+12>>2]=0;N[q+8>>2]=Q(y*k)+Q(Q(z*n)+Q(l*A));N[q+4>>2]=Q(t*k)+Q(Q(p*n)+Q(l*x));N[q>>2]=Q(m*k)+Q(Q(r*n)+Q(l*s));w=w+1|0;if((w|0)!=42){continue}break}q=42;E=ua[J[J[c>>2]+84>>2]](c)|0;if((E|0)>0){u=a+3256|0;w=0;while(1){ua[J[J[c>>2]+88>>2]](c,w,a+3248|0);m=N[e+8>>2];r=N[e>>2];s=N[e+4>>2];t=N[e+24>>2];p=N[e+16>>2];x=N[e+20>>2];k=N[u>>2];l=N[a+3248>>2];n=N[a+3252>>2];N[u>>2]=Q(N[e+40>>2]*k)+Q(Q(N[e+32>>2]*l)+Q(n*N[e+36>>2]));J[a+3260>>2]=0;N[a+3252>>2]=Q(t*k)+Q(Q(p*l)+Q(n*x));N[a+3248>>2]=Q(m*k)+Q(Q(r*l)+Q(s*n));Mb();C=J[u+4>>2];o=q<<4;v=o+34024|0;J[v>>2]=J[u>>2];J[v+4>>2]=C;C=J[a+3252>>2];v=o+34016|0;J[v>>2]=J[a+3248>>2];J[v+4>>2]=C;r=N[e+40>>2];s=N[e+8>>2];t=N[e+24>>2];p=N[e+36>>2];x=N[e+4>>2];y=N[e+20>>2];l=N[e+32>>2];k=N[e>>2];z=N[e+16>>2];v=o+(a+1264|0)|0;J[v+12>>2]=0;n=N[a+3248>>2];m=Q(-n);D=Q(k*m);k=N[a+3252>>2];B=l;l=N[u>>2];N[v>>2]=Q(D-Q(z*k))-Q(B*l);N[v+4>>2]=Q(Q(x*m)-Q(y*k))-Q(p*l);N[v+8>>2]=Q(Q(s*m)-Q(t*k))-Q(r*l);m=N[f+32>>2];r=N[f>>2];s=N[f+16>>2];t=N[f+36>>2];p=N[f+4>>2];x=N[f+20>>2];y=N[f+40>>2];z=N[f+8>>2];A=N[f+24>>2];o=o+(a+272|0)|0;J[o+12>>2]=0;N[o+8>>2]=Q(y*l)+Q(Q(z*n)+Q(k*A));N[o+4>>2]=Q(t*l)+Q(Q(p*n)+Q(k*x));N[o>>2]=Q(m*l)+Q(Q(r*n)+Q(k*s));q=q+1|0;w=w+1|0;if((E|0)!=(w|0)){continue}break}}E=ua[J[J[d>>2]+84>>2]](d)|0;if((E|0)>0){u=a+3256|0;w=0;while(1){ua[J[J[d>>2]+88>>2]](d,w,a+3248|0);m=N[f+8>>2];r=N[f>>2];s=N[f+4>>2];t=N[f+24>>2];p=N[f+16>>2];x=N[f+20>>2];k=N[u>>2];l=N[a+3248>>2];n=N[a+3252>>2];N[u>>2]=Q(N[f+40>>2]*k)+Q(Q(N[f+32>>2]*l)+Q(n*N[f+36>>2]));J[a+3260>>2]=0;N[a+3252>>2]=Q(t*k)+Q(Q(p*l)+Q(n*x));N[a+3248>>2]=Q(m*k)+Q(Q(r*l)+Q(s*n));Mb();C=J[u+4>>2];o=q<<4;v=o+34024|0;J[v>>2]=J[u>>2];J[v+4>>2]=C;C=J[a+3252>>2];v=o+34016|0;J[v>>2]=J[a+3248>>2];J[v+4>>2]=C;r=N[e+40>>2];s=N[e+8>>2];t=N[e+24>>2];p=N[e+36>>2];x=N[e+4>>2];y=N[e+20>>2];l=N[e+32>>2];k=N[e>>2];z=N[e+16>>2];v=o+(a+1264|0)|0;J[v+12>>2]=0;n=N[a+3248>>2];m=Q(-n);D=Q(k*m);k=N[a+3252>>2];B=l;l=N[u>>2];N[v>>2]=Q(D-Q(z*k))-Q(B*l);N[v+4>>2]=Q(Q(x*m)-Q(y*k))-Q(p*l);N[v+8>>2]=Q(Q(s*m)-Q(t*k))-Q(r*l);m=N[f+32>>2];r=N[f>>2];s=N[f+16>>2];t=N[f+36>>2];p=N[f+4>>2];x=N[f+20>>2];y=N[f+40>>2];z=N[f+8>>2];A=N[f+24>>2];o=o+(a+272|0)|0;J[o+12>>2]=0;N[o+8>>2]=Q(y*l)+Q(Q(z*n)+Q(k*A));N[o+4>>2]=Q(t*l)+Q(Q(p*n)+Q(k*x));N[o>>2]=Q(m*l)+Q(Q(r*n)+Q(k*s));q=q+1|0;w=w+1|0;if((E|0)!=(w|0)){continue}break}}ua[J[J[c>>2]+76>>2]](c,a+1264|0,a+3248|0,q);ua[J[J[d>>2]+76>>2]](d,a+272|0,a+2256|0,q);a:{if((q|0)<=0){m=Q(0xde0b6b000000000);k=Q(0);l=Q(0);n=Q(0);x=Q(0);break a}w=0;m=Q(0xde0b6b000000000);x=Q(0);n=Q(0);l=Q(0);k=Q(0);while(1){Mb();u=w<<4;r=F?Q(0):N[u+34024>>2];s=N[u+34016>>2];t=N[u+34020>>2];b:{if(!(+Q(Q(r*r)+Q(Q(s*s)+Q(t*t)))>.01)){break b}o=u+(a+2256|0)|0;p=N[o+8>>2];y=N[o>>2];z=N[o+4>>2];o=u+(a+3248|0)|0;A=N[o+8>>2];D=N[o>>2];B=N[o+4>>2];p=Q(Q(r*(F?Q(0):Q(Q(Q(Q(p*N[f+40>>2])+Q(Q(y*N[f+32>>2])+Q(z*N[f+36>>2])))+N[f+56>>2])-Q(Q(Q(A*N[e+40>>2])+Q(Q(D*N[e+32>>2])+Q(B*N[e+36>>2])))+N[e+56>>2]))))+Q(Q(s*Q(Q(Q(Q(p*N[f+8>>2])+Q(Q(y*N[f>>2])+Q(z*N[f+4>>2])))+N[f+48>>2])-Q(Q(Q(A*N[e+8>>2])+Q(Q(D*N[e>>2])+Q(B*N[e+4>>2])))+N[e+48>>2])))+Q(t*Q(Q(Q(Q(p*N[f+24>>2])+Q(Q(y*N[f+16>>2])+Q(z*N[f+20>>2])))+N[f+52>>2])-Q(Q(Q(A*N[e+24>>2])+Q(Q(D*N[e+16>>2])+Q(B*N[e+20>>2])))+N[e+52>>2])))));if(!(p<m)){break b}x=N[u+34028>>2];k=s;l=t;n=r;m=p;}w=w+1|0;if((w|0)!=(q|0)){continue}break}}Qb(c);Qb(d);q=0;if(!(m<Q(0))){r=Qb(c);s=Qb(d);b=sc(a+192|0,c,d,b,0);t=N[e+52>>2];p=N[e+56>>2];y=N[e+48>>2];d=J[e+12>>2];c=a- -64|0;J[c>>2]=J[e+8>>2];J[c+4>>2]=d;c=J[e+4>>2];J[a+56>>2]=J[e>>2];J[a+60>>2]=c;c=J[e+28>>2];J[a+80>>2]=J[e+24>>2];J[a+84>>2]=c;c=J[e+20>>2];J[a+72>>2]=J[e+16>>2];J[a+76>>2]=c;c=J[e+40>>2];d=J[e+44>>2];w=J[e+32>>2];e=J[e+36>>2];J[a+116>>2]=0;J[a+96>>2]=c;J[a+100>>2]=d;m=Q(m+Q(Q(r+s)+Q(.5)));N[a+112>>2]=p+Q(n*m);N[a+108>>2]=t+Q(l*m);J[a+88>>2]=w;J[a+92>>2]=e;N[a+104>>2]=y+Q(k*m);c=J[f+12>>2];J[a+128>>2]=J[f+8>>2];J[a+132>>2]=c;c=J[f+4>>2];J[a+120>>2]=J[f>>2];J[a+124>>2]=c;c=J[f+28>>2];J[a+144>>2]=J[f+24>>2];J[a+148>>2]=c;c=J[f+20>>2];J[a+136>>2]=J[f+16>>2];J[a+140>>2]=c;c=J[f+44>>2];J[a+160>>2]=J[f+40>>2];J[a+164>>2]=c;c=J[f+36>>2];J[a+152>>2]=J[f+32>>2];J[a+156>>2]=c;c=J[f+60>>2];J[a+176>>2]=J[f+56>>2];J[a+180>>2]=c;c=J[f+52>>2];J[a+168>>2]=J[f+48>>2];J[a+172>>2]=c;J[a+184>>2]=1566444395;H[a+52|0]=0;J[a+12>>2]=22904;J[b+16>>2]=0;N[b+12>>2]=-n;N[b+8>>2]=-l;N[b+4>>2]=-k;Za(b,a+56|0,a+12|0,j,0);b=K[a+52|0];if(b){r=N[a+36>>2];s=N[a+40>>2];t=N[a+32>>2];p=N[a+48>>2];J[h+12>>2]=0;m=Q(m-p);N[h+8>>2]=s-Q(n*m);N[h+4>>2]=r-Q(l*m);N[h>>2]=t-Q(k*m);c=J[a+44>>2];J[i+8>>2]=J[a+40>>2];J[i+12>>2]=c;c=J[a+36>>2];J[i>>2]=J[a+32>>2];J[i+4>>2]=c;N[g+12>>2]=x;N[g+8>>2]=n;N[g+4>>2]=l;N[g>>2]=k;}q=(b|0)!=0;}sa=a+4240|0;return q|0}function xe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;J[a+168>>2]=J[a+152>>2];Ce(b);c=J[a+56>>2];a:{if(d){J[b+56>>2]=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);H[b+4|0]=K[a+7|0];H[b+5|0]=K[a+6|0];H[b+6|0]=K[a+5|0];H[b+7|0]=K[a+4|0];H[b+8|0]=K[a+11|0];H[b+9|0]=K[a+10|0];H[b+10|0]=K[a+9|0];H[b+11|0]=K[a+8|0];H[b+12|0]=K[a+15|0];H[b+13|0]=K[a+14|0];H[b+14|0]=K[a+13|0];H[b+15|0]=K[a+12|0];H[b+16|0]=K[a+19|0];H[b+17|0]=K[a+18|0];H[b+18|0]=K[a+17|0];H[b+19|0]=K[a+16|0];H[b+20|0]=K[a+23|0];H[b+21|0]=K[a+22|0];H[b+22|0]=K[a+21|0];H[b+23|0]=K[a+20|0];H[b+24|0]=K[a+27|0];H[b+25|0]=K[a+26|0];H[b+26|0]=K[a+25|0];H[b+27|0]=K[a+24|0];H[b+28|0]=K[a+31|0];H[b+29|0]=K[a+30|0];H[b+30|0]=K[a+29|0];H[b+31|0]=K[a+28|0];H[b+32|0]=K[a+35|0];H[b+33|0]=K[a+34|0];H[b+34|0]=K[a+33|0];H[b+35|0]=K[a+32|0];H[b+36|0]=K[a+39|0];H[b+37|0]=K[a+38|0];H[b+38|0]=K[a+37|0];H[b+39|0]=K[a+36|0];H[b+40|0]=K[a+43|0];H[b+41|0]=K[a+42|0];H[b+42|0]=K[a+41|0];H[b+43|0]=K[a+40|0];H[b+44|0]=K[a+47|0];H[b+45|0]=K[a+46|0];H[b+46|0]=K[a+45|0];H[b+47|0]=K[a+44|0];H[b+48|0]=K[a+51|0];H[b+49|0]=K[a+50|0];H[b+50|0]=K[a+49|0];H[b+51|0]=K[a+48|0];c=J[a+168>>2];g=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);c=J[a+144>>2];c=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);break a}J[b+56>>2]=c;c=J[a+16>>2];J[b+12>>2]=J[a+12>>2];J[b+16>>2]=c;c=J[a+8>>2];J[b+4>>2]=J[a+4>>2];J[b+8>>2]=c;c=J[a+32>>2];J[b+28>>2]=J[a+28>>2];J[b+32>>2]=c;c=J[a+24>>2];J[b+20>>2]=J[a+20>>2];J[b+24>>2]=c;c=J[a+48>>2];J[b+44>>2]=J[a+44>>2];J[b+48>>2]=c;c=J[a+40>>2];J[b+36>>2]=J[a+36>>2];J[b+40>>2]=c;g=J[a+168>>2];c=J[a+144>>2];}J[b+168>>2]=g;J[b+144>>2]=c;H[b+60|0]=K[a+60|0];i=b+172|0;j=J[a+56>>2];b:{if(K[a+60|0]){c=J[b+136>>2];if(!(c?!c|!K[b+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[b+136>>2]=i;H[b+140|0]=0;c:{if(!d){if((j|0)<=0){break c}h=J[a+136>>2];g=0;while(1){c=g<<4;f=c+i|0;c=c+h|0;I[f>>1]=L[c>>1];I[f+2>>1]=L[c+2>>1];I[f+4>>1]=L[c+4>>1];I[f+6>>1]=L[c+6>>1];I[f+8>>1]=L[c+8>>1];I[f+10>>1]=L[c+10>>1];J[f+12>>2]=J[c+12>>2];g=g+1|0;if((j|0)!=(g|0)){continue}break}break c}if((j|0)<=0){break c}h=J[a+136>>2];g=0;while(1){c=g<<4;e=c+i|0;f=c+h|0;c=L[f>>1];I[e>>1]=c<<8|c>>>8;c=L[f+2>>1];I[e+2>>1]=c<<8|c>>>8;c=L[f+4>>1];I[e+4>>1]=c<<8|c>>>8;c=L[f+6>>1];I[e+6>>1]=c<<8|c>>>8;c=L[f+8>>1];I[e+8>>1]=c<<8|c>>>8;c=L[f+10>>1];I[e+10>>1]=c<<8|c>>>8;c=J[f+12>>2];J[e+12>>2]=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);g=g+1|0;if((j|0)!=(g|0)){continue}break}}h=b+128|0;g=j<<4;break b}c=J[b+96>>2];if(!(c?!c|!K[b+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[b+96>>2]=i;H[b+100|0]=0;J[b+92>>2]=j;h=b+88|0;J[h>>2]=j;d:{if(!d){c=i;if((j|0)<=0){break d}l=J[a+96>>2];g=0;while(1){k=g<<6;e=k+c|0;f=k+l|0;c=J[f+4>>2];J[e>>2]=J[f>>2];J[e+4>>2]=c;c=J[f+12>>2];J[e+8>>2]=J[f+8>>2];J[e+12>>2]=c;f=k+J[a+96>>2]|0;c=J[f+20>>2];e=k+J[b+96>>2]|0;J[e+16>>2]=J[f+16>>2];J[e+20>>2]=c;c=J[f+28>>2];J[e+24>>2]=J[f+24>>2];J[e+28>>2]=c;c=J[b+96>>2];e=k+c|0;l=J[a+96>>2];f=k+l|0;J[e+32>>2]=J[f+32>>2];J[e+36>>2]=J[f+36>>2];J[e+40>>2]=J[f+40>>2];g=g+1|0;if((j|0)!=(g|0)){continue}break}break d}c=i;if((j|0)<=0){break d}k=J[a+96>>2];while(1){f=l<<6;e=f+c|0;c=f+k|0;H[e|0]=K[c+3|0];H[e+1|0]=K[c+2|0];H[e+2|0]=K[c+1|0];H[e+3|0]=K[c|0];H[e+4|0]=K[c+7|0];H[e+5|0]=K[c+6|0];H[e+6|0]=K[c+5|0];H[e+7|0]=K[c+4|0];H[e+8|0]=K[c+11|0];H[e+9|0]=K[c+10|0];H[e+10|0]=K[c+9|0];H[e+11|0]=K[c+8|0];H[e+12|0]=K[c+15|0];H[e+13|0]=K[c+14|0];H[e+14|0]=K[c+13|0];H[e+15|0]=K[c+12|0];e=f+J[b+96>>2]|0;c=f+J[a+96>>2]|0;H[e+16|0]=K[c+19|0];H[e+17|0]=K[c+18|0];H[e+18|0]=K[c+17|0];H[e+19|0]=K[c+16|0];H[e+20|0]=K[c+23|0];H[e+21|0]=K[c+22|0];H[e+22|0]=K[c+21|0];H[e+23|0]=K[c+20|0];H[e+24|0]=K[c+27|0];H[e+25|0]=K[c+26|0];H[e+26|0]=K[c+25|0];H[e+27|0]=K[c+24|0];H[e+28|0]=K[c+31|0];H[e+29|0]=K[c+30|0];H[e+30|0]=K[c+29|0];H[e+31|0]=K[c+28|0];c=J[b+96>>2];e=f+c|0;k=J[a+96>>2];f=f+k|0;g=J[f+32>>2];J[e+32>>2]=g<<24|(g&65280)<<8|(g>>>8&65280|g>>>24);g=J[f+36>>2];J[e+36>>2]=g<<24|(g&65280)<<8|(g>>>8&65280|g>>>24);f=J[f+40>>2];J[e+40>>2]=f<<24|(f&65280)<<8|(f>>>8&65280|f>>>24);l=l+1|0;if((j|0)!=(l|0)){continue}break}}g=j<<6;if(!K[b+100|0]){break b}if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}}J[h>>2]=0;J[h+4>>2]=0;H[h+5|0]=0;H[h+6|0]=0;H[h+7|0]=0;H[h+8|0]=0;H[h+9|0]=0;H[h+10|0]=0;H[h+11|0]=0;H[h+12|0]=0;h=g+i|0;i=J[a+168>>2];c=J[b+160>>2];if(!(c?!c|!K[b+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[b+160>>2]=h;H[b+164|0]=0;J[b+156>>2]=i;J[b+152>>2]=i;i=J[a+168>>2];e:{if(!d){if((i|0)<=0){break e}i=J[a+160>>2];d=0;while(1){c=d<<5;f=c+h|0;c=c+i|0;I[f>>1]=L[c>>1];I[f+2>>1]=L[c+2>>1];I[f+4>>1]=L[c+4>>1];I[f+6>>1]=L[c+6>>1];I[f+8>>1]=L[c+8>>1];I[f+10>>1]=L[c+10>>1];J[f+12>>2]=J[c+12>>2];c=J[c+16>>2];J[f+28>>2]=0;J[f+20>>2]=0;J[f+24>>2]=0;J[f+16>>2]=c;d=d+1|0;if((d|0)<J[a+168>>2]){continue}break}break e}if((i|0)<=0){break e}c=J[a+160>>2];d=0;while(1){a=d<<5;e=a+h|0;f=a+c|0;a=L[f>>1];I[e>>1]=a<<8|a>>>8;a=L[f+2>>1];I[e+2>>1]=a<<8|a>>>8;a=L[f+4>>1];I[e+4>>1]=a<<8|a>>>8;a=L[f+6>>1];I[e+6>>1]=a<<8|a>>>8;a=L[f+8>>1];I[e+8>>1]=a<<8|a>>>8;a=L[f+10>>1];I[e+10>>1]=a<<8|a>>>8;a=J[f+12>>2];J[e+12>>2]=a<<24|(a&65280)<<8|(a>>>8&65280|a>>>24);a=J[f+16>>2];J[e+16>>2]=a<<24|(a&65280)<<8|(a>>>8&65280|a>>>24);d=d+1|0;if((i|0)!=(d|0)){continue}break}}if(h?K[b+164|0]:0){J[8457]=J[8457]+1;ua[J[8259]](h);}J[b>>2]=0;H[b+157|0]=0;H[b+158|0]=0;H[b+159|0]=0;H[b+160|0]=0;H[b+161|0]=0;H[b+162|0]=0;H[b+163|0]=0;H[b+164|0]=0;J[b+152>>2]=0;J[b+156>>2]=0;return 1}function ff(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=sa-96|0;sa=f;H[f+92|0]=1;J[f+60>>2]=0;J[f+64>>2]=0;H[f+52|0]=1;J[f+48>>2]=0;H[f+72|0]=1;J[f+40>>2]=0;J[f+44>>2]=0;J[f+68>>2]=0;J[f+88>>2]=0;J[f+80>>2]=0;J[f+84>>2]=0;J[f+28>>2]=0;H[f+32|0]=1;J[f+20>>2]=0;J[f+24>>2]=0;m=J[a+8>>2];a:{if((m|0)<=0){break a}while(1){g=J[J[J[a+16>>2]+(r<<2)>>2]+192>>2];J[f+12>>2]=g;c=g+(g<<15^-1)|0;c=P(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=J[f+64>>2]-1&(c>>>16^c);b:{c:{if(c>>>0>=M[f+20>>2]){break c}c=J[J[f+28>>2]+(c<<2)>>2];if((c|0)==-1){break c}d=J[f+48>>2];e=J[f+88>>2];while(1){if((g|0)!=J[e+(c<<3)>>2]){c=J[d+(c<<2)>>2];if((c|0)!=-1){continue}break c}break}if(J[f+68>>2]){break b}}J[f+4>>2]=g;g=0;d:{e:{d=f+16|0;m=J[d+48>>2];c=J[f+4>>2];e=(c<<15^-1)+c|0;e=P(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;o=m-1&(e>>>16^e);f:{if(o>>>0>=M[d+4>>2]){break f}e=J[J[d+12>>2]+(o<<2)>>2];if((e|0)==-1){break f}j=J[d+32>>2];h=J[d+72>>2];while(1){if((c|0)==J[h+(e<<3)>>2]){break e}e=J[j+(e<<2)>>2];if((e|0)!=-1){continue}break}}s=J[d+44>>2];c=s;g:{if((m|0)!=(c|0)){break g}c=m;i=c?c<<1:1;if((c|0)>=(i|0)){break g}h:{if(!i){j=0;c=m;break h}J[8456]=J[8456]+1;j=ua[J[8258]](i<<2,16)|0;c=J[d+44>>2];}i:{if((c|0)<=0){break i}h=0;e=0;if(c>>>0>=4){n=c&-4;while(1){l=e<<2;J[l+j>>2]=J[l+J[d+52>>2]>>2];k=l|4;J[k+j>>2]=J[k+J[d+52>>2]>>2];k=l|8;J[k+j>>2]=J[k+J[d+52>>2]>>2];l=l|12;J[l+j>>2]=J[l+J[d+52>>2]>>2];e=e+4|0;g=g+4|0;if((n|0)!=(g|0)){continue}break}}g=c&3;if(!g){break i}while(1){l=e<<2;J[l+j>>2]=J[l+J[d+52>>2]>>2];e=e+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}g=J[d+52>>2];if(!(!g|!K[d+56|0])){if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}c=J[d+44>>2];}J[d+52>>2]=j;H[d+56|0]=1;J[d+48>>2]=i;}J[J[d+52>>2]+(c<<2)>>2]=J[f+12>>2];J[d+44>>2]=c+1;c=J[d- -64>>2];j:{if((c|0)!=J[d+68>>2]){break j}l=c?c<<1:1;if((l|0)<=(c|0)){break j}k:{if(!l){j=0;break k}J[8456]=J[8456]+1;j=ua[J[8258]](l<<3,16)|0;c=J[d+64>>2];}l:{if((c|0)<=0){break l}h=0;e=0;if(c>>>0>=4){n=c&-4;g=0;while(1){i=e<<3;k=i+j|0;p=i+J[d+72>>2]|0;q=J[p+4>>2];J[k>>2]=J[p>>2];J[k+4>>2]=q;k=i|8;p=k+j|0;k=k+J[d+72>>2]|0;q=J[k+4>>2];J[p>>2]=J[k>>2];J[p+4>>2]=q;k=i|16;p=k+j|0;k=k+J[d+72>>2]|0;q=J[k+4>>2];J[p>>2]=J[k>>2];J[p+4>>2]=q;i=i|24;k=i+j|0;i=i+J[d+72>>2]|0;p=J[i+4>>2];J[k>>2]=J[i>>2];J[k+4>>2]=p;e=e+4|0;g=g+4|0;if((n|0)!=(g|0)){continue}break}}c=c&3;if(!c){break l}while(1){g=e<<3;i=g+j|0;g=g+J[d+72>>2]|0;n=J[g+4>>2];J[i>>2]=J[g>>2];J[i+4>>2]=n;e=e+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}c=J[d+72>>2];if(!(c?!c|!K[d+76|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[d+72>>2]=j;H[d+76|0]=1;J[d+68>>2]=l;c=J[d+64>>2];}g=J[f+8>>2];c=J[d+72>>2]+(c<<3)|0;J[c>>2]=J[f+4>>2];J[c+4>>2]=g;J[d+64>>2]=J[d+64>>2]+1;if((m|0)<J[d+48>>2]){e=0;j=0;l=0;o=0;m=J[d+4>>2];h=J[d+48>>2];m:{if((m|0)>=(h|0)){break m}n:{if((h|0)<=J[d+8>>2]){e=J[d+12>>2];break n}if(h){J[8456]=J[8456]+1;e=ua[J[8258]](h<<2,16)|0;c=J[d+4>>2];}else {c=m;}g=J[d+12>>2];o:{p:{if((c|0)>0){if(c>>>0>=4){n=c&-4;while(1){i=j<<2;J[i+e>>2]=J[g+i>>2];k=i|4;J[k+e>>2]=J[g+k>>2];k=i|8;J[k+e>>2]=J[g+k>>2];i=i|12;J[i+e>>2]=J[g+i>>2];j=j+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}c=c&3;if(!c){break p}while(1){i=j<<2;J[i+e>>2]=J[g+i>>2];j=j+1|0;o=o+1|0;if((c|0)!=(o|0)){continue}break}break p}if(g){break p}break o}if(g?K[d+16|0]:0){J[8457]=J[8457]+1;ua[J[8259]](g);}}J[d+12>>2]=e;H[d+16|0]=1;J[d+8>>2]=h;}c=m<<2;n=h<<2;Fa(c+e|0,0,n-c|0);J[d+4>>2]=h;g=J[d+24>>2];if((g|0)<(h|0)){q:{if((h|0)<=J[d+28>>2]){e=J[d+32>>2];break q}r:{if(!h){e=0;c=g;break r}J[8456]=J[8456]+1;e=ua[J[8258]](n,16)|0;c=J[d+24>>2];}i=J[d+32>>2];s:{if((c|0)>0){o=0;j=0;if(c>>>0>=4){p=c&-4;l=0;while(1){k=j<<2;J[k+e>>2]=J[i+k>>2];q=k|4;J[q+e>>2]=J[i+q>>2];q=k|8;J[q+e>>2]=J[i+q>>2];k=k|12;J[k+e>>2]=J[i+k>>2];j=j+4|0;l=l+4|0;if((p|0)!=(l|0)){continue}break}}c=c&3;if(!c){break s}while(1){l=j<<2;J[l+e>>2]=J[i+l>>2];j=j+1|0;o=o+1|0;if((c|0)!=(o|0)){continue}break}break s}if(i){break s}J[d+32>>2]=e;J[d+28>>2]=h;H[d+36|0]=1;break q}if(i?K[d+36|0]:0){J[8457]=J[8457]+1;ua[J[8259]](i);}J[d+32>>2]=e;H[d+36|0]=1;J[d+28>>2]=h;}c=g<<2;Fa(c+e|0,0,n-c|0);}J[d+24>>2]=h;if((h|0)>0){Fa(J[d+12>>2],255,n);Fa(J[d+32>>2],255,n);}if((m|0)<=0){break m}c=J[d+32>>2];g=J[d+72>>2];e=J[d+12>>2];j=0;while(1){h=J[g+(j<<3)>>2];h=(h<<15^-1)+h|0;h=P(h>>>10^h,9);h=h>>>6^h;h=(h<<11^-1)+h|0;h=e+((J[d+48>>2]-1&(h>>>16^h))<<2)|0;J[c+(j<<2)>>2]=J[h>>2];J[h>>2]=j;j=j+1|0;if((m|0)!=(j|0)){continue}break}}c=J[f+4>>2];c=(c<<15^-1)+c|0;c=P(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;o=J[d+48>>2]-1&(c>>>16^c);}c=J[d+12>>2]+(o<<2)|0;J[J[d+32>>2]+(s<<2)>>2]=J[c>>2];J[c>>2]=s;break d}J[J[d+52>>2]+(e<<2)>>2]=J[f+12>>2];}c=J[f+12>>2];ua[J[J[c>>2]+60>>2]](c,b);m=J[a+8>>2];}r=r+1|0;if((r|0)<(m|0)){continue}break}if((m|0)<=0){break a}c=0;while(1){g=J[J[a+16>>2]+(c<<2)>>2];d=J[g+252>>2];if(!((d|0)!=64&(d|0)!=1)){ua[J[J[g>>2]+24>>2]](g,b);m=J[a+8>>2];}c=c+1|0;if((c|0)<(m|0)){continue}break}}a=J[f+88>>2];if(!(a?!a|!K[f+92|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[f+88>>2]=0;H[f+92|0]=1;J[f+80>>2]=0;J[f+84>>2]=0;a=J[f+68>>2];if(!(a?!a|!K[f+72|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[f+68>>2]=0;H[f+72|0]=1;J[f+60>>2]=0;J[f+64>>2]=0;a=J[f+48>>2];if(!(a?!a|!K[f+52|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[f+48>>2]=0;H[f+52|0]=1;J[f+40>>2]=0;J[f+44>>2]=0;a=J[f+28>>2];if(!(a?!a|!K[f+32|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}sa=f+96|0;}function Th(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=0,h=Q(0),i=0,j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=0,p=0;c=J[d+72>>2];a:{if(!(c&4)){break a}b=J[a+28>>2];if((b|0)<=0){break a}l=J[a+76>>2];i=J[a+36>>2];if(c&16){c=0;while(1){e=i+P(c,152)|0;g=J[e+132>>2];N[g+132>>2]=N[e+100>>2];e=l+P(J[e+140>>2],152)|0;N[g+136>>2]=N[e+100>>2];N[g+140>>2]=N[e+252>>2];c=c+1|0;if((b|0)!=(c|0)){continue}break}break a}c=0;if((b|0)!=1){p=b&-2;while(1){g=i+P(c,152)|0;o=J[g+132>>2];N[o+132>>2]=N[g+100>>2];N[o+136>>2]=N[(l+P(J[g+140>>2],152)|0)+100>>2];g=i+P(c|1,152)|0;o=J[g+132>>2];N[o+132>>2]=N[g+100>>2];N[o+136>>2]=N[(l+P(J[g+140>>2],152)|0)+100>>2];c=c+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(!(b&1)){break a}b=i+P(c,152)|0;c=J[b+132>>2];N[c+132>>2]=N[b+100>>2];N[c+136>>2]=N[(l+P(J[b+140>>2],152)|0)+100>>2];}p=J[a+48>>2];if((p|0)>0){o=J[a+56>>2];l=0;while(1){c=o+P(l,152)|0;e=J[c+132>>2];b=J[e+44>>2];if(b){i=J[e+28>>2];j=N[i+416>>2];k=N[c+24>>2];m=N[i+412>>2];n=N[c+20>>2];f=N[c+100>>2];h=Q(Q(1)/N[d+12>>2]);N[b>>2]=N[b>>2]+Q(Q(Q(N[c+16>>2]*f)*N[i+408>>2])*h);N[b+4>>2]=Q(Q(m*Q(f*n))*h)+N[b+4>>2];N[b+8>>2]=Q(Q(j*Q(f*k))*h)+N[b+8>>2];g=J[e+32>>2];j=N[g+416>>2];k=N[c+56>>2];m=N[g+412>>2];n=N[c+52>>2];f=N[c+100>>2];h=Q(Q(1)/N[d+12>>2]);N[b+32>>2]=N[b+32>>2]+Q(Q(Q(N[c+48>>2]*f)*N[g+408>>2])*h);N[b+36>>2]=Q(Q(m*Q(f*n))*h)+N[b+36>>2];N[b+40>>2]=Q(Q(j*Q(f*k))*h)+N[b+40>>2];j=N[i+612>>2];k=N[c+8>>2];m=N[i+608>>2];n=N[c+4>>2];f=N[c+100>>2];h=Q(Q(1)/N[d+12>>2]);N[b+16>>2]=N[b+16>>2]+Q(Q(Q(N[c>>2]*N[i+604>>2])*f)*h);N[b+20>>2]=Q(Q(f*Q(n*m))*h)+N[b+20>>2];N[b+24>>2]=Q(Q(f*Q(k*j))*h)+N[b+24>>2];j=N[g+612>>2];k=N[c+40>>2];m=N[g+608>>2];n=N[c+36>>2];f=N[c+100>>2];h=Q(Q(1)/N[d+12>>2]);N[b+48>>2]=N[b+48>>2]+Q(Q(Q(N[c+32>>2]*N[g+604>>2])*f)*h);N[b+52>>2]=Q(Q(f*Q(n*m))*h)+N[b+52>>2];N[b+56>>2]=Q(Q(f*Q(k*j))*h)+N[b+56>>2];}f=N[c+100>>2];N[e+36>>2]=f;if(N[e+16>>2]<=Q(R(f))){H[e+20|0]=0;}l=l+1|0;if((p|0)!=(l|0)){continue}break}}l=J[a+8>>2];if((l|0)>0){e=J[a+16>>2];g=0;while(1){i=P(g,244);b=i+e|0;c=J[b+240>>2];if(c){b:{if(J[d+52>>2]){m=N[d+12>>2];f=N[d+60>>2];c=sa-80|0;sa=c;c:{if(!J[b+240>>2]){break c}N[b+176>>2]=N[b+64>>2]+N[b+176>>2];N[b+192>>2]=N[b+80>>2]+N[b+192>>2];N[b+180>>2]=N[b+68>>2]+N[b+180>>2];N[b+184>>2]=N[b+72>>2]+N[b+184>>2];N[b+196>>2]=N[b+84>>2]+N[b+196>>2];N[b+200>>2]=N[b+88>>2]+N[b+200>>2];k=N[b+160>>2];d:{if(!(!(N[b+144>>2]!=Q(0)|N[b+148>>2]!=Q(0))&N[b+152>>2]==Q(0))){h=N[b+168>>2];j=N[b+164>>2];break d}h=N[b+168>>2];j=N[b+164>>2];if(k!=Q(0)|j!=Q(0)){break d}if(h==Q(0)){break c}}J[c+12>>2]=0;N[c+8>>2]=h*f;N[c+4>>2]=j*f;N[c>>2]=k*f;kb(b,b+144|0,c,m,c+16|0);e=J[c+28>>2];J[b+8>>2]=J[c+24>>2];J[b+12>>2]=e;e=J[c+20>>2];J[b>>2]=J[c+16>>2];J[b+4>>2]=e;e=J[c+44>>2];J[b+24>>2]=J[c+40>>2];J[b+28>>2]=e;e=J[c+36>>2];J[b+16>>2]=J[c+32>>2];J[b+20>>2]=e;e=J[c+52>>2];J[b+32>>2]=J[c+48>>2];J[b+36>>2]=e;e=J[c+60>>2];J[b+40>>2]=J[c+56>>2];J[b+44>>2]=e;e=J[c+68>>2];J[b+48>>2]=J[c+64>>2];J[b+52>>2]=e;e=J[c+76>>2];J[b+56>>2]=J[c+72>>2];J[b+60>>2]=e;}sa=c+80|0;e=J[a+16>>2];b=i+e|0;f=N[b+176>>2];c=J[b+240>>2];break b}f=Q(N[b+64>>2]+N[b+176>>2]);N[b+176>>2]=f;N[b+192>>2]=N[b+80>>2]+N[b+192>>2];N[b+180>>2]=N[b+68>>2]+N[b+180>>2];N[b+184>>2]=N[b+72>>2]+N[b+184>>2];N[b+196>>2]=N[b+84>>2]+N[b+196>>2];N[b+200>>2]=N[b+88>>2]+N[b+200>>2];}b=e+i|0;h=N[b+212>>2];j=N[b+180>>2];k=N[b+216>>2];m=N[b+184>>2];n=N[b+208>>2];J[c+384>>2]=0;N[c+372>>2]=f+n;J[c+304>>2]=J[c+304>>2]+1;N[c+380>>2]=m+k;N[c+376>>2]=j+h;b=i+J[a+16>>2]|0;f=N[b+228>>2];h=N[b+196>>2];j=N[b+232>>2];k=N[b+200>>2];m=N[b+224>>2];n=N[b+192>>2];b=J[b+240>>2];J[b+400>>2]=0;N[b+388>>2]=n+m;N[b+396>>2]=k+j;N[b+392>>2]=h+f;J[b+304>>2]=J[b+304>>2]+1;if(J[d+52>>2]){c=i+J[a+16>>2]|0;b=J[c+240>>2];J[b+304>>2]=J[b+304>>2]+1;e=J[c+12>>2];J[b+12>>2]=J[c+8>>2];J[b+16>>2]=e;e=J[c+4>>2];J[b+4>>2]=J[c>>2];J[b+8>>2]=e;e=J[c+28>>2];J[b+28>>2]=J[c+24>>2];J[b+32>>2]=e;e=J[c+20>>2];J[b+20>>2]=J[c+16>>2];J[b+24>>2]=e;e=J[c+36>>2];J[b+36>>2]=J[c+32>>2];J[b+40>>2]=e;e=J[c+44>>2];J[b+44>>2]=J[c+40>>2];J[b+48>>2]=e;e=J[c+60>>2];J[b+60>>2]=J[c+56>>2];J[b+64>>2]=e;e=J[c+52>>2];J[b+52>>2]=J[c+48>>2];J[b+56>>2]=e;}e=J[a+16>>2];J[J[(i+e|0)+240>>2]+212>>2]=-1;l=J[a+8>>2];}g=g+1|0;if((l|0)>(g|0)){continue}break}}if((J[a+28>>2]&J[a+32>>2])<0){b=J[a+36>>2];if(!(b?!b|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+40|0]=1;J[a+32>>2]=0;J[a+36>>2]=0;}J[a+28>>2]=0;if((J[a+48>>2]&J[a+52>>2])<0){b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+60|0]=1;J[a+52>>2]=0;J[a+56>>2]=0;}J[a+48>>2]=0;if((J[a+68>>2]&J[a+72>>2])<0){b=J[a+76>>2];if(!(b?!b|!K[a+80|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+80|0]=1;J[a+72>>2]=0;J[a+76>>2]=0;}J[a+68>>2]=0;if((J[a+88>>2]&J[a+92>>2])<0){b=J[a+96>>2];if(!(b?!b|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+100|0]=1;J[a+92>>2]=0;J[a+96>>2]=0;}J[a+88>>2]=0;if((J[a+8>>2]&J[a+12>>2])<0){b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+20|0]=1;J[a+12>>2]=0;J[a+16>>2]=0;}J[a+8>>2]=0;return Q(Q(0))}function Wh(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=Q(0),l=0,m=0,n=0,o=Q(0),p=Q(0),q=0,r=0;a:{if(!(H[i+72|0]&1)){break a}j=J[a+68>>2];m=J[a+28>>2];l=J[a+48>>2];if((l|0)>0){c=P(J[a+232>>2],1664525)+1013904223|0;b:{if((l|0)==1){break b}e=J[a+136>>2];d=J[e+4>>2];c=P(c,1664525)+1013904223|0;f=c^c>>>16;f=f>>>8^f;f=f>>>4^f;f=f>>>2^f;f=e+(((f>>>1^f)&1)<<2)|0;J[e+4>>2]=J[f>>2];J[f>>2]=d;if((l|0)==2){break b}d=J[e+8>>2];c=P(c,1664525)+1013904223|0;f=c^c>>>16;f=f>>>8^f;f=f>>>4^f;f=e+(((f>>>2^f)>>>0)%3<<2)|0;J[e+8>>2]=J[f>>2];J[f>>2]=d;if((l|0)==3){break b}d=4;f=J[e+12>>2];c=P(c,1664525)+1013904223|0;n=c^c>>>16;n=n>>>8^n;n=n>>>4^n;n=e+(((n>>>2^n)&3)<<2)|0;J[e+12>>2]=J[n>>2];J[n>>2]=f;if((l|0)==4){break b}while(1){f=e+(d<<2)|0;r=J[f>>2];q=f;c=P(c,1664525)+1013904223|0;f=c;c:{if(d>>>0>65535){break c}n=c>>>16^c;f=n;if(d>>>0>255){break c}n=n^n>>>8;f=n;if(d>>>0>15){break c}f=n^n>>>4;}d=d+1|0;f=((f>>>0)%(d>>>0)<<2)+e|0;J[q>>2]=J[f>>2];J[f>>2]=r;if((d|0)!=(l|0)){continue}break}}J[a+232>>2]=c;}if(J[i+20>>2]<=(b|0)){break a}if((m|0)>0){c=P(J[a+232>>2],1664525)+1013904223|0;d:{if((m|0)==1){break d}e=J[a+116>>2];d=J[e+4>>2];c=P(c,1664525)+1013904223|0;f=c^c>>>16;f=f>>>8^f;f=f>>>4^f;f=f>>>2^f;f=e+(((f>>>1^f)&1)<<2)|0;J[e+4>>2]=J[f>>2];J[f>>2]=d;if((m|0)==2){break d}d=J[e+8>>2];c=P(c,1664525)+1013904223|0;f=c^c>>>16;f=f>>>8^f;f=f>>>4^f;f=e+(((f>>>2^f)>>>0)%3<<2)|0;J[e+8>>2]=J[f>>2];J[f>>2]=d;if((m|0)==3){break d}d=4;f=J[e+12>>2];c=P(c,1664525)+1013904223|0;l=c^c>>>16;l=l>>>8^l;l=l>>>4^l;l=e+(((l>>>2^l)&3)<<2)|0;J[e+12>>2]=J[l>>2];J[l>>2]=f;if((m|0)==4){break d}while(1){f=e+(d<<2)|0;n=J[f>>2];q=f;c=P(c,1664525)+1013904223|0;f=c;e:{if(d>>>0>65535){break e}l=c>>>16^c;f=l;if(d>>>0>255){break e}l=l^l>>>8;f=l;if(d>>>0>15){break e}f=l^l>>>4;}d=d+1|0;f=((f>>>0)%(d>>>0)<<2)+e|0;J[q>>2]=J[f>>2];J[f>>2]=n;if((d|0)!=(m|0)){continue}break}}J[a+232>>2]=c;}if((j|0)<=0){break a}c=P(J[a+232>>2],1664525)+1013904223|0;f:{if((j|0)==1){break f}e=J[a+156>>2];d=J[e+4>>2];c=P(c,1664525)+1013904223|0;f=c^c>>>16;f=f>>>8^f;f=f>>>4^f;f=f>>>2^f;f=e+(((f>>>1^f)&1)<<2)|0;J[e+4>>2]=J[f>>2];J[f>>2]=d;if((j|0)==2){break f}d=J[e+8>>2];c=P(c,1664525)+1013904223|0;f=c^c>>>16;f=f>>>8^f;f=f>>>4^f;f=e+(((f>>>2^f)>>>0)%3<<2)|0;J[e+8>>2]=J[f>>2];J[f>>2]=d;if((j|0)==3){break f}d=4;f=J[e+12>>2];c=P(c,1664525)+1013904223|0;m=c^c>>>16;m=m>>>8^m;m=m>>>4^m;m=e+(((m>>>2^m)&3)<<2)|0;J[e+12>>2]=J[m>>2];J[m>>2]=f;if((j|0)==4){break f}while(1){f=e+(d<<2)|0;l=J[f>>2];n=f;c=P(c,1664525)+1013904223|0;f=c;g:{if(d>>>0>65535){break g}m=c>>>16^c;f=m;if(d>>>0>255){break g}m=m^m>>>8;f=m;if(d>>>0>15){break g}f=m^m>>>4;}d=d+1|0;f=((f>>>0)%(d>>>0)<<2)+e|0;J[n>>2]=J[f>>2];J[f>>2]=l;if((d|0)!=(j|0)){continue}break}}J[a+232>>2]=c;}e=J[a+48>>2];if((e|0)>0){d=0;while(1){c=J[a+56>>2]+P(J[J[a+136>>2]+(d<<2)>>2],152)|0;if(J[c+136>>2]>(b|0)){e=J[a+16>>2];k=Q(ua[J[a+212>>2]](e+P(J[c+144>>2],244)|0,e+P(J[c+148>>2],244)|0,c));p=Q(Q(k*k)+p);e=J[a+48>>2];}d=d+1|0;if((e|0)>(d|0)){continue}break}}h:{if(J[i+20>>2]<=(b|0)){break h}if((h|0)>0){d=0;while(1){b=(d<<2)+g|0;c=J[b>>2];if(K[c+20|0]){c=db(a,J[c+28>>2],N[i+12>>2]);e=db(a,J[J[b>>2]+32>>2],N[i+12>>2]);b=J[b>>2];f=P(c,244);c=J[a+16>>2];ua[J[J[b>>2]+24>>2]](b,f+c|0,c+P(e,244)|0,N[i+12>>2]);}d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=J[a+28>>2];b=J[i+72>>2];i:{if(b&512){if((e|0)<=0){break i}d=b>>>4&1;c=0;while(1){f=J[a+16>>2];b=J[a+36>>2]+P(J[J[a+116>>2]+(c<<2)>>2],152)|0;k=Q(ua[J[a+216>>2]](f+P(J[b+144>>2],244)|0,f+P(J[b+148>>2],244)|0,b));p=Q(Q(k*k)+p);k=N[b+100>>2];f=k>Q(0);j:{if(!f){break j}g=c<<d<<2;b=J[a+76>>2]+P(J[g+J[a+156>>2]>>2],152)|0;o=N[b+104>>2];N[b+124>>2]=k*o;N[b+120>>2]=k*Q(-o);h=J[a+16>>2];o=Q(ua[J[a+212>>2]](h+P(J[b+144>>2],244)|0,h+P(J[b+148>>2],244)|0,b));p=Q(Q(o*o)+p);if(!f|!(J[i+72>>2]&16)){break j}b=J[a+76>>2]+P(J[(g+J[a+156>>2]|0)+4>>2],152)|0;o=N[b+104>>2];N[b+124>>2]=k*o;N[b+120>>2]=k*Q(-o);f=J[a+16>>2];k=Q(ua[J[a+212>>2]](f+P(J[b+144>>2],244)|0,f+P(J[b+148>>2],244)|0,b));p=Q(Q(k*k)+p);}c=c+1|0;if((e|0)!=(c|0)){continue}break}break i}if((e|0)>0){d=0;while(1){c=J[a+16>>2];b=J[a+36>>2]+P(J[J[a+116>>2]+(d<<2)>>2],152)|0;k=Q(ua[J[a+216>>2]](c+P(J[b+144>>2],244)|0,c+P(J[b+148>>2],244)|0,b));p=Q(Q(k*k)+p);d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=J[a+68>>2];if((d|0)<=0){break i}c=0;while(1){b=J[a+76>>2]+P(J[J[a+156>>2]+(c<<2)>>2],152)|0;k=N[(J[a+36>>2]+P(J[b+140>>2],152)|0)+100>>2];if(k>Q(0)){o=N[b+104>>2];N[b+124>>2]=k*o;N[b+120>>2]=k*Q(-o);e=J[a+16>>2];k=Q(ua[J[a+212>>2]](e+P(J[b+144>>2],244)|0,e+P(J[b+148>>2],244)|0,b));p=Q(Q(k*k)+p);}c=c+1|0;if((d|0)!=(c|0)){continue}break}}d=J[a+88>>2];if((d|0)<=0){break h}c=0;while(1){b=J[a+96>>2]+P(c,152)|0;k=N[(J[a+36>>2]+P(J[b+140>>2],152)|0)+100>>2];if(k>Q(0)){o=k;k=N[b+104>>2];o=Q(o*k);k=k<o?k:o;N[b+124>>2]=k;N[b+120>>2]=-k;e=J[a+16>>2];k=Q(ua[J[a+212>>2]](e+P(J[b+144>>2],244)|0,e+P(J[b+148>>2],244)|0,b));p=Q(Q(k*k)+p);}c=c+1|0;if((d|0)!=(c|0)){continue}break}}return Q(p)}function Ie(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=0,q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=0,w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=0,H=Q(0),I=Q(0),K=Q(0),L=Q(0);d=sa-144|0;sa=d;J[d+108>>2]=0;f=N[b+80>>2];g=N[b+96>>2];w=N[b+120>>2];n=N[b+56>>2];E=N[b+112>>2];y=N[b+116>>2];H=N[b+52>>2];j=N[b+68>>2];k=N[b+84>>2];q=N[b+100>>2];h=N[b+20>>2];s=N[b+36>>2];o=N[b+72>>2];m=N[b+88>>2];t=N[b+24>>2];i=N[b+104>>2];C=N[b+40>>2];l=N[b+64>>2];D=N[b+32>>2];x=N[b>>2];z=N[b+16>>2];I=N[b+48>>2];A=N[b+4>>2];u=N[b+8>>2];J[d+104>>2]=0;J[d+88>>2]=0;J[d+72>>2]=0;N[d+84>>2]=Q(i*C)+Q(Q(o*u)+Q(t*m));N[d+80>>2]=Q(i*s)+Q(Q(o*A)+Q(h*m));N[d+68>>2]=Q(q*C)+Q(Q(j*u)+Q(t*k));N[d- -64>>2]=Q(q*s)+Q(Q(j*A)+Q(h*k));w=Q(n-w);n=Q(I-E);E=Q(H-y);N[d+100>>2]=Q(i*w)+Q(Q(o*n)+Q(m*E));N[d+96>>2]=Q(q*w)+Q(Q(j*n)+Q(E*k));J[d+56>>2]=0;N[d+76>>2]=Q(i*D)+Q(Q(o*x)+Q(z*m));N[d+60>>2]=Q(q*D)+Q(Q(j*x)+Q(z*k));N[d+52>>2]=Q(g*C)+Q(Q(l*u)+Q(f*t));N[d+48>>2]=Q(g*s)+Q(Q(l*A)+Q(f*h));N[d+44>>2]=Q(g*D)+Q(Q(l*x)+Q(f*z));N[d+92>>2]=Q(g*w)+Q(Q(l*n)+Q(E*f));k=N[a+12>>2];s=Q(0);t=Q(0);C=Q(0);p=sa-32|0;sa=p;v=J[a+8>>2];f=N[v+64>>2];q=Q(N[v+80>>2]-f);i=N[v+68>>2];o=Q(N[v+100>>2]-i);m=Q(N[v+96>>2]-f);j=Q(N[v+84>>2]-i);g=Q(Q(q*o)-Q(m*j));n=j;j=N[v+72>>2];l=Q(N[v+104>>2]-j);h=Q(N[v+88>>2]-j);o=Q(Q(n*l)-Q(o*h));m=Q(Q(h*m)-Q(l*q));q=Q(Q(g*g)+Q(Q(o*o)+Q(m*m)));a:{if(!(q>=Q(14210854715202004e-30))){break a}r=J[a+4>>2];D=Q(N[r+36>>2]*N[r+20>>2]);k=Q(D+k);x=N[d+100>>2];h=g;g=Q(Q(1)/Q(Y(q)));q=Q(h*g);h=Q(Q(x-j)*q);j=N[d+92>>2];o=Q(o*g);m=Q(m*g);g=N[d+96>>2];f=Q(h+Q(Q(Q(j-f)*o)+Q(m*Q(g-i))));if(f<Q(0)){q=Q(-q);m=Q(-m);o=Q(-o);f=Q(-f);}if(!(f<k)){break a}r=J[d+104>>2];J[p+24>>2]=J[d+100>>2];J[p+28>>2]=r;r=J[d+96>>2];J[p+16>>2]=J[d+92>>2];J[p+20>>2]=r;J[p+12>>2]=0;N[p+8>>2]=q;N[p+4>>2]=m;N[p>>2]=o;r=v- -64|0;z=N[r+32>>2];A=N[r+40>>2];u=N[r+24>>2];w=Q(A-u);n=N[r+16>>2];F=Q(z-n);i=N[p+4>>2];l=N[p>>2];E=N[r+36>>2];y=N[r+20>>2];h=Q(E-y);H=N[p+24>>2];K=Q(Q(Q(F*i)-Q(l*h))*Q(H-u));B=h;h=N[p+8>>2];I=N[p+16>>2];L=N[p+20>>2];w=Q(K+Q(Q(Q(Q(B*h)-Q(i*w))*Q(I-n))+Q(Q(L-y)*Q(Q(w*l)-Q(h*F)))));B=u;u=N[r+8>>2];F=Q(B-u);B=n;n=N[r>>2];K=Q(B-n);B=y;y=N[r+4>>2];B=Q(B-y);F=Q(Q(Q(Q(K*i)-Q(l*B))*Q(H-u))+Q(Q(Q(Q(B*h)-Q(i*F))*Q(I-n))+Q(Q(L-y)*Q(Q(F*l)-Q(h*K)))));n=Q(n-z);y=Q(y-E);H=Q(Q(Q(n*i)-Q(l*y))*Q(H-A));B=i;i=Q(u-A);i=Q(H+Q(Q(Q(Q(y*h)-Q(B*i))*Q(I-z))+Q(Q(L-E)*Q(Q(i*l)-Q(h*n)))));b:{if(!(!(i>Q(0))|!(F>Q(0)))){r=1;if(w>Q(0)){break b}}r=F<=Q(0)&w<=Q(0)&i<=Q(0);}c:{if(r){s=Q(x-Q(f*q));t=Q(g-Q(f*m));C=Q(j-Q(f*o));z=Q(k*k);break c}if((ua[J[J[v>>2]+100>>2]](v)|0)<=0){break a}z=Q(k*k);r=0;v=0;while(1){G=J[a+8>>2];ua[J[J[G>>2]+104>>2]](G,v,p+16|0,p);g=Q(0);x=N[p+24>>2];i=Q(N[p+8>>2]-x);f=Q(N[d+100>>2]-x);A=N[p+16>>2];l=Q(N[p>>2]-A);k=Q(N[d+92>>2]-A);u=N[p+20>>2];j=Q(N[d+96>>2]-u);h=Q(N[p+4>>2]-u);w=Q(Q(i*f)+Q(Q(l*k)+Q(j*h)));d:{if(!(w>Q(0))){break d}g=Q(Q(i*i)+Q(Q(l*l)+Q(h*h)));if(g>w){g=Q(w/g);f=Q(f-Q(i*g));j=Q(j-Q(h*g));k=Q(k-Q(l*g));break d}f=Q(f-i);j=Q(j-h);k=Q(k-l);g=Q(1);}if(Q(Q(f*f)+Q(Q(k*k)+Q(j*j)))<z){C=Q(A+Q(l*g));t=Q(u+Q(h*g));s=Q(x+Q(i*g));r=1;}G=J[a+8>>2];v=v+1|0;if((ua[J[J[G>>2]+100>>2]](G)|0)>(v|0)){continue}break}G=0;if(!r){break a}x=N[d+100>>2];g=N[d+96>>2];j=N[d+92>>2];}f=Q(x-s);j=Q(j-C);g=Q(g-t);k=Q(Q(f*f)+Q(Q(j*j)+Q(g*g)));if(!(k<z)){break a}e:{if(k>Q(1.1920928955078125e-7)){J[d+124>>2]=0;i=f;k=Q(Y(k));f=Q(Q(1)/k);N[d+120>>2]=i*f;N[d+116>>2]=g*f;N[d+112>>2]=j*f;D=Q(D-k);break e}J[d+124>>2]=0;N[d+120>>2]=q;N[d+116>>2]=m;N[d+112>>2]=o;}J[d+140>>2]=0;N[d+136>>2]=s;N[d+132>>2]=t;N[d+128>>2]=C;N[d+108>>2]=-D;G=1;}sa=p+32|0;f:{if(!G){break f}if(e){k=N[b+72>>2];q=N[b+64>>2];o=N[b+68>>2];m=N[b+88>>2];i=N[b+80>>2];l=N[b+84>>2];h=N[b+104>>2];s=N[b+96>>2];t=N[b+100>>2];f=N[d+120>>2];g=N[d+112>>2];j=N[d+116>>2];J[d+40>>2]=0;C=Q(Q(h*f)+Q(Q(s*g)+Q(j*t)));N[d+36>>2]=-C;D=Q(Q(m*f)+Q(Q(i*g)+Q(j*l)));N[d+32>>2]=-D;x=Q(Q(k*f)+Q(Q(q*g)+Q(o*j)));N[d+28>>2]=-x;z=N[b+112>>2];A=N[b+116>>2];f=N[b+120>>2];J[d+24>>2]=0;g=N[d+136>>2];n=Q(h*g);j=N[d+128>>2];h=N[d+132>>2];n=Q(f+Q(n+Q(Q(s*j)+Q(t*h))));f=N[d+108>>2];N[d+20>>2]=n+Q(C*f);N[d+16>>2]=Q(A+Q(Q(g*m)+Q(Q(j*i)+Q(l*h))))+Q(D*f);N[d+12>>2]=Q(z+Q(Q(g*k)+Q(Q(j*q)+Q(o*h))))+Q(x*f);ua[J[J[c>>2]+16>>2]](c,d+28|0,d+12|0,f);break f}f=N[b+72>>2];g=N[b+64>>2];j=N[b+68>>2];k=N[b+88>>2];q=N[b+80>>2];o=N[b+84>>2];m=N[b+104>>2];i=N[b+96>>2];l=N[b+100>>2];J[d+40>>2]=0;h=N[d+120>>2];s=N[d+112>>2];t=N[d+116>>2];N[d+36>>2]=Q(m*h)+Q(Q(i*s)+Q(l*t));N[d+32>>2]=Q(k*h)+Q(Q(q*s)+Q(t*o));N[d+28>>2]=Q(f*h)+Q(Q(g*s)+Q(j*t));h=N[b+112>>2];s=N[b+116>>2];t=N[b+120>>2];J[d+24>>2]=0;n=m;m=N[d+136>>2];u=i;i=N[d+128>>2];y=l;l=N[d+132>>2];N[d+20>>2]=t+Q(Q(n*m)+Q(Q(u*i)+Q(y*l)));N[d+16>>2]=s+Q(Q(m*k)+Q(Q(i*q)+Q(o*l)));N[d+12>>2]=h+Q(Q(m*f)+Q(Q(i*g)+Q(j*l)));ua[J[J[c>>2]+16>>2]](c,d+28|0,d+12|0,N[d+108>>2]);}sa=d+144|0;}function hh(a,b){a=a|0;b=Q(b);var c=0,d=0,e=0,f=0,g=Q(0),h=0,i=Q(0),j=0,k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0,p=Q(0),q=0,r=0,s=0,t=0,u=0,v=0,w=Q(0),x=0,y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=0,I=Q(0),L=0,M=Q(0),O=Q(0);x=sa-16|0;sa=x;ua[J[8262]](3728);ua[J[8262]](4613);if(J[a+324>>2]>0){while(1){e=J[a+24>>2];ua[J[J[e>>2]+16>>2]](e,J[J[a+332>>2]+(c<<2)>>2]);c=c+1|0;if((c|0)<J[a+324>>2]){continue}break}}c=J[a+332>>2];if(!(c?!c|!K[a+336|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+332>>2]=0;H[a+336|0]=1;J[a+324>>2]=0;J[a+328>>2]=0;ua[J[8263]]();s=J[a+248>>2];if((s|0)>0){G=J[a+256>>2];c=sa-512|0;sa=c;if((s|0)>0){while(1){e=J[(t<<2)+G>>2];J[e+268>>2]=1065353216;a:{b:{switch(J[e+220>>2]-2|0){case 0:case 3:break a;default:break b}}if(K[e+204|0]&3){break a}pb(e,b,c+448|0);if(!K[a+44|0]){break a}g=N[e+276>>2];g=Q(g*g);if(g==Q(0)){break a}i=Q(N[c+504>>2]-N[e+60>>2]);k=Q(i*i);i=Q(N[c+496>>2]-N[e+52>>2]);p=Q(i*i);i=Q(N[c+500>>2]-N[e+56>>2]);if(!(g<Q(k+Q(p+Q(i*i))))){break a}ua[J[8262]](2319);if(J[J[e+192>>2]+4>>2]<=19){J[8932]=J[8932]+1;d=J[a+68>>2];d=ua[J[J[d>>2]+36>>2]](d)|0;h=J[a+24>>2];J[c+356>>2]=-1;J[c+360>>2]=0;J[c+348>>2]=1065353216;J[c+352>>2]=1;f=J[e+64>>2];J[c+372>>2]=J[e+60>>2];J[c+376>>2]=f;f=J[e+56>>2];J[c+364>>2]=J[e+52>>2];J[c+368>>2]=f;f=J[c+508>>2];J[c+388>>2]=J[c+504>>2];J[c+392>>2]=f;f=J[c+500>>2];J[c+380>>2]=J[c+496>>2];J[c+384>>2]=f;J[c+440>>2]=h;J[c+436>>2]=d;J[c+432>>2]=0;J[c+344>>2]=24500;J[c+428>>2]=e;g=N[e+272>>2];h=Sa(c+284|0);J[h>>2]=21396;J[c+312>>2]=1065353216;J[c+304>>2]=1065353216;J[c+308>>2]=1065353216;J[c+288>>2]=8;J[c+332>>2]=0;J[c+324>>2]=0;J[c+328>>2]=0;J[c+316>>2]=0;J[c+320>>2]=0;J[c+340>>2]=0;N[c+336>>2]=g;N[c+320>>2]=g;N[c+432>>2]=N[a+56>>2];d=J[e+188>>2];J[c+352>>2]=J[d+4>>2];J[c+356>>2]=J[d+8>>2];d=J[c+460>>2];J[c+224>>2]=J[c+456>>2];J[c+228>>2]=d;d=J[c+452>>2];J[c+216>>2]=J[c+448>>2];J[c+220>>2]=d;d=J[c+476>>2];J[c+240>>2]=J[c+472>>2];J[c+244>>2]=d;d=J[c+468>>2];J[c+232>>2]=J[c+464>>2];J[c+236>>2]=d;d=J[c+492>>2];J[c+256>>2]=J[c+488>>2];J[c+260>>2]=d;d=J[c+484>>2];J[c+248>>2]=J[c+480>>2];J[c+252>>2]=d;d=J[c+508>>2];J[c+272>>2]=J[c+504>>2];J[c+276>>2]=d;d=J[c+500>>2];J[c+264>>2]=J[c+496>>2];J[c+268>>2]=d;d=e+4|0;f=J[d+12>>2];J[c+224>>2]=J[d+8>>2];J[c+228>>2]=f;f=J[d+4>>2];J[c+216>>2]=J[d>>2];J[c+220>>2]=f;f=J[e+32>>2];J[c+240>>2]=J[e+28>>2];J[c+244>>2]=f;f=J[e+24>>2];J[c+232>>2]=J[e+20>>2];J[c+236>>2]=f;f=J[e+48>>2];J[c+256>>2]=J[e+44>>2];J[c+260>>2]=f;f=J[e+40>>2];J[c+248>>2]=J[e+36>>2];J[c+252>>2]=f;vb(a,h,d,c+216|0,c+344|0,Q(0));d=J[c+360>>2];c:{if(!d){break c}g=N[c+348>>2];if(!(g<Q(1))){break c}l=Q(g*Q(N[c+496>>2]-N[e+52>>2]));m=Q(g*Q(N[c+500>>2]-N[e+56>>2]));n=Q(g*Q(N[c+504>>2]-N[e+60>>2]));I=Q(Q(Q(l*Q(-N[c+396>>2]))-Q(m*N[c+400>>2]))-Q(n*N[c+404>>2]));h=J[a+24>>2];u=ua[J[J[h>>2]+12>>2]](h,e,d)|0;d=J[a+324>>2];d:{if((d|0)!=J[a+328>>2]){break d}r=d?d<<1:1;if((r|0)<=(d|0)){break d}e:{if(!r){h=0;break e}J[8456]=J[8456]+1;h=ua[J[8258]](r<<2,16)|0;d=J[a+324>>2];}f:{if((d|0)<=0){break f}v=0;f=0;if(d>>>0>=4){L=d&-4;o=0;while(1){j=f<<2;J[j+h>>2]=J[j+J[a+332>>2]>>2];q=j|4;J[q+h>>2]=J[q+J[a+332>>2]>>2];q=j|8;J[q+h>>2]=J[q+J[a+332>>2]>>2];j=j|12;J[j+h>>2]=J[j+J[a+332>>2]>>2];f=f+4|0;o=o+4|0;if((L|0)!=(o|0)){continue}break}}j=d&3;if(!j){break f}while(1){o=f<<2;J[o+h>>2]=J[o+J[a+332>>2]>>2];f=f+1|0;v=v+1|0;if((j|0)!=(v|0)){continue}break}}f=J[a+332>>2];if(!(!f|!K[a+336|0])){if(f){J[8457]=J[8457]+1;ua[J[8259]](f);}d=J[a+324>>2];}J[a+332>>2]=h;H[a+336|0]=1;J[a+328>>2]=r;}J[J[a+332>>2]+(d<<2)>>2]=u;J[a+324>>2]=d+1;d=J[c+360>>2];y=N[d+20>>2];z=N[d+36>>2];A=N[d+40>>2];B=N[d+8>>2];C=N[d+24>>2];g=N[d+60>>2];M=N[d+52>>2];i=N[d+56>>2];D=N[d+44>>2];k=N[d+12>>2];E=N[d+28>>2];F=N[d+4>>2];p=N[e+60>>2];w=N[e+52>>2];O=N[e+56>>2];J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[c+36>>2]=0;n=Q(n+p);l=Q(l+w);m=Q(m+O);w=Q(Q(D*n)+Q(Q(k*l)+Q(E*m)));p=k;k=Q(-M);N[c+32>>2]=w+Q(Q(Q(p*k)-Q(E*i))-Q(D*g));N[c+28>>2]=Q(Q(n*A)+Q(Q(l*B)+Q(m*C)))+Q(Q(Q(B*k)-Q(C*i))-Q(A*g));N[c+24>>2]=Q(Q(n*z)+Q(Q(l*F)+Q(m*y)))+Q(Q(Q(F*k)-Q(y*i))-Q(z*g));d=J[c+408>>2];J[c+80>>2]=J[c+404>>2];J[c+84>>2]=d;d=J[c+400>>2];J[c+72>>2]=J[c+396>>2];J[c+76>>2]=d;N[c+88>>2]=I;J[c+100>>2]=0;J[c+104>>2]=0;J[c+92>>2]=0;J[c+96>>2]=0;J[c+172>>2]=0;J[c+164>>2]=0;J[c+168>>2]=0;J[c+156>>2]=0;J[c+160>>2]=0;J[c+148>>2]=0;J[c+152>>2]=0;J[c+140>>2]=0;J[c+144>>2]=0;J[c+132>>2]=0;J[c+136>>2]=0;J[c+124>>2]=0;J[c+128>>2]=0;d=P(rc(u,c+8|0),208)+u|0;J[d+100>>2]=0;g=Q(N[e+228>>2]*N[J[c+360>>2]+228>>2]);g=g<Q(-10)?Q(-10):g;N[d+88>>2]=g>Q(10)?Q(10):g;h=J[e+56>>2];J[d+52>>2]=J[e+52>>2];J[d+56>>2]=h;h=J[e+64>>2];J[d+60>>2]=J[e+60>>2];J[d+64>>2]=h;J[d+48>>2]=0;N[d+44>>2]=n;N[d+40>>2]=m;N[d+36>>2]=l;}}ua[J[8263]]();}t=t+1|0;if((s|0)!=(t|0)){continue}break}}sa=c+512|0;}ua[J[8263]]();sa=x+16|0;}function Tg(a,b){a=a|0;b=Q(b);var c=0,d=0,e=0,f=Q(0),g=0,h=0,i=Q(0),j=0,k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0,p=Q(0),q=0,r=0,s=0,t=0,u=0,v=Q(0),w=0,x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=0,I=Q(0),L=Q(0);c=sa-512|0;sa=c;ua[J[8262]](3728);d=sa-16|0;sa=d;ua[J[8262]](4613);if(J[a+324>>2]>0){while(1){h=J[a+24>>2];ua[J[J[h>>2]+16>>2]](h,J[J[a+332>>2]+(e<<2)>>2]);e=e+1|0;if((e|0)<J[a+324>>2]){continue}break}}e=J[a+332>>2];if(!(e?!e|!K[a+336|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](e);}J[a+332>>2]=0;H[a+336|0]=1;J[a+324>>2]=0;J[a+328>>2]=0;ua[J[8263]]();sa=d+16|0;w=J[a+248>>2];if((w|0)>0){while(1){e=J[J[a+256>>2]+(s<<2)>>2];J[e+268>>2]=1065353216;a:{b:{switch(J[e+220>>2]-2|0){case 0:case 3:break a;default:break b}}if(K[e+204|0]&3){break a}pb(e,b,c+444|0);if(!K[a+44|0]){break a}f=N[e+276>>2];f=Q(f*f);if(f==Q(0)){break a}i=Q(N[c+500>>2]-N[e+60>>2]);k=Q(i*i);i=Q(N[c+492>>2]-N[e+52>>2]);p=Q(i*i);i=Q(N[c+496>>2]-N[e+56>>2]);if(!(f<Q(k+Q(p+Q(i*i))))){break a}ua[J[8262]](2319);if(J[J[e+192>>2]+4>>2]<=19){J[c+356>>2]=-1;J[c+360>>2]=0;J[c+348>>2]=1065353216;J[c+352>>2]=1;d=J[e+64>>2];J[c+372>>2]=J[e+60>>2];J[c+376>>2]=d;d=J[e+56>>2];J[c+364>>2]=J[e+52>>2];J[c+368>>2]=d;d=J[c+504>>2];J[c+388>>2]=J[c+500>>2];J[c+392>>2]=d;d=J[c+496>>2];J[c+380>>2]=J[c+492>>2];J[c+384>>2]=d;J[c+436>>2]=a;J[c+428>>2]=0;J[c+344>>2]=24980;J[c+432>>2]=e;f=N[e+272>>2];h=Sa(c+284|0);J[h>>2]=21396;J[c+312>>2]=1065353216;J[c+304>>2]=1065353216;J[c+308>>2]=1065353216;J[c+288>>2]=8;J[c+332>>2]=0;J[c+324>>2]=0;J[c+328>>2]=0;J[c+316>>2]=0;J[c+320>>2]=0;J[c+340>>2]=0;N[c+336>>2]=f;N[c+320>>2]=f;d=J[e+188>>2];J[c+352>>2]=J[d+4>>2];J[c+356>>2]=J[d+8>>2];d=J[c+456>>2];J[c+224>>2]=J[c+452>>2];J[c+228>>2]=d;d=J[c+448>>2];J[c+216>>2]=J[c+444>>2];J[c+220>>2]=d;d=J[c+472>>2];J[c+240>>2]=J[c+468>>2];J[c+244>>2]=d;d=J[c+464>>2];J[c+232>>2]=J[c+460>>2];J[c+236>>2]=d;d=J[c+488>>2];J[c+256>>2]=J[c+484>>2];J[c+260>>2]=d;d=J[c+480>>2];J[c+248>>2]=J[c+476>>2];J[c+252>>2]=d;d=J[c+504>>2];J[c+272>>2]=J[c+500>>2];J[c+276>>2]=d;d=J[c+496>>2];J[c+264>>2]=J[c+492>>2];J[c+268>>2]=d;d=e+4|0;g=J[d+12>>2];J[c+224>>2]=J[d+8>>2];J[c+228>>2]=g;g=J[d+4>>2];J[c+216>>2]=J[d>>2];J[c+220>>2]=g;g=J[e+32>>2];J[c+240>>2]=J[e+28>>2];J[c+244>>2]=g;g=J[e+24>>2];J[c+232>>2]=J[e+20>>2];J[c+236>>2]=g;g=J[e+48>>2];J[c+256>>2]=J[e+44>>2];J[c+260>>2]=g;g=J[e+40>>2];J[c+248>>2]=J[e+36>>2];J[c+252>>2]=g;vb(a,h,d,c+216|0,c+344|0,Q(0));d=J[c+360>>2];if(d){f=N[c+348>>2];l=Q(Q(N[c+492>>2]-N[e+52>>2])*f);m=Q(Q(N[c+496>>2]-N[e+56>>2])*f);n=Q(f*Q(N[c+500>>2]-N[e+60>>2]));F=Q(Q(Q(l*Q(-N[c+396>>2]))-Q(m*N[c+400>>2]))-Q(n*N[c+404>>2]));h=J[a+24>>2];t=ua[J[J[h>>2]+12>>2]](h,e,d)|0;d=J[a+324>>2];c:{if((d|0)!=J[a+328>>2]){break c}r=d?d<<1:1;if((r|0)<=(d|0)){break c}d:{if(!r){h=0;break d}J[8456]=J[8456]+1;h=ua[J[8258]](r<<2,16)|0;d=J[a+324>>2];}e:{if((d|0)<=0){break e}u=0;g=0;if(d>>>0>=4){G=d&-4;o=0;while(1){j=g<<2;J[j+h>>2]=J[j+J[a+332>>2]>>2];q=j|4;J[q+h>>2]=J[q+J[a+332>>2]>>2];q=j|8;J[q+h>>2]=J[q+J[a+332>>2]>>2];j=j|12;J[j+h>>2]=J[j+J[a+332>>2]>>2];g=g+4|0;o=o+4|0;if((G|0)!=(o|0)){continue}break}}j=d&3;if(!j){break e}while(1){o=g<<2;J[o+h>>2]=J[o+J[a+332>>2]>>2];g=g+1|0;u=u+1|0;if((j|0)!=(u|0)){continue}break}}g=J[a+332>>2];if(!(!g|!K[a+336|0])){if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}d=J[a+324>>2];}J[a+332>>2]=h;H[a+336|0]=1;J[a+328>>2]=r;}J[J[a+332>>2]+(d<<2)>>2]=t;J[a+324>>2]=d+1;d=J[c+360>>2];x=N[d+20>>2];y=N[d+36>>2];z=N[d+40>>2];A=N[d+8>>2];B=N[d+24>>2];f=N[d+60>>2];I=N[d+52>>2];i=N[d+56>>2];C=N[d+44>>2];k=N[d+12>>2];D=N[d+28>>2];E=N[d+4>>2];p=N[e+60>>2];v=N[e+52>>2];L=N[e+56>>2];J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[c+36>>2]=0;n=Q(n+p);l=Q(l+v);m=Q(m+L);v=Q(Q(C*n)+Q(Q(k*l)+Q(D*m)));p=k;k=Q(-I);N[c+32>>2]=v+Q(Q(Q(p*k)-Q(D*i))-Q(C*f));N[c+28>>2]=Q(Q(n*z)+Q(Q(l*A)+Q(m*B)))+Q(Q(Q(A*k)-Q(B*i))-Q(z*f));N[c+24>>2]=Q(Q(n*y)+Q(Q(l*E)+Q(m*x)))+Q(Q(Q(E*k)-Q(x*i))-Q(y*f));d=J[c+408>>2];J[c+80>>2]=J[c+404>>2];J[c+84>>2]=d;d=J[c+400>>2];J[c+72>>2]=J[c+396>>2];J[c+76>>2]=d;N[c+88>>2]=F;J[c+100>>2]=0;J[c+104>>2]=0;J[c+92>>2]=0;J[c+96>>2]=0;J[c+172>>2]=0;J[c+164>>2]=0;J[c+168>>2]=0;J[c+156>>2]=0;J[c+160>>2]=0;J[c+148>>2]=0;J[c+152>>2]=0;J[c+140>>2]=0;J[c+144>>2]=0;J[c+132>>2]=0;J[c+136>>2]=0;J[c+124>>2]=0;J[c+128>>2]=0;J[c+208>>2]=J[e+192>>2];J[c+212>>2]=J[c+428>>2];d=P(rc(t,c+8|0),208)+t|0;J[d+100>>2]=0;f=Q(N[e+228>>2]*N[J[c+360>>2]+228>>2]);f=f<Q(-10)?Q(-10):f;N[d+88>>2]=f>Q(10)?Q(10):f;h=J[e+56>>2];J[d+52>>2]=J[e+52>>2];J[d+56>>2]=h;h=J[e+64>>2];J[d+60>>2]=J[e+60>>2];J[d+64>>2]=h;J[d+48>>2]=0;N[d+44>>2]=n;N[d+40>>2]=m;N[d+36>>2]=l;}}ua[J[8263]]();}s=s+1|0;if((w|0)!=(s|0)){continue}break}}ua[J[8263]]();sa=c+512|0;}function rc(a,b){var c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=0,y=Q(0),z=Q(0),A=0,B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Y=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0),da=Q(0),ea=0;k=J[a+844>>2];a:{if((k|0)==4){c=N[a+84>>2];e=N[b+80>>2];k=c<e;A=k?0:-1;f=N[a+292>>2];c=k?c:e;k=f<c;e=N[a+500>>2];c=k?f:c;x=e<c;A=x?2:k?1:A;k=N[a+708>>2]<(x?e:c);A=k?3:A;b:{c:{d:{e:{if(K[33064]){if(!A){n=N[a+636>>2];i=N[a+428>>2];h=Q(n-i);q=N[a+632>>2];l=N[a+424>>2];d=Q(q-l);v=N[a+628>>2];w=N[a+420>>2];m=Q(v-w);e=N[b+8>>2];f=N[b+4>>2];j=N[b>>2];break e}j=N[b>>2];s=N[a+212>>2];c=Q(j-s);q=N[a+632>>2];l=N[a+424>>2];d=Q(q-l);v=N[a+628>>2];w=N[a+420>>2];m=Q(v-w);f=N[b+4>>2];t=N[a+216>>2];e=Q(f-t);h=Q(Q(c*d)-Q(m*e));o=Q(h*h);n=N[a+636>>2];i=N[a+428>>2];h=Q(n-i);p=Q(e*h);e=N[b+8>>2];u=N[a+220>>2];g=Q(e-u);p=Q(p-Q(d*g));c=Q(Q(g*m)-Q(h*c));da=Q(o+Q(Q(p*p)+Q(c*c)));if((A|0)!=1){break e}j=Q(j-N[a+4>>2]);g=Q(-j);f=Q(f-N[a+8>>2]);p=Q(-f);e=Q(e-N[a+12>>2]);r=Q(-e);m=Q(0);break d}f:{g:{h:{i:{if(!A){j=N[a+428>>2];h=N[a+636>>2];m=Q(j-h);f=N[a+424>>2];d=N[a+632>>2];y=Q(f-d);e=N[a+420>>2];l=N[a+628>>2];B=Q(e-l);u=N[b+4>>2];H=Q(u-d);W=Q(-H);t=N[b>>2];z=Q(t-l);X=Q(-z);s=N[b+8>>2];I=Q(s-h);Y=Q(-I);E=Q(t-e);D=Q(-E);F=Q(s-j);V=Q(-F);G=Q(u-f);c=Q(-G);break i}t=N[b>>2];g=N[a+212>>2];L=Q(t-g);f=N[a+424>>2];d=N[a+632>>2];y=Q(f-d);e=N[a+420>>2];l=N[a+628>>2];B=Q(e-l);u=N[b+4>>2];p=N[a+216>>2];M=Q(u-p);c=Q(Q(L*y)-Q(B*M));i=Q(c*c);j=N[a+428>>2];h=N[a+636>>2];m=Q(j-h);s=N[b+8>>2];r=N[a+220>>2];O=Q(s-r);c=Q(Q(M*m)-Q(y*O));n=Q(c*c);c=Q(Q(O*B)-Q(m*L));n=Q(i+Q(n+Q(c*c)));E=Q(t-e);C=Q(p-d);c=Q(g-l);G=Q(u-f);i=Q(Q(E*C)-Q(c*G));q=Q(i*i);D=Q(r-h);F=Q(s-j);i=Q(Q(G*D)-Q(C*F));o=Q(i*i);i=Q(Q(F*c)-Q(D*E));i=Q(q+Q(o+Q(i*i)));n=i<n?n:i;z=Q(t-l);i=Q(p-f);q=Q(g-e);H=Q(u-d);o=Q(Q(z*i)-Q(q*H));v=Q(o*o);o=Q(r-j);I=Q(s-h);i=Q(Q(H*o)-Q(i*I));w=Q(i*i);i=Q(Q(I*q)-Q(o*z));i=Q(v+Q(w+Q(i*i)));da=i<n?n:i;W=Q(-H);X=Q(-z);Y=Q(-I);if((A|0)==1){break h}D=Q(-E);V=Q(-F);c=Q(-G);}n=N[a+4>>2];v=Q(t-n);i=N[a+8>>2];w=Q(u-i);g=Q(Q(v*y)-Q(B*w));o=Q(g*g);q=N[a+12>>2];S=Q(s-q);g=Q(Q(w*m)-Q(y*S));m=Q(Q(S*B)-Q(m*v));m=Q(o+Q(Q(g*g)+Q(m*m)));o=Q(i-d);T=Q(n-l);g=Q(Q(E*o)+Q(T*c));p=Q(g*g);U=Q(q-h);g=Q(Q(G*U)+Q(o*V));r=Q(g*g);g=Q(Q(F*T)+Q(U*D));g=Q(p+Q(r+Q(g*g)));m=g<m?m:g;y=Q(i-f);B=Q(n-e);g=Q(Q(z*y)+Q(B*W));p=Q(g*g);C=Q(q-j);g=Q(Q(H*C)+Q(y*Y));r=Q(g*g);g=Q(Q(I*B)+Q(C*X));g=Q(p+Q(r+Q(g*g)));m=g<m?m:g;Z=Q(-v);p=N[a+216>>2];M=Q(u-p);_=Q(-M);g=N[a+212>>2];L=Q(t-g);$=Q(-L);r=N[a+220>>2];O=Q(s-r);aa=Q(-O);ba=Q(-w);ca=Q(-S);if(!(!x|k)){l=Q(q-r);o=Q(i-p);z=Q(n-g);d=Q(0);break f}D=Q(r-h);C=Q(p-d);c=Q(g-l);break g}_=Q(-M);$=Q(-L);aa=Q(-O);n=N[a+4>>2];T=Q(n-l);q=N[a+12>>2];U=Q(q-h);i=N[a+8>>2];o=Q(i-d);v=Q(t-n);Z=Q(-v);w=Q(u-i);ba=Q(-w);S=Q(s-q);ca=Q(-S);m=Q(0);}d=Q(Q(v*C)+Q(c*ba));h=Q(d*d);d=Q(Q(w*D)+Q(C*ca));c=Q(Q(S*c)+Q(D*Z));c=Q(h+Q(Q(d*d)+Q(c*c)));d=Q(Q(L*o)+Q(T*_));h=Q(d*d);d=Q(Q(M*U)+Q(o*aa));l=Q(d*d);d=Q(Q(O*T)+Q(U*$));d=Q(h+Q(l+Q(d*d)));c=c>d?c:d;o=Q(i-p);h=Q(z*o);z=Q(n-g);d=Q(h+Q(z*W));h=Q(d*d);l=Q(q-r);d=Q(Q(H*l)+Q(o*Y));y=Q(d*d);d=Q(Q(I*z)+Q(l*X));d=Q(h+Q(y+Q(d*d)));d=c>d?c:d;c=Q(0);if(k){break b}C=Q(q-j);y=Q(i-f);B=Q(n-e);G=Q(u-f);c=Q(-G);E=Q(t-e);D=Q(-E);F=Q(s-j);V=Q(-F);}f=Q(p-f);e=Q(g-e);h=Q(Q(v*f)+Q(e*ba));j=Q(r-j);f=Q(Q(w*j)+Q(f*ca));e=Q(Q(S*e)+Q(j*Z));e=Q(Q(h*h)+Q(Q(f*f)+Q(e*e)));f=Q(Q(L*y)+Q(B*_));h=Q(f*f);f=Q(Q(M*C)+Q(y*aa));g=Q(f*f);f=Q(Q(O*B)+Q(C*$));f=Q(h+Q(g+Q(f*f)));e=e>f?e:f;c=Q(Q(E*o)+Q(z*c));f=Q(c*c);c=Q(Q(G*l)+Q(o*V));h=Q(c*c);c=Q(Q(F*z)+Q(l*D));c=Q(f+Q(h+Q(c*c)));c=c<e?e:c;break b}j=Q(j-N[a+4>>2]);f=Q(f-N[a+8>>2]);c=Q(Q(j*d)-Q(m*f));g=Q(c*c);e=Q(e-N[a+12>>2]);c=Q(Q(f*h)-Q(d*e));d=Q(c*c);c=Q(Q(e*m)-Q(h*j));m=Q(g+Q(d+Q(c*c)));u=N[a+220>>2];t=N[a+216>>2];s=N[a+212>>2];g=Q(-j);p=Q(-f);r=Q(-e);if(k){break d}d=Q(0);if(x){break c}}c=Q(q-t);d=Q(v-s);h=Q(Q(j*c)+Q(d*p));q=Q(h*h);h=Q(n-u);c=Q(Q(f*h)+Q(c*r));n=Q(c*c);c=Q(Q(e*d)+Q(h*g));d=Q(q+Q(n+Q(c*c)));c=Q(0);if(k){break b}}c=Q(l-t);h=Q(j*c);j=Q(w-s);l=Q(h+Q(j*p));h=f;f=Q(i-u);c=Q(Q(h*f)+Q(c*r));h=Q(c*c);c=Q(Q(e*j)+Q(f*g));c=Q(Q(l*l)+Q(h+Q(c*c)));}e=Q(R(da));k=e>Q(-0xde0b6b000000000);x=k?0:-1;f=Q(R(m));e=k?e:Q(-0xde0b6b000000000);k=f>e;x=k?1:x;j=Q(R(d));e=k?f:e;k=j>e;k=Q(R(c))>(k?j:e)?3:k?2:x;A=P(k,208)+a|0;x=J[A+120>>2];if(!x){break a}ea=J[8753];if(!ea){break a}ua[ea|0](x)|0;J[A+120>>2]=0;break a}J[a+844>>2]=k+1;}x=a;a=(k|0)>0?k:0;Ja((x+P(a,208)|0)+4|0,b,208);return a}function Td(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=0,F=Q(0),G=Q(0),H=Q(0),I=Q(0),K=Q(0),L=Q(0),M=Q(0),O=Q(0),P=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0),da=0,ea=Q(0),fa=0;g=sa-96|0;sa=g;Kb(J[a+4>>2]);V=N[d+40>>2];W=N[d+36>>2];X=N[d+24>>2];Z=N[d+20>>2];G=N[b+20>>2];H=N[b+36>>2];I=N[b+24>>2];y=N[b+52>>2];m=N[c+52>>2];z=N[d+52>>2];l=N[e+52>>2];K=N[b+40>>2];A=N[b+56>>2];h=N[c+56>>2];B=N[d+56>>2];i=N[e+56>>2];_=N[d+32>>2];$=N[d+16>>2];aa=N[d+8>>2];ba=N[d+4>>2];ca=N[d>>2];L=N[b>>2];M=N[b+16>>2];O=N[b+32>>2];P=N[b+4>>2];R=N[b+8>>2];C=N[b+48>>2];j=N[c+48>>2];D=N[d+48>>2];p=N[e+48>>2];r=J[a+8>>2];J[g+60>>2]=0;x=Q(Q(j-C)-Q(p-D));j=Q(-x);t=Q(Q(m-y)-Q(l-z));u=Q(Q(h-A)-Q(i-B));N[g+56>>2]=Q(Q(R*j)-Q(I*t))-Q(K*u);N[g+52>>2]=Q(Q(P*j)-Q(G*t))-Q(H*u);N[g+48>>2]=Q(Q(L*j)-Q(M*t))-Q(O*u);ua[J[J[r>>2]+64>>2]](g+80|0,r,g+48|0);h=N[b+52>>2];i=N[b+24>>2];p=N[b+20>>2];j=N[b+56>>2];m=N[b+40>>2];l=N[b+36>>2];k=N[b+16>>2];n=N[b+48>>2];s=N[b+8>>2];o=N[b>>2];q=N[b+4>>2];v=N[b+32>>2];J[g+76>>2]=0;S=j;j=N[g+88>>2];w=Q(m*j);m=N[g+80>>2];T=l;l=N[g+84>>2];v=Q(S+Q(w+Q(Q(v*m)+Q(T*l))));N[g+72>>2]=v;n=Q(n+Q(Q(j*s)+Q(Q(m*o)+Q(l*q))));N[g+64>>2]=n;h=Q(h+Q(Q(j*i)+Q(Q(m*k)+Q(l*p))));N[g+68>>2]=h;r=J[a+12>>2];j=N[d+20>>2];m=N[d+36>>2];l=N[d+24>>2];i=N[d+40>>2];p=N[d>>2];k=N[d+16>>2];s=N[d+32>>2];o=N[d+4>>2];q=N[d+8>>2];J[g+28>>2]=0;N[g+24>>2]=Q(i*u)+Q(Q(q*x)+Q(t*l));N[g+20>>2]=Q(m*u)+Q(Q(o*x)+Q(t*j));N[g+16>>2]=Q(s*u)+Q(Q(p*x)+Q(t*k));ua[J[J[r>>2]+64>>2]](g+32|0,r,g+16|0);p=N[d+56>>2];k=N[d+40>>2];s=N[d+36>>2];j=N[d+52>>2];m=N[d+24>>2];l=N[d+20>>2];o=N[d+32>>2];i=N[d+48>>2];q=N[d+8>>2];w=N[d>>2];U=N[d+4>>2];F=N[d+16>>2];J[g+60>>2]=0;J[g+92>>2]=0;S=j;j=N[g+40>>2];ea=Q(m*j);m=N[g+32>>2];T=l;l=N[g+36>>2];F=Q(S+Q(ea+Q(Q(F*m)+Q(T*l))));N[g+52>>2]=F;h=Q(h-F);N[g+84>>2]=h;i=Q(i+Q(Q(j*q)+Q(Q(m*w)+Q(l*U))));N[g+48>>2]=i;i=Q(n-i);N[g+80>>2]=i;j=Q(p+Q(Q(j*k)+Q(Q(m*o)+Q(l*s))));N[g+56>>2]=j;k=Q(v-j);N[g+88>>2]=k;s=Q(0);j=Q(0);m=Q(0);l=Q(0);p=Q(0);n=Q(0);a:{b:{if(!(Q(Q(k*k)+Q(Q(i*i)+Q(h*h)))>Q(9999999747378752e-20))){break b}r=32;while(1){if(!r){break b}E=J[a+8>>2];J[g+12>>2]=0;h=Q(-N[g+80>>2]);i=N[g+84>>2];k=N[g+88>>2];N[g+8>>2]=Q(Q(R*h)-Q(I*i))-Q(K*k);N[g+4>>2]=Q(Q(P*h)-Q(G*i))-Q(H*k);N[g>>2]=Q(Q(L*h)-Q(M*i))-Q(O*k);da=g+16|0;ua[J[J[E>>2]+64>>2]](da,E,g);J[g+76>>2]=0;h=N[g+24>>2];i=N[g+16>>2];k=N[g+20>>2];N[g+72>>2]=A+Q(Q(h*K)+Q(Q(i*O)+Q(H*k)));N[g+68>>2]=y+Q(Q(h*I)+Q(Q(i*M)+Q(G*k)));N[g+64>>2]=C+Q(Q(h*R)+Q(Q(i*L)+Q(P*k)));E=J[a+12>>2];J[g+12>>2]=0;h=N[g+88>>2];i=N[g+80>>2];k=N[g+84>>2];N[g+8>>2]=Q(V*h)+Q(Q(aa*i)+Q(X*k));N[g+4>>2]=Q(W*h)+Q(Q(ba*i)+Q(Z*k));N[g>>2]=Q(_*h)+Q(Q(ca*i)+Q($*k));ua[J[J[E>>2]+64>>2]](da,E,g);J[g+60>>2]=0;J[g+44>>2]=0;k=N[g+24>>2];o=N[g+16>>2];q=N[g+20>>2];h=Q(z+Q(Q(k*X)+Q(Q(o*$)+Q(Z*q))));N[g+52>>2]=h;v=Q(N[g+68>>2]-h);N[g+36>>2]=v;h=N[g+84>>2];i=Q(D+Q(Q(k*aa)+Q(Q(o*ca)+Q(ba*q))));N[g+48>>2]=i;w=Q(N[g+64>>2]-i);N[g+32>>2]=w;i=N[g+80>>2];k=Q(B+Q(Q(k*V)+Q(Q(o*_)+Q(W*q))));N[g+56>>2]=k;o=Q(N[g+72>>2]-k);N[g+40>>2]=o;if(n>Q(1)){break a}k=N[g+88>>2];o=Q(Q(k*o)+Q(Q(i*w)+Q(h*v)));if(o>Q(0)){j=Q(Q(k*u)+Q(Q(i*x)+Q(t*h)));if(j>=Q(-14210854715202004e-30)){break a}m=N[b+48>>2];l=N[c+48>>2];p=N[b+52>>2];y=N[c+52>>2];A=N[b+56>>2];C=N[c+56>>2];D=N[d+48>>2];q=N[e+48>>2];z=N[d+52>>2];w=N[e+52>>2];B=N[d+56>>2];U=N[e+56>>2];J[g+44>>2]=0;N[g+36>>2]=v;n=Q(n-Q(o/j));j=Q(Q(1)-n);B=Q(Q(B*j)+Q(n*U));z=Q(Q(j*z)+Q(n*w));D=Q(Q(j*D)+Q(n*q));A=Q(Q(j*A)+Q(n*C));y=Q(Q(j*p)+Q(n*y));C=Q(Q(j*m)+Q(n*l));p=N[g+92>>2];m=h;l=k;j=i;}if(!Pd(J[a+4>>2],g+32|0)){Sd(J[a+4>>2],g+32|0,g- -64|0,g+48|0);}if(!Qd(J[a+4>>2],g+80|0)){break b}r=r-1|0;h=N[g+88>>2];i=Q(h*h);h=N[g+80>>2];k=Q(h*h);h=N[g+84>>2];if(Q(i+Q(k+Q(h*h)))>Q(9999999747378752e-20)){continue}break}}N[f+164>>2]=n;n=Q(0);i=Q(0);h=Q(0);k=Q(Q(l*l)+Q(Q(j*j)+Q(m*m)));if(k>=Q(14210854715202004e-30)){h=l;l=Q(Q(1)/Q(Y(k)));i=Q(h*l);n=Q(m*l);s=Q(j*l);h=p;}N[f+132>>2]=s;N[f+144>>2]=h;N[f+140>>2]=i;N[f+136>>2]=n;if(Q(-N[f+172>>2])<=Q(Q(i*u)+Q(Q(s*x)+Q(t*n)))){break a}Od(J[a+4>>2],g+16|0,g);a=J[g+12>>2];J[f+156>>2]=J[g+8>>2];J[f+160>>2]=a;a=J[g+4>>2];J[f+148>>2]=J[g>>2];J[f+152>>2]=a;fa=1;}sa=g+96|0;return fa|0}function gh(a,b){a=a|0;b=Q(b);var c=0,d=0,e=0,f=Q(0),g=0,h=Q(0),i=Q(0),j=0,k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=0,w=Q(0),x=Q(0),y=0,z=Q(0),A=0,B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0);y=sa-16|0;sa=y;ua[J[8262]](4190);j=J[a+248>>2];if((j|0)>0){A=J[a+256>>2];c=sa-304|0;sa=c;if((j|0)>0){while(1){d=J[(m<<2)+A>>2];J[d+268>>2]=1065353216;a:{b:{switch(J[d+220>>2]-2|0){case 0:case 3:break a;default:break b}}if(K[d+204|0]&3){break a}pb(d,b,c+240|0);c:{d:{if(!K[a+44|0]){break d}f=N[d+276>>2];f=Q(f*f);if(f==Q(0)){break d}h=Q(N[c+296>>2]-N[d+60>>2]);k=Q(h*h);h=Q(N[c+288>>2]-N[d+52>>2]);i=Q(h*h);h=Q(N[c+292>>2]-N[d+56>>2]);if(!(f<Q(k+Q(i+Q(h*h))))){break d}ua[J[8262]](6669);if(J[J[d+192>>2]+4>>2]<=19){J[8932]=J[8932]+1;e=J[a+68>>2];e=ua[J[J[e>>2]+36>>2]](e)|0;r=J[a+24>>2];J[c+148>>2]=-1;J[c+152>>2]=0;J[c+140>>2]=1065353216;J[c+144>>2]=1;g=J[d+64>>2];J[c+164>>2]=J[d+60>>2];J[c+168>>2]=g;g=J[d+56>>2];J[c+156>>2]=J[d+52>>2];J[c+160>>2]=g;g=J[c+300>>2];J[c+180>>2]=J[c+296>>2];J[c+184>>2]=g;g=J[c+292>>2];J[c+172>>2]=J[c+288>>2];J[c+176>>2]=g;J[c+232>>2]=r;J[c+228>>2]=e;J[c+224>>2]=0;J[c+136>>2]=24500;J[c+220>>2]=d;f=N[d+272>>2];r=Sa(c+76|0);J[r>>2]=21396;J[c+104>>2]=1065353216;J[c+96>>2]=1065353216;J[c+100>>2]=1065353216;J[c+80>>2]=8;J[c+124>>2]=0;J[c+116>>2]=0;J[c+120>>2]=0;J[c+108>>2]=0;J[c+112>>2]=0;J[c+132>>2]=0;N[c+128>>2]=f;N[c+112>>2]=f;N[c+224>>2]=N[a+56>>2];e=J[d+188>>2];J[c+144>>2]=J[e+4>>2];J[c+148>>2]=J[e+8>>2];e=J[c+252>>2];J[c+16>>2]=J[c+248>>2];J[c+20>>2]=e;e=J[c+244>>2];J[c+8>>2]=J[c+240>>2];J[c+12>>2]=e;e=J[c+268>>2];J[c+32>>2]=J[c+264>>2];J[c+36>>2]=e;e=J[c+260>>2];J[c+24>>2]=J[c+256>>2];J[c+28>>2]=e;e=J[c+284>>2];J[c+48>>2]=J[c+280>>2];J[c+52>>2]=e;e=J[c+276>>2];J[c+40>>2]=J[c+272>>2];J[c+44>>2]=e;e=J[c+300>>2];J[c+64>>2]=J[c+296>>2];J[c+68>>2]=e;e=J[c+292>>2];J[c+56>>2]=J[c+288>>2];J[c+60>>2]=e;e=d+4|0;g=J[e+12>>2];J[c+16>>2]=J[e+8>>2];J[c+20>>2]=g;g=J[e+4>>2];J[c+8>>2]=J[e>>2];J[c+12>>2]=g;g=J[d+32>>2];J[c+32>>2]=J[d+28>>2];J[c+36>>2]=g;g=J[d+24>>2];J[c+24>>2]=J[d+20>>2];J[c+28>>2]=g;g=J[d+48>>2];J[c+48>>2]=J[d+44>>2];J[c+52>>2]=g;g=J[d+40>>2];J[c+40>>2]=J[d+36>>2];J[c+44>>2]=g;vb(a,r,e,c+8|0,c+136|0,Q(0));if(J[c+152>>2]){f=N[c+140>>2];if(f<Q(1)){break c}}}ua[J[8263]]();}Fd(d,c+240|0);break a}N[d+268>>2]=f;e=c+240|0;pb(d,Q(f*b),e);J[d+268>>2]=0;Fd(d,e);ua[J[8263]]();}m=m+1|0;if((j|0)!=(m|0)){continue}break}}sa=c+304|0;}if(K[a+291|0]){ua[J[8262]](5549);c=J[a+324>>2];if((c|0)>0){while(1){j=J[J[a+332>>2]+(v<<2)>>2];if(J[j+844>>2]>0){c=J[j+840>>2];c=J[c+252>>2]<<30>>31&c;d=J[j+836>>2];d=J[d+252>>2]<<30>>31&d;m=0;while(1){b=Q(N[d+232>>2]*N[c+232>>2]);e:{if(!(b>Q(0))){break e}e=j+P(m,208)|0;f=N[e+136>>2];if(f==Q(0)){break e}s=N[e+44>>2];B=N[c+60>>2];t=N[e+40>>2];C=N[c+56>>2];u=N[e+36>>2];D=N[c+52>>2];h=Q(b*Q(f*Q(-N[e+76>>2])));i=Q(b*Q(f*Q(-N[e+72>>2])));f=Q(b*Q(f*Q(-N[e+68>>2])));b=N[d+404>>2];if(b!=Q(0)){n=N[e+56>>2];o=N[e+60>>2];p=N[e+52>>2];q=Q(f*N[d+408>>2]);N[d+372>>2]=Q(b*q)+N[d+372>>2];l=Q(i*N[d+412>>2]);N[d+376>>2]=Q(b*l)+N[d+376>>2];k=b;b=Q(h*N[d+416>>2]);N[d+380>>2]=Q(k*b)+N[d+380>>2];k=N[d+612>>2];w=N[d+364>>2];x=N[d+356>>2];E=N[d+360>>2];F=N[d+608>>2];G=N[d+348>>2];H=N[d+340>>2];I=N[d+344>>2];p=Q(p-N[d+52>>2]);z=Q(n-N[d+56>>2]);n=Q(Q(p*l)-Q(q*z));o=Q(o-N[d+60>>2]);l=Q(Q(z*b)-Q(l*o));b=Q(Q(o*q)-Q(b*p));N[d+388>>2]=Q(Q(Q(N[d+332>>2]*n)+Q(Q(N[d+324>>2]*l)+Q(b*N[d+328>>2])))*N[d+604>>2])+N[d+388>>2];N[d+392>>2]=Q(F*Q(Q(G*n)+Q(Q(H*l)+Q(b*I))))+N[d+392>>2];N[d+396>>2]=Q(k*Q(Q(w*n)+Q(Q(x*l)+Q(b*E))))+N[d+396>>2];}b=N[c+404>>2];if(b==Q(0)){break e}f=Q(N[c+408>>2]*Q(-f));N[c+372>>2]=Q(b*f)+N[c+372>>2];i=Q(N[c+412>>2]*Q(-i));N[c+376>>2]=Q(b*i)+N[c+376>>2];k=b;b=Q(N[c+416>>2]*Q(-h));N[c+380>>2]=Q(k*b)+N[c+380>>2];q=N[c+612>>2];l=N[c+364>>2];n=N[c+356>>2];o=N[c+360>>2];p=N[c+608>>2];k=N[c+348>>2];w=N[c+340>>2];x=N[c+344>>2];u=Q(u-D);t=Q(t-C);h=Q(Q(u*i)-Q(f*t));s=Q(s-B);i=Q(Q(t*b)-Q(i*s));b=Q(Q(s*f)-Q(b*u));N[c+388>>2]=Q(Q(Q(N[c+332>>2]*h)+Q(Q(N[c+324>>2]*i)+Q(b*N[c+328>>2])))*N[c+604>>2])+N[c+388>>2];N[c+392>>2]=Q(p*Q(Q(k*h)+Q(Q(w*i)+Q(b*x))))+N[c+392>>2];N[c+396>>2]=Q(q*Q(Q(l*h)+Q(Q(n*i)+Q(b*o))))+N[c+396>>2];}m=m+1|0;if((m|0)<J[j+844>>2]){continue}break}c=J[a+324>>2];}v=v+1|0;if((v|0)<(c|0)){continue}break}}ua[J[8263]]();}ua[J[8263]]();sa=y+16|0;}function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=Q(d);var e=0,f=Q(0),g=0,h=Q(0),i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=0,p=Q(0),q=0,r=0,s=0,t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),L=Q(0),M=0;e=sa-208|0;sa=e;a:{if(N[J[a+4>>2]+848>>2]<d){break a}p=N[c+8>>2];k=Q(Q(N[b+8>>2]*d)+p);v=N[c+4>>2];h=Q(Q(N[b+4>>2]*d)+v);w=N[c>>2];l=Q(Q(N[b>>2]*d)+w);r=J[a+8>>2];g=J[r+8>>2];q=J[a+4>>2];i=J[q+836>>2];s=(g|0)==(i|0);b:{if(!s){o=J[a+12>>2];i=J[o+8>>2];f=Q(k-N[i+60>>2]);m=Q(l-N[i+52>>2]);j=Q(h-N[i+56>>2]);x=Q(Q(N[i+44>>2]*f)+Q(Q(N[i+12>>2]*m)+Q(j*N[i+28>>2])));y=Q(Q(N[i+40>>2]*f)+Q(Q(N[i+8>>2]*m)+Q(j*N[i+24>>2])));f=Q(Q(N[i+36>>2]*f)+Q(Q(N[i+4>>2]*m)+Q(j*N[i+20>>2])));break b}f=Q(k-N[i+60>>2]);m=Q(l-N[i+52>>2]);j=Q(h-N[i+56>>2]);x=Q(Q(N[i+44>>2]*f)+Q(Q(N[i+12>>2]*m)+Q(j*N[i+28>>2])));y=Q(Q(N[i+40>>2]*f)+Q(Q(N[i+8>>2]*m)+Q(j*N[i+24>>2])));o=J[a+12>>2];g=J[o+8>>2];f=Q(Q(N[i+36>>2]*f)+Q(Q(N[i+4>>2]*m)+Q(j*N[i+20>>2])));}z=J[q+844>>2];A=N[g+20>>2];B=N[g+36>>2];C=N[g+40>>2];D=N[g+8>>2];E=N[g+24>>2];m=N[g+44>>2];j=N[g+60>>2];F=N[g+12>>2];G=N[g+52>>2];H=N[g+28>>2];I=N[g+56>>2];L=N[g+4>>2];J[e+28>>2]=0;u=m;m=Q(p-j);j=Q(w-G);p=Q(v-I);N[e+24>>2]=Q(u*m)+Q(Q(F*j)+Q(H*p));N[e+20>>2]=Q(C*m)+Q(Q(D*j)+Q(p*E));J[e+12>>2]=0;N[e+8>>2]=x;N[e+4>>2]=y;N[e>>2]=f;N[e+16>>2]=Q(B*m)+Q(Q(L*j)+Q(p*A));g=J[b+12>>2];J[e+72>>2]=J[b+8>>2];J[e+76>>2]=g;g=J[b>>2];b=J[b+4>>2];J[e+92>>2]=0;J[e+96>>2]=0;J[e+124>>2]=0;J[e+128>>2]=0;J[e+132>>2]=0;J[e+136>>2]=0;J[e+140>>2]=0;J[e+144>>2]=0;J[e+148>>2]=0;J[e+152>>2]=0;J[e+156>>2]=0;J[e+160>>2]=0;J[e+164>>2]=0;N[e+52>>2]=h;N[e+56>>2]=k;J[e+60>>2]=0;J[e+64>>2]=g;J[e+68>>2]=b;J[e+84>>2]=0;J[e+88>>2]=0;N[e+80>>2]=d;J[e+116>>2]=0;J[e+120>>2]=0;N[e+48>>2]=l;b=J[c+12>>2];J[e+40>>2]=J[c+8>>2];J[e+44>>2]=b;b=J[c+4>>2];J[e+32>>2]=J[c>>2];J[e+36>>2]=b;b=J[r>>2];b=b?b:r;c=J[o>>2];g=c?c:o;c:{if(!s){n=a+24|0;c=a+28|0;t=a+20|0;i=b;b=a+16|0;break c}n=a+28|0;c=a+24|0;t=a+16|0;i=g;g=b;b=a+20|0;}g=J[g+4>>2];t=J[t>>2];M=J[b>>2];b=J[c>>2];c=J[n>>2];n=J[i+4>>2];J[e+204>>2]=n;J[e+112>>2]=c;J[e+108>>2]=b;J[e+104>>2]=M;J[e+100>>2]=t;J[e+200>>2]=g;if(J[g+4>>2]==31){g=J[(J[g+32>>2]+P(b,80)|0)+64>>2];J[e+200>>2]=g;}if(J[n+4>>2]==31){n=J[(J[n+32>>2]+P(c,80)|0)+64>>2];J[e+204>>2]=n;}i=a+4|0;d:{e:{b=J[g+16>>2];if(!b){break e}c=J[n+16>>2];if(!c){break e}h=N[b+12>>2];l=N[c+12>>2];f=N[b+8>>2];m=N[c+8>>2];d=N[c+4>>2];k=N[b+4>>2];N[e+96>>2]=N[b>>2]*N[c>>2];j=Q(k*d);j=j<Q(-10)?Q(-10):j;N[e+84>>2]=j>Q(10)?Q(10):j;f=Q(Q(f*d)+Q(k*m));f=f<Q(-10)?Q(-10):f;N[e+88>>2]=f>Q(10)?Q(10):f;d=Q(Q(h*d)+Q(k*l));d=d<Q(-10)?Q(-10):d;d=d>Q(10)?Q(10):d;break d}b=J[r+8>>2];d=N[b+228>>2];c=J[o+8>>2];k=N[c+228>>2];h=Q(d*k);h=h<Q(-10)?Q(-10):h;N[e+84>>2]=h>Q(10)?Q(10):h;N[e+96>>2]=N[b+232>>2]*N[c+232>>2];h=Q(Q(k*N[b+236>>2])+Q(d*N[c+236>>2]));h=h<Q(-10)?Q(-10):h;N[e+88>>2]=h>Q(10)?Q(10):h;d=Q(Q(k*N[b+240>>2])+Q(d*N[c+240>>2]));d=d<Q(-10)?Q(-10):d;d=d>Q(10)?Q(10):d;}N[e+92>>2]=d;d=N[e+72>>2];f:{if(Q(R(d))>Q(.7071067690849304)){h=N[e+68>>2];l=Q(Q(h*h)+Q(d*d));k=Q(Q(1)/Q(Y(l)));l=Q(l*k);f=Q(k*Q(-d));j=N[e+64>>2];m=Q(f*j);d=Q(h*k);h=Q(d*Q(-j));j=Q(0);break f}l=N[e+64>>2];h=N[e+68>>2];f=Q(Q(l*l)+Q(h*h));k=Q(Q(1)/Q(Y(f)));m=Q(f*k);j=Q(k*Q(-h));h=Q(d*j);f=Q(l*k);l=Q(f*Q(-d));d=Q(0);}N[e+192>>2]=m;N[e+188>>2]=h;N[e+172>>2]=f;N[e+184>>2]=l;N[e+176>>2]=d;N[e+168>>2]=j;g=J[i>>2];o=J[q+844>>2];g:{if((o|0)<=0){b=-1;break g}k=N[e+8>>2];h=N[e+4>>2];l=N[e>>2];d=N[q+848>>2];d=Q(d*d);c=0;b=-1;while(1){n=P(c,208)+q|0;f=Q(N[n+12>>2]-k);m=Q(f*f);f=Q(N[n+4>>2]-l);u=Q(f*f);f=Q(N[n+8>>2]-h);f=Q(m+Q(u+Q(f*f)));n=f<d;d=n?f:d;b=n?c:b;c=c+1|0;if((o|0)!=(c|0)){continue}break}}n=b;h:{if((b|0)>=0){b=g+P(n,208)|0;d=N[b+144>>2];k=N[b+140>>2];h=N[b+136>>2];c=J[b+168>>2];i:{if(K[e+128|0]&16){l=Q(Q(N[b+88>>2]*h)+Q(0));if(!(Q(Q(k*k)+Q(d*d))>Q(l*l))){break i}}g=J[b+120>>2];Ja(b+4|0,e,208);J[b+120>>2]=g;N[b+136>>2]=h;N[b+140>>2]=k;N[b+144>>2]=d;}J[b+168>>2]=c;break h}n=rc(g,e);}c=J[8469];j:{if(!c){break j}b=J[a+12>>2];a=J[a+8>>2];if(!(K[J[a+8>>2]+204|0]&8|K[J[b+8>>2]+204|0]&8)){break j}ua[c|0]((J[i>>2]+P(n,208)|0)+4|0,s?a:b,J[e+100>>2],J[e+108>>2],s?b:a,J[e+104>>2],J[e+112>>2])|0;}if(z){break a}a=J[8755];if(!a){break a}ua[a|0](i);}sa=e+208|0;}function yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);Gb(a,b,c);N[b+52>>2]=N[a+48>>2];N[b+56>>2]=N[a+52>>2];N[b+60>>2]=N[a+56>>2];N[b- -64>>2]=N[a+60>>2];N[b+68>>2]=N[a- -64>>2];N[b+72>>2]=N[a+68>>2];N[b+76>>2]=N[a+72>>2];N[b+80>>2]=N[a+76>>2];N[b+84>>2]=N[a+80>>2];N[b+88>>2]=N[a+84>>2];N[b+92>>2]=N[a+88>>2];N[b+96>>2]=N[a+92>>2];N[b+100>>2]=N[a+96>>2];N[b+104>>2]=N[a+100>>2];N[b+108>>2]=N[a+104>>2];N[b+112>>2]=N[a+108>>2];N[b+116>>2]=N[a+112>>2];N[b+120>>2]=N[a+116>>2];N[b+124>>2]=N[a+120>>2];N[b+128>>2]=N[a+124>>2];N[b+132>>2]=N[a+128>>2];N[b+136>>2]=N[a+132>>2];N[b+140>>2]=N[a+136>>2];N[b+144>>2]=N[a+140>>2];N[b+148>>2]=N[a+144>>2];N[b+152>>2]=N[a+148>>2];N[b+156>>2]=N[a+152>>2];N[b+160>>2]=N[a+156>>2];N[b+164>>2]=N[a+160>>2];N[b+168>>2]=N[a+164>>2];N[b+172>>2]=N[a+168>>2];N[b+176>>2]=N[a+172>>2];N[b+428>>2]=N[a+968>>2];N[b+412>>2]=N[a+972>>2];N[b+444>>2]=N[a+976>>2];N[b+460>>2]=N[a+980>>2];N[b+476>>2]=N[a+984>>2];N[b+492>>2]=N[a+988>>2];N[b+508>>2]=N[a+992>>2];N[b+524>>2]=N[a+1e3>>2];N[b+540>>2]=N[a+1004>>2];N[b+556>>2]=N[a+1012>>2];N[b+572>>2]=N[a+1020>>2];N[b+588>>2]=N[a+1028>>2];N[b+604>>2]=N[a+1036>>2];N[b+432>>2]=N[a+1056>>2];N[b+416>>2]=N[a+1060>>2];N[b+448>>2]=N[a+1064>>2];N[b+464>>2]=N[a+1068>>2];N[b+480>>2]=N[a+1072>>2];N[b+496>>2]=N[a+1076>>2];N[b+512>>2]=N[a+1080>>2];N[b+528>>2]=N[a+1088>>2];N[b+544>>2]=N[a+1092>>2];N[b+560>>2]=N[a+1100>>2];N[b+576>>2]=N[a+1108>>2];N[b+592>>2]=N[a+1116>>2];N[b+608>>2]=N[a+1124>>2];N[b+436>>2]=N[a+1144>>2];N[b+420>>2]=N[a+1148>>2];N[b+452>>2]=N[a+1152>>2];N[b+468>>2]=N[a+1156>>2];N[b+484>>2]=N[a+1160>>2];N[b+500>>2]=N[a+1164>>2];N[b+516>>2]=N[a+1168>>2];N[b+532>>2]=N[a+1176>>2];N[b+548>>2]=N[a+1180>>2];N[b+564>>2]=N[a+1188>>2];N[b+580>>2]=N[a+1196>>2];N[b+596>>2]=N[a+1204>>2];d=N[a+1212>>2];J[b+440>>2]=0;N[b+612>>2]=d;J[b+616>>2]=0;J[b+600>>2]=0;J[b+584>>2]=0;J[b+568>>2]=0;J[b+552>>2]=0;J[b+536>>2]=0;J[b+520>>2]=0;J[b+504>>2]=0;J[b+488>>2]=0;J[b+472>>2]=0;J[b+456>>2]=0;J[b+424>>2]=0;H[b+620|0]=K[a+996|0];H[b+624|0]=K[a+1008|0];H[b+628|0]=K[a+1016|0];H[b+632|0]=K[a+1024|0];H[b+636|0]=K[a+1032|0];H[b+621|0]=K[a+1084|0];H[b+625|0]=K[a+1096|0];H[b+629|0]=K[a+1104|0];H[b+633|0]=K[a+1112|0];H[b+637|0]=K[a+1120|0];H[b+622|0]=K[a+1172|0];H[b+626|0]=K[a+1184|0];H[b+630|0]=K[a+1192|0];H[b+634|0]=K[a+1200|0];c=K[a+1208|0];H[b+639|0]=0;H[b+635|0]=0;H[b+631|0]=0;H[b+627|0]=0;H[b+623|0]=0;H[b+638|0]=c;N[b+196>>2]=N[a+680>>2];N[b+200>>2]=N[a+684>>2];N[b+204>>2]=N[a+688>>2];N[b+208>>2]=N[a+692>>2];N[b+180>>2]=N[a+696>>2];N[b+184>>2]=N[a+700>>2];N[b+188>>2]=N[a+704>>2];N[b+192>>2]=N[a+708>>2];N[b+212>>2]=N[a+712>>2];N[b+216>>2]=N[a+716>>2];N[b+220>>2]=N[a+720>>2];N[b+224>>2]=N[a+724>>2];N[b+228>>2]=N[a+728>>2];N[b+232>>2]=N[a+732>>2];N[b+236>>2]=N[a+736>>2];N[b+240>>2]=N[a+740>>2];N[b+244>>2]=N[a+744>>2];N[b+248>>2]=N[a+748>>2];N[b+252>>2]=N[a+752>>2];N[b+256>>2]=N[a+756>>2];N[b+260>>2]=N[a+760>>2];N[b+264>>2]=N[a+764>>2];N[b+268>>2]=N[a+768>>2];N[b+272>>2]=N[a+772>>2];N[b+276>>2]=N[a+776>>2];N[b+280>>2]=N[a+780>>2];N[b+284>>2]=N[a+784>>2];N[b+288>>2]=N[a+788>>2];N[b+292>>2]=N[a+876>>2];N[b+296>>2]=N[a+880>>2];N[b+300>>2]=N[a+884>>2];N[b+304>>2]=N[a+888>>2];N[b+308>>2]=N[a+892>>2];N[b+312>>2]=N[a+896>>2];N[b+316>>2]=N[a+900>>2];N[b+320>>2]=N[a+904>>2];N[b+324>>2]=N[a+804>>2];N[b+328>>2]=N[a+808>>2];N[b+332>>2]=N[a+812>>2];N[b+336>>2]=N[a+816>>2];N[b+340>>2]=N[a+820>>2];N[b+344>>2]=N[a+824>>2];N[b+348>>2]=N[a+828>>2];N[b+352>>2]=N[a+832>>2];N[b+356>>2]=N[a+840>>2];N[b+360>>2]=N[a+844>>2];N[b+364>>2]=N[a+848>>2];N[b+368>>2]=N[a+852>>2];N[b+372>>2]=N[a+860>>2];N[b+376>>2]=N[a+864>>2];N[b+380>>2]=N[a+868>>2];N[b+384>>2]=N[a+872>>2];H[b+388|0]=K[a+792|0];H[b+392|0]=K[a+795|0];H[b+396|0]=K[a+798|0];H[b+400|0]=K[a+836|0];H[b+404|0]=K[a+856|0];H[b+389|0]=K[a+793|0];H[b+393|0]=K[a+796|0];H[b+397|0]=K[a+799|0];H[b+401|0]=K[a+837|0];H[b+405|0]=K[a+857|0];H[b+390|0]=K[a+794|0];H[b+394|0]=K[a+797|0];H[b+398|0]=K[a+800|0];H[b+402|0]=K[a+838|0];c=K[a+858|0];H[b+407|0]=0;H[b+403|0]=0;H[b+399|0]=0;H[b+395|0]=0;H[b+391|0]=0;H[b+406|0]=c;a=J[a+1232>>2];J[b+408>>2]=0;J[b+640>>2]=a;return 8485}function xo(a,b,c,d,e,f){a=a|0;b=Q(b);c=Q(c);d=d|0;e=e|0;f=f|0;var g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=0,x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=0,E=0,F=0,G=Q(0),H=Q(0),I=Q(0),K=0,L=Q(0);g=sa-144|0;sa=g;t=N[e+56>>2];u=N[e+52>>2];v=N[e+48>>2];J[g+136>>2]=0;J[g+140>>2]=0;J[g+128>>2]=0;J[g+132>>2]=0;s=d<<2;c=Q(c*Q(.5));N[s+(g+128|0)>>2]=c;J[g+120>>2]=0;J[g+124>>2]=0;J[g+112>>2]=0;J[g+116>>2]=0;F=(d+1|0)%3|0;w=F<<2;N[w+(g+112|0)>>2]=b;J[g+104>>2]=0;J[g+108>>2]=0;J[g+96>>2]=0;J[g+100>>2]=0;D=(d+2|0)%3<<2;N[D+(g+96|0)>>2]=b;J[g+88>>2]=0;J[g+92>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;E=s;s=g+80|0;N[E+s>>2]=-c;D=s+D|0;w=s+w|0;c=N[g+136>>2];k=N[g+132>>2];l=N[g+128>>2];s=0;while(1){m=Q(Q(s|0)*Q(.01745329238474369));K=w,L=Q(Na(m)*b),N[K>>2]=L;K=D,L=Q(Ma(m)*b),N[K>>2]=L;m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+24>>2];q=N[e+16>>2];r=N[e+20>>2];h=N[e+40>>2];i=N[e+32>>2];j=N[e+36>>2];J[g+76>>2]=0;N[g+72>>2]=t+Q(Q(h*c)+Q(Q(i*l)+Q(k*j)));N[g+68>>2]=u+Q(Q(p*c)+Q(Q(q*l)+Q(k*r)));N[g+64>>2]=v+Q(Q(m*c)+Q(Q(n*l)+Q(o*k)));J[g+60>>2]=0;x=h;h=N[g+88>>2];y=i;i=N[g+80>>2];z=j;j=N[g+84>>2];N[g+56>>2]=t+Q(Q(x*h)+Q(Q(y*i)+Q(z*j)));N[g+52>>2]=u+Q(Q(p*h)+Q(Q(q*i)+Q(r*j)));N[g+48>>2]=v+Q(Q(m*h)+Q(Q(n*i)+Q(o*j)));ua[J[J[a>>2]+16>>2]](a,g- -64|0,g+48|0,f);E=s>>>0<330;s=s+30|0;if(E){continue}break}m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+24>>2];q=N[e+16>>2];r=N[e+20>>2];h=N[e+40>>2];i=N[e+32>>2];j=N[e+36>>2];J[g+76>>2]=0;N[g+72>>2]=t+Q(Q(h*c)+Q(Q(i*l)+Q(k*j)));N[g+68>>2]=u+Q(Q(p*c)+Q(Q(q*l)+Q(k*r)));N[g+64>>2]=v+Q(Q(m*c)+Q(Q(n*l)+Q(o*k)));J[g+60>>2]=0;x=h;A=N[g+120>>2];h=Q(A-c);y=i;B=N[g+112>>2];i=Q(B-l);z=j;C=N[g+116>>2];j=Q(C-k);N[g+56>>2]=t+Q(Q(x*h)+Q(Q(y*i)+Q(z*j)));N[g+52>>2]=u+Q(Q(p*h)+Q(Q(q*i)+Q(r*j)));N[g+48>>2]=v+Q(Q(m*h)+Q(Q(n*i)+Q(o*j)));s=g- -64|0;w=g+48|0;ua[J[J[a>>2]+16>>2]](a,s,w,f);m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+24>>2];q=N[e+16>>2];r=N[e+20>>2];h=N[e+40>>2];i=N[e+32>>2];j=N[e+36>>2];J[g+76>>2]=0;N[g+72>>2]=t+Q(Q(h*c)+Q(Q(i*l)+Q(k*j)));N[g+68>>2]=u+Q(Q(p*c)+Q(Q(q*l)+Q(k*r)));N[g+64>>2]=v+Q(Q(m*c)+Q(Q(n*l)+Q(k*o)));J[g+60>>2]=0;x=h;G=Q(-c);h=Q(G-A);y=i;A=Q(-l);i=Q(A-B);z=j;B=Q(-k);j=Q(B-C);N[g+56>>2]=t+Q(Q(x*h)+Q(Q(y*i)+Q(z*j)));N[g+52>>2]=u+Q(Q(p*h)+Q(Q(q*i)+Q(j*r)));N[g+48>>2]=v+Q(Q(m*h)+Q(Q(n*i)+Q(j*o)));ua[J[J[a>>2]+16>>2]](a,s,w,f);m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+24>>2];q=N[e+16>>2];r=N[e+20>>2];h=N[e+40>>2];i=N[e+32>>2];j=N[e+36>>2];J[g+76>>2]=0;N[g+72>>2]=t+Q(Q(h*c)+Q(Q(i*l)+Q(k*j)));N[g+68>>2]=u+Q(Q(p*c)+Q(Q(q*l)+Q(k*r)));N[g+64>>2]=v+Q(Q(m*c)+Q(Q(n*l)+Q(k*o)));J[g+60>>2]=0;x=h;C=N[g+104>>2];h=Q(C-c);y=i;H=N[g+96>>2];i=Q(H-l);z=j;I=N[g+100>>2];j=Q(I-k);N[g+56>>2]=t+Q(Q(x*h)+Q(Q(y*i)+Q(z*j)));N[g+52>>2]=u+Q(Q(p*h)+Q(Q(q*i)+Q(r*j)));N[g+48>>2]=v+Q(Q(m*h)+Q(Q(n*i)+Q(o*j)));ua[J[J[a>>2]+16>>2]](a,s,w,f);m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+24>>2];q=N[e+16>>2];r=N[e+20>>2];h=N[e+40>>2];i=N[e+32>>2];j=N[e+36>>2];J[g+76>>2]=0;N[g+72>>2]=t+Q(Q(h*c)+Q(Q(i*l)+Q(k*j)));N[g+68>>2]=u+Q(Q(p*c)+Q(Q(q*l)+Q(k*r)));N[g+64>>2]=v+Q(Q(m*c)+Q(Q(n*l)+Q(k*o)));J[g+60>>2]=0;x=h;h=Q(G-C);y=i;i=Q(A-H);z=j;j=Q(B-I);N[g+56>>2]=t+Q(Q(x*h)+Q(Q(y*i)+Q(z*j)));N[g+52>>2]=u+Q(Q(p*h)+Q(Q(q*i)+Q(j*r)));N[g+48>>2]=v+Q(Q(m*h)+Q(Q(n*i)+Q(j*o)));ua[J[J[a>>2]+16>>2]](a,s,w,f);J[g+72>>2]=0;J[g+76>>2]=0;J[g+64>>2]=0;J[g+68>>2]=0;J[s+(d<<2)>>2]=1065353216;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;J[w+(F<<2)>>2]=1065353216;m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+24>>2];q=N[e+16>>2];r=N[e+20>>2];h=N[e+40>>2];i=N[e+32>>2];j=N[e+36>>2];J[g+44>>2]=0;N[g+40>>2]=t-Q(Q(h*c)+Q(Q(i*l)+Q(k*j)));N[g+36>>2]=u-Q(Q(p*c)+Q(Q(q*l)+Q(k*r)));N[g+32>>2]=v-Q(Q(m*c)+Q(Q(n*l)+Q(k*o)));J[g+28>>2]=0;c=N[g+72>>2];k=N[g+64>>2];l=N[g+68>>2];N[g+24>>2]=Q(h*c)+Q(Q(i*k)+Q(j*l));N[g+20>>2]=Q(p*c)+Q(Q(q*k)+Q(r*l));N[g+16>>2]=Q(m*c)+Q(Q(n*k)+Q(o*l));J[g+12>>2]=0;c=N[g+56>>2];k=N[g+48>>2];l=N[g+52>>2];N[g+8>>2]=Q(h*c)+Q(Q(i*k)+Q(j*l));N[g+4>>2]=Q(p*c)+Q(Q(q*k)+Q(r*l));N[g>>2]=Q(m*c)+Q(Q(n*k)+Q(o*l));ua[J[J[a>>2]+68>>2]](a,g+32|0,g+16|0,g,b,b,Q(0),Q(6.2831854820251465),f,0,Q(10));sa=g+144|0;}function xc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=Q(0),l=0,m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0);a:{b:{if(K[a+165|0]){d=J[a+88>>2];if(!(!c|(d|0)<=0)){e=J[a+96>>2];n=N[a+168>>2];o=N[b+8>>2];p=N[b+4>>2];q=N[b>>2];c=0;while(1){f=e+(c<<4)|0;k=Q(N[f+8>>2]-o);r=Q(k*k);k=Q(N[f>>2]-q);s=Q(k*k);k=Q(N[f+4>>2]-p);if(n>=Q(r+Q(s+Q(k*k)))){break b}c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=J[a+32>>2];J[c+12>>2]=J[c+12>>2]+1;c:{if(J[a+92>>2]!=(d|0)){break c}h=d?d<<1:1;if((h|0)<=(d|0)){break c}if(h){J[8456]=J[8456]+1;g=ua[J[8258]](h<<4,16)|0;d=J[a+88>>2];}d:{if((d|0)<=0){break d}i=d&1;c=0;if((d|0)!=1){l=d&-2;d=0;while(1){j=c<<4;f=j+g|0;m=j+J[a+96>>2]|0;e=J[m+4>>2];J[f>>2]=J[m>>2];J[f+4>>2]=e;e=J[m+12>>2];J[f+8>>2]=J[m+8>>2];J[f+12>>2]=e;e=j|16;f=e+g|0;j=e+J[a+96>>2]|0;e=J[j+4>>2];J[f>>2]=J[j>>2];J[f+4>>2]=e;e=J[j+12>>2];J[f+8>>2]=J[j+8>>2];J[f+12>>2]=e;c=c+2|0;d=d+2|0;if((l|0)!=(d|0)){continue}break}}if(!i){break d}c=c<<4;f=c+g|0;e=c+J[a+96>>2]|0;c=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=c;c=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=c;}c=J[a+96>>2];if(!(c?!c|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+96>>2]=g;H[a+100|0]=1;J[a+92>>2]=h;d=J[a+88>>2];}c=J[b+4>>2];e=J[a+96>>2]+(d<<4)|0;J[e>>2]=J[b>>2];J[e+4>>2]=c;c=J[b+12>>2];J[e+8>>2]=J[b+8>>2];J[e+12>>2]=c;b=J[a+88>>2];J[a+88>>2]=b+1;J[J[a+32>>2]+16>>2]=J[a+96>>2];return b}d=J[a+108>>2];if(!(!c|(d|0)<=0)){e=J[a+116>>2];n=N[a+168>>2];o=N[b+8>>2];p=N[b+4>>2];q=N[b>>2];c=0;while(1){f=e+(c<<2)|0;k=Q(N[f+8>>2]-o);r=Q(k*k);k=Q(N[f>>2]-q);s=Q(k*k);k=Q(N[f+4>>2]-p);if(n>=Q(r+Q(s+Q(k*k)))){break a}c=c+3|0;if((d|0)>(c|0)){continue}break}}e=J[a+112>>2];e:{if((e|0)!=(d|0)){break e}e=d?d<<1:1;if((e|0)<=(d|0)){e=d;break e}if(e){J[8456]=J[8456]+1;h=ua[J[8258]](e<<2,16)|0;d=J[a+108>>2];}i=J[a+116>>2];f:{g:{if((d|0)>0){c=0;if(d>>>0>=4){g=d&-4;while(1){l=c<<2;N[l+h>>2]=N[i+l>>2];f=l|4;N[f+h>>2]=N[f+i>>2];f=l|8;N[f+h>>2]=N[f+i>>2];f=l|12;N[f+h>>2]=N[f+i>>2];c=c+4|0;j=j+4|0;if((g|0)!=(j|0)){continue}break}}g=d&3;if(g){while(1){f=c<<2;N[f+h>>2]=N[f+i>>2];c=c+1|0;m=m+1|0;if((g|0)!=(m|0)){continue}break}}if(K[a+120|0]){break g}break f}if(!i|!K[a+120|0]){break f}}if(i){J[8457]=J[8457]+1;ua[J[8259]](i);}d=J[a+108>>2];}J[a+116>>2]=h;J[a+112>>2]=e;H[a+120|0]=1;}g=J[a+116>>2];N[g+(d<<2)>>2]=N[b>>2];d=d+1|0;J[a+108>>2]=d;h:{if((d|0)!=(e|0)){f=e;c=g;e=d;break h}f=e?e<<1:1;if((e|0)>=(f|0)){f=e;c=g;break h}i:{if(!f){c=0;break i}J[8456]=J[8456]+1;c=ua[J[8258]](f<<2,16)|0;g=J[a+116>>2];e=J[a+108>>2];}j:{k:{if((e|0)>0){m=0;h=0;if(e>>>0>=4){l=e&-4;j=0;while(1){i=h<<2;N[i+c>>2]=N[g+i>>2];d=i|4;N[d+c>>2]=N[d+g>>2];d=i|8;N[d+c>>2]=N[d+g>>2];d=i|12;N[d+c>>2]=N[d+g>>2];h=h+4|0;j=j+4|0;if((l|0)!=(j|0)){continue}break}}l=e&3;if(l){while(1){d=h<<2;N[d+c>>2]=N[d+g>>2];h=h+1|0;m=m+1|0;if((l|0)!=(m|0)){continue}break}}if(K[a+120|0]){break k}break j}if(!g|!K[a+120|0]){break j}}if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}e=J[a+108>>2];}J[a+116>>2]=c;J[a+112>>2]=f;H[a+120|0]=1;}N[(e<<2)+c>>2]=N[b+4>>2];e=e+1|0;J[a+108>>2]=e;l:{if((e|0)!=(f|0)){d=c;f=e;break l}i=f?f<<1:1;if((i|0)<=(f|0)){d=c;break l}m:{if(!i){d=0;break m}J[8456]=J[8456]+1;d=ua[J[8258]](i<<2,16)|0;c=J[a+116>>2];f=J[a+108>>2];}n:{o:{if((f|0)>0){e=0;h=0;if(f>>>0>=4){l=f&-4;m=0;while(1){j=h<<2;N[j+d>>2]=N[c+j>>2];g=j|4;N[g+d>>2]=N[c+g>>2];g=j|8;N[g+d>>2]=N[c+g>>2];g=j|12;N[g+d>>2]=N[c+g>>2];h=h+4|0;m=m+4|0;if((l|0)!=(m|0)){continue}break}}l=f&3;if(l){while(1){g=h<<2;N[g+d>>2]=N[c+g>>2];h=h+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}if(K[a+120|0]){break o}break n}if(!c|!K[a+120|0]){break n}}if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}f=J[a+108>>2];}J[a+116>>2]=d;J[a+112>>2]=i;H[a+120|0]=1;}N[(f<<2)+d>>2]=N[b+8>>2];b=f+1|0;J[a+108>>2]=b;a=J[a+32>>2];J[a+16>>2]=d;J[a+12>>2]=J[a+12>>2]+1;c=((b|0)/3|0)-1|0;}return c}return (c>>>0)/3|0}function aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0,p=0,q=0,r=0,s=0;c=sa-80|0;sa=c;s=ua[J[J[a>>2]+28>>2]](a)|0;if((s|0)>0){i=N[a+12>>2];j=N[a+8>>2];k=N[a+4>>2];while(1){ua[J[J[a>>2]+16>>2]](a,c+76|0,c+52|0,c- -64|0,c+56|0,c+72|0,c+68|0,c+48|0,c+60|0,r);a:{b:{switch(J[c+64>>2]){case 0:c:{switch(J[c+60>>2]-2|0){case 0:d=0;if(J[c+48>>2]<=0){break a}while(1){g=J[c+76>>2];h=J[c+56>>2];e=J[c+72>>2]+P(J[c+68>>2],d)|0;f=g+P(h,J[e>>2])|0;l=N[f>>2];m=N[f+4>>2];n=N[f+8>>2];J[c+12>>2]=0;N[c+8>>2]=i*n;N[c+4>>2]=j*m;N[c>>2]=k*l;f=g+P(h,J[e+4>>2])|0;l=N[f>>2];m=N[f+4>>2];n=N[f+8>>2];J[c+28>>2]=0;N[c+24>>2]=i*n;N[c+20>>2]=j*m;N[c+16>>2]=k*l;e=g+P(h,J[e+8>>2])|0;l=N[e>>2];m=N[e+4>>2];n=N[e+8>>2];J[c+44>>2]=0;N[c+40>>2]=i*n;N[c+36>>2]=j*m;N[c+32>>2]=k*l;ua[J[J[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)<J[c+48>>2]){continue}break}break a;case 1:d=0;if(J[c+48>>2]<=0){break a}while(1){g=J[c+76>>2];h=J[c+56>>2];e=J[c+72>>2]+P(J[c+68>>2],d)|0;f=g+P(h,L[e>>1])|0;l=N[f>>2];m=N[f+4>>2];n=N[f+8>>2];J[c+12>>2]=0;N[c+8>>2]=i*n;N[c+4>>2]=j*m;N[c>>2]=k*l;f=g+P(h,L[e+2>>1])|0;l=N[f>>2];m=N[f+4>>2];n=N[f+8>>2];J[c+28>>2]=0;N[c+24>>2]=i*n;N[c+20>>2]=j*m;N[c+16>>2]=k*l;e=g+P(h,L[e+4>>1])|0;l=N[e>>2];m=N[e+4>>2];n=N[e+8>>2];J[c+44>>2]=0;N[c+40>>2]=i*n;N[c+36>>2]=j*m;N[c+32>>2]=k*l;ua[J[J[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)<J[c+48>>2]){continue}break}break a;case 3:break c;default:break a}}d=0;if(J[c+48>>2]<=0){break a}while(1){g=J[c+76>>2];h=J[c+56>>2];e=J[c+72>>2]+P(J[c+68>>2],d)|0;f=g+P(h,K[e|0])|0;l=N[f>>2];m=N[f+4>>2];n=N[f+8>>2];J[c+12>>2]=0;N[c+8>>2]=i*n;N[c+4>>2]=j*m;N[c>>2]=k*l;f=g+P(h,K[e+1|0])|0;l=N[f>>2];m=N[f+4>>2];n=N[f+8>>2];J[c+28>>2]=0;N[c+24>>2]=i*n;N[c+20>>2]=j*m;N[c+16>>2]=k*l;e=g+P(h,K[e+2|0])|0;l=N[e>>2];m=N[e+4>>2];n=N[e+8>>2];J[c+44>>2]=0;N[c+40>>2]=i*n;N[c+36>>2]=j*m;N[c+32>>2]=k*l;ua[J[J[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)<J[c+48>>2]){continue}break}break a;case 1:break b;default:break a}}d:{switch(J[c+60>>2]-2|0){case 0:d=0;if(J[c+48>>2]<=0){break a}while(1){g=J[c+76>>2];h=J[c+56>>2];e=J[c+72>>2]+P(J[c+68>>2],d)|0;f=g+P(h,J[e>>2])|0;o=O[f>>3];p=O[f+8>>3];q=O[f+16>>3];J[c+12>>2]=0;N[c+8>>2]=i*Q(q);N[c+4>>2]=j*Q(p);N[c>>2]=k*Q(o);f=g+P(h,J[e+4>>2])|0;o=O[f>>3];p=O[f+8>>3];q=O[f+16>>3];J[c+28>>2]=0;N[c+24>>2]=i*Q(q);N[c+20>>2]=j*Q(p);N[c+16>>2]=k*Q(o);e=g+P(h,J[e+8>>2])|0;o=O[e>>3];p=O[e+8>>3];q=O[e+16>>3];J[c+44>>2]=0;N[c+40>>2]=i*Q(q);N[c+36>>2]=j*Q(p);N[c+32>>2]=k*Q(o);ua[J[J[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)<J[c+48>>2]){continue}break}break a;case 1:d=0;if(J[c+48>>2]<=0){break a}while(1){g=J[c+76>>2];h=J[c+56>>2];e=J[c+72>>2]+P(J[c+68>>2],d)|0;f=g+P(h,L[e>>1])|0;o=O[f>>3];p=O[f+8>>3];q=O[f+16>>3];J[c+12>>2]=0;N[c+8>>2]=i*Q(q);N[c+4>>2]=j*Q(p);N[c>>2]=k*Q(o);f=g+P(h,L[e+2>>1])|0;o=O[f>>3];p=O[f+8>>3];q=O[f+16>>3];J[c+28>>2]=0;N[c+24>>2]=i*Q(q);N[c+20>>2]=j*Q(p);N[c+16>>2]=k*Q(o);e=g+P(h,L[e+4>>1])|0;o=O[e>>3];p=O[e+8>>3];q=O[e+16>>3];J[c+44>>2]=0;N[c+40>>2]=i*Q(q);N[c+36>>2]=j*Q(p);N[c+32>>2]=k*Q(o);ua[J[J[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)<J[c+48>>2]){continue}break}break a;case 3:break d;default:break a}}d=0;if(J[c+48>>2]<=0){break a}while(1){g=J[c+76>>2];h=J[c+56>>2];e=J[c+72>>2]+P(J[c+68>>2],d)|0;f=g+P(h,K[e|0])|0;o=O[f>>3];p=O[f+8>>3];q=O[f+16>>3];J[c+12>>2]=0;N[c+8>>2]=i*Q(q);N[c+4>>2]=j*Q(p);N[c>>2]=k*Q(o);f=g+P(h,K[e+1|0])|0;o=O[f>>3];p=O[f+8>>3];q=O[f+16>>3];J[c+28>>2]=0;N[c+24>>2]=i*Q(q);N[c+20>>2]=j*Q(p);N[c+16>>2]=k*Q(o);e=g+P(h,K[e+2|0])|0;o=O[e>>3];p=O[e+8>>3];q=O[e+16>>3];J[c+44>>2]=0;N[c+40>>2]=i*Q(q);N[c+36>>2]=j*Q(p);N[c+32>>2]=k*Q(o);ua[J[J[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)<J[c+48>>2]){continue}break}}ua[J[J[a>>2]+24>>2]](a,r);r=r+1|0;if((s|0)!=(r|0)){continue}break}}sa=c+80|0;}function am(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=0,p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=0,C=0,D=0,E=0,F=Q(0),G=Q(0),H=Q(0),I=0,K=0,L=0;d=sa-256|0;sa=d;ua[J[8262]](3795);J[a+4>>2]=J[a+4>>2]+1;B=J[c+36>>2];D=P(B,80);E=J[a+12>>2];I=J[E+4>>2];n=J[(D+J[I+32>>2]|0)+64>>2];c=J[a+8>>2];C=J[b+36>>2];b=J[J[c+4>>2]+32>>2]+P(C,80)|0;o=J[b+64>>2];c=J[c+12>>2];F=N[c+52>>2];G=N[c+56>>2];e=N[c+24>>2];f=N[c+20>>2];g=N[c+40>>2];h=N[c+36>>2];H=N[c+48>>2];i=N[c+8>>2];j=N[c>>2];k=N[c+4>>2];l=N[c+16>>2];m=N[c+32>>2];p=N[b+32>>2];q=N[b>>2];r=N[b+16>>2];s=N[b+56>>2];t=N[b+48>>2];u=N[b+52>>2];v=N[b+36>>2];w=N[b+4>>2];x=N[b+20>>2];y=N[b+40>>2];z=N[b+8>>2];A=N[b+24>>2];b=0;J[d+248>>2]=0;J[d+232>>2]=0;J[d+216>>2]=0;N[d+228>>2]=Q(y*g)+Q(Q(z*m)+Q(h*A));N[d+224>>2]=Q(v*g)+Q(Q(w*m)+Q(h*x));N[d+212>>2]=Q(y*e)+Q(Q(z*l)+Q(f*A));N[d+208>>2]=Q(v*e)+Q(Q(w*l)+Q(f*x));N[d+244>>2]=G+Q(Q(s*g)+Q(Q(t*m)+Q(h*u)));N[d+240>>2]=F+Q(Q(s*e)+Q(Q(t*l)+Q(f*u)));J[d+200>>2]=0;N[d+220>>2]=Q(p*g)+Q(Q(q*m)+Q(h*r));N[d+204>>2]=Q(p*e)+Q(Q(q*l)+Q(f*r));N[d+196>>2]=Q(y*i)+Q(Q(z*j)+Q(k*A));N[d+192>>2]=Q(v*i)+Q(Q(w*j)+Q(k*x));N[d+188>>2]=Q(p*i)+Q(Q(q*j)+Q(k*r));N[d+236>>2]=H+Q(Q(s*i)+Q(Q(t*j)+Q(k*u)));c=J[E+12>>2];F=N[c+52>>2];G=N[c+56>>2];e=N[c+24>>2];f=N[c+20>>2];g=N[c+40>>2];h=N[c+36>>2];H=N[c+48>>2];i=N[c+8>>2];j=N[c>>2];k=N[c+4>>2];l=N[c+16>>2];m=N[c+32>>2];c=J[I+32>>2]+D|0;p=N[c+32>>2];q=N[c>>2];r=N[c+16>>2];s=N[c+56>>2];t=N[c+48>>2];u=N[c+52>>2];v=N[c+36>>2];w=N[c+4>>2];x=N[c+20>>2];y=N[c+40>>2];z=N[c+8>>2];A=N[c+24>>2];J[d+184>>2]=0;J[d+168>>2]=0;J[d+152>>2]=0;N[d+164>>2]=Q(y*g)+Q(Q(z*m)+Q(h*A));N[d+160>>2]=Q(v*g)+Q(Q(w*m)+Q(h*x));N[d+148>>2]=Q(y*e)+Q(Q(z*l)+Q(f*A));N[d+144>>2]=Q(v*e)+Q(Q(w*l)+Q(f*x));N[d+180>>2]=G+Q(Q(s*g)+Q(Q(t*m)+Q(h*u)));N[d+176>>2]=F+Q(Q(s*e)+Q(Q(t*l)+Q(f*u)));J[d+136>>2]=0;N[d+156>>2]=Q(p*g)+Q(Q(q*m)+Q(h*r));N[d+140>>2]=Q(p*e)+Q(Q(q*l)+Q(f*r));N[d+132>>2]=Q(y*i)+Q(Q(z*j)+Q(k*A));N[d+128>>2]=Q(v*i)+Q(Q(w*j)+Q(k*x));N[d+124>>2]=Q(p*i)+Q(Q(q*j)+Q(k*r));N[d+172>>2]=H+Q(Q(s*i)+Q(Q(t*j)+Q(k*u)));ua[J[J[o>>2]+8>>2]](o,d+188|0,d+108|0,d+92|0);ua[J[J[n>>2]+8>>2]](n,d+124|0,d+76|0,d+60|0);e=N[J[a+24>>2]+32>>2];f=Q(N[d+108>>2]-e);N[d+108>>2]=f;N[d+112>>2]=N[d+112>>2]-e;N[d+116>>2]=N[d+116>>2]-e;N[d+92>>2]=e+N[d+92>>2];N[d+96>>2]=e+N[d+96>>2];N[d+100>>2]=e+N[d+100>>2];c=J[8465];a:{if(c){if(!(ua[c|0](o,n)|0)){break a}f=N[d+108>>2];}b=f>N[d+60>>2]|N[d+92>>2]<N[d+76>>2]?b:1;c=0;if((N[d+100>>2]<N[d+84>>2]|N[d+116>>2]>N[d+68>>2]?c:b)^1|N[d+96>>2]<N[d+80>>2]|N[d+112>>2]>N[d+64>>2]){break a}b=J[a+8>>2];c=J[b+8>>2];J[d+56>>2]=C;J[d+52>>2]=-1;J[d+44>>2]=c;J[d+40>>2]=o;J[d+36>>2]=b;J[d+48>>2]=d+188;b=J[a+12>>2];c=J[b+8>>2];J[d+32>>2]=B;J[d+28>>2]=-1;J[d+20>>2]=c;J[d+16>>2]=n;J[d+12>>2]=b;J[d+24>>2]=d+124;b=J[a+28>>2];J[8468]=J[8468]+1;c=B<<16|C;c=(c<<15^-1)+c|0;c=P(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=J[b+12>>2]-1&(c>>>16^c);b:{c:{if((c|0)>=J[b+28>>2]){break c}c=J[J[b+36>>2]+(c<<2)>>2];if((c|0)==-1){break c}n=J[b+56>>2];o=J[b+16>>2];while(1){b=o+P(c,12)|0;if(J[b>>2]==(C|0)&J[b+4>>2]==(B|0)){break b}c=J[n+(c<<2)>>2];if((c|0)!=-1){continue}break}}b=0;}d:{if(N[J[a+24>>2]+32>>2]>Q(0)){b=J[a+16>>2];b=ua[J[J[b>>2]+8>>2]](b,d+36|0,d+12|0,0,2)|0;break d}if(b){b=J[b+8>>2];break d}b=J[a+16>>2];b=ua[J[J[b>>2]+8>>2]](b,d+36|0,d+12|0,J[a+32>>2],1)|0;c=J[a+28>>2];K=ua[J[J[c>>2]+12>>2]](c,C,B)|0,L=b,J[K+8>>2]=L;}c=J[a+24>>2];n=J[c+8>>2];o=J[c+12>>2];D=d+12|0;J[c+12>>2]=D;E=d+36|0;J[c+8>>2]=E;ua[J[J[c>>2]+8>>2]](c,-1,C);c=J[a+24>>2];ua[J[J[c>>2]+12>>2]](c,-1,B);ua[J[J[b>>2]+8>>2]](b,E,D,J[a+20>>2],J[a+24>>2]);a=J[a+24>>2];J[a+8>>2]=n;J[a+12>>2]=o;}ua[J[8263]]();sa=d+256|0;}function ib(a,b,c,d,e,f,g,h,i,j,k,l){var m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=0,t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=0,G=Q(0),I=Q(0),L=Q(0),M=Q(0),O=0,R=0,S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=0,Y=Q(0),Z=Q(0),_=Q(0),$=0;r=J[a+68>>2];s=r;a:{if((r|0)!=J[a+72>>2]){break a}O=r?r<<1:1;if((r|0)>=(O|0)){break a}if(O){J[8456]=J[8456]+1;R=ua[J[8258]](P(O,152),16)|0;m=J[a+68>>2];}else {m=r;}b:{if((m|0)<=0){break b}s=0;if((m|0)!=1){$=m&-2;while(1){F=P(s,152);Ja(F+R|0,F+J[a+76>>2]|0,152);F=P(s|1,152);Ja(F+R|0,F+J[a+76>>2]|0,152);s=s+2|0;X=X+2|0;if((X|0)!=($|0)){continue}break}}if(!(m&1)){break b}m=P(s,152);Ja(m+R|0,m+J[a+76>>2]|0,152);}m=J[a+76>>2];if(!(m?!m|!K[a+80|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](m);}J[a+76>>2]=R;H[a+80|0]=1;J[a+72>>2]=O;s=J[a+68>>2];}J[a+68>>2]=s+1;m=J[a+76>>2]+P(r,152)|0;J[m+140>>2]=e;r=J[a+16>>2];a=J[(r+P(d,244)|0)+240>>2];e=J[(r+P(c,244)|0)+240>>2];J[m+148>>2]=d;J[m+144>>2]=c;S=N[f+84>>2];J[m+132>>2]=0;N[m+104>>2]=S;J[m+96>>2]=0;J[m+100>>2]=0;c:{if(e){s=J[b+4>>2];J[m+16>>2]=J[b>>2];J[m+20>>2]=s;s=J[b+12>>2];J[m+24>>2]=J[b+8>>2];J[m+28>>2]=s;p=N[g+8>>2];n=N[g>>2];o=N[g+4>>2];J[m+12>>2]=0;T=N[m+20>>2];U=N[m+16>>2];G=Q(Q(n*T)-Q(o*U));N[m+8>>2]=G;V=N[m+24>>2];I=Q(Q(p*U)-Q(n*V));N[m+4>>2]=I;L=Q(Q(o*V)-Q(T*p));N[m>>2]=L;p=N[e+332>>2];n=N[e+328>>2];o=N[e+608>>2];q=N[e+348>>2];x=N[e+340>>2];A=N[e+344>>2];t=N[e+612>>2];w=N[e+364>>2];B=N[e+356>>2];C=N[e+360>>2];D=N[e+604>>2];v=N[e+324>>2];J[m+76>>2]=0;t=Q(t*Q(Q(w*G)+Q(Q(B*L)+Q(I*C))));N[m+72>>2]=t;q=Q(o*Q(Q(q*G)+Q(Q(x*L)+Q(I*A))));N[m+68>>2]=q;x=Q(D*Q(Q(p*G)+Q(Q(v*L)+Q(I*n))));N[m+64>>2]=x;break c}J[m+64>>2]=0;J[m+68>>2]=0;J[m>>2]=0;J[m+4>>2]=0;J[m+72>>2]=0;J[m+76>>2]=0;J[m+8>>2]=0;J[m+12>>2]=0;J[m+16>>2]=0;J[m+20>>2]=0;J[m+24>>2]=0;J[m+28>>2]=0;}d:{if(a){p=N[b>>2];n=N[b+4>>2];o=N[b+8>>2];J[m+60>>2]=0;Y=Q(-o);N[m+56>>2]=Y;Z=Q(-n);N[m+52>>2]=Z;_=Q(-p);N[m+48>>2]=_;u=N[h+8>>2];y=N[h+4>>2];z=N[h>>2];J[m+44>>2]=0;M=Q(Q(p*y)-Q(z*n));N[m+40>>2]=M;z=Q(Q(o*z)-Q(u*p));N[m+36>>2]=z;y=Q(Q(n*u)-Q(y*o));N[m+32>>2]=y;p=N[a+332>>2];o=N[a+328>>2];n=N[a+608>>2];A=N[a+348>>2];w=N[a+340>>2];B=N[a+344>>2];u=N[a+612>>2];C=N[a+364>>2];D=N[a+356>>2];v=N[a+360>>2];W=N[a+604>>2];E=N[a+324>>2];J[m+92>>2]=0;u=Q(u*Q(Q(C*M)+Q(Q(D*y)+Q(z*v))));N[m+88>>2]=u;n=Q(n*Q(Q(A*M)+Q(Q(w*y)+Q(z*B))));N[m+84>>2]=n;o=Q(W*Q(Q(p*M)+Q(Q(E*y)+Q(z*o))));N[m+80>>2]=o;break d}J[m+80>>2]=0;J[m+84>>2]=0;J[m+32>>2]=0;J[m+36>>2]=0;J[m+88>>2]=0;J[m+92>>2]=0;J[m+40>>2]=0;J[m+44>>2]=0;J[m+48>>2]=0;J[m+52>>2]=0;J[m+56>>2]=0;J[m+60>>2]=0;n=Q(0);o=Q(0);}A=Q(0);W=i;if(e){i=N[g+4>>2];w=N[g>>2];v=Q(N[b+8>>2]*Q(Q(x*i)-Q(w*q)));E=q;q=N[g+8>>2];E=Q(N[e+404>>2]+Q(v+Q(Q(N[b>>2]*Q(Q(E*q)-Q(i*t)))+Q(Q(Q(t*w)-Q(q*x))*N[b+4>>2]))));}else {E=Q(0);}if(a){t=N[h>>2];q=N[h+4>>2];v=Q(N[b+8>>2]*Q(Q(n*t)-Q(o*q)));i=n;n=N[h+8>>2];i=Q(N[a+404>>2]+Q(v+Q(Q(N[b>>2]*Q(Q(u*q)-Q(i*n)))+Q(Q(Q(o*n)-Q(u*t))*N[b+4>>2]))));}else {i=Q(0);}p=Q(W/Q(E+i));N[m+108>>2]=p;w=Q(0);t=Q(0);q=Q(0);x=Q(0);u=Q(0);n=Q(0);if(e){c=r+P(c,244)|0;q=Q(N[c+176>>2]+N[c+208>>2]);x=N[c+192>>2];t=Q(N[c+180>>2]+N[c+212>>2]);u=N[c+196>>2];w=Q(N[c+184>>2]+N[c+216>>2]);n=N[c+200>>2];}o=Q(0);B=Q(0);C=Q(0);D=Q(0);v=Q(0);if(a){a=r+P(d,244)|0;A=Q(N[a+176>>2]+N[a+208>>2]);C=N[a+200>>2];D=N[a+196>>2];B=Q(N[a+184>>2]+N[a+216>>2]);v=N[a+192>>2];o=Q(N[a+180>>2]+N[a+212>>2]);}i=Q(0);i=K[f+128|0]&16?Q(p*Q(Q(N[j+44>>2]*Q(-Q(Q(Q(N[f+56>>2]-N[f+40>>2])*N[b+8>>2])+Q(Q(Q(N[f+48>>2]-N[f+32>>2])*N[b>>2])+Q(Q(N[f+52>>2]-N[f+36>>2])*N[b+4>>2])))))/N[j+12>>2])):i;J[m+128>>2]=0;N[m+124>>2]=S;N[m+116>>2]=l;N[m+120>>2]=-S;N[m+112>>2]=Q(p*Q(k-Q(Q(Q(Q(V*w)+Q(Q(U*q)+Q(t*T)))+Q(Q(G*n)+Q(Q(L*x)+Q(u*I))))+Q(Q(Q(Y*B)+Q(Q(_*A)+Q(o*Z)))+Q(Q(M*C)+Q(Q(y*v)+Q(D*z)))))))+i;}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=Q(0),m=Q(0),n=0,o=Q(0),p=Q(0),q=Q(0);J[a+8>>2]=J[b>>2];i=J[a+24>>2];a:{if((i|0)!=J[a+28>>2]){break a}h=i?i<<1:1;if((h|0)<=(i|0)){break a}if(h){J[8456]=J[8456]+1;d=ua[J[8258]](h<<2,16)|0;i=J[a+24>>2];}b:{if((i|0)<=0){break b}if(i>>>0>=4){n=i&-4;while(1){g=f<<2;J[g+d>>2]=J[g+J[a+32>>2]>>2];k=g|4;J[k+d>>2]=J[k+J[a+32>>2]>>2];k=g|8;J[k+d>>2]=J[k+J[a+32>>2]>>2];g=g|12;J[g+d>>2]=J[g+J[a+32>>2]>>2];f=f+4|0;e=e+4|0;if((n|0)!=(e|0)){continue}break}}e=i&3;if(!e){break b}while(1){g=f<<2;J[g+d>>2]=J[g+J[a+32>>2]>>2];f=f+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}f=J[a+32>>2];if(!(!f|!K[a+36|0])){if(f){J[8457]=J[8457]+1;ua[J[8259]](f);}i=J[a+24>>2];}J[a+32>>2]=d;H[a+36|0]=1;J[a+28>>2]=h;}J[J[a+32>>2]+(i<<2)>>2]=J[b>>2];J[a+24>>2]=i+1;c:{if(c){o=N[b+16>>2];p=N[b+12>>2];m=N[b+8>>2];l=N[b+20>>2];break c}c=J[a+8>>2];l=N[b+16>>2];m=N[b+8>>2];q=N[b+12>>2];o=Q(Q(N[c+44>>2]*l)+Q(Q(N[c+36>>2]*m)+Q(q*N[c+40>>2])));p=Q(Q(N[c+28>>2]*l)+Q(Q(N[c+20>>2]*m)+Q(q*N[c+24>>2])));m=Q(Q(N[c+12>>2]*l)+Q(Q(N[c+4>>2]*m)+Q(N[c+8>>2]*q)));l=Q(0);}d=J[a+76>>2];d:{if((d|0)!=J[a+80>>2]){break d}i=d?d<<1:1;if((i|0)<=(d|0)){break d}e:{if(!i){c=0;break e}J[8456]=J[8456]+1;c=ua[J[8258]](i<<4,16)|0;d=J[a+76>>2];}f:{if((d|0)<=0){break f}f=0;if((d|0)!=1){n=d&-2;j=0;while(1){g=f<<4;h=g+c|0;e=g+J[a+84>>2]|0;k=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=k;k=J[e+12>>2];J[h+8>>2]=J[e+8>>2];J[h+12>>2]=k;e=g|16;g=e+c|0;e=e+J[a+84>>2]|0;h=J[e+4>>2];J[g>>2]=J[e>>2];J[g+4>>2]=h;h=J[e+12>>2];J[g+8>>2]=J[e+8>>2];J[g+12>>2]=h;f=f+2|0;j=j+2|0;if((n|0)!=(j|0)){continue}break}}if(!(d&1)){break f}f=f<<4;d=f+c|0;f=f+J[a+84>>2]|0;e=J[f+4>>2];J[d>>2]=J[f>>2];J[d+4>>2]=e;e=J[f+12>>2];J[d+8>>2]=J[f+8>>2];J[d+12>>2]=e;}d=J[a+84>>2];if(!(d?!d|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+84>>2]=c;H[a+88|0]=1;J[a+80>>2]=i;d=J[a+76>>2];}c=J[a+84>>2]+(d<<4)|0;N[c+12>>2]=l;N[c+8>>2]=o;N[c+4>>2]=p;N[c>>2]=m;J[a+76>>2]=J[a+76>>2]+1;l=N[b+24>>2];o=Q(Q(1)-l);p=Q(Q(o*N[a+48>>2])+Q(l*N[a- -64>>2]));m=Q(Q(o*N[a+44>>2])+Q(l*N[a+60>>2]));l=Q(Q(o*N[a+40>>2])+Q(l*N[a+56>>2]));d=J[a+96>>2];g:{if((d|0)!=J[a+100>>2]){break g}i=d?d<<1:1;if((i|0)<=(d|0)){break g}h:{if(!i){c=0;break h}J[8456]=J[8456]+1;c=ua[J[8258]](i<<4,16)|0;d=J[a+96>>2];}i:{if((d|0)<=0){break i}f=0;if((d|0)!=1){n=d&-2;j=0;while(1){g=f<<4;h=g+c|0;e=g+J[a+104>>2]|0;k=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=k;k=J[e+12>>2];J[h+8>>2]=J[e+8>>2];J[h+12>>2]=k;e=g|16;g=e+c|0;e=e+J[a+104>>2]|0;h=J[e+4>>2];J[g>>2]=J[e>>2];J[g+4>>2]=h;h=J[e+12>>2];J[g+8>>2]=J[e+8>>2];J[g+12>>2]=h;f=f+2|0;j=j+2|0;if((n|0)!=(j|0)){continue}break}}if(!(d&1)){break i}f=f<<4;d=f+c|0;f=f+J[a+104>>2]|0;e=J[f+4>>2];J[d>>2]=J[f>>2];J[d+4>>2]=e;e=J[f+12>>2];J[d+8>>2]=J[f+8>>2];J[d+12>>2]=e;}d=J[a+104>>2];if(!(d?!d|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+104>>2]=c;H[a+108|0]=1;J[a+100>>2]=i;d=J[a+96>>2];}c=J[a+104>>2]+(d<<4)|0;N[c+8>>2]=p;N[c+4>>2]=m;N[c>>2]=l;J[a+96>>2]=J[a+96>>2]+1;e=J[a+116>>2];j:{if((e|0)!=J[a+120>>2]){break j}g=e?e<<1:1;if((g|0)<=(e|0)){break j}k:{if(!g){d=0;break k}J[8456]=J[8456]+1;d=ua[J[8258]](g<<2,16)|0;e=J[a+116>>2];}c=J[a+124>>2];l:{m:{if((e|0)>0){i=0;f=0;if(e>>>0>=4){n=e&-4;h=0;while(1){j=f<<2;N[j+d>>2]=N[c+j>>2];k=j|4;N[k+d>>2]=N[c+k>>2];k=j|8;N[k+d>>2]=N[c+k>>2];j=j|12;N[j+d>>2]=N[c+j>>2];f=f+4|0;h=h+4|0;if((n|0)!=(h|0)){continue}break}}j=e&3;if(j){while(1){h=f<<2;N[h+d>>2]=N[c+h>>2];f=f+1|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}if(K[a+128|0]){break m}break l}if(!c|!K[a+128|0]){break l}}if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}e=J[a+116>>2];}J[a+124>>2]=d;J[a+120>>2]=g;H[a+128|0]=1;}N[J[a+124>>2]+(e<<2)>>2]=N[b+24>>2];J[a+116>>2]=e+1;return Q(N[a+4>>2])}function vb(a,b,c,d,e,f){var g=0,h=0,i=Q(0),j=0,k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=0,u=0,v=0,w=Q(0),x=Q(0),y=Q(0),z=Q(0);g=sa-400|0;sa=g;ua[J[8262]](2330);h=J[c+12>>2];J[g+336>>2]=J[c+8>>2];J[g+340>>2]=h;h=J[c+4>>2];J[g+328>>2]=J[c>>2];J[g+332>>2]=h;h=J[c+28>>2];J[g+352>>2]=J[c+24>>2];J[g+356>>2]=h;h=J[c+20>>2];J[g+344>>2]=J[c+16>>2];J[g+348>>2]=h;h=J[c+44>>2];J[g+368>>2]=J[c+40>>2];J[g+372>>2]=h;h=J[c+36>>2];J[g+360>>2]=J[c+32>>2];J[g+364>>2]=h;h=J[c+60>>2];J[g+384>>2]=J[c+56>>2];J[g+388>>2]=h;h=J[c+52>>2];J[g+376>>2]=J[c+48>>2];J[g+380>>2]=h;h=J[d+12>>2];J[g+272>>2]=J[d+8>>2];J[g+276>>2]=h;h=J[d+4>>2];J[g+264>>2]=J[d>>2];J[g+268>>2]=h;h=J[d+28>>2];J[g+288>>2]=J[d+24>>2];J[g+292>>2]=h;h=J[d+20>>2];J[g+280>>2]=J[d+16>>2];J[g+284>>2]=h;h=J[d+44>>2];J[g+304>>2]=J[d+40>>2];J[g+308>>2]=h;h=J[d+36>>2];J[g+296>>2]=J[d+32>>2];J[g+300>>2]=h;h=J[d+60>>2];J[g+320>>2]=J[d+56>>2];J[g+324>>2]=h;h=J[d+52>>2];J[g+312>>2]=J[d+48>>2];J[g+316>>2]=h;k=g+328|0;u=g+4|0;h=g+248|0;Vb(k,g+264|0,u,h);J[g+228>>2]=0;i=N[g+248>>2];N[g+224>>2]=i*N[g+12>>2];N[g+220>>2]=i*N[g+8>>2];N[g+216>>2]=i*N[g+4>>2];J[g+208>>2]=0;J[g+212>>2]=0;J[g+200>>2]=0;J[g+204>>2]=0;J[g+60>>2]=0;J[g+64>>2]=0;J[g+52>>2]=0;J[g+56>>2]=0;ob(k,h);J[g+48>>2]=0;J[g+32>>2]=0;m=N[g+260>>2];l=N[g+256>>2];i=N[g+248>>2];n=N[g+252>>2];o=Q(Q(2)/Q(Q(m*m)+Q(Q(l*l)+Q(Q(i*i)+Q(n*n)))));p=Q(l*o);q=Q(n*p);r=Q(i*o);s=Q(m*r);N[g+40>>2]=q+s;N[g+28>>2]=q-s;q=Q(i*r);r=n;n=Q(n*o);o=Q(r*n);N[g+44>>2]=Q(1)-Q(q+o);l=Q(l*p);N[g+24>>2]=Q(1)-Q(q+l);J[g+16>>2]=0;q=Q(i*p);r=Q(m*n);N[g+36>>2]=q-r;i=Q(i*n);m=Q(m*p);N[g+20>>2]=i+m;N[g+12>>2]=q+r;N[g+8>>2]=i-m;N[g+4>>2]=Q(1)-Q(o+l);k=g+232|0;ua[J[J[b>>2]+8>>2]](b,u,h,k);i=N[g+224>>2];m=N[g+216>>2];n=N[g+220>>2];q=N[k>>2];r=N[k+4>>2];s=N[k+8>>2];w=N[h>>2];p=N[g+200>>2];x=N[h+4>>2];o=N[g+204>>2];y=N[h+8>>2];l=N[g+208>>2];z=Q(ua[J[J[b>>2]+16>>2]](b));J[h+12>>2]=0;l=Q(l*Q(1));j=l>Q(0);N[h+8>>2]=y+(j?Q(-0):l);o=Q(o*Q(1));t=o>Q(0);N[h+4>>2]=x+(t?Q(-0):o);p=Q(p*Q(1));v=p>Q(0);N[h>>2]=w+(v?Q(-0):p);J[k+12>>2]=0;N[k+8>>2]=s+(j?l:Q(-0));N[k+4>>2]=r+(t?o:Q(-0));N[k>>2]=q+(v?p:Q(-0));i=Q(Q(z*Q(Y(Q(Q(i*i)+Q(Q(m*m)+Q(n*n))))))*Q(1));N[h>>2]=N[h>>2]-i;N[h+4>>2]=N[h+4>>2]-i;N[h+8>>2]=N[h+8>>2]-i;N[k>>2]=i+N[k>>2];N[k+4>>2]=i+N[k+4>>2];N[k+8>>2]=i+N[k+8>>2];J[g+4>>2]=14788;j=J[c+12>>2];J[g+48>>2]=J[c+8>>2];J[g+52>>2]=j;j=J[c+4>>2];J[g+40>>2]=J[c>>2];J[g+44>>2]=j;t=J[c+28>>2];j=g- -64|0;J[j>>2]=J[c+24>>2];J[j+4>>2]=t;j=J[c+20>>2];J[g+56>>2]=J[c+16>>2];J[g+60>>2]=j;j=J[c+44>>2];J[g+80>>2]=J[c+40>>2];J[g+84>>2]=j;j=J[c+36>>2];J[g+72>>2]=J[c+32>>2];J[g+76>>2]=j;j=J[c+60>>2];J[g+96>>2]=J[c+56>>2];J[g+100>>2]=j;j=J[c+52>>2];J[g+88>>2]=J[c+48>>2];J[g+92>>2]=j;c=J[d+12>>2];J[g+112>>2]=J[d+8>>2];J[g+116>>2]=c;c=J[d+4>>2];J[g+104>>2]=J[d>>2];J[g+108>>2]=c;c=J[d+28>>2];J[g+128>>2]=J[d+24>>2];J[g+132>>2]=c;c=J[d+20>>2];J[g+120>>2]=J[d+16>>2];J[g+124>>2]=c;c=J[d+36>>2];J[g+136>>2]=J[d+32>>2];J[g+140>>2]=c;c=J[d+44>>2];J[g+144>>2]=J[d+40>>2];J[g+148>>2]=c;c=J[d+60>>2];J[g+160>>2]=J[d+56>>2];J[g+164>>2]=c;c=J[d+52>>2];J[g+152>>2]=J[d+48>>2];J[g+156>>2]=c;J[g+188>>2]=e;N[g+192>>2]=f;J[g+196>>2]=b;J[g+184>>2]=a;f=Q(N[g+160>>2]-N[g+96>>2]);i=Q(N[g+152>>2]-N[g+88>>2]);m=Q(N[g+156>>2]-N[g+92>>2]);n=Q(Q(1)/Q(Y(Q(Q(f*f)+Q(Q(i*i)+Q(m*m))))));l=Q(f*n);p=l==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/l);N[g+16>>2]=p;o=Q(m*n);q=o==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/o);N[g+12>>2]=q;J[g+32>>2]=p<Q(0);J[g+28>>2]=q<Q(0);r=Q(l*f);f=Q(i*n);N[g+36>>2]=r+Q(Q(f*i)+Q(m*o));f=f==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/f);N[g+8>>2]=f;J[g+24>>2]=f<Q(0);a=J[a+68>>2];ua[J[J[a>>2]+24>>2]](a,g+376|0,g+312|0,u,h,k);ua[J[8263]]();sa=g+400|0;}function Jf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0);f=J[b>>2];J[a+16>>2]=f;i=J[a+24>>2];a:{if((i|0)!=J[a+28>>2]){break a}h=i?i<<1:1;if((h|0)<=(i|0)){break a}if(h){J[8456]=J[8456]+1;d=ua[J[8258]](h<<2,16)|0;i=J[a+24>>2];}b:{if((i|0)<=0){break b}f=0;if(i>>>0>=4){l=i&-4;while(1){g=f<<2;J[g+d>>2]=J[g+J[a+32>>2]>>2];k=g|4;J[k+d>>2]=J[k+J[a+32>>2]>>2];k=g|8;J[k+d>>2]=J[k+J[a+32>>2]>>2];g=g|12;J[g+d>>2]=J[g+J[a+32>>2]>>2];f=f+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}e=i&3;if(!e){break b}while(1){g=f<<2;J[g+d>>2]=J[g+J[a+32>>2]>>2];f=f+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}f=J[a+32>>2];if(!(!f|!K[a+36|0])){if(f){J[8457]=J[8457]+1;ua[J[8259]](f);}i=J[a+24>>2];}J[a+32>>2]=d;H[a+36|0]=1;J[a+28>>2]=h;f=J[a+16>>2];}J[J[a+32>>2]+(i<<2)>>2]=f;J[a+24>>2]=i+1;c:{if(c){p=N[b+16>>2];q=N[b+12>>2];m=N[b+8>>2];n=N[b+20>>2];break c}c=J[a+16>>2];n=N[b+16>>2];m=N[b+8>>2];o=N[b+12>>2];p=Q(Q(N[c+44>>2]*n)+Q(Q(N[c+36>>2]*m)+Q(o*N[c+40>>2])));q=Q(Q(N[c+28>>2]*n)+Q(Q(N[c+20>>2]*m)+Q(o*N[c+24>>2])));m=Q(Q(N[c+12>>2]*n)+Q(Q(N[c+4>>2]*m)+Q(N[c+8>>2]*o)));n=Q(0);}d=J[a+76>>2];d:{if((d|0)!=J[a+80>>2]){break d}i=d?d<<1:1;if((i|0)<=(d|0)){break d}e:{if(!i){c=0;break e}J[8456]=J[8456]+1;c=ua[J[8258]](i<<4,16)|0;d=J[a+76>>2];}f:{if((d|0)<=0){break f}f=0;if((d|0)!=1){l=d&-2;j=0;while(1){g=f<<4;h=g+c|0;e=g+J[a+84>>2]|0;k=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=k;k=J[e+12>>2];J[h+8>>2]=J[e+8>>2];J[h+12>>2]=k;e=g|16;g=e+c|0;e=e+J[a+84>>2]|0;h=J[e+4>>2];J[g>>2]=J[e>>2];J[g+4>>2]=h;h=J[e+12>>2];J[g+8>>2]=J[e+8>>2];J[g+12>>2]=h;f=f+2|0;j=j+2|0;if((l|0)!=(j|0)){continue}break}}if(!(d&1)){break f}d=f<<4;f=d+c|0;d=d+J[a+84>>2]|0;e=J[d+4>>2];J[f>>2]=J[d>>2];J[f+4>>2]=e;e=J[d+12>>2];J[f+8>>2]=J[d+8>>2];J[f+12>>2]=e;}d=J[a+84>>2];if(!(d?!d|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+84>>2]=c;H[a+88|0]=1;J[a+80>>2]=i;d=J[a+76>>2];}c=J[a+84>>2]+(d<<4)|0;N[c+12>>2]=n;N[c+8>>2]=p;N[c+4>>2]=q;N[c>>2]=m;J[a+76>>2]=J[a+76>>2]+1;d=J[a+96>>2];g:{if((d|0)!=J[a+100>>2]){break g}i=d?d<<1:1;if((i|0)<=(d|0)){break g}h:{if(!i){c=0;break h}J[8456]=J[8456]+1;c=ua[J[8258]](i<<4,16)|0;d=J[a+96>>2];}i:{if((d|0)<=0){break i}f=0;if((d|0)!=1){l=d&-2;j=0;while(1){g=f<<4;h=g+c|0;e=g+J[a+104>>2]|0;k=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=k;k=J[e+12>>2];J[h+8>>2]=J[e+8>>2];J[h+12>>2]=k;e=g|16;g=e+c|0;e=e+J[a+104>>2]|0;h=J[e+4>>2];J[g>>2]=J[e>>2];J[g+4>>2]=h;h=J[e+12>>2];J[g+8>>2]=J[e+8>>2];J[g+12>>2]=h;f=f+2|0;j=j+2|0;if((l|0)!=(j|0)){continue}break}}if(!(d&1)){break i}d=f<<4;f=d+c|0;d=d+J[a+104>>2]|0;e=J[d+4>>2];J[f>>2]=J[d>>2];J[f+4>>2]=e;e=J[d+12>>2];J[f+8>>2]=J[d+8>>2];J[f+12>>2]=e;}d=J[a+104>>2];if(!(d?!d|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+104>>2]=c;H[a+108|0]=1;J[a+100>>2]=i;d=J[a+96>>2];}c=J[a+104>>2]+(d<<4)|0;d=J[b+28>>2];J[c>>2]=J[b+24>>2];J[c+4>>2]=d;d=J[b+36>>2];J[c+8>>2]=J[b+32>>2];J[c+12>>2]=d;J[a+96>>2]=J[a+96>>2]+1;e=J[a+116>>2];j:{if((e|0)!=J[a+120>>2]){break j}g=e?e<<1:1;if((g|0)<=(e|0)){break j}k:{if(!g){d=0;break k}J[8456]=J[8456]+1;d=ua[J[8258]](g<<2,16)|0;e=J[a+116>>2];}c=J[a+124>>2];l:{m:{if((e|0)>0){i=0;f=0;if(e>>>0>=4){l=e&-4;h=0;while(1){j=f<<2;N[j+d>>2]=N[c+j>>2];k=j|4;N[k+d>>2]=N[c+k>>2];k=j|8;N[k+d>>2]=N[c+k>>2];j=j|12;N[j+d>>2]=N[c+j>>2];f=f+4|0;h=h+4|0;if((l|0)!=(h|0)){continue}break}}j=e&3;if(j){while(1){h=f<<2;N[h+d>>2]=N[c+h>>2];f=f+1|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}if(K[a+128|0]){break m}break l}if(!c|!K[a+128|0]){break l}}if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}e=J[a+116>>2];}J[a+124>>2]=d;J[a+120>>2]=g;H[a+128|0]=1;}N[J[a+124>>2]+(e<<2)>>2]=N[b+40>>2];J[a+116>>2]=e+1;return Q(N[a+4>>2])}function ab(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=0,f=Q(0),g=Q(0),h=Q(0),i=0,j=Q(0),k=0,l=0,m=Q(0),n=Q(0),o=Q(0),p=0,q=Q(0),r=0,s=Q(0),t=0,u=0,v=Q(0),w=Q(0);e=sa-48|0;sa=e;a:{b:{switch(J[b+4>>2]){case 8:J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;break a;case 0:d=N[b+40>>2];f=N[b+44>>2];h=N[c+4>>2];j=N[c+8>>2];g=N[b+36>>2];o=N[c>>2];J[a+12>>2]=0;N[a>>2]=o>=Q(0)?g:Q(-g);N[a+8>>2]=j>=Q(0)?f:Q(-f);N[a+4>>2]=h>=Q(0)?d:Q(-d);break a;case 1:d=N[c+8>>2];f=N[c>>2];g=N[c+4>>2];h=Q(Q(d*N[b+72>>2])+Q(Q(f*N[b+64>>2])+Q(g*N[b+68>>2])));j=Q(Q(d*N[b+88>>2])+Q(Q(f*N[b+80>>2])+Q(g*N[b+84>>2])));c=h<j;b=(b- -64|0)+((Q(Q(d*N[b+104>>2])+Q(Q(f*N[b+96>>2])+Q(g*N[b+100>>2])))>(c?j:h)?2:c)<<4)|0;c=J[b>>2];l=J[b+4>>2];d=N[b+8>>2];J[a+12>>2]=0;N[a+8>>2]=d;J[a>>2]=c;J[a+4>>2]=l;break a;case 13:i=J[b+48>>2];J[e+40>>2]=J[b+44>>2];J[e+44>>2]=i;i=J[b+40>>2];J[e+32>>2]=J[b+36>>2];J[e+36>>2]=i;N[e+16>>2]=N[c>>2];N[e+20>>2]=N[c+4>>2];d=N[c+8>>2];J[e+28>>2]=0;N[e+24>>2]=d;c=1;i=2;c:{d:{e:{b=J[b+60>>2];switch(b-1|0){case 0:break d;case 1:break e;default:break c}}i=1;}c=0;l=b;}k=b<<2;b=e+32|0;d=N[k+b>>2];k=b;b=c<<2;f=N[(k|b)>>2];k=b;b=e+16|0;g=N[k+b>>2];h=N[b+(i<<2)>>2];j=Q(Y(Q(Q(g*g)+Q(h*h))));f:{if(j!=Q(0)){f=Q(f/j);N[(c<<2)+e>>2]=g*f;b=l<<2;N[b+e>>2]=N[b+(e+16|0)>>2]<Q(0)?Q(-d):d;s=Q(h*f);break f}N[(c<<2)+e>>2]=f;b=l<<2;N[b+e>>2]=N[b+(e+16|0)>>2]<Q(0)?Q(-d):d;}N[(i<<2)+e>>2]=s;b=J[e+4>>2];c=J[e>>2];d=N[e+8>>2];J[a+12>>2]=0;N[a+8>>2]=d;J[a>>2]=c;J[a+4>>2]=b;break a;case 10:k=b;b=J[b+60>>2];l=b<<2;v=N[(k+l|0)+36>>2];m=Q(1);d=N[c+8>>2];f=N[c>>2];g=N[c+4>>2];h=Q(Q(d*d)+Q(Q(f*f)+Q(g*g)));if(!(h<Q(14210854715202004e-30))){j=d;d=Q(Q(1)/Q(Y(h)));w=Q(j*d);s=Q(g*d);m=Q(f*d);}J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;N[l+(e+32|0)>>2]=v;d=Q(-0xde0b6b000000000);f=Q(0);g=Q(0);h=N[e+40>>2];j=N[e+32>>2];o=N[e+36>>2];n=Q(Q(w*h)+Q(Q(m*j)+Q(s*o)));if(n>Q(-0xde0b6b000000000)){f=o;g=h;q=j;d=n;}J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;N[(e+32|0)+(b<<2)>>2]=-v;h=N[e+40>>2];j=N[e+32>>2];o=N[e+36>>2];J[a+12>>2]=0;b=Q(Q(w*h)+Q(Q(m*j)+Q(s*o)))>d;N[a+8>>2]=b?h:g;N[a+4>>2]=b?o:f;N[a>>2]=b?j:q;break a;case 5:h=N[b+20>>2];j=N[b+28>>2];o=N[b+24>>2];l=J[b+100>>2];b=J[b+104>>2];g:{if((b|0)<=0){i=-1;break g}d=Q(N[c>>2]*h);f=Q(N[c+8>>2]*j);g=Q(N[c+4>>2]*o);t=b&1;h:{if((b|0)==1){b=0;i=-1;m=Q(-34028234663852886e22);break h}u=b&-2;b=0;i=-1;m=Q(-34028234663852886e22);c=0;while(1){k=l+(b<<4)|0;n=Q(Q(N[k+8>>2]*f)+Q(Q(N[k>>2]*d)+Q(g*N[k+4>>2])));k=n>m;r=b|1;p=l+(r<<4)|0;q=Q(Q(N[p+8>>2]*f)+Q(Q(N[p>>2]*d)+Q(g*N[p+4>>2])));n=k?n:m;p=q>n;m=p?q:n;i=p?r:k?b:i;b=b+2|0;c=c+2|0;if((u|0)!=(c|0)){continue}break}}if(!t){break g}c=b;b=l+(b<<4)|0;i=Q(Q(N[b+8>>2]*f)+Q(Q(N[b>>2]*d)+Q(g*N[b+4>>2])))>m?c:i;}b=l+(i<<4)|0;d=N[b>>2];f=N[b+4>>2];g=N[b+8>>2];J[a+12>>2]=0;N[a+8>>2]=j*g;N[a+4>>2]=o*f;N[a>>2]=h*d;break a;case 4:h=N[b+20>>2];j=N[b+28>>2];o=N[b+24>>2];l=J[b+112>>2];b=J[b+104>>2];i:{if((b|0)<=0){i=-1;break i}d=Q(N[c>>2]*h);f=Q(N[c+8>>2]*j);g=Q(N[c+4>>2]*o);t=b&1;j:{if((b|0)==1){b=0;i=-1;m=Q(-34028234663852886e22);break j}u=b&-2;b=0;i=-1;m=Q(-34028234663852886e22);c=0;while(1){k=l+(b<<4)|0;n=Q(Q(N[k+8>>2]*f)+Q(Q(N[k>>2]*d)+Q(g*N[k+4>>2])));k=n>m;r=b|1;p=l+(r<<4)|0;q=Q(Q(N[p+8>>2]*f)+Q(Q(N[p>>2]*d)+Q(g*N[p+4>>2])));n=k?n:m;p=q>n;m=p?q:n;i=p?r:k?b:i;b=b+2|0;c=c+2|0;if((u|0)!=(c|0)){continue}break}}if(!t){break i}c=b;b=l+(b<<4)|0;i=Q(Q(N[b+8>>2]*f)+Q(Q(N[b>>2]*d)+Q(g*N[b+4>>2])))>m?c:i;}b=l+(i<<4)|0;d=N[b>>2];f=N[b+4>>2];g=N[b+8>>2];J[a+12>>2]=0;N[a+8>>2]=j*g;N[a+4>>2]=o*f;N[a>>2]=h*d;break a;default:break b}}ua[J[J[b>>2]+68>>2]](a,b,c);}sa=e+48|0;}function nd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,y=0,z=0,A=0;o=sa-16|0;sa=o;s=(B(a),v(2));e=s&2147483647;a:{if(e>>>0<=1305022426){j=+a;d=j*.6366197723675814+6755399441055744+-6755399441055744;r=j+d*-1.5707963109016418+d*-1.5893254773528196e-8;O[b>>3]=r;c=r<-.7853981852531433;if(R(d)<2147483648){e=~~d;}else {e=-2147483648;}if(c){d=d+-1;O[b>>3]=j+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e-1|0;break a}if(!(r>.7853981852531433)){break a}d=d+1;O[b>>3]=j+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e+1|0;break a}if(e>>>0>=2139095040){O[b>>3]=Q(a-a);e=0;break a}c=e;e=(e>>>23|0)-150|0;O[o+8>>3]=(x(2,c-(e<<23)|0),C());t=o+8|0;g=sa-560|0;sa=g;c=(e-3|0)/24|0;p=(c|0)>0?c:0;i=e+P(p,-24)|0;l=J[6604];if((l|0)>=0){e=l+1|0;c=p;while(1){O[(g+320|0)+(f<<3)>>3]=(c|0)<0?0:+J[(c<<2)+26432>>2];c=c+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}k=i-24|0;e=0;f=(l|0)>0?l:0;while(1){c=0;d=0;while(1){d=O[(c<<3)+t>>3]*O[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}O[(e<<3)+g>>3]=d;c=(e|0)==(f|0);e=e+1|0;if(!c){continue}break}z=47-i|0;u=48-i|0;A=i-25|0;e=l;b:{while(1){d=O[(e<<3)+g>>3];c=0;f=e;n=(e|0)<=0;if(!n){while(1){m=(g+480|0)+(c<<2)|0;j=d*5.960464477539063e-8;c:{if(R(j)<2147483648){h=~~j;break c}h=-2147483648;}j=+(h|0);d=j*-16777216+d;d:{if(R(d)<2147483648){h=~~d;break d}h=-2147483648;}J[m>>2]=h;f=f-1|0;d=O[(f<<3)+g>>3]+j;c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=Ab(d,k);d=d+V(d*.125)*-8;e:{if(R(d)<2147483648){m=~~d;break e}m=-2147483648;}d=d-+(m|0);f:{g:{h:{w=(k|0)<=0;i:{if(!w){f=(e<<2)+g|0;h=J[f+476>>2];c=h>>u;q=f;f=h-(c<<u)|0;J[q+476>>2]=f;m=c+m|0;h=f>>z;break i}if(k){break h}h=J[((e<<2)+g|0)+476>>2]>>23;}if((h|0)<=0){break f}break g}h=2;if(d>=.5){break g}h=0;break f}c=0;f=0;if(!n){while(1){q=(g+480|0)+(c<<2)|0;n=J[q>>2];y=16777215;j:{k:{if(f){break k}y=16777216;if(n){break k}f=0;break j}J[q>>2]=y-n;f=1;}c=c+1|0;if((e|0)!=(c|0)){continue}break}}l:{if(w){break l}c=8388607;m:{switch(A|0){case 1:c=4194303;break;case 0:break m;default:break l}}n=(e<<2)+g|0;J[n+476>>2]=J[n+476>>2]&c;}m=m+1|0;if((h|0)!=2){break f}d=1-d;h=2;if(!f){break f}d=d-Ab(1,k);}if(d==0){f=0;n:{c=e;if((l|0)>=(e|0)){break n}while(1){c=c-1|0;f=J[(g+480|0)+(c<<2)>>2]|f;if((c|0)>(l|0)){continue}break}if(!f){break n}i=k;while(1){i=i-24|0;e=e-1|0;if(!J[(g+480|0)+(e<<2)>>2]){continue}break}break b}c=1;while(1){f=c;c=c+1|0;if(!J[(g+480|0)+(l-f<<2)>>2]){continue}break}f=e+f|0;while(1){e=e+1|0;O[(g+320|0)+(e<<3)>>3]=J[(e+p<<2)+26432>>2];c=0;d=0;while(1){d=O[(c<<3)+t>>3]*O[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}O[(e<<3)+g>>3]=d;if((e|0)<(f|0)){continue}break}e=f;continue}break}d=Ab(d,24-i|0);o:{if(d>=16777216){k=(g+480|0)+(e<<2)|0;j=d*5.960464477539063e-8;p:{if(R(j)<2147483648){c=~~j;break p}c=-2147483648;}d=+(c|0)*-16777216+d;q:{if(R(d)<2147483648){f=~~d;break q}f=-2147483648;}J[k>>2]=f;e=e+1|0;break o}if(R(d)<2147483648){c=~~d;}else {c=-2147483648;}i=k;}J[(g+480|0)+(e<<2)>>2]=c;}d=Ab(1,i);r:{if((e|0)<0){break r}c=e;while(1){f=c;O[(c<<3)+g>>3]=d*+J[(g+480|0)+(c<<2)>>2];c=c-1|0;d=d*5.960464477539063e-8;if(f){continue}break}if((e|0)<0){break r}f=e;while(1){d=0;c=0;i=e-f|0;k=(i|0)>(l|0)?l:i;if((k|0)>=0){while(1){d=O[(c<<3)+29200>>3]*O[(c+f<<3)+g>>3]+d;p=(c|0)!=(k|0);c=c+1|0;if(p){continue}break}}O[(g+160|0)+(i<<3)>>3]=d;c=(f|0)>0;f=f-1|0;if(c){continue}break}}d=0;if((e|0)>=0){while(1){c=e;e=e-1|0;d=d+O[(g+160|0)+(c<<3)>>3];if(c){continue}break}}O[o>>3]=h?-d:d;sa=g+560|0;e=m&7;d=O[o>>3];if((s|0)<0){O[b>>3]=-d;e=0-e|0;break a}O[b>>3]=d;}sa=o+16|0;return e}function Xg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{b:{c:{if((f|0)>=0){i=J[a+16>>2];if((i|0)>0){break c}break b}f=J[a+8>>2];Q(ua[J[J[f>>2]+12>>2]](f,b,c,d,e,J[a+12>>2],J[a+16>>2],J[a+4>>2],J[a+20>>2],J[a+24>>2]));return}m=J[a+12>>2];while(1){q=m+(g<<2)|0;j=J[q>>2];h=J[J[j+28>>2]+208>>2];if((h|0)<0){h=J[J[j+32>>2]+208>>2];}if((f|0)==(h|0)){break b}g=g+1|0;if((i|0)!=(g|0)){continue}break}q=0;break a}if((g|0)>=(i|0)){break a}h=i-g|0;k=h&1;j=J[a+12>>2];if((i|0)!=(g+1|0)){i=h&-2;m=0;while(1){l=j+(g<<2)|0;n=J[l>>2];h=J[J[n+28>>2]+208>>2];if((h|0)<0){h=J[J[n+32>>2]+208>>2];}g=g+2|0;o=((f|0)==(h|0))+o|0;l=J[l+4>>2];h=J[J[l+28>>2]+208>>2];if((h|0)<0){h=J[J[l+32>>2]+208>>2];}o=((f|0)==(h|0))+o|0;m=m+2|0;if((i|0)!=(m|0)){continue}break}}if(!k){break a}h=J[j+(g<<2)>>2];g=J[J[h+28>>2]+208>>2];if((g|0)<0){g=J[J[h+32>>2]+208>>2];}o=((f|0)==(g|0))+o|0;}f=J[a+4>>2];if(J[f+80>>2]>=2){if((c|0)>0){g=J[a+36>>2];h=J[a+32>>2];j=0;while(1){n=(j<<2)+b|0;d:{if((g|0)!=(h|0)){break d}i=g?g<<1:1;if((i|0)<=(g|0)){h=g;break d}e:{if(!i){f=0;break e}J[8456]=J[8456]+1;f=ua[J[8258]](i<<2,16)|0;g=J[a+32>>2];}h=g;f:{if((g|0)<=0){break f}m=0;g=0;if(h>>>0>=4){r=h&-4;k=0;while(1){l=g<<2;J[l+f>>2]=J[l+J[a+40>>2]>>2];p=l|4;J[p+f>>2]=J[p+J[a+40>>2]>>2];p=l|8;J[p+f>>2]=J[p+J[a+40>>2]>>2];l=l|12;J[l+f>>2]=J[l+J[a+40>>2]>>2];g=g+4|0;k=k+4|0;if((r|0)!=(k|0)){continue}break}}k=h&3;if(!k){break f}while(1){l=g<<2;J[l+f>>2]=J[l+J[a+40>>2]>>2];g=g+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}g=J[a+40>>2];if(!(!g|!K[a+44|0])){if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}h=J[a+32>>2];}J[a+40>>2]=f;H[a+44|0]=1;J[a+36>>2]=i;g=i;}J[J[a+40>>2]+(h<<2)>>2]=J[n>>2];h=h+1|0;J[a+32>>2]=h;j=j+1|0;if((j|0)!=(c|0)){continue}break}}if((e|0)>0){g=J[a+56>>2];h=J[a+52>>2];j=0;while(1){i=(j<<2)+d|0;g:{if((g|0)!=(h|0)){break g}b=g?g<<1:1;if((b|0)<=(g|0)){h=g;break g}h:{if(!b){f=0;break h}J[8456]=J[8456]+1;f=ua[J[8258]](b<<2,16)|0;g=J[a+52>>2];}h=g;i:{if((g|0)<=0){break i}m=0;g=0;if(h>>>0>=4){l=h&-4;k=0;while(1){c=g<<2;J[c+f>>2]=J[c+J[a+60>>2]>>2];n=c|4;J[n+f>>2]=J[n+J[a+60>>2]>>2];n=c|8;J[n+f>>2]=J[n+J[a+60>>2]>>2];c=c|12;J[c+f>>2]=J[c+J[a+60>>2]>>2];g=g+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}c=h&3;if(!c){break i}while(1){k=g<<2;J[k+f>>2]=J[k+J[a+60>>2]>>2];g=g+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}c=J[a+60>>2];if(!(!c|!K[a+64|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}h=J[a+52>>2];}J[a+60>>2]=f;H[a+64|0]=1;J[a+56>>2]=b;g=b;}J[J[a+60>>2]+(h<<2)>>2]=J[i>>2];h=h+1|0;J[a+52>>2]=h;j=j+1|0;if((j|0)!=(e|0)){continue}break}}j:{if(!o){h=J[a+72>>2];break j}g=J[a+76>>2];h=J[a+72>>2];j=0;while(1){d=(j<<2)+q|0;k:{if((g|0)!=(h|0)){break k}b=g?g<<1:1;if((b|0)<=(g|0)){h=g;break k}l:{if(!b){f=0;break l}J[8456]=J[8456]+1;f=ua[J[8258]](b<<2,16)|0;g=J[a+72>>2];}h=g;m:{if((g|0)<=0){break m}m=0;g=0;if(h>>>0>=4){e=h&-4;k=0;while(1){c=g<<2;J[c+f>>2]=J[c+J[a+80>>2]>>2];i=c|4;J[i+f>>2]=J[i+J[a+80>>2]>>2];i=c|8;J[i+f>>2]=J[i+J[a+80>>2]>>2];c=c|12;J[c+f>>2]=J[c+J[a+80>>2]>>2];g=g+4|0;k=k+4|0;if((e|0)!=(k|0)){continue}break}}c=h&3;if(!c){break m}while(1){e=g<<2;J[e+f>>2]=J[e+J[a+80>>2]>>2];g=g+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}c=J[a+80>>2];if(!(!c|!K[a+84|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}h=J[a+72>>2];}J[a+80>>2]=f;H[a+84|0]=1;J[a+76>>2]=b;g=b;}J[J[a+80>>2]+(h<<2)>>2]=J[d>>2];h=h+1|0;J[a+72>>2]=h;j=j+1|0;if((o|0)!=(j|0)){continue}break}}if(J[J[a+4>>2]+80>>2]<(J[a+52>>2]+h|0)){wd(a);}return}g=J[a+8>>2];Q(ua[J[J[g>>2]+12>>2]](g,b,c,d,e,q,o,f,J[a+20>>2],J[a+24>>2]));}function Xn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=Q(0);f=sa-32|0;sa=f;h=a+4|0;yf(h,((P(J[a+112>>2],J[a+16>>2])|0)/100|0)+1|0);if(J[a+124>>2]){c=((P(J[a+108>>2],J[a+56>>2])|0)/100|0)+1|0;yf(a+44|0,c);c=J[a+124>>2]-c|0;J[a+124>>2]=(c|0)>0?c:0;}c=(J[a+104>>2]+1|0)%2|0;J[a+104>>2]=c;c=J[((c<<2)+a|0)+84>>2];if(c){g=a+44|0;while(1){d=J[c+52>>2];e=d?d+56|0:((J[c+60>>2]<<2)+a|0)+84|0;d=J[c+56>>2];J[e>>2]=d;e=J[c+56>>2];if(e){J[e+52>>2]=J[c+52>>2];}J[c+52>>2]=0;J[c+56>>2]=J[a+92>>2];e=J[a+92>>2];if(e){J[e+52>>2]=c;}J[a+92>>2]=c;_b(h,J[c+48>>2]);e=J[c+28>>2];J[f+8>>2]=J[c+24>>2];J[f+12>>2]=e;e=J[c+20>>2];J[f>>2]=J[c+16>>2];J[f+4>>2]=e;e=J[c+44>>2];J[f+24>>2]=J[c+40>>2];J[f+28>>2]=e;e=J[c+36>>2];J[f+16>>2]=J[c+32>>2];J[f+20>>2]=e;e=$b(g,f,c);J[c+60>>2]=2;J[c+48>>2]=e;c=d;if(c){continue}break}H[a+154|0]=1;J[a+124>>2]=J[a+56>>2];}J[f>>2]=12044;J[f+4>>2]=a;a:{if(!K[a+153|0]){break a}Zb(h,J[a+4>>2],J[a+44>>2],f);if(!K[a+153|0]){break a}c=J[h>>2];Zb(h,c,c,f);}b:{if(!K[a+154|0]){break b}c=J[a+96>>2];e=ua[J[J[c>>2]+28>>2]](c)|0;c=J[e+4>>2];if((c|0)<=0){break b}c:{d=J[a+120>>2];h=(P(J[a+116>>2],c)|0)/100|0;d=(d|0)>(h|0)?d:h;g=(c|0)<(d|0)?c:d;if((g|0)>0){c=0;while(1){h=J[e+12>>2]+((J[a+144>>2]+c|0)%J[e+4>>2]<<4)|0;i=J[h>>2];d=J[i+48>>2];j=J[h+4>>2];h=J[j+48>>2];d:{e:{if(!(N[d>>2]<=N[h+16>>2])|!(N[d+16>>2]>=N[h>>2])|(!(N[d+4>>2]<=N[h+20>>2])|!(N[d+20>>2]>=N[h+4>>2]))){break e}if(!(N[d+8>>2]<=N[h+24>>2])){break e}if(N[d+24>>2]>=N[h+8>>2]){break d}}d=J[a+96>>2];ua[J[J[d>>2]+12>>2]](d,i,j,b)|0;c=c-1|0;g=g-1|0;}c=c+1|0;if((g|0)>(c|0)){continue}break}c=J[e+4>>2];if((c|0)<=0){break c}}J[a+144>>2]=(J[a+144>>2]+g|0)%(c|0);break b}J[a+144>>2]=0;}H[a+154|0]=0;J[a+120>>2]=1;J[a+140>>2]=J[a+140>>2]+1;c=J[a+132>>2];d=J[a+128>>2];if(d){m=Q(Q(c>>>0)/Q(d>>>0));}else {m=Q(0);}N[a+136>>2]=m;J[a+132>>2]=c>>>1;J[a+128>>2]=d>>>1;sa=f+32|0;d=0;c=0;j=0;l=sa-16|0;sa=l;f=J[a+96>>2];if(ua[J[J[f>>2]+56>>2]](f)|0){h=a;a=J[a+96>>2];g=ua[J[J[a>>2]+28>>2]](a)|0;a=J[g+4>>2];if((a|0)>=2){Yb(g,l+15|0,0,a-1|0);a=J[g+4>>2];}if((a|0)>0){while(1){i=J[g+12>>2]+(j<<4)|0;f=J[i+4>>2];e=d;d=J[i>>2];f:{g:{if((e|0)==(d|0)&(c|0)==(f|0)){break g}c=J[d+48>>2];e=J[f+48>>2];if(!(N[c>>2]<=N[e+16>>2])|!(N[c+16>>2]>=N[e>>2])|(!(N[c+4>>2]<=N[e+20>>2])|!(N[c+20>>2]>=N[e+4>>2]))){break g}if(!(N[c+8>>2]<=N[e+24>>2])){break g}if(N[c+24>>2]>=N[e+8>>2]){break f}}a=J[h+96>>2];ua[J[J[a>>2]+32>>2]](a,i,b);J[i>>2]=0;J[i+4>>2]=0;k=k+1|0;a=J[g+4>>2];}c=f;j=j+1|0;if((j|0)<(a|0)){continue}break}if((a|0)>=2){Yb(g,l+14|0,0,a-1|0);a=J[g+4>>2];}b=a-k|0;h:{if((k|0)>=0){break h}if((b|0)>J[g+8>>2]){d=0;i:{if((a|0)==(k|0)){break i}J[8456]=J[8456]+1;d=ua[J[8258]](b<<4,16)|0;e=J[g+4>>2];if((e|0)<=0){break i}c=0;while(1){h=c<<4;f=h+d|0;h=h+J[g+12>>2]|0;J[f>>2]=J[h>>2];J[f+4>>2]=J[h+4>>2];J[f+8>>2]=J[h+8>>2];J[f+12>>2]=J[h+12>>2];c=c+1|0;if((e|0)!=(c|0)){continue}break}}c=J[g+12>>2];if(!(c?!c|!K[g+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[g+12>>2]=d;H[g+16|0]=1;J[g+8>>2]=b;}c=0;f=0-k&3;if(f){while(1){d=J[g+12>>2]+(a<<4)|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;a=a+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(k>>>0>4294967292){break h}while(1){c=a<<4;d=c+J[g+12>>2]|0;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=c+J[g+12>>2]|0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;d=c+J[g+12>>2]|0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;c=c+J[g+12>>2]|0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=b;}J[g+4>>2]=a;}sa=l+16|0;}function wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=Q(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,L=0,M=0,O=0,R=0;h=b;d=J[a+28>>2];n=d+4|0;b=J[a+32>>2];o=b+4|0;p=d+372|0;q=b+372|0;r=d+388|0;s=b+388|0;i=sa-16|0;sa=i;c=a;a=J[c+1232>>2]-1|0;a:{if(a>>>0>4){j=1;a=2;break a}a=a<<2;f=J[a+23524>>2];j=J[a+23504>>2];a=J[a+23484>>2];}e=P(f,88)+c|0;if(J[e+1052>>2]|K[e+996|0]|K[(P(f,88)+c|0)+1016|0]){d=(f<<4)+c|0;k=d+1388|0;b=J[k+4>>2];J[i+8>>2]=J[k>>2];J[i+12>>2]=b;k=d+1380|0;b=J[k+4>>2];J[i>>2]=J[k>>2];J[i+4>>2]=b;b=J[c+1456>>2]>>(f<<2)+12;if(!(b&1)){N[(P(f,88)+c|0)+984>>2]=N[J[h+32>>2]>>2];}if(!(b&2)){N[(P(f,88)+c|0)+980>>2]=N[h+4>>2];}if(!(b&4)){N[(P(f,88)+c|0)+992>>2]=N[J[h+32>>2]>>2];}if(!(b&8)){N[(P(f,88)+c|0)+988>>2]=N[h+4>>2];}k=Ib(c,e+968|0,n,o,p,q,r,s,h,0,i,1,0);}f=P(j,88)+c|0;if(J[f+1052>>2]|K[f+996|0]|K[(P(j,88)+c|0)+1016|0]){e=(j<<4)+c|0;d=e+1388|0;b=J[d+4>>2];J[i+8>>2]=J[d>>2];J[i+12>>2]=b;d=e+1380|0;b=J[d+4>>2];J[i>>2]=J[d>>2];J[i+4>>2]=b;b=J[c+1456>>2]>>(j<<2)+12;if(!(b&1)){N[(P(j,88)+c|0)+984>>2]=N[J[h+32>>2]>>2];}if(!(b&2)){N[(P(j,88)+c|0)+980>>2]=N[h+4>>2];}if(!(b&4)){N[(P(j,88)+c|0)+992>>2]=N[J[h+32>>2]>>2];}if(!(b&8)){N[(P(j,88)+c|0)+988>>2]=N[h+4>>2];}k=Ib(c,f+968|0,n,o,p,q,r,s,h,k,i,1,0)+k|0;}f=P(a,88)+c|0;if(J[f+1052>>2]|K[f+996|0]|K[(P(a,88)+c|0)+1016|0]){e=(a<<4)+c|0;d=e+1388|0;b=J[d+4>>2];J[i+8>>2]=J[d>>2];J[i+12>>2]=b;d=e+1380|0;b=J[d+4>>2];J[i>>2]=J[d>>2];J[i+4>>2]=b;b=J[c+1456>>2]>>(a<<2)+12;if(!(b&1)){N[(P(a,88)+c|0)+984>>2]=N[J[h+32>>2]>>2];}if(!(b&2)){N[(P(a,88)+c|0)+980>>2]=N[h+4>>2];}if(!(b&4)){N[(P(a,88)+c|0)+992>>2]=N[J[h+32>>2]>>2];}if(!(b&8)){N[(P(a,88)+c|0)+988>>2]=N[h+4>>2];}k=Ib(c,f+968|0,n,o,p,q,r,s,h,k,i,1,0)+k|0;}sa=i+16|0;e=0;b=sa-112|0;sa=b;J[b+44>>2]=1063675494;J[b+48>>2]=0;J[b+36>>2]=1045220557;J[b+40>>2]=0;v=c+760|0;w=c+776|0;t=h+4|0;x=c+728|0;y=c+744|0;z=c+1268|0;A=c+1252|0;B=c+1236|0;C=c+876|0;D=c+892|0;E=c+696|0;F=c+860|0;G=c+840|0;I=c+820|0;L=c+804|0;M=c+924|0;O=c+908|0;R=c+940|0;i=c+712|0;u=c+680|0;while(1){d=K[(e+u|0)+112|0];b:{c:{g=e<<2;j=u+g|0;f=J[j+276>>2];if(f){break c}a=d;d=1;if(a){break c}d=0;if(K[(c+e|0)+798|0]){break c}a=e+1|0;break b}l=N[g+i>>2];J[b+108>>2]=f;N[b+32>>2]=l;N[b+104>>2]=N[g+R>>2];N[b+96>>2]=N[g+O>>2];l=N[g+M>>2];H[b+52|0]=d;N[b+100>>2]=l;a=c+e|0;H[b+64|0]=K[a+795|0];N[b+68>>2]=N[g+L>>2];H[b+72|0]=K[a+798|0];N[b+76>>2]=N[g+I>>2];H[b+80|0]=K[a+836|0];N[b+84>>2]=N[g+G>>2];H[b+88|0]=K[a+856|0];N[b+92>>2]=N[g+F>>2];N[b+28>>2]=N[g+E>>2];N[b+24>>2]=N[j>>2];N[b+60>>2]=N[g+D>>2];N[b+56>>2]=N[g+C>>2];N[b+8>>2]=N[g+B>>2];N[b+12>>2]=N[g+A>>2];l=N[g+z>>2];J[b+20>>2]=0;N[b+16>>2]=l;d=J[c+1456>>2]>>g;N[b+40>>2]=N[(d&1?g+y|0:J[h+32>>2])>>2];N[b+36>>2]=N[(d&2?g+x|0:t)>>2];N[b+48>>2]=N[(d&4?g+w|0:J[h+32>>2])>>2];N[b+44>>2]=N[(d&8?g+v|0:t)>>2];j=1;f=e?e-1|0:2;d=1;d:{e:{f:{g:{a=e+1|0;e=P(e>>>0<2?a:e-2|0,88)+c|0;switch(J[e+1052>>2]-1|0){case 0:case 1:break d;case 3:break f;case 2:break g;default:break e}}m=+N[e+1040>>2];d=m<-.001|m>.001;break d}if(+N[e+1040>>2]<-.001){break d}d=+N[e+1044>>2]>.001;break d}d=0;}h:{i:{j:{k:{e=P(f,88)+c|0;switch(J[e+1052>>2]-1|0){case 0:case 1:break i;case 3:break j;case 2:break k;default:break h}}m=+N[e+1040>>2];if(m<-.001|m>.001){break i}break h}if(+N[e+1040>>2]<-.001){break i}if(!(+N[e+1044>>2]>.001)){break h}}j=0;}k=Ib(c,b+24|0,n,o,p,q,r,s,h,k,b+8|0,0,d?j:1)+k|0;}e=a;if((e|0)!=3){continue}break}sa=b+112|0;}function Zd(a,b,c,d){var e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=0,D=Q(0),E=Q(0),F=Q(0),G=Q(0),I=Q(0),K=Q(0),L=Q(0),M=0,O=Q(0),P=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Y=Q(0),Z=Q(0),_=0,$=0,aa=Q(0),ba=Q(0),ca=Q(0),da=Q(0),ea=Q(0),fa=Q(0);e=sa-240|0;sa=e;a:{if(J[a+16>>2]){Kb(J[a+4>>2]);f=J[a+12>>2];s=J[f+4>>2];M=J[a+16>>2];_=J[M+4>>2];h=Q(ua[J[J[f>>2]+48>>2]](f));C=J[a+16>>2];j=Q(ua[J[J[C>>2]+48>>2]](C));C=J[a+4>>2];$=J[a+8>>2];a=e+160|0;J[a+72>>2]=1;J[a+76>>2]=1;J[a+60>>2]=-1;H[a+52|0]=0;N[a+48>>2]=j;N[a+44>>2]=h;J[a+40>>2]=_;J[a+36>>2]=s;J[a+32>>2]=M;J[a+28>>2]=f;J[a+24>>2]=C;J[a+20>>2]=$;J[a+4>>2]=0;J[a+8>>2]=1065353216;J[a+12>>2]=0;J[a+16>>2]=0;J[a>>2]=22784;J[e+152>>2]=1566444395;f=J[b+12>>2];J[e+32>>2]=J[b+8>>2];J[e+36>>2]=f;f=J[b+4>>2];J[e+24>>2]=J[b>>2];J[e+28>>2]=f;f=J[b+28>>2];J[e+48>>2]=J[b+24>>2];J[e+52>>2]=f;f=J[b+20>>2];J[e+40>>2]=J[b+16>>2];J[e+44>>2]=f;s=J[b+44>>2];f=e- -64|0;J[f>>2]=J[b+40>>2];J[f+4>>2]=s;f=J[b+36>>2];J[e+56>>2]=J[b+32>>2];J[e+60>>2]=f;f=J[b+60>>2];J[e+80>>2]=J[b+56>>2];J[e+84>>2]=f;f=J[b+52>>2];J[e+72>>2]=J[b+48>>2];J[e+76>>2]=f;b=J[c+12>>2];J[e+96>>2]=J[c+8>>2];J[e+100>>2]=b;b=J[c+4>>2];J[e+88>>2]=J[c>>2];J[e+92>>2]=b;b=J[c+20>>2];J[e+104>>2]=J[c+16>>2];J[e+108>>2]=b;b=J[c+28>>2];J[e+112>>2]=J[c+24>>2];J[e+116>>2]=b;b=J[c+44>>2];J[e+128>>2]=J[c+40>>2];J[e+132>>2]=b;b=J[c+36>>2];J[e+120>>2]=J[c+32>>2];J[e+124>>2]=b;b=J[c+52>>2];J[e+136>>2]=J[c+48>>2];J[e+140>>2]=b;b=J[c+60>>2];J[e+144>>2]=J[c+56>>2];J[e+148>>2]=b;Za(a,e+24|0,d,0,0);break a}E=N[b+52>>2];F=N[b+56>>2];G=N[c+52>>2];I=N[c+56>>2];k=N[b+20>>2];l=N[b+36>>2];h=N[c+20>>2];j=N[c+36>>2];g=N[c+24>>2];m=N[b+24>>2];i=N[c+40>>2];p=N[b+40>>2];K=N[b+48>>2];aa=N[c+48>>2];f=J[a+12>>2];q=N[b+32>>2];r=N[b+16>>2];t=N[b>>2];u=N[b+4>>2];y=N[c+32>>2];z=N[c+16>>2];A=N[c>>2];B=N[c+4>>2];n=N[c+8>>2];v=N[b+8>>2];a=J[a+20>>2];w=N[a+60>>2];b=a- -64|0;x=N[b>>2];o=N[a+56>>2];J[e+172>>2]=0;O=Q(Q(p*y)+Q(Q(v*A)+Q(m*z)));o=Q(-o);P=Q(Q(p*j)+Q(Q(v*B)+Q(m*h)));D=Q(Q(p*i)+Q(Q(v*n)+Q(m*g)));N[e+168>>2]=Q(Q(O*o)-Q(w*P))-Q(x*D);R=Q(Q(l*y)+Q(Q(u*A)+Q(k*z)));S=Q(Q(l*j)+Q(Q(u*B)+Q(k*h)));T=Q(Q(l*i)+Q(Q(u*n)+Q(k*g)));N[e+164>>2]=Q(Q(R*o)-Q(w*S))-Q(x*T);U=Q(Q(q*y)+Q(Q(t*A)+Q(r*z)));V=Q(Q(q*j)+Q(Q(t*B)+Q(r*h)));W=Q(Q(q*i)+Q(Q(t*n)+Q(r*g)));N[e+160>>2]=Q(Q(U*o)-Q(w*V))-Q(x*W);s=e+160|0;ua[J[J[f>>2]+64>>2]](e+24|0,f,s);k=N[a+60>>2];l=N[b>>2];ba=N[a+72>>2];m=N[a+56>>2];p=N[e+24>>2];q=N[e+28>>2];r=N[e+32>>2];ca=N[c+52>>2];t=N[c+24>>2];u=N[c+20>>2];da=N[c+56>>2];v=N[c+40>>2];w=N[c+36>>2];ea=N[c+48>>2];x=N[c+8>>2];o=N[c>>2];X=N[c+4>>2];Y=N[c+16>>2];Z=N[c+32>>2];J[e+172>>2]=0;fa=Q(Q(F*i)+Q(Q(K*n)+Q(E*g)));L=n;n=Q(-aa);g=Q(Q(fa+Q(Q(Q(L*n)-Q(g*G))-Q(i*I)))+Q(Q(r*D)+Q(Q(p*W)+Q(T*q))));L=g;D=Q(l*g);g=Q(Q(Q(Q(F*y)+Q(Q(K*A)+Q(E*z)))+Q(Q(Q(A*n)-Q(z*G))-Q(y*I)))+Q(Q(r*O)+Q(Q(p*U)+Q(R*q))));i=Q(Q(Q(Q(F*j)+Q(Q(K*B)+Q(E*h)))+Q(Q(Q(B*n)-Q(h*G))-Q(j*I)))+Q(Q(r*P)+Q(Q(p*V)+Q(S*q))));h=Q(Q(D+Q(Q(m*g)+Q(k*i)))-ba);j=Q(L-Q(l*h));g=Q(g-Q(m*h));i=Q(i-Q(k*h));N[e+168>>2]=da+Q(Q(v*j)+Q(Q(Z*g)+Q(w*i)));N[e+164>>2]=ca+Q(Q(j*t)+Q(Q(g*Y)+Q(i*u)));N[e+160>>2]=ea+Q(Q(j*x)+Q(Q(g*o)+Q(i*X)));J[e+20>>2]=0;N[e+16>>2]=Q(v*l)+Q(Q(Z*m)+Q(k*w));N[e+12>>2]=Q(t*l)+Q(Q(Y*m)+Q(k*u));N[e+8>>2]=Q(x*l)+Q(Q(o*m)+Q(k*X));ua[J[J[d>>2]+16>>2]](d,e+8|0,s,h);}sa=e+240|0;}function Hd(a,b){var c=0,d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=0;J[a+372>>2]=0;J[a+376>>2]=0;J[a+252>>2]=2;J[a+604>>2]=1065353216;J[a+608>>2]=1065353216;J[a+408>>2]=1065353216;J[a+412>>2]=1065353216;J[a+472>>2]=0;J[a+476>>2]=0;J[a+380>>2]=0;J[a+384>>2]=0;J[a+388>>2]=0;J[a+392>>2]=0;J[a+396>>2]=0;J[a+400>>2]=0;J[a+612>>2]=1065353216;J[a+616>>2]=0;J[a+420>>2]=0;J[a+424>>2]=0;J[a+416>>2]=1065353216;J[a+428>>2]=0;J[a+432>>2]=0;J[a+436>>2]=0;J[a+440>>2]=0;J[a+444>>2]=0;J[a+448>>2]=0;J[a+452>>2]=0;J[a+480>>2]=0;J[a+484>>2]=0;J[a+488>>2]=0;J[a+492>>2]=0;J[a+496>>2]=0;J[a+500>>2]=0;g=N[b+92>>2];d=N[b+96>>2];N[a+508>>2]=d<Q(0)?Q(0):d>Q(1)?Q(1):d;N[a+504>>2]=g<Q(0)?Q(0):g>Q(1)?Q(1):g;N[a+532>>2]=N[b+116>>2];N[a+536>>2]=N[b+120>>2];c=J[b+4>>2];J[a+668>>2]=0;J[a+672>>2]=0;J[a+540>>2]=c;H[a+512|0]=K[b+124|0];N[a+516>>2]=N[b+128>>2];N[a+520>>2]=N[b+132>>2];N[a+524>>2]=N[b+136>>2];N[a+528>>2]=N[b+140>>2];a:{if(c){ua[J[J[c>>2]+8>>2]](c,a+4|0);break a}c=J[b+12>>2];J[a+4>>2]=J[b+8>>2];J[a+8>>2]=c;c=J[b+20>>2];J[a+12>>2]=J[b+16>>2];J[a+16>>2]=c;c=J[b+36>>2];J[a+28>>2]=J[b+32>>2];J[a+32>>2]=c;c=J[b+28>>2];J[a+20>>2]=J[b+24>>2];J[a+24>>2]=c;c=J[b+44>>2];J[a+36>>2]=J[b+40>>2];J[a+40>>2]=c;c=J[b+52>>2];J[a+44>>2]=J[b+48>>2];J[a+48>>2]=c;c=b- -64|0;t=J[c+4>>2];J[a+60>>2]=J[c>>2];J[a+64>>2]=t;c=J[b+60>>2];J[a+52>>2]=J[b+56>>2];J[a+56>>2]=c;}J[a+132>>2]=0;J[a+136>>2]=0;c=J[a+8>>2];J[a+68>>2]=J[a+4>>2];J[a+72>>2]=c;J[a+156>>2]=0;J[a+160>>2]=0;J[a+148>>2]=0;J[a+152>>2]=0;J[a+140>>2]=0;J[a+144>>2]=0;c=J[a+24>>2];J[a+84>>2]=J[a+20>>2];J[a+88>>2]=c;c=J[a+16>>2];J[a+76>>2]=J[a+12>>2];J[a+80>>2]=c;c=J[a+32>>2];J[a+92>>2]=J[a+28>>2];J[a+96>>2]=c;c=J[a+40>>2];J[a+100>>2]=J[a+36>>2];J[a+104>>2]=c;c=J[a+48>>2];J[a+108>>2]=J[a+44>>2];J[a+112>>2]=c;c=J[a+56>>2];J[a+116>>2]=J[a+52>>2];J[a+120>>2]=c;c=J[a+64>>2];J[a+124>>2]=J[a+60>>2];J[a+128>>2]=c;N[a+228>>2]=N[b+100>>2];N[a+236>>2]=N[b+104>>2];N[a+240>>2]=N[b+108>>2];N[a+232>>2]=N[b+112>>2];ua[J[J[a>>2]+8>>2]](a,J[b+72>>2]);c=J[8931];J[8931]=c+1;J[a+568>>2]=c;g=Q(0);c=J[a+204>>2];d=N[b>>2];if(d==Q(0)){c=c|1;}else {g=Q(Q(1)/d);c=c&-2;}N[a+404>>2]=g;J[a+204>>2]=c;J[a+436>>2]=0;N[a+424>>2]=d*N[a+440>>2];N[a+432>>2]=d*N[a+448>>2];N[a+428>>2]=d*N[a+444>>2];e=N[b+84>>2];f=N[b+80>>2];d=N[b+76>>2];J[a+564>>2]=8;J[a+368>>2]=0;J[a+352>>2]=0;J[a+336>>2]=0;J[a+468>>2]=0;d=d!=Q(0)?Q(Q(1)/d):Q(0);N[a+456>>2]=d;f=f!=Q(0)?Q(Q(1)/f):Q(0);N[a+460>>2]=f;e=e!=Q(0)?Q(Q(1)/e):Q(0);N[a+464>>2]=e;m=N[a+12>>2];h=Q(e*m);n=N[a+4>>2];i=Q(d*n);o=N[a+8>>2];j=Q(f*o);N[a+324>>2]=Q(m*h)+Q(Q(n*i)+Q(o*j));p=N[a+28>>2];q=N[a+20>>2];r=N[a+24>>2];N[a+328>>2]=Q(p*h)+Q(Q(q*i)+Q(j*r));s=N[a+44>>2];k=Q(s*h);h=N[a+36>>2];l=Q(h*i);i=N[a+40>>2];N[a+332>>2]=k+Q(l+Q(j*i));j=Q(e*p);k=Q(d*q);l=Q(f*r);N[a+340>>2]=Q(m*j)+Q(Q(n*k)+Q(o*l));N[a+344>>2]=Q(p*j)+Q(Q(q*k)+Q(r*l));N[a+348>>2]=Q(s*j)+Q(Q(h*k)+Q(l*i));e=Q(e*s);d=Q(d*h);f=Q(f*i);N[a+356>>2]=Q(m*e)+Q(Q(n*d)+Q(o*f));N[a+360>>2]=Q(p*e)+Q(Q(q*d)+Q(r*f));N[a+364>>2]=Q(s*e)+Q(Q(h*d)+Q(i*f));d=N[a+408>>2];f=N[a+412>>2];e=N[a+416>>2];J[a+596>>2]=0;J[a+600>>2]=0;J[a+588>>2]=0;J[a+592>>2]=0;J[a+580>>2]=0;J[a+584>>2]=0;J[a+572>>2]=0;J[a+576>>2]=0;N[a+628>>2]=g*e;N[a+624>>2]=g*f;N[a+620>>2]=g*d;J[a+664>>2]=0;J[a+656>>2]=0;J[a+660>>2]=0;J[a+648>>2]=0;J[a+652>>2]=0;J[a+640>>2]=0;J[a+644>>2]=0;J[a+632>>2]=0;J[a+636>>2]=0;}function zo(a,b,c,d,e,f){a=a|0;b=Q(b);c=Q(c);d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=Q(0),k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;g=sa-144|0;sa=g;J[g+136>>2]=0;J[g+140>>2]=0;J[g+128>>2]=0;J[g+132>>2]=0;z=g+128|0;m=d<<2;N[z+m>>2]=-c;J[g+120>>2]=0;J[g+124>>2]=0;J[g+112>>2]=0;J[g+116>>2]=0;A=g+112|0;N[m+A>>2]=c;h=J[e+12>>2];J[g+56>>2]=J[e+8>>2];J[g+60>>2]=h;h=J[e+4>>2];J[g+48>>2]=J[e>>2];J[g+52>>2]=h;h=J[e+28>>2];J[g+72>>2]=J[e+24>>2];J[g+76>>2]=h;h=J[e+20>>2];J[g+64>>2]=J[e+16>>2];J[g+68>>2]=h;h=J[e+44>>2];J[g+88>>2]=J[e+40>>2];J[g+92>>2]=h;h=J[e+36>>2];J[g+80>>2]=J[e+32>>2];J[g+84>>2]=h;k=N[e+8>>2];p=N[e+56>>2];v=N[e+40>>2];w=N[e+36>>2];x=N[e+48>>2];y=N[e>>2];n=N[e+4>>2];o=N[e+32>>2];c=N[g+136>>2];j=N[g+128>>2];l=N[g+132>>2];N[g+100>>2]=Q(Q(c*N[e+24>>2])+Q(Q(j*N[e+16>>2])+Q(l*N[e+20>>2])))+N[e+52>>2];J[g+108>>2]=0;N[g+104>>2]=p+Q(Q(c*v)+Q(Q(j*o)+Q(l*w)));N[g+96>>2]=x+Q(Q(c*k)+Q(Q(j*y)+Q(l*n)));h=J[g+108>>2];J[g+40>>2]=J[g+104>>2];J[g+44>>2]=h;h=J[g+100>>2];J[g+32>>2]=J[g+96>>2];J[g+36>>2]=h;h=(d+1|0)%3<<2;r=g+48|0;D=h+r|0;N[g+16>>2]=N[D>>2];B=g- -64|0;E=B+h|0;N[g+20>>2]=N[E>>2];C=g+80|0;F=C+h|0;c=N[F>>2];J[g+28>>2]=0;N[g+24>>2]=c;B=m+B|0;c=N[B>>2];C=m+C|0;j=N[C>>2];J[g+12>>2]=0;m=m+r|0;N[g>>2]=-N[m>>2];N[g+8>>2]=-j;N[g+4>>2]=-c;r=g+32|0;G=g+16|0;ua[J[J[a>>2]+72>>2]](a,r,G,g,b,Q(-1.5707963705062866),Q(1.5707963705062866),Q(-1.5707963705062866),Q(1.5707963705062866),f,Q(30),0);i=J[e+12>>2];J[g+56>>2]=J[e+8>>2];J[g+60>>2]=i;i=J[e+4>>2];J[g+48>>2]=J[e>>2];J[g+52>>2]=i;i=J[e+28>>2];J[g+72>>2]=J[e+24>>2];J[g+76>>2]=i;i=J[e+20>>2];J[g+64>>2]=J[e+16>>2];J[g+68>>2]=i;i=J[e+44>>2];J[g+88>>2]=J[e+40>>2];J[g+92>>2]=i;i=J[e+36>>2];J[g+80>>2]=J[e+32>>2];J[g+84>>2]=i;k=N[e+8>>2];p=N[e+56>>2];v=N[e+40>>2];w=N[e+36>>2];c=N[e+52>>2];j=N[e+24>>2];l=N[e+20>>2];x=N[e+48>>2];y=N[e>>2];n=N[e+4>>2];o=N[e+32>>2];q=N[e+16>>2];J[g+108>>2]=0;s=c;c=N[g+120>>2];t=Q(j*c);j=N[g+112>>2];u=l;l=N[g+116>>2];N[g+100>>2]=s+Q(t+Q(Q(q*j)+Q(u*l)));N[g+104>>2]=p+Q(Q(c*v)+Q(Q(j*o)+Q(l*w)));N[g+96>>2]=x+Q(Q(c*k)+Q(Q(j*y)+Q(l*n)));i=J[g+108>>2];J[g+40>>2]=J[g+104>>2];J[g+44>>2]=i;i=J[g+100>>2];J[g+32>>2]=J[g+96>>2];J[g+36>>2]=i;N[g+16>>2]=N[D>>2];N[g+20>>2]=N[E>>2];c=N[F>>2];J[g+28>>2]=0;N[g+24>>2]=c;N[g>>2]=N[m>>2];N[g+4>>2]=N[B>>2];c=N[C>>2];J[g+12>>2]=0;N[g+8>>2]=c;ua[J[J[a>>2]+72>>2]](a,r,G,g,b,Q(-1.5707963705062866),Q(1.5707963705062866),Q(-1.5707963705062866),Q(1.5707963705062866),f,Q(30),0);d=(d+2|0)%3<<2;m=d+A|0;r=d+z|0;A=h+A|0;h=h+z|0;c=N[e+56>>2];j=N[e+52>>2];l=N[e+48>>2];d=0;while(1){k=Q(Q(d|0)*Q(.01745329238474369));p=Q(Na(k)*b);N[h>>2]=p;N[A>>2]=p;k=Q(Ma(k)*b);N[r>>2]=k;N[m>>2]=k;k=N[e+8>>2];p=N[e>>2];v=N[e+4>>2];w=N[e+24>>2];x=N[e+16>>2];y=N[e+20>>2];n=N[e+40>>2];o=N[e+32>>2];q=N[e+36>>2];J[g+60>>2]=0;s=N[g+136>>2];u=N[g+128>>2];t=N[g+132>>2];N[g+56>>2]=c+Q(Q(n*s)+Q(Q(o*u)+Q(q*t)));N[g+52>>2]=j+Q(Q(w*s)+Q(Q(x*u)+Q(t*y)));N[g+48>>2]=l+Q(Q(k*s)+Q(Q(p*u)+Q(v*t)));J[g+44>>2]=0;s=n;n=N[g+120>>2];u=o;o=N[g+112>>2];t=q;q=N[g+116>>2];N[g+40>>2]=c+Q(Q(s*n)+Q(Q(u*o)+Q(t*q)));N[g+36>>2]=j+Q(Q(w*n)+Q(Q(x*o)+Q(y*q)));N[g+32>>2]=l+Q(Q(k*n)+Q(Q(p*o)+Q(v*q)));ua[J[J[a>>2]+16>>2]](a,g+48|0,g+32|0,f);z=d>>>0<330;d=d+30|0;if(z){continue}break}sa=g+144|0;}function Ib(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=Q(0),o=Q(0),p=0,q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0);j=P(J[i+24>>2],j);a:{b:{c:{switch(J[b+84>>2]-3|0){case 1:p=l?g:e;q=N[p+8>>2];u=N[p>>2];z=N[p+4>>2];p=l?h:f;w=N[p+8>>2];x=N[p>>2];v=N[p+4>>2];o=N[k+8>>2];n=N[k>>2];r=N[k+4>>2];jb(a,c,d,i,j,k,l,m);p=J[i+28>>2]+(j<<2)|0;y=l?Q(-1):Q(1);t=Q(y*Q(Q(N[i>>2]*N[b+12>>2])*N[b+72>>2]));N[p>>2]=t;n=Q(Q(Q(q*o)+Q(Q(u*n)+Q(z*r)))-Q(Q(w*o)+Q(Q(x*n)+Q(r*v))));q=Q(t-Q(n*N[b+12>>2]));d:{e:{if(l){o=Q(0);r=Q(34028234663852886e22);if(!(q>Q(0))){break d}q=Q(n*Q(-N[b+8>>2]));if(t<q){break e}break d}r=Q(0);o=Q(-34028234663852886e22);if(!(q<Q(0))){break d}q=Q(n*Q(-N[b+8>>2]));if(!(t>q)){break d}}N[p>>2]=q;}p=j<<2;N[p+J[i+36>>2]>>2]=o;N[p+J[i+40>>2]>>2]=r;N[p+J[i+32>>2]>>2]=N[b+16>>2];j=J[i+24>>2]+j|0;jb(a,c,d,i,j,k,l,m);p=J[i+28>>2]+(j<<2)|0;q=Q(y*Q(Q(N[i>>2]*N[b+12>>2])*N[b+76>>2]));N[p>>2]=q;t=Q(q-Q(n*N[b+12>>2]));f:{g:{if(l){r=Q(0);o=Q(-34028234663852886e22);if(!(t<Q(0))){break f}n=Q(n*Q(-N[b+8>>2]));if(q>n){break g}break f}o=Q(0);r=Q(34028234663852886e22);if(!(t>Q(0))){break f}n=Q(n*Q(-N[b+8>>2]));if(!(q<n)){break f}}N[p>>2]=n;}s=b+16|0;p=j<<2;N[p+J[i+36>>2]>>2]=o;N[p+J[i+40>>2]>>2]=r;p=2;break b;case 0:break c;default:break a}}jb(a,c,d,i,j,k,l,m);p=j<<2;N[p+J[i+28>>2]>>2]=Q(Q(N[i>>2]*N[b+12>>2])*N[b+72>>2])*Q((l?-1:1)|0);J[p+J[i+36>>2]>>2]=-8388609;J[p+J[i+40>>2]>>2]=2139095039;s=b+16|0;p=1;}N[J[i+32>>2]+(j<<2)>>2]=N[s>>2];j=J[i+24>>2]+j|0;}h:{if(!K[b+28|0]){break h}if(!K[b+40|0]){jb(a,c,d,i,j,k,l,m);o=N[b+32>>2];o=Hb(N[b+80>>2],N[b>>2],N[b+4>>2],l?o:Q(-o),Q(N[i>>2]*N[b+20>>2]));s=j<<2;N[s+J[i+28>>2]>>2]=o*N[b+32>>2];N[s+J[i+36>>2]>>2]=-N[b+36>>2];N[s+J[i+40>>2]>>2]=N[b+36>>2];N[s+J[i+32>>2]>>2]=N[b+24>>2];p=p+1|0;j=J[i+24>>2]+j|0;if(!K[b+28|0]|!K[b+40|0]){break h}}o=N[b+44>>2];n=Q(N[b+80>>2]-o);i:{if(!l){break i}s=n>Q(3.1415927410125732);o=s?Q(o+Q(6.2831854820251465)):o;n=s?Q(n+Q(-6.2831854820251465)):n;if(!(n<Q(-3.1415927410125732))){break i}o=Q(o+Q(-6.2831854820251465));n=Q(n+Q(6.2831854820251465));}jb(a,c,d,i,j,k,l,m);r=Q(0);q=N[b+32>>2];t=n<Q(0)?Q(-q):q;if(n!=Q(0)){u=Q(-t);v=N[b+80>>2];r=N[b>>2];q=N[b+4>>2];j:{if(r>q){q=n<Q(0)?o:Q(34028234663852886e22);n=n>Q(0)?o:Q(-34028234663852886e22);break j}q=n<Q(0)?o<q?o:q:q;n=n>Q(0)?o>r?o:r:r;}r=Hb(v,n,q,u,Q(N[i>>2]*N[b+20>>2]));}s=j<<2;N[s+J[i+28>>2]>>2]=Q(t*r)*Q((l?-1:1)|0);N[s+J[i+36>>2]>>2]=-N[b+36>>2];N[s+J[i+40>>2]>>2]=N[b+36>>2];N[s+J[i+32>>2]>>2]=N[b+24>>2];p=p+1|0;j=J[i+24>>2]+j|0;}if(K[b+48|0]){q=N[b+68>>2];u=N[b+80>>2];jb(a,c,d,i,j,k,l,m);c=l?g:e;o=N[k+8>>2];n=N[k>>2];r=N[k+4>>2];v=Q(Q(N[c+8>>2]*o)+Q(Q(N[c>>2]*n)+Q(N[c+4>>2]*r)));c=l?h:f;t=Q(v-Q(Q(N[c+8>>2]*o)+Q(Q(N[c>>2]*n)+Q(r*N[c+4>>2]))));o=Q(Q(1)/N[J[a+32>>2]+404>>2]);n=Q(Q(1)/N[J[a+28>>2]+404>>2]);r=n>o?o:n;u=Q(u-q);q=N[b+60>>2];n=Q(Q(1)/N[i>>2]);o=N[b+52>>2];if(!(!K[b+56|0]|!(Q(n*Q(Y(Q(o/r))))>Q(.25)))){o=Q(Q(Q(Q(Q(1)/n)/n)*Q(.0625))*r);}a=j<<2;w=Q(n*Q(u*o));v=n;x=Q(t*Q(-(K[b+64|0]?r<Q(q*n)?Q(r/n):q:q)));n=Q((l?-1:1)|0);o=Q(v*Q(x*n));r=Q(w+o);N[a+J[i+28>>2]>>2]=Q(r*n)+t;b=o>r;n=b?o:r;o=b?r:o;k:{if(!l){N[a+J[i+36>>2]>>2]=o>Q(0)?Q(0):o;break k}N[a+J[i+36>>2]>>2]=n<Q(-0)?Q(0):Q(-n);n=Q(-o);}a=j<<2;N[a+J[i+40>>2]>>2]=n<Q(0)?Q(0):n;J[a+J[i+32>>2]>>2]=0;p=p+1|0;}return p}function Ld(a,b,c,d,e,f){a=mc(a,12,b,c);J[a>>2]=23392;b=J[d+12>>2];J[a+56>>2]=J[d+8>>2];J[a+60>>2]=b;b=J[d+4>>2];J[a+48>>2]=J[d>>2];J[a+52>>2]=b;b=J[d+28>>2];J[a+72>>2]=J[d+24>>2];J[a+76>>2]=b;c=J[d+20>>2];b=a- -64|0;J[b>>2]=J[d+16>>2];J[b+4>>2]=c;b=J[d+44>>2];J[a+88>>2]=J[d+40>>2];J[a+92>>2]=b;b=J[d+36>>2];J[a+80>>2]=J[d+32>>2];J[a+84>>2]=b;b=J[d+60>>2];J[a+104>>2]=J[d+56>>2];J[a+108>>2]=b;b=J[d+52>>2];J[a+96>>2]=J[d+48>>2];J[a+100>>2]=b;b=J[e+12>>2];J[a+120>>2]=J[e+8>>2];J[a+124>>2]=b;b=J[e+4>>2];J[a+112>>2]=J[e>>2];J[a+116>>2]=b;b=J[e+20>>2];J[a+128>>2]=J[e+16>>2];J[a+132>>2]=b;b=J[e+28>>2];J[a+136>>2]=J[e+24>>2];J[a+140>>2]=b;b=J[e+36>>2];J[a+144>>2]=J[e+32>>2];J[a+148>>2]=b;b=J[e+44>>2];J[a+152>>2]=J[e+40>>2];J[a+156>>2]=b;b=J[e+52>>2];J[a+160>>2]=J[e+48>>2];J[a+164>>2]=b;b=J[e+60>>2];J[a+168>>2]=J[e+56>>2];J[a+172>>2]=b;J[a+680>>2]=0;J[a+684>>2]=0;J[a+688>>2]=0;J[a+692>>2]=0;J[a+696>>2]=0;J[a+700>>2]=0;J[a+704>>2]=0;J[a+708>>2]=0;J[a+712>>2]=0;J[a+716>>2]=0;J[a+720>>2]=0;J[a+724>>2]=0;J[a+728>>2]=1045220557;J[a+732>>2]=1045220557;J[a+736>>2]=1045220557;J[a+756>>2]=0;J[a+748>>2]=0;J[a+752>>2]=0;J[a+740>>2]=0;J[a+744>>2]=0;J[a+760>>2]=1063675494;J[a+764>>2]=1063675494;J[a+768>>2]=1063675494;J[a+812>>2]=0;J[a+804>>2]=0;J[a+808>>2]=0;J[a+828>>2]=0;J[a+820>>2]=0;J[a+824>>2]=0;H[a+838|0]=0;I[a+836>>1]=0;J[a+848>>2]=0;J[a+840>>2]=0;J[a+844>>2]=0;H[a+858|0]=0;I[a+856>>1]=0;J[a+868>>2]=0;J[a+860>>2]=0;J[a+864>>2]=0;J[a+884>>2]=0;J[a+876>>2]=0;J[a+880>>2]=0;J[a+900>>2]=0;J[a+892>>2]=0;J[a+896>>2]=0;H[a+793|0]=0;H[a+794|0]=0;H[a+795|0]=0;H[a+796|0]=0;H[a+797|0]=0;H[a+798|0]=0;H[a+799|0]=0;H[a+800|0]=0;J[a+788>>2]=0;J[a+792>>2]=0;J[a+780>>2]=0;J[a+784>>2]=0;J[a+772>>2]=0;J[a+776>>2]=0;J[a+964>>2]=0;J[a+956>>2]=0;J[a+960>>2]=0;J[a+948>>2]=0;J[a+952>>2]=0;J[a+940>>2]=0;J[a+944>>2]=0;J[a+932>>2]=0;J[a+936>>2]=0;J[a+924>>2]=0;J[a+928>>2]=0;J[a+916>>2]=0;J[a+920>>2]=0;J[a+908>>2]=0;J[a+912>>2]=0;H[a+1032|0]=0;J[a+1028>>2]=0;H[a+1024|0]=0;J[a+1020>>2]=0;H[a+1016|0]=0;J[a+1012>>2]=0;H[a+1008|0]=0;J[a+1e3>>2]=0;J[a+1004>>2]=1036831949;H[a+996|0]=0;J[a+992>>2]=0;J[a+984>>2]=0;J[a+988>>2]=1063675494;J[a+976>>2]=0;J[a+980>>2]=1045220557;J[a+968>>2]=1065353216;J[a+972>>2]=-1082130432;J[a+1052>>2]=0;b=a+1044|0;J[b>>2]=0;J[b+4>>2]=0;b=a+1036|0;J[b>>2]=0;J[b+4>>2]=0;H[a+1120|0]=0;J[a+1116>>2]=0;H[a+1112|0]=0;J[a+1108>>2]=0;H[a+1104|0]=0;J[a+1100>>2]=0;H[a+1096|0]=0;b=a+1088|0;J[b>>2]=0;J[b+4>>2]=1036831949;H[a+1084|0]=0;J[a+1080>>2]=0;b=a+1072|0;J[b>>2]=0;J[b+4>>2]=1063675494;b=a+1064|0;J[b>>2]=0;J[b+4>>2]=1045220557;b=a+1056|0;J[b>>2]=1065353216;J[b+4>>2]=-1082130432;J[a+1140>>2]=0;b=a+1132|0;J[b>>2]=0;J[b+4>>2]=0;b=a+1124|0;J[b>>2]=0;J[b+4>>2]=0;H[a+1208|0]=0;J[a+1204>>2]=0;H[a+1200|0]=0;J[a+1196>>2]=0;H[a+1192|0]=0;J[a+1188>>2]=0;H[a+1184|0]=0;b=a+1176|0;J[b>>2]=0;J[b+4>>2]=1036831949;H[a+1172|0]=0;J[a+1168>>2]=0;b=a+1160|0;J[b>>2]=0;J[b+4>>2]=1063675494;b=a+1152|0;J[b>>2]=0;J[b+4>>2]=1045220557;b=a+1144|0;J[b>>2]=1065353216;J[b+4>>2]=-1082130432;J[a+1228>>2]=0;b=a+1220|0;J[b>>2]=0;J[b+4>>2]=0;b=a+1212|0;J[b>>2]=0;J[b+4>>2]=0;J[a+1456>>2]=0;J[a+1232>>2]=f;qc(a,J[a+28>>2]+4|0,J[a+32>>2]+4|0);return a}function $i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=sa-32|0;sa=e;d=ua[J[J[a>>2]+28>>2]](a)|0;J[b>>2]=0;J[b+20>>2]=d;if(d){p=ua[J[J[c>>2]+16>>2]](c,32,d)|0;j=J[p+8>>2];s=b,t=ua[J[J[c>>2]+28>>2]](c,j)|0,J[s>>2]=t;r=ua[J[J[a>>2]+28>>2]](a)|0;if((r|0)>0){while(1){ua[J[J[a>>2]+16>>2]](a,e+28|0,e+4|0,e+16|0,e+8|0,e+24|0,e+20|0,e,e+12|0,o);d=J[e>>2];J[j+24>>2]=d;f=J[e+4>>2];J[j>>2]=0;J[j+4>>2]=0;J[j+28>>2]=f;J[j+8>>2]=0;J[j+12>>2]=0;J[j+16>>2]=0;J[j+20>>2]=0;a:{b:{switch(J[e+12>>2]-2|0){case 0:if(!d){break a}f=ua[J[J[c>>2]+16>>2]](c,4,P(d,3))|0;k=J[f+8>>2];s=j,t=ua[J[J[c>>2]+28>>2]](c,k)|0,J[s+8>>2]=t;if(J[e>>2]>0){d=0;m=J[e+24>>2];while(1){h=k+P(d,12)|0;g=m+P(J[e+20>>2],d)|0;J[h>>2]=J[g>>2];J[h+4>>2]=J[g+4>>2];J[h+8>>2]=J[g+8>>2];d=d+1|0;if((d|0)<J[e>>2]){continue}break}}ua[J[J[c>>2]+20>>2]](c,f,8455,1497453121,J[f+8>>2]);break a;case 1:if(!d){break a}h=ua[J[J[c>>2]+16>>2]](c,8,d)|0;k=J[h+8>>2];s=j,t=ua[J[J[c>>2]+28>>2]](c,k)|0,J[s+12>>2]=t;d=0;if(J[e>>2]>0){while(1){f=k+(d<<3)|0;g=J[e+24>>2]+P(J[e+20>>2],d)|0;I[f>>1]=L[g>>1];I[f+2>>1]=L[g+2>>1];g=L[g+4>>1];I[f+6>>1]=0;I[f+4>>1]=g;d=d+1|0;if((d|0)<J[e>>2]){continue}break}}ua[J[J[c>>2]+20>>2]](c,h,8520,1497453121,J[h+8>>2]);break a;case 3:break b;default:break a}}if(!d){break a}h=ua[J[J[c>>2]+16>>2]](c,4,d)|0;k=J[h+8>>2];s=j,t=ua[J[J[c>>2]+28>>2]](c,k)|0,J[s+16>>2]=t;d=0;if(J[e>>2]>0){while(1){f=k+(d<<2)|0;g=J[e+24>>2]+P(J[e+20>>2],d)|0;H[f|0]=K[g|0];H[f+1|0]=K[g+1|0];g=K[g+2|0];H[f+3|0]=0;H[f+2|0]=g;d=d+1|0;if((d|0)<J[e>>2]){continue}break}}ua[J[J[c>>2]+20>>2]](c,h,8547,1497453121,J[h+8>>2]);}c:{d:{switch(J[e+16>>2]){case 0:d=J[e+4>>2];if(!d){break c}n=ua[J[J[c>>2]+16>>2]](c,16,d)|0;h=J[n+8>>2];s=j,t=ua[J[J[c>>2]+28>>2]](c,h)|0,J[s>>2]=t;g=J[e+4>>2];e:{if((g|0)<=0){break e}d=0;k=J[e+8>>2];m=J[e+28>>2];if((g|0)!=1){q=g&-2;f=0;while(1){l=h+(d<<4)|0;i=m+P(d,k)|0;N[l>>2]=N[i>>2];N[l+4>>2]=N[i+4>>2];N[l+8>>2]=N[i+8>>2];i=d|1;l=h+(i<<4)|0;i=m+P(i,k)|0;N[l>>2]=N[i>>2];N[l+4>>2]=N[i+4>>2];N[l+8>>2]=N[i+8>>2];d=d+2|0;f=f+2|0;if((q|0)!=(f|0)){continue}break}}if(!(g&1)){break e}f=h+(d<<4)|0;d=m+P(d,k)|0;N[f>>2]=N[d>>2];N[f+4>>2]=N[d+4>>2];N[f+8>>2]=N[d+8>>2];}ua[J[J[c>>2]+20>>2]](c,n,8754,1497453121,J[n+8>>2]);break c;case 1:break d;default:break c}}d=J[e+4>>2];if(!d){break c}n=ua[J[J[c>>2]+16>>2]](c,32,d)|0;h=J[n+8>>2];s=j,t=ua[J[J[c>>2]+28>>2]](c,h)|0,J[s+4>>2]=t;g=J[e+4>>2];f:{if((g|0)<=0){break f}d=0;k=J[e+8>>2];m=J[e+28>>2];if((g|0)!=1){q=g&-2;f=0;while(1){l=h+(d<<5)|0;i=m+P(d,k)|0;O[l>>3]=O[i>>3];O[l+8>>3]=O[i+8>>3];O[l+16>>3]=O[i+16>>3];i=d|1;l=h+(i<<5)|0;i=m+P(i,k)|0;O[l>>3]=O[i>>3];O[l+8>>3]=O[i+8>>3];O[l+16>>3]=O[i+16>>3];d=d+2|0;f=f+2|0;if((q|0)!=(f|0)){continue}break}}if(!(g&1)){break f}f=h+(d<<5)|0;d=m+P(d,k)|0;O[f>>3]=O[d>>3];O[f+8>>3]=O[d+8>>3];O[f+16>>3]=O[d+16>>3];}ua[J[J[c>>2]+20>>2]](c,n,8993,1497453121,J[n+8>>2]);}ua[J[J[a>>2]+24>>2]](a,o);j=j+32|0;o=o+1|0;if((r|0)!=(o|0)){continue}break}}ua[J[J[c>>2]+20>>2]](c,p,8470,1497453121,J[p+8>>2]);}J[b+24>>2]=0;N[b+4>>2]=N[a+4>>2];N[b+8>>2]=N[a+8>>2];N[b+12>>2]=N[a+12>>2];N[b+16>>2]=N[a+16>>2];sa=e+32|0;return 9059}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=Q(0),j=0,k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=0,q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=0,z=0,A=0;l=sa+-64|0;sa=l;g=J[a+56>>2];J[l+60>>2]=0;J[l+8>>2]=b;J[l+4>>2]=g;J[l>>2]=18972;g=sa-16|0;sa=g;f=J[a+60>>2];a:{if(K[f+60|0]){v=N[f+40>>2];s=N[f+24>>2];i=N[f+8>>2];w=N[f+36>>2];t=N[f+20>>2];q=N[f+4>>2];n=N[c>>2];o=N[c+4>>2];u=N[f+28>>2];m=N[f+12>>2];k=N[c+8>>2];k=m>k?m:k;x=N[f+44>>2];k=Q(Q((k>u?u:k)-m)*x);b:{if(k<Q(4294967296)&k>=Q(0)){a=~~k>>>0;break b}a=0;}j=a&65534;I[g+14>>1]=j;o=i>o?i:o;o=Q(v*Q((o>s?s:o)-i));c:{if(o<Q(4294967296)&o>=Q(0)){a=~~o>>>0;break c}a=0;}r=a&65534;I[g+12>>1]=r;n=n<q?q:n;n=Q(Q((n>t?t:n)-q)*w);d:{if(n<Q(4294967296)&n>=Q(0)){a=~~n>>>0;break d}a=0;}y=a&65534;I[g+10>>1]=y;n=N[d>>2];o=N[d+4>>2];k=N[d+8>>2];k=m>k?m:k;m=Q(Q(x*Q((k>u?u:k)-m))+Q(1));e:{if(m<Q(4294967296)&m>=Q(0)){a=~~m>>>0;break e}a=0;}d=a|1;I[g+8>>1]=d;m=i>o?i:o;i=Q(Q(v*Q((m>s?s:m)-i))+Q(1));f:{if(i<Q(4294967296)&i>=Q(0)){a=~~i>>>0;break f}a=0;}z=a|1;I[g+6>>1]=z;i=n<q?q:n;i=Q(Q(w*Q((i>t?t:i)-q))+Q(1));g:{if(i<Q(4294967296)&i>=Q(0)){a=~~i>>>0;break g}a=0;}A=a|1;I[g+4>>1]=A;h:{switch(J[f+144>>2]){case 0:a=J[f+56>>2];if((a|0)>0){e=J[f+136>>2];while(1){p=p+1|0;i:{j:{b=J[e+12>>2];f=(b|0)<0;c=y>>>0<=L[e+6>>1]&A>>>0>=L[e>>1]&L[e+10>>1]>=j>>>0&d>>>0>=L[e+4>>1]&r>>>0<=L[e+8>>1]&z>>>0>=L[e+2>>1];k:{if(!(f|!c)){ua[J[J[l>>2]+8>>2]](l,b>>>21|0,b&2097151);break k}if(f&(c^-1)){break j}}e=e+16|0;h=h+1|0;break i}e=e-(b<<4)|0;h=h-b|0;}if((a|0)>(h|0)){continue}break}}if(J[8470]>=(p|0)){break a}J[8470]=p;break a;case 1:if(J[f+152>>2]>0){while(1){a=J[f+160>>2]+(e<<5)|0;l:{if(L[g+10>>1]>L[a+6>>1]|L[g+4>>1]<L[a>>1]|(L[g+8>>1]<L[a+4>>1]|L[g+14>>1]>L[a+10>>1])){break l}if(L[g+6>>1]<L[a+2>>1]|L[g+12>>1]>L[a+8>>1]){break l}b=J[a+16>>2];m:{if((b|0)<=0){b=0;break m}j=J[a+12>>2];d=b+j|0;h=J[f+136>>2]+(j<<4)|0;b=0;while(1){n:{o:{a=J[h+12>>2];p=(a|0)<0;c=L[g+10>>1]<=L[h+6>>1]&L[g+4>>1]>=L[h>>1]&L[g+14>>1]<=L[h+10>>1]&L[g+8>>1]>=L[h+4>>1]&L[g+12>>1]<=L[h+8>>1]&L[g+6>>1]>=L[h+2>>1];p:{if(!(p|!c)){ua[J[J[l>>2]+8>>2]](l,a>>>21|0,a&2097151);break p}if(p&(c^-1)){break o}}j=j+1|0;h=h+16|0;break n}j=j-a|0;h=h-(a<<4)|0;}b=b+1|0;if((d|0)>(j|0)){continue}break}}if(J[8470]>=(b|0)){break l}J[8470]=b;}e=e+1|0;if((e|0)<J[f+152>>2]){continue}break}}break a;case 2:break h;default:break a}}Ae(f,J[f+136>>2],l,g+10|0,g+4|0);break a}r=J[f+56>>2];if((r|0)>0){e=J[f+96>>2];while(1){a=0;q:{if(N[c>>2]>N[e+16>>2]){break q}a=0;if(N[d>>2]<N[e>>2]){break q}a=1;}b=0;b=N[d+8>>2]<N[e+8>>2]|N[c+8>>2]>N[e+24>>2]?b:a;r:{s:{t:{if(N[d+4>>2]<N[e+4>>2]|N[c+4>>2]>N[e+20>>2]){j=J[e+32>>2];a=(j|0)==-1;b=0;break t}j=J[e+32>>2];a=(j|0)==-1;if(!(b&a)){break t}ua[J[J[l>>2]+8>>2]](l,J[e+36>>2],J[e+40>>2]);r=J[f+56>>2];break s}if(a|b){break s}e=(j<<6)+e|0;h=h+j|0;break r}e=e- -64|0;h=h+1|0;}p=p+1|0;if((h|0)<(r|0)){continue}break}}if(J[8470]>=(p|0)){break a}J[8470]=p;}sa=g+16|0;sa=l- -64|0;}function gf(a){a=a|0;var b=0,c=0,d=0,e=0,f=Q(0),g=0,h=Q(0),i=0,j=0,k=0,l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0);b=sa-208|0;sa=b;a:{if(!(ua[J[J[a>>2]+20>>2]](a)|0)){break a}d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+100>>2]](d);d=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[d>>2]+8>>2]](b+80|0,d);d=ua[J[J[a>>2]+20>>2]](a)|0;b:{if(!(ua[J[J[d>>2]+56>>2]](d)&8)){break b}d=J[a+24>>2];if(!d){break b}i=ua[J[J[d>>2]+36>>2]](d)|0;if((i|0)<=0){break b}l=b+176|0;while(1){g=0;d=J[a+24>>2];j=ua[J[J[d>>2]+40>>2]](d,e)|0;k=J[j+844>>2];if((k|0)>0){while(1){d=ua[J[J[a>>2]+20>>2]](a)|0;c=j+P(g,208)|0;ua[J[J[d>>2]+40>>2]](d,c+36|0,c+68|0,N[c+84>>2],J[c+168>>2],l);g=g+1|0;if((k|0)!=(g|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}}d=ua[J[J[a>>2]+20>>2]](a)|0;if(!(ua[J[J[d>>2]+56>>2]](d)&3)|J[a+8>>2]<=0){break a}i=b+160|0;l=b+96|0;j=b+112|0;k=b+128|0;d=b+144|0;g=0;while(1){e=J[J[a+16>>2]+(g<<2)>>2];c:{if(K[e+204|0]&32){break c}d:{if(!(ua[J[J[a>>2]+20>>2]](a)|0)){break d}c=ua[J[J[a>>2]+20>>2]](a)|0;if(!(ua[J[J[c>>2]+56>>2]](c)&1)){break d}e:{f:{switch(J[e+220>>2]-1|0){case 0:c=J[b+92>>2];J[b+72>>2]=J[b+88>>2];J[b+76>>2]=c;c=J[b+84>>2];J[b+64>>2]=J[b+80>>2];J[b+68>>2]=c;break e;case 1:c=J[l+12>>2];J[b+72>>2]=J[l+8>>2];J[b+76>>2]=c;c=J[l+4>>2];J[b+64>>2]=J[l>>2];J[b+68>>2]=c;break e;case 2:c=J[j+12>>2];J[b+72>>2]=J[j+8>>2];J[b+76>>2]=c;c=J[j+4>>2];J[b+64>>2]=J[j>>2];J[b+68>>2]=c;break e;case 3:c=J[k+12>>2];J[b+72>>2]=J[k+8>>2];J[b+76>>2]=c;c=J[k+4>>2];J[b+64>>2]=J[k>>2];J[b+68>>2]=c;break e;case 4:c=J[d+12>>2];J[b+72>>2]=J[d+8>>2];J[b+76>>2]=c;c=J[d+4>>2];J[b+64>>2]=J[d>>2];J[b+68>>2]=c;break e;default:break f}}J[b+72>>2]=1050253722;J[b+76>>2]=0;J[b+64>>2]=1050253722;J[b+68>>2]=1050253722;}if(H[e+205|0]&1){c=J[e+320>>2];J[b+72>>2]=J[e+316>>2];J[b+76>>2]=c;c=J[e+312>>2];J[b+64>>2]=J[e+308>>2];J[b+68>>2]=c;}ua[J[J[a>>2]+28>>2]](a,e+4|0,J[e+192>>2],b- -64|0);}c=J[a+72>>2];if(!c){break c}if(!(ua[J[J[c>>2]+56>>2]](c)&2)){break c}c=J[i+12>>2];J[b+40>>2]=J[i+8>>2];J[b+44>>2]=c;c=J[i+4>>2];J[b+32>>2]=J[i>>2];J[b+36>>2]=c;c=J[e+192>>2];ua[J[J[c>>2]+8>>2]](c,e+4|0,b- -64|0,b+48|0);f=N[8265];N[b+64>>2]=N[b+64>>2]-f;N[b+68>>2]=N[b+68>>2]-f;N[b+72>>2]=N[b+72>>2]-f;N[b+48>>2]=f+N[b+48>>2];N[b+52>>2]=f+N[b+52>>2];N[b+56>>2]=f+N[b+56>>2];g:{if(K[e+204|0]&3|(!K[a+44|0]|J[e+252>>2]!=2)){break g}c=J[e+192>>2];ua[J[J[c>>2]+8>>2]](c,e+68|0,b+16|0,b);m=Q(N[b+16>>2]-f);N[b+16>>2]=m;n=Q(N[b+20>>2]-f);N[b+20>>2]=n;h=Q(N[b+24>>2]-f);N[b+24>>2]=h;o=Q(f+N[b>>2]);N[b>>2]=o;p=Q(f+N[b+4>>2]);N[b+4>>2]=p;f=Q(f+N[b+8>>2]);N[b+8>>2]=f;if(m<N[b+64>>2]){N[b+64>>2]=m;}if(N[b+68>>2]>n){N[b+68>>2]=n;}if(N[b+72>>2]>h){N[b+72>>2]=h;}h=N[b+28>>2];if(h<N[b+76>>2]){N[b+76>>2]=h;}if(N[b+48>>2]<o){N[b+48>>2]=o;}if(N[b+52>>2]<p){N[b+52>>2]=p;}if(f>N[b+56>>2]){N[b+56>>2]=f;}h=N[b+12>>2];if(!(h>N[b+60>>2])){break g}N[b+60>>2]=h;}c=J[a+72>>2];ua[J[J[c>>2]+60>>2]](c,b- -64|0,b+48|0,b+32|0);}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}sa=b+208|0;}function nc(a,b,c,d,e,f){var g=0,h=Q(0),i=Q(0),j=0,k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=0,t=0,u=0,v=Q(0),w=Q(0),x=0,y=Q(0),z=0,A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0);j=J[a+88>>2];r=j;a:{if((j|0)!=J[a+92>>2]){break a}t=j?j<<1:1;if((j|0)>=(t|0)){break a}if(t){J[8456]=J[8456]+1;u=ua[J[8258]](P(t,152),16)|0;g=J[a+88>>2];}else {g=j;}b:{if((g|0)<=0){break b}r=0;if((g|0)!=1){z=g&-2;while(1){s=P(r,152);Ja(s+u|0,s+J[a+96>>2]|0,152);s=P(r|1,152);Ja(s+u|0,s+J[a+96>>2]|0,152);r=r+2|0;x=x+2|0;if((x|0)!=(z|0)){continue}break}}if(!(g&1)){break b}g=P(r,152);Ja(g+u|0,g+J[a+96>>2]|0,152);}g=J[a+96>>2];if(!(g?!g|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](g);}J[a+96>>2]=u;H[a+100|0]=1;J[a+92>>2]=t;r=J[a+88>>2];}J[a+88>>2]=r+1;g=J[a+96>>2]+P(j,152)|0;J[g+140>>2]=e;J[g+16>>2]=0;J[g+20>>2]=0;J[g+48>>2]=-2147483648;J[g+52>>2]=-2147483648;J[g+24>>2]=0;J[g+28>>2]=0;J[g+56>>2]=-2147483648;J[g+60>>2]=0;j=J[a+16>>2];a=J[(j+P(d,244)|0)+240>>2];e=J[(j+P(c,244)|0)+240>>2];J[g+148>>2]=d;J[g+144>>2]=c;J[g+132>>2]=0;N[g+104>>2]=f;J[g+96>>2]=0;J[g+100>>2]=0;h=N[b>>2];i=N[b+4>>2];k=N[b+8>>2];J[g+12>>2]=0;n=Q(-k);N[g+8>>2]=n;o=Q(-i);N[g+4>>2]=o;p=Q(-h);N[g>>2]=p;h=Q(0);if(e){h=Q(Q(Q(N[e+364>>2]*n)+Q(Q(N[e+356>>2]*p)+Q(N[e+360>>2]*o)))*N[e+612>>2]);l=Q(Q(Q(N[e+348>>2]*n)+Q(Q(N[e+340>>2]*p)+Q(N[e+344>>2]*o)))*N[e+608>>2]);i=Q(Q(Q(N[e+332>>2]*n)+Q(Q(N[e+324>>2]*p)+Q(N[e+328>>2]*o)))*N[e+604>>2]);}else {i=Q(0);}N[g+64>>2]=i;J[g+76>>2]=0;N[g+72>>2]=h;N[g+68>>2]=l;h=N[b>>2];i=N[b+4>>2];k=N[b+8>>2];N[g+44>>2]=N[b+12>>2];N[g+40>>2]=k;N[g+36>>2]=i;N[g+32>>2]=h;if(a){m=Q(Q(Q(N[a+364>>2]*k)+Q(Q(N[a+356>>2]*h)+Q(i*N[a+360>>2])))*N[a+612>>2]);q=Q(Q(Q(N[a+348>>2]*k)+Q(Q(N[a+340>>2]*h)+Q(i*N[a+344>>2])))*N[a+608>>2]);l=Q(Q(Q(N[a+332>>2]*k)+Q(Q(N[a+324>>2]*h)+Q(i*N[a+328>>2])))*N[a+604>>2]);}else {l=Q(0);}N[g+80>>2]=l;J[g+92>>2]=0;N[g+88>>2]=m;N[g+84>>2]=q;q=Q(0);m=Q(0);if(e){q=Q(Q(N[e+332>>2]*n)+Q(Q(N[e+324>>2]*p)+Q(N[e+328>>2]*o)));m=Q(Q(N[e+348>>2]*n)+Q(Q(N[e+340>>2]*p)+Q(N[e+344>>2]*o)));l=Q(Q(N[e+364>>2]*n)+Q(Q(N[e+356>>2]*p)+Q(N[e+360>>2]*o)));}else {l=Q(0);}q=Q(Q(Q(l*n)+Q(Q(q*p)+Q(m*o)))+Q(0));if(a){v=Q(Q(N[a+348>>2]*k)+Q(Q(N[a+340>>2]*h)+Q(i*N[a+344>>2])));w=Q(Q(N[a+332>>2]*k)+Q(Q(N[a+324>>2]*h)+Q(N[a+328>>2]*i)));m=Q(Q(N[a+364>>2]*k)+Q(Q(N[a+356>>2]*h)+Q(i*N[a+360>>2])));}else {m=Q(0);}y=Q(Q(1)/Q(q+Q(Q(m*k)+Q(Q(w*h)+Q(v*i)))));N[g+108>>2]=y;w=Q(0);q=Q(0);m=Q(0);v=Q(0);if(e){b=j+P(c,244)|0;w=Q(N[b+176>>2]+N[b+208>>2]);A=N[b+200>>2];v=N[b+196>>2];q=Q(Q(N[b+180>>2]+N[b+212>>2])*Q(0));B=N[b+192>>2];m=Q(N[b+184>>2]+N[b+216>>2]);}l=Q(-0);if(a){a=j+P(d,244)|0;C=Q(N[a+176>>2]+N[a+208>>2]);D=Q(N[a+184>>2]+N[a+216>>2]);E=N[a+192>>2];F=N[a+200>>2];G=N[a+196>>2];l=Q(Q(N[a+180>>2]+N[a+212>>2])*Q(-0));}N[g+124>>2]=f;N[g+116>>2]=0;N[g+120>>2]=-f;N[g+112>>2]=y*Q(Q(0)-Q(Q(Q(Q(m*Q(0))+Q(Q(w*Q(0))+q))+Q(Q(n*A)+Q(Q(p*B)+Q(v*o))))+Q(Q(Q(D*Q(-0))+Q(Q(C*Q(-0))+l))+Q(Q(k*F)+Q(Q(h*E)+Q(i*G))))));}function Ga(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=J[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=J[d>>2];d=d-b|0;if(d>>>0<M[8956]){break a}a=a+b|0;c:{d:{if(J[8957]!=(d|0)){if(b>>>0<=255){e=b>>>3|0;b=J[d+12>>2];c=J[d+8>>2];if((b|0)==(c|0)){i=35808,j=J[8952]&vs(e),J[i>>2]=j;break b}J[c+12>>2]=b;J[b+8>>2]=c;break b}g=J[d+24>>2];b=J[d+12>>2];if((d|0)!=(b|0)){c=J[d+8>>2];J[c+12>>2]=b;J[b+8>>2]=c;break c}e=d+20|0;c=J[e>>2];if(!c){c=J[d+16>>2];if(!c){break d}e=d+16|0;}while(1){h=e;b=c;e=b+20|0;c=J[e>>2];if(c){continue}e=b+16|0;c=J[b+16>>2];if(c){continue}break}J[h>>2]=0;break c}b=J[f+4>>2];if((b&3)!=3){break b}J[8954]=a;J[f+4>>2]=b&-2;J[d+4>>2]=a|1;J[f>>2]=a;return}b=0;}if(!g){break b}c=J[d+28>>2];e=(c<<2)+36112|0;e:{if(J[e>>2]==(d|0)){J[e>>2]=b;if(b){break e}i=35812,j=J[8953]&vs(c),J[i>>2]=j;break b}J[g+(J[g+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}J[b+24>>2]=g;c=J[d+16>>2];if(c){J[b+16>>2]=c;J[c+24>>2]=b;}c=J[d+20>>2];if(!c){break b}J[b+20>>2]=c;J[c+24>>2]=b;}if(d>>>0>=f>>>0){break a}b=J[f+4>>2];if(!(b&1)){break a}f:{g:{h:{i:{if(!(b&2)){if(J[8958]==(f|0)){J[8958]=d;a=J[8955]+a|0;J[8955]=a;J[d+4>>2]=a|1;if(J[8957]!=(d|0)){break a}J[8954]=0;J[8957]=0;return}if(J[8957]==(f|0)){J[8957]=d;a=J[8954]+a|0;J[8954]=a;J[d+4>>2]=a|1;J[a+d>>2]=a;return}a=(b&-8)+a|0;if(b>>>0<=255){e=b>>>3|0;b=J[f+12>>2];c=J[f+8>>2];if((b|0)==(c|0)){i=35808,j=J[8952]&vs(e),J[i>>2]=j;break g}J[c+12>>2]=b;J[b+8>>2]=c;break g}g=J[f+24>>2];b=J[f+12>>2];if((f|0)!=(b|0)){c=J[f+8>>2];J[c+12>>2]=b;J[b+8>>2]=c;break h}e=f+20|0;c=J[e>>2];if(!c){c=J[f+16>>2];if(!c){break i}e=f+16|0;}while(1){h=e;b=c;e=b+20|0;c=J[e>>2];if(c){continue}e=b+16|0;c=J[b+16>>2];if(c){continue}break}J[h>>2]=0;break h}J[f+4>>2]=b&-2;J[d+4>>2]=a|1;J[a+d>>2]=a;break f}b=0;}if(!g){break g}c=J[f+28>>2];e=(c<<2)+36112|0;j:{if(J[e>>2]==(f|0)){J[e>>2]=b;if(b){break j}i=35812,j=J[8953]&vs(c),J[i>>2]=j;break g}J[g+(J[g+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}J[b+24>>2]=g;c=J[f+16>>2];if(c){J[b+16>>2]=c;J[c+24>>2]=b;}c=J[f+20>>2];if(!c){break g}J[b+20>>2]=c;J[c+24>>2]=b;}J[d+4>>2]=a|1;J[a+d>>2]=a;if(J[8957]!=(d|0)){break f}J[8954]=a;return}if(a>>>0<=255){b=(a&-8)+35848|0;c=J[8952];a=1<<(a>>>3);k:{if(!(c&a)){J[8952]=a|c;a=b;break k}a=J[b+8>>2];}J[b+8>>2]=d;J[a+12>>2]=d;J[d+12>>2]=b;J[d+8>>2]=a;return}c=31;if(a>>>0<=16777215){b=S(a>>>8|0);c=((a>>>38-b&1)-(b<<1)|0)+62|0;}J[d+28>>2]=c;J[d+16>>2]=0;J[d+20>>2]=0;b=(c<<2)+36112|0;l:{m:{e=J[8953];h=1<<c;n:{if(!(e&h)){J[8953]=e|h;J[b>>2]=d;J[d+24>>2]=b;break n}c=a<<((c|0)!=31?25-(c>>>1|0)|0:0);b=J[b>>2];while(1){e=b;if((J[b+4>>2]&-8)==(a|0)){break m}b=c>>>29|0;c=c<<1;h=e+(b&4)|0;b=J[h+16>>2];if(b){continue}break}J[h+16>>2]=d;J[d+24>>2]=e;}J[d+12>>2]=d;J[d+8>>2]=d;break l}a=J[e+8>>2];J[a+12>>2]=d;J[e+8>>2]=d;J[d+24>>2]=0;J[d+12>>2]=e;J[d+8>>2]=a;}a=J[8960]-1|0;J[8960]=a?a:-1;}}function Hh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=J[b+8>>2];a:{if((c|0)<=0){break a}d=J[b+16>>2];if((c|0)!=1){g=c&-2;while(1){i=e<<2;h=J[i+d>>2];if(!(K[h+204|0]&3)){J[h+208>>2]=f;f=f+1|0;}J[h+268>>2]=1065353216;J[h+212>>2]=-1;h=J[d+(i|4)>>2];if(!(K[h+204|0]&3)){J[h+208>>2]=f;f=f+1|0;}J[h+268>>2]=1065353216;J[h+212>>2]=-1;e=e+2|0;k=k+2|0;if((g|0)!=(k|0)){continue}break}}if(!(c&1)){break a}c=J[d+(e<<2)>>2];if(!(K[c+204|0]&3)){J[c+208>>2]=f;f=f+1|0;}J[c+268>>2]=1065353216;J[c+212>>2]=-1;}d=0;h=0;i=0;k=0;c=J[a+8>>2];b:{if((f|0)<=(c|0)){break b}if(J[a+12>>2]<(f|0)){if(f){J[8456]=J[8456]+1;h=ua[J[8258]](f<<3,16)|0;e=J[a+8>>2];}else {e=c;}c:{if((e|0)<=0){break c}if(e>>>0>=4){n=e&-4;while(1){g=d<<3;j=g+h|0;l=g+J[a+16>>2]|0;m=J[l+4>>2];J[j>>2]=J[l>>2];J[j+4>>2]=m;j=g|8;l=j+h|0;j=j+J[a+16>>2]|0;m=J[j+4>>2];J[l>>2]=J[j>>2];J[l+4>>2]=m;j=g|16;l=j+h|0;j=j+J[a+16>>2]|0;m=J[j+4>>2];J[l>>2]=J[j>>2];J[l+4>>2]=m;g=g|24;j=g+h|0;g=g+J[a+16>>2]|0;l=J[g+4>>2];J[j>>2]=J[g>>2];J[j+4>>2]=l;d=d+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}e=e&3;if(!e){break c}while(1){g=d<<3;i=g+h|0;g=g+J[a+16>>2]|0;n=J[g+4>>2];J[i>>2]=J[g>>2];J[i+4>>2]=n;d=d+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}e=J[a+16>>2];if(!(e?!e|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](e);}J[a+16>>2]=h;H[a+20|0]=1;J[a+12>>2]=f;}e=(c^-1)+f|0;h=f-c&3;if(h){d=0;while(1){k=J[a+16>>2]+(c<<3)|0;J[k>>2]=0;J[k+4>>2]=0;c=c+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}if(e>>>0<3){break b}while(1){e=c<<3;d=e+J[a+16>>2]|0;J[d>>2]=0;J[d+4>>2]=0;d=e+J[a+16>>2]|0;J[d+8>>2]=0;J[d+12>>2]=0;d=e+J[a+16>>2]|0;J[d+16>>2]=0;J[d+20>>2]=0;e=e+J[a+16>>2]|0;J[e+24>>2]=0;J[e+28>>2]=0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}J[a+8>>2]=f;d:{if((f|0)<=0){break d}e=J[a+16>>2];d=0;c=0;if(f>>>0>=4){k=f&-4;h=0;while(1){g=e+(c<<3)|0;J[g+4>>2]=1;J[g>>2]=c;g=c|1;i=e+(g<<3)|0;J[i+4>>2]=1;J[i>>2]=g;g=c|2;i=e+(g<<3)|0;J[i+4>>2]=1;J[i>>2]=g;g=c|3;i=e+(g<<3)|0;J[i+4>>2]=1;J[i>>2]=g;c=c+4|0;h=h+4|0;if((k|0)!=(h|0)){continue}break}}f=f&3;if(!f){break d}while(1){h=e+(c<<3)|0;J[h+4>>2]=1;J[h>>2]=c;c=c+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}e=0;b=J[b+68>>2];b=ua[J[J[b>>2]+36>>2]](b)|0;h=ua[J[J[b>>2]+36>>2]](b)|0;e:{if(!h){break e}k=ua[J[J[b>>2]+20>>2]](b)|0;if((h|0)<=0){break e}a=J[a+16>>2];while(1){b=k+(e<<4)|0;c=J[J[b>>2]>>2];f:{if(!c|K[c+204|0]&7){break f}b=J[J[b+4>>2]>>2];if(!b|K[b+204|0]&7){break f}b=J[b+208>>2];c=J[c+208>>2];f=a+(c<<3)|0;d=J[f>>2];if((c|0)!=(d|0)){while(1){c=a+(d<<3)|0;J[f>>2]=J[c>>2];c=J[c>>2];f=a+(c<<3)|0;d=J[f>>2];if((c|0)!=(d|0)){continue}break}}f=a+(b<<3)|0;d=J[f>>2];if((d|0)!=(b|0)){while(1){b=a+(d<<3)|0;J[f>>2]=J[b>>2];b=J[b>>2];f=a+(b<<3)|0;d=J[f>>2];if((b|0)!=(d|0)){continue}break}}if((b|0)==(c|0)){break f}c=a+(c<<3)|0;J[c>>2]=b;b=a+(b<<3)|0;J[b+4>>2]=J[b+4>>2]+J[c+4>>2];}e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function vf(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=0,w=Q(0),x=0,y=0,z=Q(0),A=0,B=0;o=sa-32|0;sa=o;if(a){p=J[h+4>>2];a:{if((p|0)>127){break a}if(J[h+8>>2]<=127){J[8456]=J[8456]+1;m=ua[J[8258]](512,16)|0;n=J[h+4>>2];b:{if((n|0)<=0){break b}if(n>>>0>=4){x=n&-4;while(1){k=j<<2;J[k+m>>2]=J[k+J[h+12>>2]>>2];v=k|4;J[v+m>>2]=J[v+J[h+12>>2]>>2];v=k|8;J[v+m>>2]=J[v+J[h+12>>2]>>2];k=k|12;J[k+m>>2]=J[k+J[h+12>>2]>>2];j=j+4|0;y=y+4|0;if((x|0)!=(y|0)){continue}break}}k=n&3;if(!k){break b}while(1){n=j<<2;J[n+m>>2]=J[n+J[h+12>>2]>>2];j=j+1|0;l=l+1|0;if((k|0)!=(l|0)){continue}break}}j=J[h+12>>2];if(!(j?!j|!K[h+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](j);}J[h+12>>2]=m;H[h+16|0]=1;J[h+8>>2]=128;}j=p;l=0-j&3;if(l){while(1){J[J[h+12>>2]+(j<<2)>>2]=0;j=j+1|0;r=r+1|0;if((l|0)!=(r|0)){continue}break}}if(p-125>>>0<3){break a}while(1){r=j<<2;J[r+J[h+12>>2]>>2]=0;J[(r+J[h+12>>2]|0)+4>>2]=0;J[(r+J[h+12>>2]|0)+8>>2]=0;J[(r+J[h+12>>2]|0)+12>>2]=0;j=j+4|0;if((j|0)!=128){continue}break}}J[h+4>>2]=128;J[J[h+12>>2]>>2]=a;l=126;r=1;while(1){a=J[h+12>>2];j=r-1|0;y=j<<2;p=J[a+y>>2];s=N[p>>2];t=N[p+4>>2];q=N[g>>2];u=N[g+4>>2];N[o+8>>2]=N[p+8>>2]-N[g+8>>2];N[o+4>>2]=t-u;N[o>>2]=s-q;s=N[p+16>>2];t=N[p+20>>2];q=N[f>>2];u=N[f+4>>2];N[o+24>>2]=N[p+24>>2]-N[f+8>>2];N[o+20>>2]=t-u;N[o+16>>2]=s-q;m=J[d>>2];u=N[b>>2];w=N[c>>2];s=Q(Q(N[(m<<4)+o>>2]-u)*w);q=N[c+4>>2];k=J[d+4>>2];z=N[b+4>>2];t=Q(q*Q(N[((1-k<<4)+o|0)+4>>2]-z));c:{d:{if(s>t){break d}q=Q(Q(N[((k<<4)+o|0)+4>>2]-z)*q);u=Q(w*Q(N[(1-m<<4)+o>>2]-u));if(q>u){break d}s=q>s?q:s;w=N[c+8>>2];m=J[d+8>>2];z=N[b+8>>2];q=Q(w*Q(N[((1-m<<4)+o|0)+8>>2]-z));if(s>q){break d}w=Q(Q(N[((m<<4)+o|0)+8>>2]-z)*w);t=t<u?t:u;if(w>t|!((s<w?w:s)<e)|!((q<t?q:t)>Q(0))){break d}if(J[p+40>>2]){if((j|0)>(l|0)){j=J[h+4>>2];m=j<<1;if((j|0)<(m|0)){if((m|0)>J[h+8>>2]){e:{if(!j){a=0;break e}J[8456]=J[8456]+1;a=ua[J[8258]](j<<3,16)|0;n=J[h+4>>2];if((n|0)<=0){break e}x=0;l=0;if(n>>>0>=4){B=n&-4;v=0;while(1){k=l<<2;J[k+a>>2]=J[k+J[h+12>>2]>>2];A=k|4;J[A+a>>2]=J[A+J[h+12>>2]>>2];A=k|8;J[A+a>>2]=J[A+J[h+12>>2]>>2];k=k|12;J[k+a>>2]=J[k+J[h+12>>2]>>2];l=l+4|0;v=v+4|0;if((B|0)!=(v|0)){continue}break}}k=n&3;if(!k){break e}while(1){n=l<<2;J[n+a>>2]=J[n+J[h+12>>2]>>2];l=l+1|0;x=x+1|0;if((k|0)!=(x|0)){continue}break}}l=J[h+12>>2];if(!(l?!l|!K[h+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](l);}J[h+12>>2]=a;H[h+16|0]=1;J[h+8>>2]=m;}a=j-1|0;l=0;k=j&3;if(k){while(1){J[J[h+12>>2]+(j<<2)>>2]=0;j=j+1|0;l=l+1|0;if((k|0)!=(l|0)){continue}break}}if(a>>>0>=3){while(1){a=j<<2;J[a+J[h+12>>2]>>2]=0;J[(a+J[h+12>>2]|0)+4>>2]=0;J[(a+J[h+12>>2]|0)+8>>2]=0;J[(a+J[h+12>>2]|0)+12>>2]=0;j=j+4|0;if((m|0)!=(j|0)){continue}break}}a=J[h+12>>2];}J[h+4>>2]=m;l=m-2|0;}J[a+y>>2]=J[p+36>>2];J[J[h+12>>2]+(r<<2)>>2]=J[p+40>>2];j=r+1|0;break c}ua[J[J[i>>2]+12>>2]](i,p);}}r=j;if(r){continue}break}}sa=o+32|0;}function Mb(){if(!K[35008]){J[8670]=1062847606;J[8671]=0;J[8668]=1042701022;J[8669]=1056964440;J[8666]=1062847606;J[8667]=0;J[8664]=-1093024784;J[8665]=1050556081;J[8662]=1062847606;J[8663]=0;J[8660]=-1093024784;J[8661]=-1096927567;J[8658]=1062847606;J[8659]=0;J[8656]=1042701022;J[8657]=-1090519208;J[8654]=1062847572;J[8655]=0;J[8652]=1057396286;J[8653]=0;J[8650]=1057396386;J[8651]=0;J[8648]=1060121912;J[8649]=1056964507;J[8646]=1057396420;J[8647]=0;J[8644]=-1098475836;J[8645]=1062148969;J[8642]=1057396386;J[8643]=0;J[8640]=-1084636143;J[8641]=0;J[8638]=1057396420;J[8639]=0;J[8636]=-1098475836;J[8637]=-1085334679;J[8634]=1057396386;J[8635]=0;J[8632]=1060121912;J[8633]=-1090519141;J[8630]=-2147483648;J[8631]=0;J[8628]=1058437413;J[8629]=1062149053;J[8626]=-2147483648;J[8627]=0;J[8624]=-2147483648;J[8625]=1065353216;J[8622]=-2147483648;J[8623]=0;J[8620]=-1089046235;J[8621]=1062149053;J[8618]=-2147483648;J[8619]=0;J[8616]=-1082951543;J[8617]=1050556148;J[8614]=-2147483648;J[8615]=0;J[8612]=-1082951543;J[8613]=-1096927500;J[8610]=0;J[8611]=0;J[8608]=-1089046235;J[8609]=-1085334595;J[8606]=0;J[8607]=0;J[8604]=0;J[8605]=-1082130432;J[8602]=0;J[8603]=0;J[8600]=1058437413;J[8601]=-1085334595;J[8598]=0;J[8599]=0;J[8596]=1064532105;J[8597]=-1096927500;J[8594]=0;J[8595]=0;J[8592]=1064532105;J[8593]=1050556148;J[8590]=-1090087228;J[8591]=0;J[8588]=1049007812;J[8589]=1062148969;J[8586]=-1090087262;J[8587]=0;J[8584]=-1087361736;J[8585]=1056964507;J[8582]=-1084636042;J[8583]=0;J[8580]=-1104782626;J[8581]=1056964440;J[8578]=-1090087262;J[8579]=0;J[8576]=-1087361736;J[8577]=-1090519141;J[8574]=-1084636076;J[8575]=0;J[8572]=-1090087362;J[8573]=-2147483648;J[8570]=-1090087262;J[8571]=0;J[8568]=1062847505;J[8569]=-2147483648;J[8566]=-1084636042;J[8567]=0;J[8564]=1054458864;J[8565]=1050556081;J[8562]=-1090087228;J[8563]=0;J[8560]=1049007812;J[8561]=-1085334679;J[8558]=-1084636042;J[8559]=0;J[8556]=-1104782626;J[8557]=-1090519208;J[8554]=-1084636042;J[8555]=0;J[8552]=1054458864;J[8553]=-1096927567;J[8550]=1065353216;J[8551]=0;J[8548]=-2147483648;J[8549]=0;J[8546]=1055193471;J[8547]=0;J[8544]=1063581978;J[8545]=0;J[8542]=1055193572;J[8543]=0;J[8540]=1049461434;J[8541]=1062847522;J[8538]=1055193572;J[8539]=0;J[8536]=-1086767520;J[8537]=1057396202;J[8534]=1055193572;J[8535]=0;J[8532]=-1086767520;J[8533]=-1090087446;J[8530]=1055193605;J[8531]=0;J[8528]=1049461434;J[8529]=-1084636126;J[8526]=-1092290076;J[8527]=0;J[8524]=1060716128;J[8525]=1057396202;J[8522]=-1092290043;J[8523]=0;J[8520]=-1098022214;J[8521]=1062847522;J[8518]=-1092290177;J[8519]=0;J[8516]=-1083901670;J[8517]=-2147483648;J[8514]=-1092290076;J[8515]=0;J[8512]=-1098022214;J[8513]=-1084636126;J[8510]=-1092290076;J[8511]=0;J[8508]=1060716128;J[8509]=-1090087446;J[8506]=-1082130432;J[8507]=0;J[8504]=0;J[8505]=-2147483648;H[35008]=1;}}function Nb(a,b,c,d,e){var f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=0,E=Q(0);f=Q(-1);l=N[a>>2];i=N[b>>2];g=Q(l-i);k=N[b+4>>2];u=N[c+4>>2];z=Q(k-u);v=N[c>>2];A=Q(i-v);q=N[a+4>>2];j=Q(q-k);m=Q(Q(g*z)-Q(A*j));h=N[b+8>>2];w=N[c+8>>2];B=Q(h-w);r=N[a+8>>2];o=Q(r-h);x=Q(Q(j*B)-Q(z*o));y=Q(Q(o*A)-Q(B*g));E=Q(Q(m*m)+Q(Q(x*x)+Q(y*y)));a:{if(!(E>Q(0))){break a}b:{if(!(Q(Q(r*Q(Q(g*y)+Q(x*Q(-j))))+Q(Q(l*Q(Q(j*m)+Q(y*Q(-o))))+Q(q*Q(Q(o*x)+Q(m*Q(-g))))))>Q(0))){j=Q(-1);g=Q(0);break b}j=Q(-1);o=Q(h-r);n=Q(i-l);p=Q(k-q);f=Q(Q(o*o)+Q(Q(n*n)+Q(p*p)));c:{if(!(f>Q(0))){g=Q(0);s=0;break c}g=Q(1);f=Q(Q(-Q(Q(r*o)+Q(Q(l*n)+Q(q*p))))/f);if(f>=Q(1)){j=Q(Q(h*h)+Q(Q(i*i)+Q(k*k)));D=2;s=2;break c}g=Q(0);if(f<=Q(0)){j=Q(Q(r*r)+Q(Q(l*l)+Q(q*q)));t=Q(1);s=1;break c}g=Q(r+Q(o*f));j=Q(g*g);g=Q(l+Q(n*f));i=Q(g*g);g=Q(q+Q(p*f));j=Q(j+Q(i+Q(g*g)));t=Q(Q(1)-f);D=2;g=f;s=3;}J[e>>2]=s&1|D;J[d+8>>2]=0;N[d+4>>2]=g;N[d>>2]=t;h=N[b+8>>2];k=N[b+4>>2];i=N[b>>2];}r=Q(w-r);q=Q(u-q);o=Q(v-l);d:{if(!(Q(Q(h*Q(Q(A*y)-Q(x*z)))+Q(Q(i*Q(Q(z*m)-Q(y*B)))+Q(k*Q(Q(B*x)-Q(m*A)))))>Q(0))){f=j;break d}D=j<Q(0);u=N[c+8>>2];l=Q(u-h);v=N[c>>2];n=Q(v-i);w=N[c+4>>2];p=Q(w-k);C=Q(Q(l*l)+Q(Q(n*n)+Q(p*p)));f=Q(-1);e:{if(!(C>Q(0))){break e}g=Q(1);f=Q(Q(-Q(Q(h*l)+Q(Q(i*n)+Q(k*p))))/C);if(f>=Q(1)){t=Q(0);s=2;f=Q(Q(u*u)+Q(Q(v*v)+Q(w*w)));break e}g=Q(0);if(f<=Q(0)){t=Q(1);s=1;f=Q(Q(h*h)+Q(Q(i*i)+Q(k*k)));break e}t=Q(Q(1)-f);s=3;g=f;h=Q(h+Q(l*f));i=Q(i+Q(n*f));f=Q(k+Q(p*f));f=Q(Q(h*h)+Q(Q(i*i)+Q(f*f)));}if(!(D|j>f)){f=j;break d}J[e>>2]=s<<1;N[d+8>>2]=g;N[d+4>>2]=t;J[d>>2]=0;}k=N[c+8>>2];h=N[c>>2];l=N[c+4>>2];f:{if(!(Q(Q(k*Q(Q(o*y)-Q(x*q)))+Q(Q(h*Q(Q(q*m)-Q(y*r)))+Q(l*Q(Q(r*x)-Q(m*o)))))>Q(0))){break f}i=Q(-1);v=N[a+8>>2];n=Q(v-k);w=N[a>>2];p=Q(w-h);C=N[a+4>>2];u=Q(C-l);j=Q(Q(n*n)+Q(Q(p*p)+Q(u*u)));g:{if(!(j>Q(0))){break g}g=Q(1);j=Q(Q(-Q(Q(k*n)+Q(Q(h*p)+Q(l*u))))/j);if(j>=Q(1)){i=Q(Q(v*v)+Q(Q(w*w)+Q(C*C)));t=Q(0);s=2;break g}g=Q(0);if(j<=Q(0)){i=Q(Q(k*k)+Q(Q(h*h)+Q(l*l)));t=Q(1);s=1;break g}g=Q(k+Q(n*j));i=Q(g*g);g=Q(h+Q(p*j));h=Q(g*g);g=Q(l+Q(u*j));i=Q(i+Q(h+Q(g*g)));t=Q(Q(1)-j);s=3;g=j;}if(!(f<Q(0)|f>i)){break f}J[e>>2]=s<<2&4|s>>>1;J[d+4>>2]=0;N[d>>2]=g;N[d+8>>2]=t;f=i;}if(!(f<Q(0))){break a}f=N[a+8>>2];g=N[a>>2];j=N[a+4>>2];J[e>>2]=7;j=Q(Q(Q(f*m)+Q(Q(g*x)+Q(y*j)))/E);f=Q(y*j);i=Q(N[b+4>>2]-f);g=Q(x*j);k=Q(N[b>>2]-g);h=Q(Q(A*i)+Q(k*Q(-z)));l=Q(h*h);j=Q(m*j);h=Q(N[b+8>>2]-j);i=Q(Q(z*h)+Q(i*Q(-B)));m=Q(i*i);i=Q(Q(B*k)+Q(h*Q(-A)));h=Q(Y(Q(l+Q(m+Q(i*i)))));i=Q(Y(E));k=Q(h/i);N[d>>2]=k;h=Q(N[c+4>>2]-f);t=Q(N[c>>2]-g);m=Q(Q(o*h)+Q(t*Q(-q)));l=Q(m*m);m=Q(N[c+8>>2]-j);h=Q(Q(q*m)+Q(h*Q(-r)));n=Q(h*h);h=Q(Q(r*t)+Q(m*Q(-o)));i=Q(Q(Y(Q(l+Q(n+Q(h*h)))))/i);N[d+4>>2]=i;N[d+8>>2]=Q(1)-Q(k+i);f=Q(Q(j*j)+Q(Q(g*g)+Q(f*f)));}return f}function xm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),L=Q(0),M=Q(0),O=Q(0),P=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=Q(0),W=Q(0),X=Q(0),Y=Q(0),Z=Q(0),_=Q(0),$=Q(0),aa=Q(0),ba=Q(0),ca=Q(0),da=Q(0),ea=Q(0),fa=Q(0),ga=Q(0),ha=Q(0),ia=Q(0),ja=Q(0);d=sa-240|0;sa=d;U=Q(1);e=K[a+76|0];a=e?c:b;k=N[a+60>>2];g=Q(N[a+124>>2]-k);f=Q(g*g);i=N[a+116>>2];u=N[a+52>>2];g=Q(i-u);j=Q(g*g);w=N[a+56>>2];g=Q(N[a+120>>2]-w);f=Q(f+Q(j+Q(g*g)));g=N[a+276>>2];a:{if(f<Q(g*g)){break a}b=e?b:c;c=J[b+192>>2];if(J[c+4>>2]-21>>>0>8){break a}h=N[b+12>>2];v=Q(-N[b+52>>2]);f=N[b+28>>2];j=N[b+56>>2];l=N[b+44>>2];m=N[b+60>>2];V=Q(Q(Q(h*v)-Q(f*j))-Q(l*m));n=N[a+124>>2];x=N[a+120>>2];X=Q(Q(n*l)+Q(Q(i*h)+Q(f*x)));o=N[b+8>>2];p=N[b+24>>2];q=N[b+40>>2];W=Q(Q(Q(o*v)-Q(p*j))-Q(q*m));g=Q(W+Q(Q(n*q)+Q(Q(i*o)+Q(p*x))));r=N[b+36>>2];y=N[a+92>>2];Y=Q(f*y);z=N[a+76>>2];Z=Q(z*h);A=N[a+108>>2];B=N[a+88>>2];_=Q(f*B);C=N[a+72>>2];$=Q(C*h);D=N[a+104>>2];E=N[a+84>>2];aa=Q(f*E);F=N[a+68>>2];ba=Q(F*h);G=N[a+100>>2];s=N[b+4>>2];ca=Q(z*s);t=N[b+20>>2];da=Q(t*y);H=N[a+28>>2];ea=Q(f*H);I=N[a+12>>2];fa=Q(I*h);L=N[a+44>>2];M=N[a+24>>2];ga=Q(f*M);O=N[a+8>>2];ha=Q(O*h);P=N[a+40>>2];R=N[a+20>>2];ia=Q(f*R);S=N[a+4>>2];ja=Q(S*h);T=N[a+36>>2];J[d+236>>2]=0;j=Q(Q(Q(s*v)-Q(t*j))-Q(r*m));m=Q(j+Q(Q(k*r)+Q(Q(u*s)+Q(t*w))));v=m;i=Q(j+Q(Q(n*r)+Q(Q(i*s)+Q(t*x))));if(i<m){N[d+224>>2]=i;v=i;}n=Q(W+Q(Q(k*q)+Q(Q(u*o)+Q(p*w))));j=n;if(g<n){N[d+228>>2]=g;j=g;}k=Q(V+Q(Q(k*l)+Q(Q(u*h)+Q(f*w))));f=k;h=Q(V+X);if(f>h){N[d+232>>2]=h;f=h;}J[d+220>>2]=0;u=f;f=N[a+272>>2];N[d+232>>2]=u-f;N[d+228>>2]=j-f;N[d+224>>2]=v-f;N[d+216>>2]=f+(h>k?h:k);N[d+212>>2]=f+(g>n?g:n);N[d+208>>2]=f+(i>m?i:m);J[d+132>>2]=0;N[d+128>>2]=h;N[d+124>>2]=g;N[d+120>>2]=i;J[d+116>>2]=0;N[d+112>>2]=Q(A*l)+Q(Z+Y);N[d+108>>2]=Q(D*l)+Q($+_);N[d+104>>2]=Q(G*l)+Q(ba+aa);J[d+100>>2]=0;N[d+96>>2]=Q(A*q)+Q(Q(z*o)+Q(p*y));N[d+92>>2]=Q(D*q)+Q(Q(C*o)+Q(p*B));N[d+88>>2]=Q(G*q)+Q(Q(F*o)+Q(p*E));J[d+84>>2]=0;N[d+80>>2]=Q(A*r)+Q(ca+da);N[d+76>>2]=Q(D*r)+Q(Q(C*s)+Q(t*B));J[d+68>>2]=0;N[d- -64>>2]=k;N[d+60>>2]=n;N[d+56>>2]=m;J[d+52>>2]=0;N[d+48>>2]=Q(L*l)+Q(fa+ea);N[d+44>>2]=Q(P*l)+Q(ha+ga);N[d+40>>2]=Q(T*l)+Q(ja+ia);J[d+36>>2]=0;N[d+32>>2]=Q(L*q)+Q(Q(I*o)+Q(p*H));N[d+28>>2]=Q(P*q)+Q(Q(O*o)+Q(p*M));N[d+24>>2]=Q(T*q)+Q(Q(S*o)+Q(p*R));J[d+20>>2]=0;N[d+16>>2]=Q(L*r)+Q(Q(I*s)+Q(t*H));N[d+12>>2]=Q(P*r)+Q(Q(O*s)+Q(t*M));N[d+200>>2]=f;N[d+72>>2]=Q(G*r)+Q(Q(F*s)+Q(t*E));N[d+8>>2]=Q(T*r)+Q(Q(S*s)+Q(t*R));J[d+4>>2]=16e3;N[d+204>>2]=N[a+268>>2];ua[J[J[c>>2]+64>>2]](c,d+4|0,d+224|0,d+208|0);g=N[d+204>>2];if(!(g<N[a+268>>2])){break a}N[a+268>>2]=g;U=g;}sa=d+240|0;return Q(U)}function Zb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if(!(!b|!c)){if(!(J[a+24>>2]>127|J[a+28>>2]>127)){J[8456]=J[8456]+1;l=ua[J[8258]](1024,16)|0;g=J[a+24>>2];a:{if((g|0)<=0){break a}if(g>>>0>=4){p=g&-4;while(1){f=n<<3;i=f+l|0;h=f+J[a+32>>2]|0;m=J[h+4>>2];J[i>>2]=J[h>>2];J[i+4>>2]=m;i=f|8;h=i+l|0;i=i+J[a+32>>2]|0;m=J[i+4>>2];J[h>>2]=J[i>>2];J[h+4>>2]=m;i=f|16;h=i+l|0;i=i+J[a+32>>2]|0;m=J[i+4>>2];J[h>>2]=J[i>>2];J[h+4>>2]=m;f=f|24;i=f+l|0;f=f+J[a+32>>2]|0;h=J[f+4>>2];J[i>>2]=J[f>>2];J[i+4>>2]=h;n=n+4|0;e=e+4|0;if((p|0)!=(e|0)){continue}break}}e=g&3;if(!e){break a}while(1){f=n<<3;g=f+l|0;f=f+J[a+32>>2]|0;p=J[f+4>>2];J[g>>2]=J[f>>2];J[g+4>>2]=p;n=n+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}e=J[a+32>>2];if(!(e?!e|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](e);}J[a+32>>2]=l;H[a+36|0]=1;J[a+28>>2]=128;}J[a+24>>2]=128;e=J[a+32>>2];J[e+4>>2]=c;J[e>>2]=b;b=124;e=1;while(1){j=J[a+32>>2];l=e;e=e-1|0;i=e<<3;c=j+i|0;g=J[c+4>>2];f=J[c>>2];if((b|0)<(e|0)){b=J[a+24>>2];p=b<<1;if(!((p|0)<=J[a+28>>2]|(b|0)>=(p|0))){b:{if(!b){j=0;break b}J[8456]=J[8456]+1;j=ua[J[8258]](b<<4,16)|0;m=J[a+24>>2];if((m|0)<=0){break b}b=0;n=0;if(m>>>0>=4){r=m&-4;c=0;while(1){h=n<<3;k=h+j|0;o=h+J[a+32>>2]|0;q=J[o+4>>2];J[k>>2]=J[o>>2];J[k+4>>2]=q;k=h|8;o=k+j|0;k=k+J[a+32>>2]|0;q=J[k+4>>2];J[o>>2]=J[k>>2];J[o+4>>2]=q;k=h|16;o=k+j|0;k=k+J[a+32>>2]|0;q=J[k+4>>2];J[o>>2]=J[k>>2];J[o+4>>2]=q;h=h|24;k=h+j|0;h=h+J[a+32>>2]|0;o=J[h+4>>2];J[k>>2]=J[h>>2];J[k+4>>2]=o;n=n+4|0;c=c+4|0;if((r|0)!=(c|0)){continue}break}}c=m&3;if(!c){break b}while(1){h=n<<3;m=h+j|0;h=h+J[a+32>>2]|0;r=J[h+4>>2];J[m>>2]=J[h>>2];J[m+4>>2]=r;n=n+1|0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=j;H[a+36|0]=1;J[a+28>>2]=p;}J[a+24>>2]=p;b=p-4|0;}c:{if((f|0)==(g|0)){if(!J[f+40>>2]){break c}c=j+i|0;e=J[f+36>>2];J[c+4>>2]=e;J[c>>2]=e;c=l<<3;e=c+J[a+32>>2]|0;g=J[f+40>>2];J[e+4>>2]=g;J[e>>2]=g;e=J[f+40>>2];c=c+J[a+32>>2]|0;J[c+8>>2]=J[f+36>>2];J[c+12>>2]=e;e=l+2|0;break c}if(!(N[f>>2]<=N[g+16>>2])|!(N[f+16>>2]>=N[g>>2])|(!(N[f+4>>2]<=N[g+20>>2])|!(N[f+20>>2]>=N[g+4>>2]))){break c}if(!(N[f+8>>2]<=N[g+24>>2])|!(N[f+24>>2]>=N[g+8>>2])){break c}c=J[g+40>>2];if(J[f+40>>2]){e=J[f+36>>2];if(c){c=j+i|0;J[c+4>>2]=J[g+36>>2];J[c>>2]=e;e=J[f+40>>2];c=l<<3;j=c+J[a+32>>2]|0;J[j+4>>2]=J[g+36>>2];J[j>>2]=e;e=J[f+36>>2];j=c+J[a+32>>2]|0;J[j+12>>2]=J[g+40>>2];J[j+8>>2]=e;e=J[f+40>>2];c=c+J[a+32>>2]|0;J[c+20>>2]=J[g+40>>2];J[c+16>>2]=e;e=l+3|0;break c}c=j+i|0;J[c+4>>2]=g;J[c>>2]=e;c=J[f+40>>2];e=J[a+32>>2]+(l<<3)|0;J[e+4>>2]=g;J[e>>2]=c;e=l+1|0;break c}if(c){c=j+i|0;J[c+4>>2]=J[g+36>>2];J[c>>2]=f;c=J[a+32>>2]+(l<<3)|0;J[c+4>>2]=J[g+40>>2];J[c>>2]=f;e=l+1|0;break c}ua[J[J[d>>2]+8>>2]](d,f,g);}if(e){continue}break}}}function yo(a,b,c,d,e,f){a=a|0;b=Q(b);c=Q(c);d=d|0;e=e|0;f=f|0;var g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=0,B=Q(0),C=Q(0),D=Q(0),E=0,F=0,G=0,H=0;g=sa-128|0;sa=g;B=N[e+56>>2];C=N[e+52>>2];D=N[e+48>>2];J[g+120>>2]=0;J[g+124>>2]=0;J[g+112>>2]=0;J[g+116>>2]=0;h=d<<2;N[h+(g+112|0)>>2]=c;J[g+104>>2]=0;J[g+108>>2]=0;J[g+96>>2]=0;J[g+100>>2]=0;z=g+96|0;N[h+z>>2]=-c;J[g+88>>2]=0;J[g+92>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;A=h;h=g+80|0;N[A+h>>2]=c;E=(d+2|0)%3<<2;F=E+h|0;E=z+E|0;A=h;z=(d+1|0)%3|0;h=z<<2;G=A+h|0;H=h+(g+96|0)|0;h=0;while(1){c=Q(Q(h|0)*Q(.01745329238474369));l=Q(Na(c)*b);N[H>>2]=l;N[G>>2]=l;c=Q(Ma(c)*b);N[E>>2]=c;N[F>>2]=c;c=N[e+8>>2];l=N[e>>2];p=N[e+4>>2];q=N[e+24>>2];r=N[e+16>>2];s=N[e+20>>2];i=N[e+40>>2];j=N[e+32>>2];k=N[e+36>>2];J[g+76>>2]=0;m=N[g+104>>2];n=N[g+96>>2];o=N[g+100>>2];N[g+72>>2]=B+Q(Q(i*m)+Q(Q(j*n)+Q(k*o)));N[g+68>>2]=C+Q(Q(q*m)+Q(Q(r*n)+Q(o*s)));N[g+64>>2]=D+Q(Q(c*m)+Q(Q(l*n)+Q(p*o)));J[g+60>>2]=0;t=i;i=N[g+88>>2];u=j;j=N[g+80>>2];v=k;k=N[g+84>>2];N[g+56>>2]=B+Q(Q(t*i)+Q(Q(u*j)+Q(v*k)));N[g+52>>2]=C+Q(Q(q*i)+Q(Q(r*j)+Q(s*k)));N[g+48>>2]=D+Q(Q(c*i)+Q(Q(l*j)+Q(p*k)));ua[J[J[a>>2]+16>>2]](a,g- -64|0,g+48|0,f);A=h>>>0<330;h=h+30|0;if(A){continue}break}J[g+72>>2]=0;J[g+76>>2]=0;J[g+64>>2]=0;J[g+68>>2]=0;J[(g- -64|0)+(d<<2)>>2]=1065353216;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;J[(g+48|0)+(z<<2)>>2]=1065353216;m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];w=N[e+24>>2];x=N[e+16>>2];y=N[e+20>>2];i=N[e+40>>2];j=N[e+32>>2];k=N[e+36>>2];J[g+44>>2]=0;c=N[g+120>>2];l=N[g+112>>2];p=N[g+116>>2];N[g+40>>2]=B-Q(Q(i*c)+Q(Q(j*l)+Q(k*p)));N[g+36>>2]=C-Q(Q(w*c)+Q(Q(x*l)+Q(p*y)));N[g+32>>2]=D-Q(Q(m*c)+Q(Q(n*l)+Q(o*p)));J[g+28>>2]=0;q=N[g+72>>2];r=N[g+64>>2];s=N[g+68>>2];N[g+24>>2]=Q(i*q)+Q(Q(j*r)+Q(k*s));N[g+20>>2]=Q(w*q)+Q(Q(x*r)+Q(y*s));N[g+16>>2]=Q(m*q)+Q(Q(n*r)+Q(o*s));J[g+12>>2]=0;t=i;i=N[g+56>>2];u=j;j=N[g+48>>2];v=k;k=N[g+52>>2];N[g+8>>2]=Q(t*i)+Q(Q(u*j)+Q(v*k));N[g+4>>2]=Q(w*i)+Q(Q(x*j)+Q(y*k));N[g>>2]=Q(m*i)+Q(Q(n*j)+Q(o*k));d=g+32|0;h=g+16|0;ua[J[J[a>>2]+68>>2]](a,d,h,g,b,b,Q(0),Q(6.2831854820251465),f,0,Q(10));m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];w=N[e+24>>2];x=N[e+16>>2];y=N[e+20>>2];t=N[e+40>>2];u=N[e+32>>2];v=N[e+36>>2];J[g+44>>2]=0;N[g+40>>2]=B+Q(Q(t*c)+Q(Q(u*l)+Q(p*v)));N[g+36>>2]=C+Q(Q(w*c)+Q(Q(x*l)+Q(p*y)));N[g+32>>2]=D+Q(Q(m*c)+Q(Q(n*l)+Q(p*o)));J[g+28>>2]=0;N[g+24>>2]=Q(t*q)+Q(Q(u*r)+Q(s*v));N[g+20>>2]=Q(w*q)+Q(Q(x*r)+Q(s*y));N[g+16>>2]=Q(m*q)+Q(Q(n*r)+Q(s*o));J[g+12>>2]=0;N[g+8>>2]=Q(t*i)+Q(Q(u*j)+Q(k*v));N[g+4>>2]=Q(w*i)+Q(Q(x*j)+Q(k*y));N[g>>2]=Q(m*i)+Q(Q(n*j)+Q(k*o));ua[J[J[a>>2]+68>>2]](a,d,h,g,b,b,Q(0),Q(6.2831854820251465),f,0,Q(10));sa=g+128|0;}function ye(a,b,c,d,e,f,g){var h=Q(0),i=Q(0),j=0,k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=0,v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,M=0,O=0,P=0,R=0,S=0,T=0,U=0;k=sa-32|0;sa=k;x=N[c+4>>2];y=N[d+4>>2];z=N[c>>2];A=N[d>>2];n=N[a+28>>2];p=N[a+12>>2];v=N[d+8>>2];w=N[c+8>>2];h=Q((v<w?v:w)+N[e+8>>2]);h=h<p?p:h;l=N[a+44>>2];h=Q(Q((h>n?n:h)-p)*l);a:{if(h<Q(4294967296)&h>=Q(0)){C=~~h>>>0;break a}C=0;}o=N[a+24>>2];q=N[a+8>>2];h=Q((x>y?y:x)+N[e+4>>2]);h=h<q?q:h;t=N[a+40>>2];h=Q(Q((h>o?o:h)-q)*t);b:{if(h<Q(4294967296)&h>=Q(0)){B=~~h>>>0;break b}B=0;}m=N[a+20>>2];r=N[a+4>>2];h=Q((z>A?A:z)+N[e>>2]);h=h<r?r:h;i=N[a+36>>2];h=Q(Q((h>m?m:h)-r)*i);c:{if(h<Q(4294967296)&h>=Q(0)){u=~~h>>>0;break c}u=0;}h=Q((v>w?v:w)+N[f+8>>2]);h=h<p?p:h;h=Q(Q(Q((h>n?n:h)-p)*l)+Q(1));d:{if(h<Q(4294967296)&h>=Q(0)){s=~~h>>>0;break d}s=0;}h=Q((x<y?y:x)+N[f+4>>2]);h=h<q?q:h;h=Q(Q(Q((h>o?o:h)-q)*t)+Q(1));e:{if(h<Q(4294967296)&h>=Q(0)){j=~~h>>>0;break e}j=0;}h=Q((z<A?A:z)+N[f>>2]);h=h<r?r:h;h=Q(Q(Q((h>m?m:h)-r)*i)+Q(1));f:{if(h<Q(4294967296)&h>=Q(0)){d=~~h>>>0;break f}d=0;}if((g|0)>0){i=Q(v-w);m=Q(A-z);t=Q(y-x);h=Q(Q(1)/Q(Y(Q(Q(i*i)+Q(Q(m*m)+Q(t*t))))));l=Q(i*h);n=Q(l*i);i=Q(m*h);h=Q(t*h);t=Q(n+Q(Q(i*m)+Q(t*h)));G=C&65534;H=B&65534;I=u&65534;K=s|1;M=j|1;O=d|1;d=J[a+136>>2];p=l==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/l);s=p<Q(0);P=(s<<4)+k|8;q=h==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/h);j=q<Q(0);R=(j<<4)+k|4;S=(!s<<4)+k|8;T=(!j<<4)+k|4;r=i==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/i);j=r<Q(0);U=(j<<4)+k|0;C=(!j<<4)+k|0;while(1){F=J[d+12>>2];u=0;g:{h:{i:{j:{if(L[d+6>>1]<I>>>0){break j}B=L[d>>1];if(O>>>0<B>>>0|L[d+10>>1]<G>>>0){break j}s=L[d+4>>1];if(L[d+8>>1]<H>>>0|s>>>0>K>>>0){break j}j=L[d+2>>1];if(j>>>0>M>>>0){break j}v=N[a+4>>2];w=N[a+36>>2];n=N[a+8>>2];o=N[a+40>>2];m=N[a+12>>2];l=N[a+44>>2];J[k+12>>2]=0;i=Q(m+Q(Q(s>>>0)/l));N[k+8>>2]=i;h=Q(n+Q(Q(j>>>0)/o));N[k+4>>2]=h;u=L[d+10>>1];s=L[d+8>>1];j=L[d+6>>1];J[k+28>>2]=0;N[k>>2]=Q(v+Q(Q(B>>>0)/w))-N[f>>2];N[k+4>>2]=h-N[f+4>>2];N[k+8>>2]=i-N[f+8>>2];N[k+16>>2]=Q(v+Q(Q(j>>>0)/w))-N[e>>2];N[k+20>>2]=Q(n+Q(Q(s>>>0)/o))-N[e+4>>2];N[k+24>>2]=Q(m+Q(Q(u>>>0)/l))-N[e+8>>2];k:{i=N[c>>2];l=Q(r*Q(N[U>>2]-i));h=N[c+4>>2];n=Q(q*Q(N[T>>2]-h));if(l>n){break k}h=Q(q*Q(N[R>>2]-h));o=Q(r*Q(N[C>>2]-i));if(h>o){break k}m=h>l?h:l;h=N[c+8>>2];l=Q(p*Q(N[S>>2]-h));if(m>l){break k}i=Q(p*Q(N[P>>2]-h));h=n<o?n:o;if(i>h){break k}u=t>(i>m?i:m)&(h>l?l:h)>Q(0);if(!u|(F|0)<0){break j}j=J[d+12>>2];ua[J[J[b>>2]+8>>2]](b,j>>21,j&2097151);break i}u=0;}if((F|0)>=0){break i}if(!u){break h}}D=D+1|0;d=d+16|0;break g}j=J[d+12>>2];D=D-j|0;d=d-(j<<4)|0;}E=E+1|0;if((g|0)>(D|0)){continue}break}}if(J[8470]<(E|0)){J[8470]=E;}sa=k+32|0;}function Yd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=Q(0),p=Q(0),q=0,r=Q(0),s=Q(0),t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0);g=sa-304|0;sa=g;h=N[b+52>>2];k=N[c+52>>2];l=N[b+56>>2];i=N[c+56>>2];m=N[b+48>>2];j=N[c+48>>2];J[g+300>>2]=0;p=Q(i-l);N[g+296>>2]=p;o=Q(k-h);N[g+292>>2]=o;u=Q(j-m);N[g+288>>2]=u;t=c;c=g+116|0;n=g+52|0;Vb(b,t,c,n);J[g+284>>2]=0;h=N[g+52>>2];k=Q(h*N[g+124>>2]);N[g+280>>2]=k;l=Q(h*N[g+120>>2]);N[g+276>>2]=l;h=Q(h*N[g+116>>2]);N[g+272>>2]=h;i=N[d+52>>2];m=N[e+52>>2];j=N[d+56>>2];r=N[e+56>>2];s=N[d+48>>2];x=N[e+48>>2];J[g+268>>2]=0;v=Q(r-j);N[g+264>>2]=v;w=Q(m-i);N[g+260>>2]=w;s=Q(x-s);N[g+256>>2]=s;Vb(d,e,c,n);J[g+252>>2]=0;i=N[g+52>>2];m=Q(i*N[g+124>>2]);N[g+248>>2]=m;j=Q(i*N[g+120>>2]);N[g+244>>2]=j;i=Q(i*N[g+116>>2]);N[g+240>>2]=i;c=J[a+12>>2];k=Q(Q(Y(Q(Q(k*k)+Q(Q(h*h)+Q(l*l)))))*Q(ua[J[J[c>>2]+16>>2]](c)));c=J[a+16>>2];if(c){h=Q(ua[J[J[c>>2]+16>>2]](c));}else {h=Q(0);}r=Q(k+Q(h*Q(Y(Q(Q(m*m)+Q(Q(i*i)+Q(j*j)))))));l=Q(v-p);i=Q(s-u);m=Q(w-o);a:{if(Q(r+Q(Y(Q(Q(l*l)+Q(Q(i*i)+Q(m*m))))))==Q(0)){break a}H[g+220|0]=0;J[g+216>>2]=1566444395;J[g+180>>2]=22516;Zd(a,b,d,g+180|0);c=J[g+212>>2];J[g+232>>2]=J[g+208>>2];J[g+236>>2]=c;c=J[g+204>>2];J[g+224>>2]=J[g+200>>2];J[g+228>>2]=c;if(!K[g+220|0]){break a}k=N[g+192>>2];j=N[g+184>>2];p=N[g+188>>2];if(Q(r+Q(Q(l*k)+Q(Q(i*j)+Q(m*p))))<=Q(1.1920928955078125e-7)){break a}b:{o=Q(N[g+216>>2]+N[f+172>>2]);c:{if(!(o>Q(.0010000000474974513))){h=Q(0);l=N[g+196>>2];break c}e=g+28|0;t=g+164|0;c=0;h=Q(0);while(1){q=J[f+168>>2];if(q){J[g+124>>2]=1065353216;J[g+128>>2]=0;J[g+116>>2]=1065353216;J[g+120>>2]=1065353216;ua[J[J[q>>2]+28>>2]](q,g+224|0,Q(.20000000298023224),g+116|0);}q=0;j=Q(r+Q(Q(l*k)+Q(Q(i*j)+Q(m*p))));if(j<=Q(1.1920928955078125e-7)){break a}k=h;h=Q(h+Q(o/j));if(k>=h|h>Q(1)|h<Q(0)){break a}kb(b,g+288|0,g+272|0,h,g+116|0);kb(d,g+256|0,g+240|0,h,g+52|0);n=J[f+168>>2];if(n){J[g+16>>2]=0;J[g+20>>2]=0;J[g+8>>2]=1065353216;J[g+12>>2]=0;ua[J[J[n>>2]+28>>2]](n,t,Q(.20000000298023224),g+8|0);}ua[J[J[f>>2]>>2]](f,h);H[g+48|0]=0;J[g+44>>2]=1566444395;J[g+8>>2]=22516;Zd(a,g+116|0,g+52|0,g+8|0);if(!K[g+48|0]){break b}o=N[f+172>>2];n=J[e+12>>2];J[g+232>>2]=J[e+8>>2];J[g+236>>2]=n;n=J[e+4>>2];J[g+224>>2]=J[e>>2];J[g+228>>2]=n;if((c|0)==64){ua[J[J[f>>2]+8>>2]](f,-2,65);break a}c=c+1|0;j=N[g+12>>2];p=N[g+16>>2];k=N[g+20>>2];o=Q(N[g+44>>2]+o);if(o>Q(.0010000000474974513)){continue}break}l=N[g+24>>2];}N[f+132>>2]=j;N[f+164>>2]=h;N[f+144>>2]=l;N[f+140>>2]=k;N[f+136>>2]=p;a=J[g+228>>2];J[f+148>>2]=J[g+224>>2];J[f+152>>2]=a;a=J[g+236>>2];J[f+156>>2]=J[g+232>>2];J[f+160>>2]=a;q=1;break a}ua[J[J[f>>2]+8>>2]](f,-1,c);}sa=g+304|0;return q|0}function vc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=0,t=Q(0),u=Q(0),v=Q(0);g=sa-272|0;sa=g;Kb(J[a+4>>2]);j=N[b+52>>2];i=N[c+52>>2];n=N[d+52>>2];k=N[e+52>>2];l=N[b+56>>2];m=N[c+56>>2];o=N[d+56>>2];p=N[e+56>>2];q=N[b+48>>2];t=N[c+48>>2];u=N[d+48>>2];v=N[e+48>>2];H[g+252|0]=0;J[g+248>>2]=1566444395;J[g+212>>2]=22516;r=sc(g+132|0,J[a+8>>2],J[a+12>>2],J[a+4>>2],0);J[g+128>>2]=1566444395;a=J[b+12>>2];J[g+8>>2]=J[b+8>>2];J[g+12>>2]=a;a=J[b+4>>2];J[g>>2]=J[b>>2];J[g+4>>2]=a;a=J[b+28>>2];J[g+24>>2]=J[b+24>>2];J[g+28>>2]=a;a=J[b+20>>2];J[g+16>>2]=J[b+16>>2];J[g+20>>2]=a;a=J[b+44>>2];J[g+40>>2]=J[b+40>>2];J[g+44>>2]=a;a=J[b+36>>2];J[g+32>>2]=J[b+32>>2];J[g+36>>2]=a;a=J[b+60>>2];J[g+56>>2]=J[b+56>>2];J[g+60>>2]=a;a=J[b+52>>2];J[g+48>>2]=J[b+48>>2];J[g+52>>2]=a;a=J[d+12>>2];J[g+72>>2]=J[d+8>>2];J[g+76>>2]=a;a=J[d+4>>2];J[g+64>>2]=J[d>>2];J[g+68>>2]=a;a=J[d+20>>2];J[g+80>>2]=J[d+16>>2];J[g+84>>2]=a;a=J[d+28>>2];J[g+88>>2]=J[d+24>>2];J[g+92>>2]=a;a=J[d+44>>2];J[g+104>>2]=J[d+40>>2];J[g+108>>2]=a;a=J[d+36>>2];J[g+96>>2]=J[d+32>>2];J[g+100>>2]=a;a=J[d+52>>2];J[g+112>>2]=J[d+48>>2];J[g+116>>2]=a;a=J[d+60>>2];J[g+120>>2]=J[d+56>>2];J[g+124>>2]=a;Za(r,g,g+212|0,0,0);a=J[g+244>>2];J[g+264>>2]=J[g+240>>2];J[g+268>>2]=a;a=J[g+236>>2];J[g+256>>2]=J[g+232>>2];J[g+260>>2]=a;h=0;a:{if(!K[g+252|0]){break a}o=Q(Q(m-l)-Q(p-o));p=Q(Q(i-j)-Q(k-n));q=Q(Q(t-q)-Q(v-u));k=N[g+224>>2];l=N[g+220>>2];m=N[g+216>>2];i=N[g+248>>2];b:{c:{if(!(i>Q(.0010000000474974513))){j=Q(0);i=N[g+228>>2];break c}s=g+232|0;a=0;n=Q(0);while(1){h=0;if((a|0)==32){break a}j=Q(n-Q(i/Q(Q(o*k)+Q(Q(q*m)+Q(p*l)))));h=0;if(n>=j){break a}h=0;if(j>Q(1)){break a}h=0;if(j<Q(0)){break a}ua[J[J[f>>2]>>2]](f,j);i=Q(Q(1)-j);N[g+48>>2]=Q(i*N[b+48>>2])+Q(j*N[c+48>>2]);N[g+52>>2]=Q(i*N[b+52>>2])+Q(j*N[c+52>>2]);N[g+56>>2]=Q(i*N[b+56>>2])+Q(j*N[c+56>>2]);N[g+112>>2]=Q(i*N[d+48>>2])+Q(j*N[e+48>>2]);N[g+116>>2]=Q(i*N[d+52>>2])+Q(j*N[e+52>>2]);N[g+120>>2]=Q(i*N[d+56>>2])+Q(j*N[e+56>>2]);Za(r,g,g+212|0,0,0);h=0;if(!K[g+252|0]){break a}i=N[g+248>>2];if(i<Q(0)){N[f+164>>2]=j;i=N[g+228>>2];k=N[g+224>>2];l=N[g+220>>2];m=N[g+216>>2];break b}a=a+1|0;h=J[g+244>>2];J[g+264>>2]=J[g+240>>2];J[g+268>>2]=h;h=J[g+236>>2];J[g+256>>2]=J[g+232>>2];J[g+260>>2]=h;k=N[g+224>>2];l=N[g+220>>2];m=N[g+216>>2];n=j;if(i>Q(.0010000000474974513)){continue}break}i=N[g+228>>2];}h=0;if(Q(-N[f+172>>2])<=Q(Q(k*o)+Q(Q(m*q)+Q(p*l)))){break a}N[f+164>>2]=j;s=g+256|0;}N[f+132>>2]=m;N[f+144>>2]=i;N[f+140>>2]=k;N[f+136>>2]=l;a=s;b=J[a+4>>2];J[f+148>>2]=J[a>>2];J[f+152>>2]=b;b=J[a+12>>2];J[f+156>>2]=J[a+8>>2];J[f+160>>2]=b;h=1;}sa=g+272|0;return h|0}function Yn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=0,p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=0,x=0;e=sa-48|0;sa=e;f=J[c+12>>2];J[e+24>>2]=J[c+8>>2];J[e+28>>2]=f;f=J[c+4>>2];J[e+16>>2]=J[c>>2];J[e+20>>2]=f;f=J[d+12>>2];J[e+40>>2]=J[d+8>>2];J[e+44>>2]=f;f=J[d+4>>2];J[e+32>>2]=J[d>>2];J[e+36>>2]=f;a:{if(J[b+60>>2]==2){_b(a+44|0,J[b+48>>2]);w=b,x=$b(a+4|0,e+16|0,b),J[w+48>>2]=x;f=1;break a}f=1;J[a+128>>2]=J[a+128>>2]+1;b:{h=J[b+48>>2];if(!(N[h>>2]<=N[e+32>>2])|!(N[h+16>>2]>=N[e+16>>2])|(!(N[h+4>>2]<=N[e+36>>2])|!(N[h+20>>2]>=N[e+20>>2]))){break b}if(!(N[h+8>>2]<=N[e+40>>2])|!(N[h+24>>2]>=N[e+24>>2])){break b}k=N[b+20>>2];p=N[b+24>>2];s=N[c>>2];t=N[c+4>>2];u=N[c+8>>2];q=N[b+16>>2];l=N[b+36>>2];m=N[b+40>>2];v=N[b+32>>2];j=N[a+100>>2];J[e+12>>2]=0;m=Q(j*Q(Q(m-p)*Q(.5)));N[e+8>>2]=m;l=Q(j*Q(Q(l-k)*Q(.5)));N[e+4>>2]=l;j=Q(j*Q(Q(v-q)*Q(.5)));N[e>>2]=j;if(Q(s-q)<Q(0)){N[e>>2]=-j;}if(Q(t-k)<Q(0)){N[e+4>>2]=-l;}if(Q(u-p)<Q(0)){N[e+8>>2]=-m;}n=a+4|0;g=e+16|0;k=N[g>>2];c:{d:{if(!(k>=N[h>>2])){j=N[g+4>>2];break d}j=N[g+4>>2];if(!(j>=N[h+4>>2])|!(N[h+8>>2]<=N[g+8>>2])|(!(N[h+16>>2]>=N[g+16>>2])|!(N[h+20>>2]>=N[g+20>>2]))){break d}f=0;if(N[h+24>>2]>=N[g+24>>2]){break c}}N[g+4>>2]=j+Q(-.05000000074505806);N[g>>2]=k+Q(-.05000000074505806);N[g+8>>2]=N[g+8>>2]+Q(-.05000000074505806);N[g+16>>2]=N[g+16>>2]+Q(.05000000074505806);N[g+20>>2]=N[g+20>>2]+Q(.05000000074505806);N[g+24>>2]=N[g+24>>2]+Q(.05000000074505806);j=N[e>>2];f=((j>Q(0))<<4)+g|0;N[f>>2]=j+N[f>>2];j=N[e+4>>2];f=(j>Q(0)?20:4)+g|0;N[f>>2]=j+N[f>>2];j=N[e+8>>2];f=(j>Q(0)?24:8)+g|0;N[f>>2]=j+N[f>>2];f=bc(n,h);e:{if(!f){f=0;break e}o=J[n+8>>2];if((o|0)>=0){if(!o){break e}while(1){i=J[f+32>>2];if(!i){break e}f=i;r=r+1|0;if((o|0)!=(r|0)){continue}break}break e}f=J[n>>2];}i=J[g+4>>2];J[h>>2]=J[g>>2];J[h+4>>2]=i;i=J[g+28>>2];J[h+24>>2]=J[g+24>>2];J[h+28>>2]=i;i=J[g+20>>2];J[h+16>>2]=J[g+16>>2];J[h+20>>2]=i;i=J[g+12>>2];J[h+8>>2]=J[g+8>>2];J[h+12>>2]=i;ac(n,f,h);f=1;}if(!f){break a}J[a+132>>2]=J[a+132>>2]+1;break a}_c(a+4|0,h,e+16|0);J[a+132>>2]=J[a+132>>2]+1;}i=J[b+52>>2];J[(i?i+56|0:((J[b+60>>2]<<2)+a|0)+84|0)>>2]=J[b+56>>2];i=J[b+56>>2];if(i){J[i+52>>2]=J[b+52>>2];}i=J[c+4>>2];J[b+16>>2]=J[c>>2];J[b+20>>2]=i;i=J[c+12>>2];J[b+24>>2]=J[c+8>>2];J[b+28>>2]=i;c=J[d+4>>2];J[b+32>>2]=J[d>>2];J[b+36>>2]=c;c=J[d+12>>2];J[b+40>>2]=J[d+8>>2];J[b+44>>2]=c;c=J[a+104>>2];J[b+60>>2]=c;J[b+52>>2]=0;c=(c<<2)+a|0;J[b+56>>2]=J[c+84>>2];d=J[c+84>>2];if(d){J[d+52>>2]=b;}J[c+84>>2]=b;f:{if(!f){break f}H[a+154|0]=1;if(K[a+153|0]){break f}J[e>>2]=12044;J[e+4>>2]=a;Zb(a+44|0,J[a+44>>2],J[b+48>>2],e);Zb(a+4|0,J[a+4>>2],J[b+48>>2],e);}sa=e+48|0;}function Nj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=0,i=0,j=0,k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=0,w=0,x=0,y=0,z=0;g=N[b+44>>2];m=N[b+40>>2];n=N[b+36>>2];k=N[b+28>>2];o=N[b+24>>2];p=N[b+20>>2];q=N[b+32>>2];r=N[b+16>>2];l=N[b+12>>2];s=N[b+8>>2];t=N[b+4>>2];u=N[b>>2];i=J[a+4>>2];b=J[i+4>>2];a:{if((b|0)!=J[i+8>>2]){break a}v=b?b<<1:1;if((v|0)<=(b|0)){break a}if(v){J[8456]=J[8456]+1;w=ua[J[8258]](v<<6,16)|0;b=J[i+4>>2];}b:{if((b|0)<=0){break b}if((b|0)!=1){z=b&-2;while(1){h=x<<6;e=h+w|0;a=J[i+12>>2]+h|0;j=J[a+4>>2];J[e>>2]=J[a>>2];J[e+4>>2]=j;j=J[a+60>>2];J[e+56>>2]=J[a+56>>2];J[e+60>>2]=j;j=J[a+52>>2];J[e+48>>2]=J[a+48>>2];J[e+52>>2]=j;j=J[a+44>>2];J[e+40>>2]=J[a+40>>2];J[e+44>>2]=j;j=J[a+36>>2];J[e+32>>2]=J[a+32>>2];J[e+36>>2]=j;j=J[a+28>>2];J[e+24>>2]=J[a+24>>2];J[e+28>>2]=j;j=J[a+20>>2];J[e+16>>2]=J[a+16>>2];J[e+20>>2]=j;j=J[a+12>>2];J[e+8>>2]=J[a+8>>2];J[e+12>>2]=j;a=h|64;e=a+w|0;a=a+J[i+12>>2]|0;h=J[a+4>>2];J[e>>2]=J[a>>2];J[e+4>>2]=h;h=J[a+12>>2];J[e+8>>2]=J[a+8>>2];J[e+12>>2]=h;h=J[a+20>>2];J[e+16>>2]=J[a+16>>2];J[e+20>>2]=h;h=J[a+28>>2];J[e+24>>2]=J[a+24>>2];J[e+28>>2]=h;h=J[a+36>>2];J[e+32>>2]=J[a+32>>2];J[e+36>>2]=h;h=J[a+44>>2];J[e+40>>2]=J[a+40>>2];J[e+44>>2]=h;h=J[a+52>>2];J[e+48>>2]=J[a+48>>2];J[e+52>>2]=h;h=J[a+60>>2];J[e+56>>2]=J[a+56>>2];J[e+60>>2]=h;x=x+2|0;y=y+2|0;if((y|0)!=(z|0)){continue}break}}if(!(b&1)){break b}a=x<<6;b=a+w|0;a=a+J[i+12>>2]|0;e=J[a+4>>2];J[b>>2]=J[a>>2];J[b+4>>2]=e;e=J[a+60>>2];J[b+56>>2]=J[a+56>>2];J[b+60>>2]=e;e=J[a+52>>2];J[b+48>>2]=J[a+48>>2];J[b+52>>2]=e;e=J[a+44>>2];J[b+40>>2]=J[a+40>>2];J[b+44>>2]=e;e=J[a+36>>2];J[b+32>>2]=J[a+32>>2];J[b+36>>2]=e;e=J[a+28>>2];J[b+24>>2]=J[a+24>>2];J[b+28>>2]=e;e=J[a+20>>2];J[b+16>>2]=J[a+16>>2];J[b+20>>2]=e;e=J[a+12>>2];J[b+8>>2]=J[a+8>>2];J[b+12>>2]=e;}a=J[i+12>>2];if(!(a?!a|!K[i+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[i+12>>2]=w;H[i+16|0]=1;J[i+8>>2]=v;b=J[i+4>>2];}a=J[i+12>>2]+(b<<6)|0;J[a+40>>2]=d;J[a+36>>2]=c;J[a+32>>2]=-1;f=l>Q(0)?l:Q(0);f=f<k?k:f;N[a+28>>2]=g>f?g:f;f=s>Q(-0xde0b6b000000000)?s:Q(-0xde0b6b000000000);f=f<o?o:f;N[a+24>>2]=f<m?m:f;f=t>Q(-0xde0b6b000000000)?t:Q(-0xde0b6b000000000);f=f<p?p:f;N[a+20>>2]=f<n?n:f;f=u>Q(-0xde0b6b000000000)?u:Q(-0xde0b6b000000000);f=f<r?r:f;N[a+16>>2]=f<q?q:f;l=l<Q(0)?l:Q(0);k=k<l?k:l;N[a+12>>2]=g<k?g:k;g=s<Q(0xde0b6b000000000)?s:Q(0xde0b6b000000000);g=g>o?o:g;N[a+8>>2]=g>m?m:g;g=t<Q(0xde0b6b000000000)?t:Q(0xde0b6b000000000);g=g>p?p:g;N[a+4>>2]=g>n?n:g;g=u<Q(0xde0b6b000000000)?u:Q(0xde0b6b000000000);g=g>r?r:g;N[a>>2]=g>q?q:g;J[i+4>>2]=J[i+4>>2]+1;}function Lc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;J[8423]=16752;b=J[a+20>>2];J[8456]=J[8456]+1;e=ua[J[8258]](4,16)|0;J[e>>2]=(b?22668:22828)+8;J[8429]=e;J[8456]=J[8456]+1;b=ua[J[8258]](20,16)|0;e=J[8429];J[b+12>>2]=0;J[b+16>>2]=3;H[b+4|0]=0;J[b+8>>2]=e;J[b>>2]=15072;J[8430]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=16868;H[b+4|0]=0;J[8431]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=16992;H[b+4|0]=0;J[8432]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17084;H[b+4|0]=0;J[8433]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17164;H[b+4|0]=0;J[8434]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17252;H[b+4|0]=0;J[8435]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17336;H[b+4|0]=0;J[8436]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17404;H[b+4|0]=0;J[8437]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17488;H[b+4|0]=0;J[8441]=b;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17488;J[8442]=b;H[b+4|0]=1;J[8456]=J[8456]+1;b=ua[J[8258]](8,16)|0;J[b>>2]=17572;H[b+4|0]=0;J[8440]=b;J[8456]=J[8456]+1;b=ua[J[8258]](16,16)|0;J[b+8>>2]=1;J[b+12>>2]=0;J[b>>2]=17648;H[b+4|0]=0;J[8444]=b;J[8456]=J[8456]+1;b=ua[J[8258]](16,16)|0;J[b+8>>2]=1;J[b+12>>2]=0;J[b>>2]=17648;J[8443]=b;H[b+4|0]=1;h=J[a+16>>2];d=J[a>>2];a:{if(d){H[33704]=0;break a}H[33704]=1;J[8456]=J[8456]+1;d=ua[J[8258]](24,16)|0;b=J[a+8>>2];J[d+20>>2]=0;J[d+4>>2]=b;J[d>>2]=868;J[8456]=J[8456]+1;b=ua[J[8258]](P(b,868),16)|0;J[d+12>>2]=b;J[d+16>>2]=b;i=J[d+4>>2];J[d+8>>2]=i;e=i-1|0;b:{if(!e){break b}f=J[d>>2];j=e&7;if(j){while(1){c=b;b=b+f|0;J[c>>2]=b;e=e-1|0;g=g+1|0;if((j|0)!=(g|0)){continue}break}}if(i-2>>>0<7){break b}while(1){c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;c=b;b=b+f|0;J[c>>2]=b;e=e-8|0;if(e){continue}break}}J[b>>2]=0;}J[8425]=d;b=J[a+4>>2];if(b){H[33712]=0;J[8427]=b;return}H[33712]=1;J[8456]=J[8456]+1;d=ua[J[8258]](24,16)|0;a=J[a+12>>2];g=0;J[d+20>>2]=0;J[d+4>>2]=a;b=(h|0)<=72?72:h;b=((b>>>0<=116?116:b)&2147483632)+16|0;J[d>>2]=b;J[8456]=J[8456]+1;b=ua[J[8258]](P(a,b),16)|0;J[d+12>>2]=b;J[d+16>>2]=b;f=J[d+4>>2];J[d+8>>2]=f;e=f-1|0;c:{if(!e){break c}a=J[d>>2];h=e&7;if(h){while(1){c=b;b=a+b|0;J[c>>2]=b;e=e-1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}if(f-2>>>0<7){break c}while(1){c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;c=b;b=a+b|0;J[c>>2]=b;e=e-8|0;if(e){continue}break}}J[b>>2]=0;J[8427]=d;}function Xk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=Q(0),r=Q(0),s=Q(0);l=sa-32|0;sa=l;J[a+60>>2]=J[a+60>>2]+1;d=J[a+4>>2];ua[J[J[d>>2]+16>>2]](d,l+28|0,l+24|0,l+20|0,l+16|0,l+12|0,l+8|0,l+4|0,l,b);e=J[a+4>>2];j=J[l+12>>2]+P(J[l+8>>2],c)|0;m=J[l+16>>2];d=J[l+28>>2];f=J[l>>2];a:{if(!J[l+20>>2]){b:{c:{switch(f-2|0){case 0:k=J[j+8>>2];break b;case 1:k=L[j+4>>1];break b;default:break c}}k=K[j+2|0];}k=P(k,m)+d|0;g=N[k>>2];h=N[k+4>>2];i=N[k+8>>2];q=N[e+4>>2];r=N[e+8>>2];s=N[e+12>>2];J[a+56>>2]=0;N[a+52>>2]=i*s;N[a+48>>2]=h*r;N[a+44>>2]=g*q;d:{e:{switch(f-2|0){case 0:k=J[j+4>>2];break d;case 1:k=L[j+2>>1];break d;default:break e}}k=K[j+1|0];}k=P(k,m)+d|0;g=N[k>>2];h=N[k+4>>2];i=N[k+8>>2];q=N[e+4>>2];r=N[e+8>>2];s=N[e+12>>2];J[a+40>>2]=0;N[a+36>>2]=i*s;N[a+32>>2]=h*r;N[a+28>>2]=g*q;f:{g:{switch(f-2|0){case 0:f=J[j>>2];break f;case 1:f=L[j>>1];break f;default:break g}}f=K[j|0];}d=P(f,m)+d|0;k=d+8|0;g=Q(N[d+4>>2]*N[e+8>>2]);i=Q(N[d>>2]*N[e+4>>2]);h=N[e+12>>2];break a}k=e+12|0;h:{switch(f-2|0){case 0:f=P(J[j+8>>2],m)+d|0;n=O[f>>3];o=O[f+8>>3];p=O[f+16>>3];g=N[e+4>>2];h=N[e+8>>2];i=N[e+12>>2];J[a+56>>2]=0;N[a+52>>2]=i*Q(p);N[a+48>>2]=h*Q(o);N[a+44>>2]=g*Q(n);f=P(J[j+4>>2],m)+d|0;n=O[f>>3];o=O[f+8>>3];p=O[f+16>>3];g=N[e+4>>2];h=N[e+8>>2];i=N[e+12>>2];J[a+40>>2]=0;N[a+36>>2]=i*Q(p);N[a+32>>2]=h*Q(o);N[a+28>>2]=g*Q(n);d=P(J[j>>2],m)+d|0;g=Q(N[e+8>>2]*Q(O[d+8>>3]));i=Q(N[e+4>>2]*Q(O[d>>3]));h=Q(O[d+16>>3]);break a;case 1:f=P(L[j+4>>1],m)+d|0;n=O[f>>3];o=O[f+8>>3];p=O[f+16>>3];g=N[e+4>>2];h=N[e+8>>2];i=N[e+12>>2];J[a+56>>2]=0;N[a+52>>2]=i*Q(p);N[a+48>>2]=h*Q(o);N[a+44>>2]=g*Q(n);f=P(L[j+2>>1],m)+d|0;n=O[f>>3];o=O[f+8>>3];p=O[f+16>>3];g=N[e+4>>2];h=N[e+8>>2];i=N[e+12>>2];J[a+40>>2]=0;N[a+36>>2]=i*Q(p);N[a+32>>2]=h*Q(o);N[a+28>>2]=g*Q(n);d=P(L[j>>1],m)+d|0;g=Q(N[e+8>>2]*Q(O[d+8>>3]));i=Q(N[e+4>>2]*Q(O[d>>3]));h=Q(O[d+16>>3]);break a;default:break h}}f=P(K[j+2|0],m)+d|0;n=O[f>>3];o=O[f+8>>3];p=O[f+16>>3];g=N[e+4>>2];h=N[e+8>>2];i=N[e+12>>2];J[a+56>>2]=0;N[a+52>>2]=i*Q(p);N[a+48>>2]=h*Q(o);N[a+44>>2]=g*Q(n);f=P(K[j+1|0],m)+d|0;n=O[f>>3];o=O[f+8>>3];p=O[f+16>>3];g=N[e+4>>2];h=N[e+8>>2];i=N[e+12>>2];J[a+40>>2]=0;N[a+36>>2]=i*Q(p);N[a+32>>2]=h*Q(o);N[a+28>>2]=g*Q(n);d=P(K[j|0],m)+d|0;g=Q(N[e+8>>2]*Q(O[d+8>>3]));i=Q(N[e+4>>2]*Q(O[d>>3]));h=Q(O[d+16>>3]);}q=N[k>>2];J[a+24>>2]=0;N[a+16>>2]=g;N[a+12>>2]=i;N[a+20>>2]=q*h;d=J[a+8>>2];ua[J[J[d>>2]+8>>2]](d,a+12|0,b,c);a=J[a+4>>2];ua[J[J[a>>2]+24>>2]](a,b);sa=l+32|0;}function Pj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=0,i=0,j=Q(0),k=0,l=0,m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=0,u=0,v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=0,C=0;f=N[b+40>>2];g=N[b+36>>2];e=N[b+24>>2];o=N[b+20>>2];i=J[a+8>>2];v=N[i+44>>2];w=N[i+40>>2];x=N[i+12>>2];y=N[i+8>>2];p=N[b+32>>2];q=N[b+16>>2];n=N[b+8>>2];r=N[b+4>>2];s=N[b>>2];z=N[i+36>>2];A=N[i+4>>2];b=J[a+4>>2];a=J[b+4>>2];a:{if((a|0)!=J[b+8>>2]){break a}t=a?a<<1:1;if((t|0)<=(a|0)){break a}b:{if(!t){i=0;break b}J[8456]=J[8456]+1;i=ua[J[8258]](t<<4,16)|0;a=J[b+4>>2];}c:{if((a|0)<=0){break c}if((a|0)!=1){C=a&-2;while(1){l=k<<4;m=l+i|0;h=l+J[b+12>>2]|0;u=J[h+4>>2];J[m>>2]=J[h>>2];J[m+4>>2]=u;u=J[h+12>>2];J[m+8>>2]=J[h+8>>2];J[m+12>>2]=u;h=l|16;l=h+i|0;h=h+J[b+12>>2]|0;m=J[h+4>>2];J[l>>2]=J[h>>2];J[l+4>>2]=m;m=J[h+12>>2];J[l+8>>2]=J[h+8>>2];J[l+12>>2]=m;k=k+2|0;B=B+2|0;if((B|0)!=(C|0)){continue}break}}if(!(a&1)){break c}a=k<<4;k=a+i|0;a=a+J[b+12>>2]|0;h=J[a+4>>2];J[k>>2]=J[a>>2];J[k+4>>2]=h;h=J[a+12>>2];J[k+8>>2]=J[a+8>>2];J[k+12>>2]=h;}a=J[b+12>>2];if(!(a?!a|!K[b+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[b+12>>2]=i;H[b+16|0]=1;J[b+8>>2]=t;a=J[b+4>>2];}a=J[b+12>>2]+(a<<4)|0;J[a+12>>2]=c<<21|d;j=n>Q(-0xde0b6b000000000)?n:Q(-0xde0b6b000000000);j=e>j?e:j;j=f>j?f:j;n=n<Q(0xde0b6b000000000)?n:Q(0xde0b6b000000000);e=e<n?e:n;f=f<e?f:e;c=Q(j-f)<Q(.0020000000949949026);f=Q(Q((c?Q(f+Q(-.0010000000474974513)):f)-x)*v);d:{if(f<Q(4294967296)&f>=Q(0)){d=~~f>>>0;break d}d=0;}I[a+4>>1]=d&65534;f=r>Q(-0xde0b6b000000000)?r:Q(-0xde0b6b000000000);f=f<o?o:f;f=f<g?g:f;e=r<Q(0xde0b6b000000000)?r:Q(0xde0b6b000000000);e=e>o?o:e;g=e>g?g:e;d=Q(f-g)<Q(.0020000000949949026);g=Q(Q((d?Q(g+Q(-.0010000000474974513)):g)-y)*w);e:{if(g<Q(4294967296)&g>=Q(0)){h=~~g>>>0;break e}h=0;}I[a+2>>1]=h&65534;g=s>Q(-0xde0b6b000000000)?s:Q(-0xde0b6b000000000);g=g<q?q:g;g=g<p?p:g;e=s<Q(0xde0b6b000000000)?s:Q(0xde0b6b000000000);e=e>q?q:e;e=e>p?p:e;i=Q(g-e)<Q(.0020000000949949026);e=Q(Q((i?Q(e+Q(-.0010000000474974513)):e)-A)*z);f:{if(e<Q(4294967296)&e>=Q(0)){h=~~e>>>0;break f}h=0;}I[a>>1]=h&65534;e=Q(Q(Q((c?Q(j+Q(.0010000000474974513)):j)-x)*v)+Q(1));g:{if(e<Q(4294967296)&e>=Q(0)){c=~~e>>>0;break g}c=0;}I[a+10>>1]=c|1;f=Q(Q(Q((d?Q(f+Q(.0010000000474974513)):f)-y)*w)+Q(1));h:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break h}c=0;}I[a+8>>1]=c|1;f=Q(Q(Q((i?Q(g+Q(.0010000000474974513)):g)-A)*z)+Q(1));i:{if(f<Q(4294967296)&f>=Q(0)){c=~~f>>>0;break i}c=0;}I[a+6>>1]=c|1;J[b+4>>2]=J[b+4>>2]+1;}function Co(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=Q(e);f=Q(f);g=Q(g);h=Q(h);i=Q(i);j=j|0;k=Q(k);l=l|0;var m=0,n=0,o=0,p=Q(0),q=Q(0),r=Q(0),s=0,t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=0,F=0,G=Q(0),H=0,I=0,K=Q(0),L=0,M=0,O=Q(0),P=Q(0),S=Q(0),T=0,U=0,V=0,W=0,X=0,Y=Q(0);n=sa-2416|0;sa=n;u=N[b>>2];A=N[c>>2];v=N[b+4>>2];C=N[c+4>>2];w=N[b+8>>2];D=N[c+8>>2];J[n+44>>2]=0;q=Q(D*e);N[n+40>>2]=w+q;r=Q(C*e);N[n+36>>2]=v+r;x=Q(A*e);N[n+32>>2]=u+x;J[n+28>>2]=0;N[n+24>>2]=w-q;N[n+20>>2]=v-r;N[n+16>>2]=u-x;p=Q(k*Q(.01745329238474369));k=Q(p+Q(-1.5707963705062866));I=f<=Q(-1.5707963705062866);x=I?k:f;f=Q(Q(1.5707963705062866)-p);E=g>=Q(1.5707963705062866);g=E?f:g;if(x>g){E=1;I=1;x=k;g=f;}q=N[d>>2];r=N[d+4>>2];k=N[d+8>>2];m=h>i;K=m?Q(p+Q(-3.1415927410125732)):h;y=Q((m?Q(3.1415927410125732):i)-K);f=Q(y/p);a:{if(Q(R(f))<Q(2147483648)){s=~~f;break a}s=-2147483648;}u=Q(q*C);v=Q(A*r);w=Q(k*A);q=Q(D*q);r=Q(r*D);k=Q(C*k);F=(s|0)<=1?1:s;A=Q(y/Q(F|0));y=Q(Q(A*Q(0))+K);M=m|Q(i-h)>=Q(6.2831854820251465);m=l^1;g=Q(g-x);f=Q(g/p);b:{if(Q(R(f))<Q(2147483648)){s=~~f;break b}s=-2147483648;}O=Q(v-u);P=Q(q-w);S=Q(k-r);X=m|M;T=(s|0)<=1?1:s;C=Q(g/Q(T|0));o=n+48|0;m=n+1232|0;D=Ma(y);y=Na(y);while(1){s=m;u=N[c>>2];v=N[b>>2];w=N[d>>2];q=N[c+4>>2];r=N[b+4>>2];k=N[d+4>>2];i=N[c+8>>2];h=N[b+8>>2];g=N[d+8>>2];J[o+12>>2]=0;f=Q(Q(Q(z|0)*C)+x);G=Q(Ma(f)*e);p=Q(G*y);Y=g;g=Q(G*D);B=Q(Na(f)*e);N[o+8>>2]=Q(Q(O*p)+Q(h+Q(Y*g)))+Q(i*B);N[o+4>>2]=Q(Q(P*p)+Q(r+Q(g*k)))+Q(B*q);N[o>>2]=Q(Q(S*p)+Q(v+Q(g*w)))+Q(B*u);L=(z|0)==(T|0);U=L&I;if(z|E){ua[J[J[a>>2]+16>>2]](a,z?s:n+16|0,o,j);}m=J[o+12>>2];J[n+8>>2]=J[o+8>>2];J[n+12>>2]=m;m=J[o+4>>2];J[n>>2]=J[o>>2];J[n+4>>2]=m;if(U){ua[J[J[a>>2]+16>>2]](a,n+32|0,o,j);}V=!z|L;if(!(!V|X)){ua[J[J[a>>2]+16>>2]](a,b,o,j);}m=1;while(1){u=N[c>>2];v=N[b>>2];w=N[d>>2];q=N[c+4>>2];r=N[b+4>>2];k=N[d+4>>2];i=N[c+8>>2];h=N[b+8>>2];g=N[d+8>>2];W=m<<4;t=W+o|0;J[t+12>>2]=0;H=m;f=Q(Q(Q(m|0)*A)+K);p=Q(G*Na(f));f=Q(G*Ma(f));N[t+8>>2]=Q(Q(O*p)+Q(h+Q(g*f)))+Q(B*i);N[t+4>>2]=Q(Q(P*p)+Q(r+Q(f*k)))+Q(B*q);N[t>>2]=Q(Q(S*p)+Q(v+Q(f*w)))+Q(B*u);c:{d:{if(z){m=s+W|0;break d}m=n+16|0;if(!E){break c}}ua[J[J[a>>2]+16>>2]](a,m,t,j);}ua[J[J[a>>2]+16>>2]](a,t-16|0,t,j);if(U){ua[J[J[a>>2]+16>>2]](a,n+32|0,t,j);}e:{if(!l){break e}f:{if(M){m=n;if((H|0)==(F|0)){break f}break e}m=b;if(!((H|0)==(F|0)&V)){break e}}ua[J[J[a>>2]+16>>2]](a,m,t,j);}m=H+1|0;if((H|0)!=(F|0)){continue}break}z=z+1|0;m=o;o=s;if(!L){continue}break}sa=n+2416|0;}function ns(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=Q(0),i=0,j=0,k=0,l=0,m=0,n=Q(0);e=sa-128|0;sa=e;J[a+76>>2]=J[a+76>>2]+1;d=J[b+12>>2];J[e+72>>2]=J[b+8>>2];J[e+76>>2]=d;d=J[b+4>>2];J[e+64>>2]=J[b>>2];J[e+68>>2]=d;d=J[b+28>>2];J[e+88>>2]=J[b+24>>2];J[e+92>>2]=d;d=J[b+20>>2];J[e+80>>2]=J[b+16>>2];J[e+84>>2]=d;d=J[b+44>>2];J[e+104>>2]=J[b+40>>2];J[e+108>>2]=d;d=J[b+36>>2];J[e+96>>2]=J[b+32>>2];J[e+100>>2]=d;d=J[b+60>>2];J[e+120>>2]=J[b+56>>2];J[e+124>>2]=d;d=J[b+52>>2];J[e+112>>2]=J[b+48>>2];J[e+116>>2]=d;m=J[c+4>>2];n=Q(ua[J[J[c>>2]+48>>2]](c));ua[J[J[c>>2]+8>>2]](c,b,e+48|0,e+32|0);h=N[e+48>>2];if(h<N[a+40>>2]){N[a+40>>2]=h;}h=N[e+32>>2];if(h>N[a+56>>2]){N[a+56>>2]=h;}h=N[e+52>>2];if(h<N[a+44>>2]){N[a+44>>2]=h;}h=N[e+36>>2];if(h>N[a+60>>2]){N[a+60>>2]=h;}h=N[e+56>>2];if(h<N[a+48>>2]){N[a+48>>2]=h;}h=N[e+40>>2];if(h>N[a- -64>>2]){N[a+64>>2]=h;}b=J[a+72>>2];if(b){d=J[e+60>>2];J[e+8>>2]=J[e+56>>2];J[e+12>>2]=d;d=J[e+44>>2];J[e+24>>2]=J[e+40>>2];J[e+28>>2]=d;d=J[e+36>>2];J[e+16>>2]=J[e+32>>2];J[e+20>>2]=d;d=J[e+52>>2];J[e>>2]=J[e+48>>2];J[e+4>>2]=d;b=$b(b,e,J[a+24>>2]);}else {b=0;}i=J[a+24>>2];a:{if((i|0)!=J[a+28>>2]){break a}j=i?i<<1:1;if((j|0)<=(i|0)){break a}if(j){J[8456]=J[8456]+1;l=ua[J[8258]](P(j,80),16)|0;i=J[a+24>>2];}if((i|0)>0){while(1){d=P(k,80);f=d+l|0;d=d+J[a+32>>2]|0;g=J[d+4>>2];J[f>>2]=J[d>>2];J[f+4>>2]=g;g=J[d+12>>2];J[f+8>>2]=J[d+8>>2];J[f+12>>2]=g;g=J[d+28>>2];J[f+24>>2]=J[d+24>>2];J[f+28>>2]=g;g=J[d+20>>2];J[f+16>>2]=J[d+16>>2];J[f+20>>2]=g;g=J[d+44>>2];J[f+40>>2]=J[d+40>>2];J[f+44>>2]=g;g=J[d+36>>2];J[f+32>>2]=J[d+32>>2];J[f+36>>2]=g;g=J[d+60>>2];J[f+56>>2]=J[d+56>>2];J[f+60>>2]=g;g=J[d+52>>2];J[f+48>>2]=J[d+48>>2];J[f+52>>2]=g;g=J[d+68>>2];J[f+64>>2]=J[d+64>>2];J[f+68>>2]=g;g=J[d+76>>2];J[f+72>>2]=J[d+72>>2];J[f+76>>2]=g;k=k+1|0;if((k|0)!=(i|0)){continue}break}}d=J[a+32>>2];if(!(d?!d|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+32>>2]=l;H[a+36|0]=1;J[a+28>>2]=j;i=J[a+24>>2];}f=J[e+68>>2];d=J[a+32>>2]+P(i,80)|0;J[d>>2]=J[e+64>>2];J[d+4>>2]=f;f=J[e+76>>2];J[d+8>>2]=J[e+72>>2];J[d+12>>2]=f;f=J[e+92>>2];J[d+24>>2]=J[e+88>>2];J[d+28>>2]=f;f=J[e+84>>2];J[d+16>>2]=J[e+80>>2];J[d+20>>2]=f;f=J[e+100>>2];J[d+32>>2]=J[e+96>>2];J[d+36>>2]=f;f=J[e+108>>2];J[d+40>>2]=J[e+104>>2];J[d+44>>2]=f;f=J[e+116>>2];J[d+48>>2]=J[e+112>>2];J[d+52>>2]=f;f=J[e+124>>2];J[d+56>>2]=J[e+120>>2];J[d+60>>2]=f;J[d+64>>2]=c;J[d+68>>2]=m;N[d+72>>2]=n;J[d+76>>2]=b;J[a+24>>2]=J[a+24>>2]+1;sa=e+128|0;}function Or(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=sa-32|0;sa=e;J[8456]=J[8456]+1;d=ua[J[8258]](348,16)|0;if(!K[33780]){J[e+24>>2]=0;J[e+28>>2]=1;J[e+16>>2]=4096;J[e+20>>2]=4096;J[e+8>>2]=0;J[e+12>>2]=0;Lc(e+8|0);H[33780]=1;}H[d+76|0]=1;J[d+72>>2]=0;J[d+68>>2]=b;b=d;J[b+28>>2]=0;J[b+32>>2]=0;J[b+24>>2]=a;H[b+20|0]=1;J[b>>2]=13068;J[b+16>>2]=0;J[b- -64>>2]=0;H[b+60|0]=0;J[b+56>>2]=1025758986;H[b+54|0]=1;I[b+52>>1]=256;J[b+48>>2]=0;H[b+44|0]=1;J[b+36>>2]=1;J[b+40>>2]=1065353216;J[b+8>>2]=0;J[b+12>>2]=0;J[b+92>>2]=1058642330;J[b+96>>2]=1065353216;J[b+88>>2]=0;J[b+80>>2]=0;J[b+84>>2]=0;J[b>>2]=24120;J[b+100>>2]=1050253722;J[b+104>>2]=1015580809;J[b+132>>2]=0;J[b+136>>2]=1045220557;J[b+124>>2]=1045220557;J[b+128>>2]=1045220557;J[b+108>>2]=0;J[b+112>>2]=10;J[b+184>>2]=0;J[b+188>>2]=1045220557;J[b+176>>2]=1120403456;J[b+180>>2]=1900671690;J[b+172>>2]=128;J[b+164>>2]=260;J[b+168>>2]=2;J[b+156>>2]=0;J[b+160>>2]=1062836634;J[b+148>>2]=-1121724662;J[b+152>>2]=1036831949;J[b+140>>2]=0;J[b+144>>2]=1;J[b+116>>2]=1101004800;J[b+120>>2]=1065353216;H[b+208|0]=1;J[b+204>>2]=0;H[b+240|0]=1;J[b+216>>2]=c;J[b+212>>2]=0;J[b+196>>2]=0;J[b+200>>2]=0;J[b+236>>2]=0;J[b+228>>2]=0;J[b+232>>2]=0;H[b+260|0]=1;I[b+290>>1]=0;J[b+256>>2]=0;J[b+264>>2]=0;J[b+268>>2]=-1054867456;J[b+248>>2]=0;J[b+252>>2]=0;J[b+272>>2]=0;J[b+276>>2]=0;J[b+280>>2]=0;J[b+284>>2]=0;H[b+308|0]=1;J[b+312>>2]=0;J[b+304>>2]=0;J[b+296>>2]=0;J[b+300>>2]=0;H[b+336|0]=1;H[b+316|0]=1;J[b+324>>2]=0;J[b+328>>2]=0;J[b+332>>2]=0;J[b+340>>2]=0;if(c){c=0;}else {J[8456]=J[8456]+1;f=d,g=Kd(ua[J[8258]](236,16)|0),J[f+216>>2]=g;c=1;}H[b+289|0]=c;J[8456]=J[8456]+1;b=ua[J[8258]](68,16)|0;J[b>>2]=24060;J[b+16>>2]=0;H[b+20|0]=1;J[b+8>>2]=0;J[b+12>>2]=0;J[b+36>>2]=0;H[b+40|0]=1;H[b+60|0]=1;J[b+28>>2]=0;J[b+32>>2]=0;J[b+56>>2]=0;H[b+64|0]=1;J[b+48>>2]=0;J[b+52>>2]=0;H[d+288|0]=1;J[d+220>>2]=b;J[8456]=J[8456]+1;b=ua[J[8258]](88,16)|0;c=J[d+216>>2];H[b+44|0]=1;J[b+24>>2]=a;J[b+20>>2]=0;J[b+12>>2]=0;J[b+16>>2]=0;J[b+8>>2]=c;J[b+4>>2]=0;J[b>>2]=24384;J[b+40>>2]=0;H[b- -64|0]=1;J[b+32>>2]=0;J[b+36>>2]=0;J[b+60>>2]=0;H[b+84|0]=1;J[b+52>>2]=0;J[b+56>>2]=0;J[b+80>>2]=0;J[b+72>>2]=0;J[b+76>>2]=0;J[d+212>>2]=b;J[d+344>>2]=24816;J[d>>2]=24576;J[d+56>>2]=1008981770;a=J[d+68>>2];a=ua[J[J[a>>2]+36>>2]](a)|0;ua[J[J[a>>2]+44>>2]](a,d+344|0);a=J[d+68>>2];a=ua[J[J[a>>2]+36>>2]](a)|0;b=La(4);J[b>>2]=24916;ua[J[J[a>>2]+60>>2]](a,b);sa=e+32|0;return d|0}function Ed(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{d=J[a+548>>2];b:{if((d|0)<=0){break b}e=J[a+556>>2];while(1){if(J[e+(f<<2)>>2]!=(b|0)){f=f+1|0;if((f|0)!=(d|0)){continue}break b}break}if((d|0)!=(f|0)){break a}}c:{if(J[a+552>>2]!=(d|0)){break c}i=d?d<<1:1;if((i|0)<=(d|0)){break c}d:{if(!i){e=0;break d}J[8456]=J[8456]+1;e=ua[J[8258]](i<<2,16)|0;d=J[a+548>>2];}e:{if((d|0)<=0){break e}f=0;if(d>>>0>=4){k=d&-4;while(1){c=f<<2;J[c+e>>2]=J[c+J[a+556>>2]>>2];g=c|4;J[g+e>>2]=J[g+J[a+556>>2]>>2];g=c|8;J[g+e>>2]=J[g+J[a+556>>2]>>2];c=c|12;J[c+e>>2]=J[c+J[a+556>>2]>>2];f=f+4|0;h=h+4|0;if((k|0)!=(h|0)){continue}break}}c=d&3;if(!c){break e}while(1){h=f<<2;J[h+e>>2]=J[h+J[a+556>>2]>>2];f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}f=J[a+556>>2];if(!(!f|!K[a+560|0])){if(f){J[8457]=J[8457]+1;ua[J[8259]](f);}d=J[a+548>>2];}J[a+556>>2]=e;H[a+560|0]=1;J[a+552>>2]=i;}J[J[a+556>>2]+(d<<2)>>2]=b;J[a+548>>2]=d+1;f=J[b+32>>2];b=J[b+28>>2];f:{if((b|0)==(a|0)){e=J[a+288>>2];if((e|0)!=J[a+292>>2]){break f}i=e?e<<1:1;if((i|0)<=(e|0)){break f}g:{if(!i){b=0;break g}J[8456]=J[8456]+1;b=ua[J[8258]](i<<2,16)|0;e=J[a+288>>2];}h:{if((e|0)<=0){break h}j=0;d=0;if(e>>>0>=4){k=e&-4;h=0;while(1){c=d<<2;J[c+b>>2]=J[c+J[a+296>>2]>>2];g=c|4;J[g+b>>2]=J[g+J[a+296>>2]>>2];g=c|8;J[g+b>>2]=J[g+J[a+296>>2]>>2];c=c|12;J[c+b>>2]=J[c+J[a+296>>2]>>2];d=d+4|0;h=h+4|0;if((k|0)!=(h|0)){continue}break}}c=e&3;if(!c){break h}while(1){h=d<<2;J[h+b>>2]=J[h+J[a+296>>2]>>2];d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=J[a+296>>2];if(!(!d|!K[a+300|0])){if(d){J[8457]=J[8457]+1;ua[J[8259]](d);}e=J[a+288>>2];}J[a+296>>2]=b;H[a+300|0]=1;J[a+292>>2]=i;break f}e=J[f+288>>2];i:{if((e|0)!=J[f+292>>2]){break i}h=e?e<<1:1;if((h|0)<=(e|0)){break i}j:{if(!h){d=0;break j}J[8456]=J[8456]+1;d=ua[J[8258]](h<<2,16)|0;e=J[f+288>>2];}k:{if((e|0)<=0){break k}i=0;a=0;if(e>>>0>=4){k=e&-4;j=0;while(1){c=a<<2;J[c+d>>2]=J[c+J[f+296>>2]>>2];g=c|4;J[g+d>>2]=J[g+J[f+296>>2]>>2];g=c|8;J[g+d>>2]=J[g+J[f+296>>2]>>2];c=c|12;J[c+d>>2]=J[c+J[f+296>>2]>>2];a=a+4|0;j=j+4|0;if((k|0)!=(j|0)){continue}break}}j=e&3;if(!j){break k}while(1){c=a<<2;J[c+d>>2]=J[c+J[f+296>>2]>>2];a=a+1|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}a=J[f+296>>2];if(!(!a|!K[f+300|0])){if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}e=J[f+288>>2];}J[f+296>>2]=d;H[f+300|0]=1;J[f+292>>2]=h;}a=f;f=b;}J[J[a+296>>2]+(e<<2)>>2]=f;J[a+280>>2]=(e^-1)>>>31;J[a+288>>2]=e+1;}}function Em(a,b,c,d){a=a|0;b=b|0;c=c|0;d=Q(d);var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),L=Q(0);n=sa-16|0;sa=n;k=N[b+8>>2];f=N[c+8>>2];q=Q(Q(k*d)+f);C=N[b+4>>2];B=N[c+4>>2];D=Q(Q(C*d)+B);E=N[b>>2];e=Q(E*d);d=N[c>>2];F=Q(e+d);a:{if(K[a+232|0]){r=N[a+48>>2];i=Q(-N[a+88>>2]);s=N[a- -64>>2];h=N[a+92>>2];t=N[a+80>>2];g=N[a+96>>2];y=Q(Q(Q(r*i)-Q(s*h))-Q(t*g));e=N[a+208>>2];u=N[a+40>>2];v=N[a+56>>2];w=N[a+72>>2];z=Q(Q(Q(u*i)-Q(v*h))-Q(w*g));l=N[a+200>>2];x=N[a+44>>2];j=Q(x*i);i=N[a+60>>2];j=Q(j-Q(i*h));h=N[a+76>>2];j=Q(j-Q(h*g));g=N[a+204>>2];e=Q(Q(Q(Q(y*e)+Q(Q(z*l)+Q(j*g)))+N[a+224>>2])+Q(Q(q*Q(Q(t*e)+Q(Q(w*l)+Q(h*g))))+Q(Q(F*Q(Q(r*e)+Q(Q(u*l)+Q(x*g))))+Q(D*Q(Q(s*e)+Q(Q(v*l)+Q(i*g)))))));g=e;l=k;o=Q(Q(e-f)*k);f=N[a+176>>2];e=N[a+168>>2];k=N[a+172>>2];e=Q(Q(Q(q*Q(Q(t*f)+Q(Q(w*e)+Q(h*k))))+Q(Q(F*Q(Q(r*f)+Q(Q(u*e)+Q(x*k))))+Q(D*Q(Q(s*f)+Q(Q(v*e)+Q(i*k))))))+Q(Q(Q(y*f)+Q(Q(z*e)+Q(k*j)))+N[a+216>>2]));p=Q(Q(e-d)*E);k=q;d=N[a+192>>2];f=N[a+184>>2];q=N[a+188>>2];f=Q(Q(Q(k*Q(Q(t*d)+Q(Q(w*f)+Q(h*q))))+Q(Q(F*Q(Q(r*d)+Q(Q(u*f)+Q(x*q))))+Q(D*Q(Q(s*d)+Q(Q(v*f)+Q(i*q))))))+Q(Q(Q(y*d)+Q(Q(z*f)+Q(j*q)))+N[a+220>>2]));d=Q(o+Q(p+Q(C*Q(f-B))));N[n+8>>2]=g+Q(l*d);N[n+4>>2]=f+Q(C*d);N[n>>2]=e+Q(E*d);break a}I=N[a+224>>2];r=N[a+208>>2];s=N[a+200>>2];t=N[a+204>>2];L=N[a+216>>2];e=N[a+172>>2];u=N[a+176>>2];v=N[a+168>>2];w=N[a+112>>2];o=Q(-N[a+152>>2]);l=N[a+128>>2];p=N[a+156>>2];x=N[a+144>>2];A=N[a+160>>2];i=Q(Q(Q(w*o)-Q(l*p))-Q(x*A));h=N[a+104>>2];g=N[a+120>>2];y=N[a+136>>2];z=Q(Q(Q(h*o)-Q(g*p))-Q(y*A));j=N[a+108>>2];m=Q(j*o);o=N[a+124>>2];m=Q(m-Q(o*p));p=N[a+140>>2];A=Q(m-Q(p*A));m=N[a+192>>2];G=N[a+184>>2];H=N[a+188>>2];m=Q(Q(Q(f*Q(Q(x*m)+Q(Q(y*G)+Q(p*H))))+Q(Q(d*Q(Q(w*m)+Q(Q(h*G)+Q(j*H))))+Q(B*Q(Q(l*m)+Q(Q(g*G)+Q(o*H))))))+Q(Q(Q(i*m)+Q(Q(z*G)+Q(A*H)))+N[a+220>>2]));N[n+4>>2]=m;e=Q(Q(Q(f*Q(Q(x*u)+Q(Q(y*v)+Q(p*e))))+Q(Q(d*Q(Q(w*u)+Q(Q(h*v)+Q(j*e))))+Q(B*Q(Q(l*u)+Q(Q(g*v)+Q(o*e))))))+Q(L+Q(Q(i*u)+Q(Q(z*v)+Q(e*A)))));N[n>>2]=e;d=Q(Q(I+Q(Q(i*r)+Q(Q(z*s)+Q(A*t))))+Q(Q(f*Q(Q(x*r)+Q(Q(y*s)+Q(p*t))))+Q(Q(d*Q(Q(w*r)+Q(Q(h*s)+Q(j*t))))+Q(B*Q(Q(l*r)+Q(Q(g*s)+Q(o*t)))))));N[n+8>>2]=d;d=Q(Q(Q(q-d)*k)+Q(Q(Q(F-e)*E)+Q(C*Q(D-m))));}J[n+12>>2]=0;a=J[a+36>>2];ua[J[J[a>>2]+16>>2]](a,b,n,d);sa=n+16|0;}function Vb(a,b,c,d){var e=Q(0),f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),w=Q(0),y=Q(0),z=Q(0),A=Q(0),D=Q(0),E=Q(0),F=Q(0);h=sa+-64|0;sa=h;p=N[b+24>>2];q=N[b+20>>2];r=N[b+40>>2];s=N[b+36>>2];j=N[a+40>>2];k=N[a+20>>2];l=N[a+36>>2];m=N[a+24>>2];t=N[b+8>>2];u=N[b>>2];w=N[b+4>>2];y=N[b+16>>2];z=N[b+32>>2];f=N[a+8>>2];g=N[a+4>>2];o=N[a+32>>2];n=N[a+16>>2];i=N[a>>2];J[h+60>>2]=0;J[h+44>>2]=0;D=Q(Q(n*l)-Q(o*k));E=Q(Q(k*j)-Q(l*m));F=Q(Q(m*o)-Q(j*n));e=Q(Q(1)/Q(Q(f*D)+Q(Q(i*E)+Q(g*F))));A=Q(Q(Q(i*k)-Q(n*g))*e);k=Q(Q(Q(g*m)-Q(k*f))*e);m=Q(Q(Q(f*n)-Q(m*i))*e);N[h+56>>2]=Q(r*A)+Q(Q(z*k)+Q(s*m));n=Q(Q(Q(g*o)-Q(l*i))*e);g=Q(Q(Q(f*l)-Q(j*g))*e);f=Q(Q(Q(i*j)-Q(o*f))*e);N[h+52>>2]=Q(r*n)+Q(Q(z*g)+Q(s*f));N[h+40>>2]=Q(A*p)+Q(Q(k*y)+Q(m*q));N[h+36>>2]=Q(n*p)+Q(Q(g*y)+Q(f*q));J[h+28>>2]=0;i=Q(D*e);j=Q(E*e);e=Q(F*e);N[h+48>>2]=Q(r*i)+Q(Q(z*j)+Q(s*e));N[h+32>>2]=Q(i*p)+Q(Q(j*y)+Q(e*q));N[h+24>>2]=Q(A*t)+Q(Q(k*u)+Q(w*m));N[h+20>>2]=Q(n*t)+Q(Q(g*u)+Q(w*f));N[h+16>>2]=Q(i*t)+Q(Q(j*u)+Q(w*e));ob(h+16|0,h);e=N[h+12>>2];i=N[h+8>>2];j=N[h>>2];k=N[h+4>>2];g=Q(Q(1)/Q(Y(Q(Q(e*e)+Q(Q(i*i)+Q(Q(j*j)+Q(k*k)))))));e=Q(e*g);e=e<Q(-1)?Q(-1):e;f=e>Q(1)?Q(1):e;b=(B(f),v(2));a=b&2147483647;a:{if(a>>>0>=1065353216){e=(b|0)>=0?Q(0):Q(3.141592502593994);if((a|0)==1065353216){break a}e=Q(Q(0)/Q(f-f));break a}b:{if(a>>>0<=1056964607){e=Q(1.570796251296997);if(a>>>0<847249409){break b}e=Q(f*f);e=Q(Q(Q(Q(7.549789415861596e-8)-Q(f*Q(Q(Q(Q(e*Q(Q(e*Q(-.008656363002955914))+Q(-.04274342209100723)))+Q(.16666586697101593))*e)/Q(Q(e*Q(-.7066296339035034))+Q(1)))))-f)+Q(1.570796251296997));break a}if((b|0)<0){e=Q(Q(f+Q(1))*Q(.5));f=Q(Y(e));e=Q(Q(1.570796251296997)-Q(f+Q(Q(f*Q(Q(Q(Q(e*Q(Q(e*Q(-.008656363002955914))+Q(-.04274342209100723)))+Q(.16666586697101593))*e)/Q(Q(e*Q(-.7066296339035034))+Q(1))))+Q(-7.549789415861596e-8))));e=Q(e+e);break a}e=Q(Q(Q(1)-f)*Q(.5));l=Q(Y(e));f=(x(2,(B(l),v(2))&-4096),C());e=Q(Q(Q(l*Q(Q(Q(Q(e*Q(Q(e*Q(-.008656363002955914))+Q(-.04274342209100723)))+Q(.16666586697101593))*e)/Q(Q(e*Q(-.7066296339035034))+Q(1))))+Q(Q(e-Q(f*f))/Q(l+f)))+f);e=Q(e+e);}}N[d>>2]=e+e;J[c+12>>2]=0;e=Q(i*g);f=Q(j*g);g=Q(k*g);i=Q(Q(e*e)+Q(Q(f*f)+Q(g*g)));c:{if(i<Q(14210854715202004e-30)){J[c>>2]=1065353216;J[c+4>>2]=0;e=Q(0);break c}j=g;g=Q(Q(1)/Q(Y(i)));N[c+4>>2]=j*g;N[c>>2]=f*g;e=Q(e*g);}N[c+8>>2]=e;sa=h- -64|0;}function Re(a,b,c){var d=0,e=0,f=0,g=Q(0),h=0,i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=0;d=sa-160|0;sa=d;f=J[a+4>>2];e=J[f+12>>2];D=N[e+52>>2];E=N[e+56>>2];g=N[e+24>>2];j=N[e+20>>2];k=N[e+40>>2];l=N[e+36>>2];F=N[e+48>>2];m=N[e+8>>2];n=N[e>>2];o=N[e+4>>2];p=N[e+16>>2];q=N[e+32>>2];e=J[J[f+4>>2]+32>>2]+P(c,80)|0;r=N[e+32>>2];s=N[e>>2];t=N[e+16>>2];u=N[e+56>>2];v=N[e+52>>2];w=N[e+48>>2];x=N[e+36>>2];y=N[e+20>>2];z=N[e+4>>2];A=N[e+40>>2];B=N[e+24>>2];C=N[e+8>>2];e=0;J[d+156>>2]=0;J[d+140>>2]=0;J[d+124>>2]=0;N[d+136>>2]=Q(A*k)+Q(Q(C*q)+Q(l*B));N[d+132>>2]=Q(x*k)+Q(Q(z*q)+Q(l*y));N[d+120>>2]=Q(A*g)+Q(Q(C*p)+Q(j*B));N[d+116>>2]=Q(x*g)+Q(Q(z*p)+Q(j*y));N[d+152>>2]=E+Q(Q(u*k)+Q(Q(w*q)+Q(l*v)));N[d+148>>2]=D+Q(Q(u*g)+Q(Q(w*p)+Q(j*v)));J[d+108>>2]=0;N[d+128>>2]=Q(r*k)+Q(Q(s*q)+Q(l*t));N[d+112>>2]=Q(r*g)+Q(Q(s*p)+Q(j*t));N[d+96>>2]=Q(r*m)+Q(Q(s*n)+Q(o*t));N[d+104>>2]=Q(A*m)+Q(Q(C*n)+Q(o*B));N[d+100>>2]=Q(x*m)+Q(Q(z*n)+Q(o*y));N[d+144>>2]=F+Q(Q(u*m)+Q(Q(w*n)+Q(o*v)));ua[J[J[b>>2]+8>>2]](b,d+96|0,d+80|0,d- -64|0);g=N[J[a+20>>2]+32>>2];N[d+80>>2]=N[d+80>>2]-g;N[d+84>>2]=N[d+84>>2]-g;N[d+88>>2]=N[d+88>>2]-g;N[d+64>>2]=g+N[d+64>>2];N[d+68>>2]=g+N[d+68>>2];N[d+72>>2]=g+N[d+72>>2];f=J[a+8>>2];h=J[f+4>>2];ua[J[J[h>>2]+8>>2]](h,J[f+12>>2],d+48|0,d+32|0);f=J[8464];a:{if(f){if(!(ua[f|0](J[J[a+8>>2]+4>>2],b)|0)){break a}}e=N[d+64>>2]<N[d+48>>2]|N[d+80>>2]>N[d+32>>2]?e:1;f=0;if((N[d+72>>2]<N[d+56>>2]|N[d+88>>2]>N[d+40>>2]?f:e)^1|N[d+68>>2]<N[d+52>>2]|N[d+84>>2]>N[d+36>>2]){break a}e=J[a+4>>2];f=J[e+8>>2];J[d+28>>2]=c;J[d+24>>2]=-1;J[d+16>>2]=f;J[d+12>>2]=b;J[d+8>>2]=e;J[d+20>>2]=d+96;b:{if(N[J[a+20>>2]+32>>2]>Q(0)){b=J[a+12>>2];b=ua[J[J[b>>2]+8>>2]](b,d+8|0,J[a+8>>2],0,2)|0;break b}e=c<<2;b=J[e+J[a+24>>2]>>2];if(b){break b}b=J[a+12>>2];b=ua[J[J[b>>2]+8>>2]](b,d+8|0,J[a+8>>2],J[a+28>>2],1)|0;J[e+J[a+24>>2]>>2]=b;b=J[e+J[a+24>>2]>>2];}f=J[a+20>>2];h=J[f+8>>2];c:{if(J[h+8>>2]==J[J[a+4>>2]+8>>2]){i=f+8|0;e=2;break c}h=J[f+12>>2];i=f+12|0;e=3;}G=i;i=d+8|0;J[G>>2]=i;ua[J[J[f>>2]+(e<<2)>>2]](f,-1,c);ua[J[J[b>>2]+8>>2]](b,i,J[a+8>>2],J[a+16>>2],J[a+20>>2]);b=J[a+20>>2];J[(J[J[b+8>>2]+8>>2]==J[J[a+4>>2]+8>>2]?8:12)+b>>2]=h;}sa=d+160|0;}function ue(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=0,l=0,m=Q(0),n=0,o=0,p=Q(0),q=Q(0),r=0;d=sa-80|0;sa=d;e=J[a+4>>2];ua[J[J[e>>2]+16>>2]](e,d+28|0,d+24|0,d+20|0,d+16|0,d+12|0,d+8|0,d+4|0,d,b);g=J[d+12>>2]+P(J[d+8>>2],c)|0;e=J[a+4>>2];k=J[d+16>>2];l=J[d+28>>2];f=J[d>>2];a:{if(!J[d+20>>2]){if((f|0)!=3){f=P(J[g+8>>2],k)+l|0;h=N[f>>2];i=N[f+4>>2];j=N[f+8>>2];m=N[e+4>>2];p=N[e+8>>2];q=N[e+12>>2];J[d+76>>2]=0;N[d+72>>2]=j*q;N[d+68>>2]=i*p;N[d+64>>2]=h*m;f=P(J[g+4>>2],k)+l|0;h=N[f>>2];i=N[f+4>>2];j=N[f+8>>2];m=N[e+4>>2];p=N[e+8>>2];q=N[e+12>>2];J[d+60>>2]=0;N[d+56>>2]=j*q;N[d+52>>2]=i*p;N[d+48>>2]=h*m;g=P(J[g>>2],k)+l|0;h=N[g+4>>2];i=N[g+8>>2];j=N[e+8>>2];m=N[e+12>>2];N[d+32>>2]=N[g>>2]*N[e+4>>2];i=Q(i*m);h=Q(h*j);break a}f=P(L[g+4>>1],k)+l|0;h=N[f>>2];i=N[f+4>>2];j=N[f+8>>2];m=N[e+4>>2];p=N[e+8>>2];q=N[e+12>>2];J[d+76>>2]=0;N[d+72>>2]=j*q;N[d+68>>2]=i*p;N[d+64>>2]=h*m;f=P(L[g+2>>1],k)+l|0;h=N[f>>2];i=N[f+4>>2];j=N[f+8>>2];m=N[e+4>>2];p=N[e+8>>2];q=N[e+12>>2];J[d+60>>2]=0;N[d+56>>2]=j*q;N[d+52>>2]=i*p;N[d+48>>2]=h*m;g=P(L[g>>1],k)+l|0;h=N[g+4>>2];i=N[g+8>>2];j=N[e+8>>2];m=N[e+12>>2];N[d+32>>2]=N[g>>2]*N[e+4>>2];i=Q(i*m);h=Q(h*j);break a}if((f|0)!=3){f=P(J[g+8>>2],k)+l|0;n=O[f>>3];o=O[f+8>>3];r=O[f+16>>3];h=N[e+4>>2];i=N[e+8>>2];j=N[e+12>>2];J[d+76>>2]=0;N[d+72>>2]=j*Q(r);N[d+68>>2]=i*Q(o);N[d+64>>2]=h*Q(n);f=P(J[g+4>>2],k)+l|0;n=O[f>>3];o=O[f+8>>3];r=O[f+16>>3];h=N[e+4>>2];i=N[e+8>>2];j=N[e+12>>2];J[d+60>>2]=0;N[d+56>>2]=j*Q(r);N[d+52>>2]=i*Q(o);N[d+48>>2]=h*Q(n);g=P(J[g>>2],k)+l|0;n=O[g+8>>3];o=O[g+16>>3];h=N[e+8>>2];i=N[e+12>>2];N[d+32>>2]=N[e+4>>2]*Q(O[g>>3]);i=Q(i*Q(o));h=Q(h*Q(n));break a}f=P(L[g+4>>1],k)+l|0;n=O[f>>3];o=O[f+8>>3];r=O[f+16>>3];h=N[e+4>>2];i=N[e+8>>2];j=N[e+12>>2];J[d+76>>2]=0;N[d+72>>2]=j*Q(r);N[d+68>>2]=i*Q(o);N[d+64>>2]=h*Q(n);f=P(L[g+2>>1],k)+l|0;n=O[f>>3];o=O[f+8>>3];r=O[f+16>>3];h=N[e+4>>2];i=N[e+8>>2];j=N[e+12>>2];J[d+60>>2]=0;N[d+56>>2]=j*Q(r);N[d+52>>2]=i*Q(o);N[d+48>>2]=h*Q(n);g=P(L[g>>1],k)+l|0;n=O[g+8>>3];o=O[g+16>>3];h=N[e+8>>2];i=N[e+12>>2];N[d+32>>2]=N[e+4>>2]*Q(O[g>>3]);i=Q(i*Q(o));h=Q(h*Q(n));}J[d+44>>2]=0;N[d+40>>2]=i;N[d+36>>2]=h;e=J[a+8>>2];ua[J[J[e>>2]+8>>2]](e,d+32|0,b,c);a=J[a+4>>2];ua[J[J[a>>2]+24>>2]](a,b);sa=d+80|0;}function Ua(a,b,c){var d=0,e=0,f=Q(0),g=Q(0),h=Q(0),i=0,j=0,k=Q(0),l=Q(0),m=Q(0),n=0,o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0);j=sa-16|0;sa=j;d=J[a+844>>2];a:{if((d|0)<=0){break a}while(1){o=N[b+48>>2];r=N[b+8>>2];s=N[b>>2];t=N[b+4>>2];p=N[b+52>>2];u=N[b+24>>2];k=N[b+16>>2];v=N[b+20>>2];f=N[b+56>>2];h=N[b+40>>2];g=N[b+32>>2];q=N[b+36>>2];i=d-1|0;e=P(i,208)+a|0;J[e- -64>>2]=0;m=f;f=N[e+12>>2];l=Q(h*f);h=N[e+4>>2];w=Q(g*h);g=N[e+8>>2];q=Q(m+Q(l+Q(w+Q(q*g))));N[e+60>>2]=q;p=Q(p+Q(Q(f*u)+Q(Q(h*k)+Q(g*v))));N[e+56>>2]=p;o=Q(o+Q(Q(f*r)+Q(Q(h*s)+Q(g*t))));N[e+52>>2]=o;r=N[c+56>>2];s=N[c+40>>2];t=N[c+32>>2];u=N[c+36>>2];k=N[c+52>>2];v=N[c+24>>2];w=N[c+16>>2];x=N[c+20>>2];f=N[c+48>>2];h=N[c+8>>2];g=N[c>>2];l=N[c+4>>2];J[e+48>>2]=0;m=f;f=N[e+28>>2];y=Q(h*f);h=N[e+20>>2];z=Q(g*h);g=N[e+24>>2];l=Q(m+Q(y+Q(z+Q(l*g))));N[e+36>>2]=l;k=Q(k+Q(Q(f*v)+Q(Q(h*w)+Q(g*x))));N[e+40>>2]=k;f=Q(r+Q(Q(f*s)+Q(Q(h*t)+Q(g*u))));N[e+44>>2]=f;N[e+84>>2]=Q(Q(q-f)*N[e+76>>2])+Q(Q(Q(o-l)*N[e+68>>2])+Q(Q(p-k)*N[e+72>>2]));J[e+168>>2]=J[e+168>>2]+1;e=d>>>0>1;d=i;if(e){continue}break}b=J[a+844>>2];if((b|0)<=0){break a}while(1){c=b;b=c-1|0;d=P(b,208)+a|0;i=d+4|0;f=N[d+84>>2];h=N[a+848>>2];b:{if(!(f<=h)){e=J[d+120>>2];c:{if(!e){break c}n=J[8753];if(!n){break c}ua[n|0](e)|0;J[d+120>>2]=0;}d=J[a+844>>2];if((c|0)!=(d|0)){d=P(d,208)+a|0;Ja(i,d-204|0,208);d=d-208|0;J[d+168>>2]=0;J[d+120>>2]=0;J[d+132>>2]=0;J[d+136>>2]=0;J[d+140>>2]=0;J[d+144>>2]=0;d=J[a+844>>2];}else {d=c;}d=d-1|0;J[a+844>>2]=d;i=J[8756];if(d|!i){break b}J[j+8>>2]=a;ua[i|0](j+8|0);break b}g=Q(N[d+44>>2]-Q(N[d+60>>2]-Q(f*N[d+76>>2])));m=Q(g*g);g=Q(N[d+36>>2]-Q(N[d+52>>2]-Q(N[d+68>>2]*f)));f=Q(N[d+40>>2]-Q(N[d+56>>2]-Q(f*N[d+72>>2])));if(Q(m+Q(Q(g*g)+Q(f*f)))>Q(h*h)){e=J[d+120>>2];d:{if(!e){break d}n=J[8753];if(!n){break d}ua[n|0](e)|0;J[d+120>>2]=0;}d=J[a+844>>2];if((c|0)!=(d|0)){d=P(d,208)+a|0;Ja(i,d-204|0,208);d=d-208|0;J[d+168>>2]=0;J[d+120>>2]=0;J[d+132>>2]=0;J[d+136>>2]=0;J[d+140>>2]=0;J[d+144>>2]=0;d=J[a+844>>2];}else {d=c;}d=d-1|0;J[a+844>>2]=d;i=J[8756];if(d|!i){break b}J[j+12>>2]=a;ua[i|0](j+12|0);break b}d=J[8754];if(!d){break b}ua[d|0](i,J[a+836>>2],J[a+840>>2])|0;}if(c>>>0>1){continue}break}}sa=j+16|0;}function Bo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0),i=0;e=sa-32|0;sa=e;N[e+16>>2]=N[b>>2];f=N[b+4>>2];N[e+20>>2]=f;g=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;h=N[c>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;N[e>>2]=h;i=e+16|0;ua[J[J[a>>2]+16>>2]](a,i,e,d);f=N[c>>2];N[e+16>>2]=f;N[e+20>>2]=N[b+4>>2];g=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;N[e>>2]=f;f=N[c+4>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;ua[J[J[a>>2]+16>>2]](a,i,e,d);N[e+16>>2]=N[c>>2];f=N[c+4>>2];N[e+20>>2]=f;g=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;h=N[b>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;N[e>>2]=h;ua[J[J[a>>2]+16>>2]](a,i,e,d);f=N[b>>2];N[e+16>>2]=f;N[e+20>>2]=N[c+4>>2];g=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;N[e>>2]=f;f=N[b+4>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;ua[J[J[a>>2]+16>>2]](a,i,e,d);g=N[b>>2];N[e+16>>2]=g;f=N[b+4>>2];N[e+20>>2]=f;h=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=h;N[e+4>>2]=f;N[e>>2]=g;g=N[c+8>>2];J[e+12>>2]=0;N[e+8>>2]=g;ua[J[J[a>>2]+16>>2]](a,i,e,d);g=N[c>>2];N[e+16>>2]=g;f=N[b+4>>2];N[e+20>>2]=f;h=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=h;N[e+4>>2]=f;N[e>>2]=g;g=N[c+8>>2];J[e+12>>2]=0;N[e+8>>2]=g;ua[J[J[a>>2]+16>>2]](a,i,e,d);g=N[c>>2];N[e+16>>2]=g;f=N[c+4>>2];N[e+20>>2]=f;h=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=h;N[e+4>>2]=f;N[e>>2]=g;g=N[c+8>>2];J[e+12>>2]=0;N[e+8>>2]=g;ua[J[J[a>>2]+16>>2]](a,i,e,d);g=N[b>>2];N[e+16>>2]=g;f=N[c+4>>2];N[e+20>>2]=f;h=N[b+8>>2];J[e+28>>2]=0;N[e+24>>2]=h;N[e+4>>2]=f;N[e>>2]=g;g=N[c+8>>2];J[e+12>>2]=0;N[e+8>>2]=g;ua[J[J[a>>2]+16>>2]](a,i,e,d);N[e+16>>2]=N[b>>2];f=N[b+4>>2];N[e+20>>2]=f;g=N[c+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;h=N[c>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;N[e>>2]=h;ua[J[J[a>>2]+16>>2]](a,i,e,d);f=N[c>>2];N[e+16>>2]=f;N[e+20>>2]=N[b+4>>2];g=N[c+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;N[e>>2]=f;f=N[c+4>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;ua[J[J[a>>2]+16>>2]](a,i,e,d);N[e+16>>2]=N[c>>2];f=N[c+4>>2];N[e+20>>2]=f;g=N[c+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;h=N[b>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;N[e>>2]=h;ua[J[J[a>>2]+16>>2]](a,i,e,d);f=N[b>>2];N[e+16>>2]=f;N[e+20>>2]=N[c+4>>2];g=N[c+8>>2];J[e+28>>2]=0;N[e+24>>2]=g;N[e>>2]=f;f=N[b+4>>2];J[e+12>>2]=0;N[e+8>>2]=g;N[e+4>>2]=f;ua[J[J[a>>2]+16>>2]](a,i,e,d);sa=e+32|0;}function ge(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=sa-48|0;sa=k;h=J[c+8>>2];if(h){p=h;while(1){if(J[p+20>>2]>J[a+100>>2]){j=J[p+12>>2];i=J[j+92>>2];l=J[j+96>>2];h=J[c+88>>2];m=J[j+88>>2];o=J[c+92>>2];j=J[c+96>>2];J[k+44>>2]=-1;j=l-j|0;J[k+40>>2]=j;i=i-o|0;J[k+36>>2]=i;l=m-h|0;J[k+32>>2]=l;m=i;q=i>>31;i=us(i,q,J[e+8>>2],J[e+12>>2]);h=ta;o=l;r=l>>31;l=us(l,r,J[e>>2],J[e+4>>2]);i=l+i|0;h=ta+h|0;h=i>>>0<l>>>0?h+1|0:h;s=j>>31;t=us(j,s,J[e+16>>2],J[e+20>>2]);l=t+i|0;i=ta+h|0;i=l>>>0<t>>>0?i+1|0:i;h=us(J[f+8>>2],J[f+12>>2],m,q);q=ta;o=us(J[f>>2],J[f+4>>2],o,r);m=o+h|0;h=ta+q|0;h=m>>>0<o>>>0?h+1|0:h;u=m;m=us(J[f+16>>2],J[f+20>>2],j,s);j=u+m|0;h=ta+h|0;h=j>>>0<m>>>0?h+1|0:h;m=h;a:{if(!!j&(h|0)>=0|(h|0)>0){J[k+24>>2]=1;o=0;h=-1;break a}if((m|0)<0){J[k+24>>2]=-1;h=j;j=0-j|0;m=0-(((h|0)!=0)+m|0)|0;o=0;h=1;break a}J[k+24>>2]=0;j=0;m=0;o=1;h=0;}J[k+8>>2]=j;J[k+12>>2]=m;b:{c:{d:{m=k;if(!l&(i|0)<=0|(i|0)<0){if((i|0)>0|(i|0)>=0){break d}J[k+24>>2]=h;i=0-(((l|0)!=0)+i|0)|0;l=0-l|0;}J[m+16>>2]=l;J[k+20>>2]=i;break c}J[k+16>>2]=0;J[k+20>>2]=0;if(o){break b}}if(!n){n=J[k+12>>2];J[g>>2]=J[k+8>>2];J[g+4>>2]=n;J[g+16>>2]=J[k+24>>2];n=J[k+20>>2];J[g+8>>2]=J[k+16>>2];J[g+12>>2]=n;n=p;break b}j=lb(k+8|0,g);if((j|0)<0){n=J[k+12>>2];J[g>>2]=J[k+8>>2];J[g+4>>2]=n;J[g+16>>2]=J[k+24>>2];n=J[k+20>>2];J[g+8>>2]=J[k+16>>2];J[g+12>>2]=n;n=p;break b}if(j){break b}x=n;i=J[n+4>>2];e:{f:{if(J[n>>2]==(p|0)){h=2;if((i|0)!=(p|0)){break f}j=J[p+12>>2];i=J[J[p+8>>2]+12>>2];h=J[i+96>>2];m=J[j+96>>2]-h|0;l=J[n+12>>2];o=J[i+92>>2];q=J[l+92>>2]-o|0;o=J[j+92>>2]-o|0;h=J[l+96>>2]-h|0;r=P(m,q)-P(o,h)|0;n=r;u=r>>31;r=J[d+8>>2];s=J[k+36>>2];t=J[d+4>>2];w=J[k+40>>2];v=P(r,s)-P(t,w)|0;v=us(n,u,v,v>>31);n=ta;i=J[i+88>>2];l=J[l+88>>2]-i|0;u=P(l,o);o=J[j+88>>2]-i|0;j=u-P(o,q)|0;u=j;y=j>>31;q=J[k+32>>2];i=s;s=J[d>>2];j=P(q,t)-P(i,s)|0;t=us(u,y,j,j>>31);i=t+v|0;j=ta+n|0;j=i>>>0<t>>>0?j+1|0:j;n=i;i=P(h,o)-P(l,m)|0;h=i;m=i>>31;i=P(s,w)-P(q,r)|0;l=us(h,m,i,i>>31);i=n+l|0;j=ta+j|0;j=i>>>0<l>>>0?j+1|0:j;h=!!i&(j|0)>=0|(j|0)>0?2:1;break e}h=(i|0)==(p|0);}}n=(h|0)!=2^b?p:x;}h=J[c+8>>2];}p=J[p>>2];if((p|0)!=(h|0)){continue}break}}sa=k+48|0;return n}function Fd(a,b){var c=0,d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=0,q=0,r=Q(0),s=Q(0),t=Q(0);a:{if(K[a+204|0]&2){c=J[a+8>>2];J[a+68>>2]=J[a+4>>2];J[a+72>>2]=c;c=J[a+16>>2];J[a+76>>2]=J[a+12>>2];J[a+80>>2]=c;c=J[a+24>>2];J[a+84>>2]=J[a+20>>2];J[a+88>>2]=c;c=J[a+32>>2];J[a+92>>2]=J[a+28>>2];J[a+96>>2]=c;c=J[a+40>>2];J[a+100>>2]=J[a+36>>2];J[a+104>>2]=c;c=J[a+48>>2];J[a+108>>2]=J[a+44>>2];J[a+112>>2]=c;c=a+52|0;break a}c=J[b+4>>2];J[a+68>>2]=J[b>>2];J[a+72>>2]=c;c=J[b+12>>2];J[a+76>>2]=J[b+8>>2];J[a+80>>2]=c;c=J[b+20>>2];J[a+84>>2]=J[b+16>>2];J[a+88>>2]=c;c=J[b+28>>2];J[a+92>>2]=J[b+24>>2];J[a+96>>2]=c;c=J[b+36>>2];J[a+100>>2]=J[b+32>>2];J[a+104>>2]=c;c=J[b+44>>2];J[a+108>>2]=J[b+40>>2];J[a+112>>2]=c;c=b+48|0;}p=J[c+4>>2];J[a+116>>2]=J[c>>2];J[a+120>>2]=p;p=J[c+8>>2];c=J[c+12>>2];q=J[a+400>>2];J[a+156>>2]=J[a+396>>2];J[a+160>>2]=q;q=J[a+392>>2];J[a+148>>2]=J[a+388>>2];J[a+152>>2]=q;J[a+124>>2]=p;J[a+128>>2]=c;c=J[a+376>>2];J[a+132>>2]=J[a+372>>2];J[a+136>>2]=c;c=J[a+384>>2];J[a+140>>2]=J[a+380>>2];J[a+144>>2]=c;c=J[b+12>>2];J[a+12>>2]=J[b+8>>2];J[a+16>>2]=c;c=J[b+4>>2];J[a+4>>2]=J[b>>2];J[a+8>>2]=c;c=J[b+28>>2];J[a+28>>2]=J[b+24>>2];J[a+32>>2]=c;c=J[b+20>>2];J[a+20>>2]=J[b+16>>2];J[a+24>>2]=c;c=J[b+44>>2];J[a+44>>2]=J[b+40>>2];J[a+48>>2]=c;c=J[b+36>>2];J[a+36>>2]=J[b+32>>2];J[a+40>>2]=c;c=J[b+60>>2];J[a+60>>2]=J[b+56>>2];J[a+64>>2]=c;c=J[b+52>>2];J[a+52>>2]=J[b+48>>2];J[a+56>>2]=c;j=N[a+8>>2];k=N[a+12>>2];l=N[a+28>>2];m=N[a+20>>2];n=N[a+24>>2];g=N[a+44>>2];r=N[a+464>>2];h=N[a+36>>2];i=N[a+40>>2];s=N[a+460>>2];o=N[a+4>>2];t=N[a+456>>2];J[a+368>>2]=0;J[a+352>>2]=0;J[a+336>>2]=0;d=Q(r*g);e=Q(t*h);f=Q(s*i);N[a+364>>2]=Q(g*d)+Q(Q(h*e)+Q(i*f));N[a+360>>2]=Q(l*d)+Q(Q(m*e)+Q(n*f));N[a+356>>2]=Q(k*d)+Q(Q(o*e)+Q(j*f));d=Q(r*l);e=Q(t*m);f=Q(s*n);N[a+348>>2]=Q(g*d)+Q(Q(h*e)+Q(i*f));N[a+344>>2]=Q(l*d)+Q(Q(m*e)+Q(n*f));N[a+340>>2]=Q(k*d)+Q(Q(o*e)+Q(j*f));d=g;g=Q(k*r);e=h;h=Q(o*t);f=i;i=Q(j*s);N[a+332>>2]=Q(d*g)+Q(Q(e*h)+Q(f*i));N[a+328>>2]=Q(l*g)+Q(Q(m*h)+Q(i*n));N[a+324>>2]=Q(k*g)+Q(Q(o*h)+Q(j*i));}function zn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=Q(0),i=0,j=0,k=Q(0),l=0,m=Q(0),n=0,o=0;g=sa-16|0;sa=g;J[8462]=J[8462]+1;if(J[a+4>>2]&2){d=J[b+192>>2];h=Q(ua[J[J[d>>2]+20>>2]](d,N[8265]));N[g+12>>2]=h;d=J[c+192>>2];k=Q(ua[J[J[d>>2]+20>>2]](d,N[8265]));N[g+8>>2]=k;d=h<k?g+12|0:g+8|0;}else {d=33060;}k=N[d>>2];m=N[c+184>>2];h=N[b+184>>2];e=J[a+72>>2];d=J[e+12>>2];a:{b:{if(d){J[e+12>>2]=J[d>>2];J[e+8>>2]=J[e+8>>2]-1;break b}d=0;if(K[a+4|0]&4){break a}J[8456]=J[8456]+1;d=ua[J[8258]](868,16)|0;}J[d>>2]=1025;J[d+120>>2]=0;J[d+124>>2]=0;J[d+128>>2]=0;J[d+132>>2]=0;J[d+136>>2]=0;J[d+140>>2]=0;J[d+144>>2]=0;J[d+148>>2]=0;J[d+152>>2]=0;J[d+156>>2]=0;J[d+160>>2]=0;J[d+164>>2]=0;J[d+168>>2]=0;J[d+328>>2]=0;J[d+332>>2]=0;J[d+336>>2]=0;J[d+340>>2]=0;J[d+344>>2]=0;J[d+348>>2]=0;J[d+352>>2]=0;J[d+356>>2]=0;J[d+360>>2]=0;J[d+364>>2]=0;J[d+368>>2]=0;J[d+372>>2]=0;J[d+376>>2]=0;J[d+536>>2]=0;J[d+540>>2]=0;J[d+544>>2]=0;J[d+548>>2]=0;J[d+552>>2]=0;J[d+556>>2]=0;J[d+560>>2]=0;J[d+564>>2]=0;J[d+568>>2]=0;J[d+572>>2]=0;J[d+576>>2]=0;J[d+580>>2]=0;J[d+584>>2]=0;J[d+792>>2]=0;J[d+784>>2]=0;J[d+788>>2]=0;J[d+776>>2]=0;J[d+780>>2]=0;J[d+768>>2]=0;J[d+772>>2]=0;J[d+760>>2]=0;J[d+764>>2]=0;J[d+752>>2]=0;J[d+756>>2]=0;J[d+744>>2]=0;J[d+748>>2]=0;J[d+836>>2]=b;J[d+840>>2]=c;J[d+844>>2]=0;N[d+848>>2]=k;N[d+852>>2]=h<m?h:m;f=J[a+12>>2];J[d+864>>2]=f;c:{if(J[a+16>>2]!=(f|0)){break c}l=f?f<<1:1;if((l|0)<=(f|0)){break c}d:{if(!l){b=0;break d}J[8456]=J[8456]+1;b=ua[J[8258]](l<<2,16)|0;f=J[a+12>>2];}e:{if((f|0)<=0){break e}c=0;if(f>>>0>=4){o=f&-4;while(1){i=c<<2;J[i+b>>2]=J[i+J[a+20>>2]>>2];e=i|4;J[e+b>>2]=J[e+J[a+20>>2]>>2];e=i|8;J[e+b>>2]=J[e+J[a+20>>2]>>2];e=i|12;J[e+b>>2]=J[e+J[a+20>>2]>>2];c=c+4|0;j=j+4|0;if((o|0)!=(j|0)){continue}break}}e=f&3;if(!e){break e}while(1){j=c<<2;J[j+b>>2]=J[j+J[a+20>>2]>>2];c=c+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}c=J[a+20>>2];if(!(!c|!K[a+24|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}f=J[a+12>>2];}J[a+20>>2]=b;H[a+24|0]=1;J[a+16>>2]=l;}J[J[a+20>>2]+(f<<2)>>2]=d;J[a+12>>2]=f+1;}sa=g+16|0;return d|0}function qb(a,b,c,d,e){var f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0);k=K[e+16|0]&-16;H[e+16|0]=k;B=N[d+8>>2];m=N[b+8>>2];r=Q(B-m);l=N[a+8>>2];f=Q(l-m);C=N[d>>2];n=N[b>>2];s=Q(C-n);i=N[a>>2];g=Q(i-n);D=N[d+4>>2];o=N[b+4>>2];t=Q(D-o);p=N[a+4>>2];h=Q(p-o);j=Q(Q(r*f)+Q(Q(s*g)+Q(t*h)));x=N[c+8>>2];u=Q(x-m);y=N[c>>2];v=Q(y-n);z=N[c+4>>2];w=Q(z-o);g=Q(Q(u*f)+Q(Q(v*g)+Q(w*h)));a:{if(!(!(g<=Q(0))|!(j<=Q(0)))){a=J[b+4>>2];J[e>>2]=J[b>>2];J[e+4>>2]=a;a=J[b+12>>2];J[e+8>>2]=J[b+8>>2];J[e+12>>2]=a;H[e+16|0]=k|1;g=Q(0);f=Q(0);h=Q(1);break a}f=Q(l-x);h=Q(i-y);q=Q(p-z);A=Q(Q(r*f)+Q(Q(s*h)+Q(t*q)));h=Q(Q(u*f)+Q(Q(v*h)+Q(w*q)));if(!(!(h>=Q(0))|!(h>=A))){a=J[c+4>>2];J[e>>2]=J[c>>2];J[e+4>>2]=a;a=J[c+12>>2];J[e+8>>2]=J[c+8>>2];J[e+12>>2]=a;H[e+16|0]=k|2;g=Q(1);f=Q(0);h=Q(0);break a}q=Q(Q(g*A)-Q(j*h));b:{if(!(h<=Q(0))|!(g>=Q(0))){break b}f=Q(0);if(!(q<=Q(0))){break b}J[e+12>>2]=0;H[e+16|0]=k|3;g=Q(g/Q(g-h));N[e+8>>2]=m+Q(u*g);N[e+4>>2]=o+Q(w*g);N[e>>2]=n+Q(v*g);h=Q(Q(1)-g);break a}f=Q(l-B);i=Q(i-C);p=Q(p-D);l=Q(Q(u*f)+Q(Q(v*i)+Q(w*p)));f=Q(Q(r*f)+Q(Q(s*i)+Q(t*p)));if(!(!(f>=Q(0))|!(f>=l))){a=J[d+4>>2];J[e>>2]=J[d>>2];J[e+4>>2]=a;a=J[d+12>>2];J[e+8>>2]=J[d+8>>2];J[e+12>>2]=a;H[e+16|0]=k|4;f=Q(1);g=Q(0);h=Q(0);break a}i=Q(Q(l*j)-Q(f*g));c:{if(!(f<=Q(0))|!(j>=Q(0))){break c}g=Q(0);if(!(i<=Q(0))){break c}J[e+12>>2]=0;H[e+16|0]=k|5;f=Q(j/Q(j-f));N[e+8>>2]=m+Q(r*f);N[e+4>>2]=o+Q(t*f);N[e>>2]=n+Q(s*f);h=Q(Q(1)-f);break a}d:{j=Q(Q(h*f)-Q(A*l));if(!(j<=Q(0))){break d}g=Q(A-h);if(!(g>=Q(0))){break d}f=Q(l-f);if(!(f>=Q(0))){break d}J[e+12>>2]=0;H[e+16|0]=k|6;f=Q(g/Q(g+f));N[e+8>>2]=x+Q(Q(B-x)*f);N[e+4>>2]=z+Q(Q(D-z)*f);N[e>>2]=y+Q(Q(C-y)*f);g=Q(Q(1)-f);h=Q(0);break a}J[e+12>>2]=0;H[e+16|0]=k|7;g=Q(Q(1)/Q(q+Q(j+i)));f=Q(q*g);g=Q(i*g);N[e+8>>2]=Q(r*f)+Q(m+Q(u*g));N[e+4>>2]=Q(t*f)+Q(o+Q(w*g));N[e>>2]=Q(s*f)+Q(n+Q(v*g));h=Q(Q(Q(1)-g)-f);}N[e+20>>2]=h;J[e+32>>2]=0;N[e+28>>2]=f;N[e+24>>2]=g;}function ji(a){a=a|0;var b=0,c=Q(0),d=0,e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=0,u=Q(0),v=0,w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),K=Q(0),L=Q(0),M=Q(0),O=Q(0),R=Q(0),S=Q(0),T=Q(0),U=Q(0),V=0;J[a+36>>2]=0;m=sa-16|0;b=m+8|0;J[b>>2]=0;J[b+4>>2]=0;J[m>>2]=0;J[m+4>>2]=0;d=J[a+32>>2];e=J[a+28>>2];while(1){v=(s<<2)+m|0;J[v>>2]=1065353216;T=N[d+404>>2];U=N[e+404>>2];l=N[e+56>>2];n=N[e+20>>2];w=N[e+24>>2];x=N[e+28>>2];y=N[e+60>>2];z=N[e+44>>2];A=N[e+36>>2];B=N[e+40>>2];r=N[e+52>>2];j=N[a+308>>2];C=N[e+12>>2];f=N[a+300>>2];D=N[e+4>>2];o=N[a+304>>2];E=N[e+8>>2];g=N[d+56>>2];F=N[d+20>>2];p=N[d+24>>2];q=N[d+28>>2];h=N[d+52>>2];G=N[d+12>>2];H=N[d+4>>2];I=N[d+8>>2];K=N[d+60>>2];i=N[a+324>>2];L=N[d+44>>2];k=N[a+316>>2];M=N[d+36>>2];c=N[a+320>>2];O=N[d+40>>2];V=J[m+4>>2];b=P(s,84)+a|0;t=b+48|0;J[t>>2]=J[m>>2];J[t+4>>2]=V;t=J[m+12>>2];J[b+56>>2]=J[m+8>>2];J[b+60>>2]=t;J[b+92>>2]=0;J[b+76>>2]=0;R=Q(Q(g+Q(Q(i*q)+Q(Q(k*F)+Q(p*c))))-g);g=N[b+48>>2];S=Q(Q(h+Q(Q(i*G)+Q(Q(k*H)+Q(I*c))))-h);h=N[b+52>>2];u=Q(Q(R*g)-Q(S*h));c=Q(Q(K+Q(Q(i*L)+Q(Q(k*M)+Q(O*c))))-K);i=N[b+56>>2];k=Q(Q(c*h)-Q(R*i));c=Q(Q(S*i)-Q(c*g));q=Q(Q(L*u)+Q(Q(G*k)+Q(q*c)));N[b+88>>2]=q;p=Q(Q(O*u)+Q(Q(I*k)+Q(p*c)));N[b+84>>2]=p;k=Q(Q(M*u)+Q(Q(H*k)+Q(F*c)));N[b+80>>2]=k;r=Q(Q(r+Q(Q(j*C)+Q(Q(f*D)+Q(E*o))))-r);l=Q(Q(l+Q(Q(j*x)+Q(Q(f*n)+Q(w*o))))-l);c=Q(Q(h*r)-Q(g*l));f=Q(Q(y+Q(Q(j*z)+Q(Q(f*A)+Q(B*o))))-y);j=Q(Q(l*i)-Q(h*f));f=Q(Q(f*g)-Q(i*r));o=Q(Q(z*c)+Q(Q(C*j)+Q(x*f)));N[b+72>>2]=o;i=Q(Q(B*c)+Q(Q(E*j)+Q(w*f)));N[b+68>>2]=i;j=Q(Q(A*c)+Q(Q(D*j)+Q(n*f)));N[b- -64>>2]=j;f=N[e+464>>2];c=N[e+460>>2];g=N[e+456>>2];J[b+108>>2]=0;g=Q(j*g);N[b+96>>2]=g;c=Q(i*c);N[b+100>>2]=c;f=Q(o*f);N[b+104>>2]=f;h=N[d+464>>2];l=N[d+460>>2];n=N[d+456>>2];J[b+124>>2]=0;n=Q(k*n);N[b+112>>2]=n;l=Q(p*l);N[b+116>>2]=l;h=Q(q*h);N[b+120>>2]=h;N[b+128>>2]=Q(T+Q(U+Q(Q(f*o)+Q(Q(g*j)+Q(i*c)))))+Q(Q(h*q)+Q(Q(n*k)+Q(p*l)));J[v>>2]=0;s=s+1|0;if((s|0)!=3){continue}break}}function hl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;N[b+16>>2]=N[a+20>>2];N[b+20>>2]=N[a+24>>2];N[b+24>>2]=N[a+28>>2];N[b+28>>2]=N[a+32>>2];N[b>>2]=N[a+4>>2];N[b+4>>2]=N[a+8>>2];N[b+8>>2]=N[a+12>>2];N[b+12>>2]=N[a+16>>2];N[b+32>>2]=N[a+36>>2];N[b+36>>2]=N[a+40>>2];N[b+40>>2]=N[a+44>>2];N[b+44>>2]=N[a+48>>2];J[b+48>>2]=J[a+56>>2];J[b+52>>2]=K[a+60|0];d=J[a+88>>2];J[b+56>>2]=d;a:{if(!d){J[b+64>>2]=0;break a}d=ua[J[J[c>>2]+28>>2]](c,J[a+96>>2])|0;J[b+64>>2]=d;if(!d){break a}g=J[a+88>>2];h=ua[J[J[c>>2]+16>>2]](c,48,g)|0;if((g|0)>0){d=J[h+8>>2];while(1){e=J[a+96>>2]+(f<<6)|0;N[d+16>>2]=N[e+16>>2];N[d+20>>2]=N[e+20>>2];N[d+24>>2]=N[e+24>>2];N[d+28>>2]=N[e+28>>2];N[d>>2]=N[e>>2];N[d+4>>2]=N[e+4>>2];N[d+8>>2]=N[e+8>>2];N[d+12>>2]=N[e+12>>2];J[d+32>>2]=J[e+32>>2];J[d+36>>2]=J[e+36>>2];e=J[e+40>>2];J[d+44>>2]=0;J[d+40>>2]=e;d=d+48|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}ua[J[J[c>>2]+20>>2]](c,h,9036,1497453121,J[a+96>>2]);}d=J[a+128>>2];J[b+60>>2]=d;b:{if(!d){J[b+68>>2]=0;break b}d=ua[J[J[c>>2]+28>>2]](c,J[a+136>>2])|0;J[b+68>>2]=d;if(!d){break b}f=0;h=J[a+128>>2];i=ua[J[J[c>>2]+16>>2]](c,16,h)|0;c:{if((h|0)<=0){g=J[a+136>>2];break c}g=J[a+136>>2];d=J[i+8>>2];while(1){e=(f<<4)+g|0;J[d+12>>2]=J[e+12>>2];I[d+6>>1]=L[e+6>>1];I[d+8>>1]=L[e+8>>1];I[d+10>>1]=L[e+10>>1];I[d>>1]=L[e>>1];I[d+2>>1]=L[e+2>>1];I[d+4>>1]=L[e+4>>1];d=d+16|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}ua[J[J[c>>2]+20>>2]](c,i,9013,1497453121,g);}J[b+76>>2]=J[a+144>>2];d=J[a+152>>2];J[b+80>>2]=d;if(!d){J[b+72>>2]=0;return 8705}d=b;b=ua[J[J[c>>2]+28>>2]](c,J[a+160>>2])|0;J[d+72>>2]=b;if(b){f=0;e=J[a+152>>2];g=ua[J[J[c>>2]+16>>2]](c,20,e)|0;d:{if((e|0)<=0){a=J[a+160>>2];break d}a=J[a+160>>2];d=J[g+8>>2];while(1){b=(f<<5)+a|0;I[d+14>>1]=L[b+6>>1];I[d+16>>1]=L[b+8>>1];I[d+18>>1]=L[b+10>>1];I[d+8>>1]=L[b>>1];I[d+10>>1]=L[b+2>>1];I[d+12>>1]=L[b+4>>1];J[d>>2]=J[b+12>>2];J[d+4>>2]=J[b+16>>2];d=d+20|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}ua[J[J[c>>2]+20>>2]](c,g,8773,1497453121,a);}return 8705}function Dk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0);c=sa-144|0;sa=c;if(J[a+24>>2]>0){f=c- -64|0;while(1){g=P(h,80);d=g+J[a+32>>2]|0;e=J[d+12>>2];J[c+24>>2]=J[d+8>>2];J[c+28>>2]=e;e=J[d+4>>2];J[c+16>>2]=J[d>>2];J[c+20>>2]=e;e=J[d+28>>2];J[c+40>>2]=J[d+24>>2];J[c+44>>2]=e;e=J[d+20>>2];J[c+32>>2]=J[d+16>>2];J[c+36>>2]=e;e=J[d+44>>2];J[c+56>>2]=J[d+40>>2];J[c+60>>2]=e;e=J[d+36>>2];J[c+48>>2]=J[d+32>>2];J[c+52>>2]=e;e=J[d+60>>2];J[f+8>>2]=J[d+56>>2];J[f+12>>2]=e;e=J[d+52>>2];J[f>>2]=J[d+48>>2];J[f+4>>2]=e;d=J[d+64>>2];d=ua[J[J[d>>2]+28>>2]](d)|0;e=J[d+12>>2];J[c+8>>2]=J[d+8>>2];J[c+12>>2]=e;e=J[d+4>>2];J[c>>2]=J[d>>2];J[c+4>>2]=e;i=N[a+88>>2];j=N[b+4>>2];k=N[a+84>>2];l=N[b>>2];N[c+8>>2]=Q(N[c+8>>2]*N[b+8>>2])/N[a+92>>2];J[c+12>>2]=0;N[c>>2]=Q(l*N[c>>2])/k;N[c+4>>2]=Q(j*N[c+4>>2])/i;d=J[(J[a+32>>2]+g|0)+64>>2];ua[J[J[d>>2]+24>>2]](d,c);i=N[a+84>>2];j=N[b>>2];k=N[a+88>>2];l=N[b+4>>2];m=N[a+92>>2];n=N[b+8>>2];J[c+76>>2]=0;N[c+72>>2]=Q(n*N[c+72>>2])/m;N[c+68>>2]=Q(l*N[c+68>>2])/k;N[c+64>>2]=Q(j*N[c+64>>2])/i;e=J[c+20>>2];d=J[a+32>>2]+g|0;J[d>>2]=J[c+16>>2];J[d+4>>2]=e;e=J[c+28>>2];J[d+8>>2]=J[c+24>>2];J[d+12>>2]=e;e=J[c+44>>2];J[d+24>>2]=J[c+40>>2];J[d+28>>2]=e;e=J[c+36>>2];J[d+16>>2]=J[c+32>>2];J[d+20>>2]=e;e=J[c+60>>2];J[d+40>>2]=J[c+56>>2];J[d+44>>2]=e;e=J[c+52>>2];J[d+32>>2]=J[c+48>>2];J[d+36>>2]=e;e=J[f+12>>2];J[d+56>>2]=J[f+8>>2];J[d+60>>2]=e;e=J[f+4>>2];J[d+48>>2]=J[f>>2];J[d+52>>2]=e;if(J[a+72>>2]){d=J[(J[a+32>>2]+g|0)+64>>2];ua[J[J[d>>2]+8>>2]](d,c+16|0,c+128|0,c+112|0);d=J[c+140>>2];J[c+88>>2]=J[c+136>>2];J[c+92>>2]=d;d=J[c+132>>2];J[c+80>>2]=J[c+128>>2];J[c+84>>2]=d;d=J[c+124>>2];J[c+104>>2]=J[c+120>>2];J[c+108>>2]=d;d=J[c+116>>2];J[c+96>>2]=J[c+112>>2];J[c+100>>2]=d;_c(J[a+72>>2],J[(J[a+32>>2]+g|0)+76>>2],c+80|0);}h=h+1|0;if((h|0)<J[a+24>>2]){continue}break}}d=J[b+4>>2];J[a+84>>2]=J[b>>2];J[a+88>>2]=d;d=J[b+12>>2];J[a+92>>2]=J[b+8>>2];J[a+96>>2]=d;ua[J[J[a>>2]+68>>2]](a);sa=c+144|0;}function Fo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0);e=sa-32|0;sa=e;i=N[b>>2];f=N[c>>2];j=N[b+4>>2];g=N[c+4>>2];k=N[b+8>>2];h=N[c+8>>2];J[e+28>>2]=0;J[e+12>>2]=0;l=Q(Q(h+k)*Q(.5));h=Q(Q(h-k)*Q(.5));k=Q(l+h);N[e+24>>2]=k;m=Q(Q(g+j)*Q(.5));g=Q(Q(g-j)*Q(.5));j=Q(m+g);N[e+20>>2]=j;n=Q(Q(f+i)*Q(.5));f=Q(Q(f-i)*Q(.5));i=Q(n+f);N[e+16>>2]=i;N[e+8>>2]=k;N[e+4>>2]=j;f=Q(n-f);N[e>>2]=f;b=e+16|0;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=k;N[e+20>>2]=j;N[e+16>>2]=f;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=k;g=Q(m-g);N[e+4>>2]=g;N[e>>2]=f;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=k;N[e+20>>2]=g;N[e+16>>2]=f;J[e+28>>2]=0;J[e+12>>2]=0;h=Q(l-h);N[e+8>>2]=h;N[e+4>>2]=g;N[e>>2]=f;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=h;N[e+20>>2]=g;N[e+16>>2]=i;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=h;N[e+4>>2]=g;N[e>>2]=f;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=h;N[e+20>>2]=g;N[e+16>>2]=f;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=h;N[e+4>>2]=j;N[e>>2]=f;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=h;N[e+20>>2]=j;N[e+16>>2]=f;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=k;N[e+4>>2]=j;N[e>>2]=f;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=h;N[e+20>>2]=j;N[e+16>>2]=f;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=h;N[e+4>>2]=j;N[e>>2]=i;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=h;N[e+20>>2]=j;N[e+16>>2]=i;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=h;N[e+4>>2]=g;N[e>>2]=i;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=h;N[e+20>>2]=g;N[e+16>>2]=i;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=k;N[e+4>>2]=g;N[e>>2]=i;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=k;N[e+20>>2]=g;N[e+16>>2]=f;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=k;N[e+4>>2]=g;N[e>>2]=i;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=k;N[e+20>>2]=g;N[e+16>>2]=i;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=k;N[e+4>>2]=j;N[e>>2]=i;ua[J[J[a>>2]+16>>2]](a,b,e,d);N[e+24>>2]=k;N[e+20>>2]=j;N[e+16>>2]=i;J[e+28>>2]=0;J[e+12>>2]=0;N[e+8>>2]=h;N[e+4>>2]=j;N[e>>2]=i;ua[J[J[a>>2]+16>>2]](a,b,e,d);sa=e+32|0;}function ym(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=0,i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=0,I=Q(0);H=sa-16|0;sa=H;ua[J[8262]](5934);f=K[a+76|0];s=f?b:c;h=J[s+4>>2];a:{if(J[h+4>>2]-21>>>0>8){break a}i=f?c:b;if(J[J[i+4>>2]+4>>2]>19){break a}I=Q(ua[J[J[h>>2]+48>>2]](h));J[e+4>>2]=J[a+72>>2];c=sa+-64|0;sa=c;b=a+8|0;N[b+56>>2]=I;J[b+52>>2]=d;J[b+40>>2]=s;J[b+36>>2]=i;J[b+44>>2]=e;d=J[s+12>>2];t=N[d+52>>2];u=N[d+56>>2];f=J[i+12>>2];v=N[f+52>>2];w=N[f+56>>2];g=N[d+20>>2];j=N[d+36>>2];x=N[f+20>>2];y=N[f+36>>2];z=N[f+24>>2];k=N[d+24>>2];A=N[f+40>>2];l=N[d+40>>2];B=N[f+32>>2];m=N[d+32>>2];C=N[f>>2];n=N[d>>2];D=N[f+16>>2];o=N[d+16>>2];p=N[d+48>>2];E=N[f+48>>2];q=N[d+4>>2];F=N[f+4>>2];G=N[f+8>>2];r=N[d+8>>2];J[c+60>>2]=0;J[c+44>>2]=0;J[c+28>>2]=0;N[c+40>>2]=Q(A*l)+Q(Q(G*r)+Q(k*z));N[c+36>>2]=Q(y*l)+Q(Q(F*r)+Q(k*x));N[c+24>>2]=Q(A*j)+Q(Q(G*q)+Q(g*z));N[c+20>>2]=Q(y*j)+Q(Q(F*q)+Q(g*x));p=Q(-p);N[c+56>>2]=Q(Q(Q(r*p)-Q(k*t))-Q(l*u))+Q(Q(w*l)+Q(Q(E*r)+Q(k*v)));N[c+52>>2]=Q(Q(Q(q*p)-Q(g*t))-Q(j*u))+Q(Q(w*j)+Q(Q(E*q)+Q(g*v)));J[c+12>>2]=0;N[c>>2]=Q(B*m)+Q(Q(C*n)+Q(o*D));N[c+32>>2]=Q(B*l)+Q(Q(C*r)+Q(k*D));N[c+16>>2]=Q(B*j)+Q(Q(C*q)+Q(g*D));N[c+8>>2]=Q(A*m)+Q(Q(G*n)+Q(o*z));N[c+4>>2]=Q(y*m)+Q(Q(F*n)+Q(o*x));N[c+48>>2]=Q(Q(Q(n*p)-Q(o*t))-Q(m*u))+Q(Q(w*m)+Q(Q(E*n)+Q(o*v)));d=J[i+4>>2];ua[J[J[d>>2]+8>>2]](d,c,b+4|0,b+20|0);g=Q(N[e+32>>2]+I);N[b+20>>2]=g+N[b+20>>2];N[b+24>>2]=g+N[b+24>>2];N[b+28>>2]=g+N[b+28>>2];N[b+4>>2]=N[b+4>>2]-g;N[b+8>>2]=N[b+8>>2]-g;N[b+12>>2]=N[b+12>>2]-g;sa=c- -64|0;c=J[i+8>>2];d=J[a+72>>2];J[d+840>>2]=J[s+8>>2];J[d+836>>2]=c;ua[J[J[h>>2]+64>>2]](h,b,a+12|0,a+28|0);b=J[e+4>>2];if(J[b+844>>2]){d=J[b+836>>2];f=J[J[e+8>>2]+8>>2];c=(d|0)==(f|0);h=b;b=J[J[e+12>>2]+8>>2];Ua(h,(c?d:b)+4|0,(c?b:f)+4|0);}J[a+44>>2]=0;J[a+48>>2]=0;}ua[J[8263]]();sa=H+16|0;}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f=sa-80|0;sa=f;J[a+76>>2]=J[a+76>>2]+1;d=J[a+24>>2];if((d|0)>0){g=f- -64|0;h=f+48|0;i=f+32|0;j=f+16|0;l=d;while(1){k=J[a+32>>2];m=l-1|0;n=P(m,80);c=k+n|0;if(J[c+64>>2]==(b|0)){J[a+76>>2]=J[a+76>>2]+1;e=J[a+72>>2];if(e){_b(e,J[c+76>>2]);k=J[a+32>>2];d=J[a+24>>2];}c=k+n|0;e=c+8|0;o=J[e+4>>2];J[f+8>>2]=J[e>>2];J[f+12>>2]=o;e=J[c+4>>2];J[f>>2]=J[c>>2];J[f+4>>2]=e;e=J[c+28>>2];J[j+8>>2]=J[c+24>>2];J[j+12>>2]=e;e=J[c+20>>2];J[j>>2]=J[c+16>>2];J[j+4>>2]=e;e=J[c+44>>2];J[i+8>>2]=J[c+40>>2];J[i+12>>2]=e;e=J[c+36>>2];J[i>>2]=J[c+32>>2];J[i+4>>2]=e;e=J[c+60>>2];J[h+8>>2]=J[c+56>>2];J[h+12>>2]=e;e=J[c+52>>2];J[h>>2]=J[c+48>>2];J[h+4>>2]=e;e=J[c+76>>2];J[g+8>>2]=J[c+72>>2];J[g+12>>2]=e;e=J[c+68>>2];J[g>>2]=J[c+64>>2];J[g+4>>2]=e;e=k;k=P(d,80)-80|0;d=e+k|0;e=J[d+4>>2];J[c>>2]=J[d>>2];J[c+4>>2]=e;e=J[d+12>>2];J[c+8>>2]=J[d+8>>2];J[c+12>>2]=e;e=J[d+20>>2];J[c+16>>2]=J[d+16>>2];J[c+20>>2]=e;e=J[d+28>>2];J[c+24>>2]=J[d+24>>2];J[c+28>>2]=e;e=J[d+36>>2];J[c+32>>2]=J[d+32>>2];J[c+36>>2]=e;e=J[d+44>>2];J[c+40>>2]=J[d+40>>2];J[c+44>>2]=e;e=J[d+60>>2];J[c+56>>2]=J[d+56>>2];J[c+60>>2]=e;e=J[d+52>>2];J[c+48>>2]=J[d+48>>2];J[c+52>>2]=e;e=J[d+68>>2];J[c+64>>2]=J[d+64>>2];J[c+68>>2]=e;e=J[d+76>>2];J[c+72>>2]=J[d+72>>2];J[c+76>>2]=e;d=J[f+4>>2];c=k+J[a+32>>2]|0;J[c>>2]=J[f>>2];J[c+4>>2]=d;d=J[f+12>>2];J[c+8>>2]=J[f+8>>2];J[c+12>>2]=d;d=J[j+4>>2];J[c+16>>2]=J[j>>2];J[c+20>>2]=d;d=J[j+12>>2];J[c+24>>2]=J[j+8>>2];J[c+28>>2]=d;d=J[i+12>>2];J[c+40>>2]=J[i+8>>2];J[c+44>>2]=d;d=J[i+4>>2];J[c+32>>2]=J[i>>2];J[c+36>>2]=d;d=J[h+4>>2];J[c+48>>2]=J[h>>2];J[c+52>>2]=d;d=J[h+12>>2];J[c+56>>2]=J[h+8>>2];J[c+60>>2]=d;d=J[g+4>>2];J[c+64>>2]=J[g>>2];J[c+68>>2]=d;d=J[g+12>>2];J[c+72>>2]=J[g+8>>2];J[c+76>>2]=d;if(J[a+72>>2]){J[J[(J[a+32>>2]+n|0)+76>>2]+36>>2]=m;}d=J[a+24>>2]-1|0;J[a+24>>2]=d;}c=l>>>0>1;l=m;if(c){continue}break}}ua[J[J[a>>2]+68>>2]](a);sa=f+80|0;}function ze(a,b,c,d,e,f){var g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=0,r=Q(0),s=Q(0),t=0,u=Q(0),v=Q(0),w=Q(0),x=0,y=0,z=Q(0),A=Q(0),B=Q(0),C=0,D=0,E=0,F=0,G=0,H=0;g=sa-32|0;sa=g;if(J[a+56>>2]>0){n=N[d+8>>2];o=N[c+8>>2];j=Q(n-o);p=N[d>>2];l=N[c>>2];k=Q(p-l);m=N[d+4>>2];i=N[c+4>>2];r=Q(m-i);s=Q(Q(1)/Q(Y(Q(Q(j*j)+Q(Q(k*k)+Q(r*r))))));u=Q(j*s);v=Q(u*j);j=Q(k*s);w=Q(j*k);k=Q(r*s);r=Q(v+Q(w+Q(r*k)));s=Q((n>o?n:o)+N[f+8>>2]);v=Q((i<m?m:i)+N[f+4>>2]);w=Q((l<p?p:l)+N[f>>2]);z=Q((n<o?n:o)+N[e+8>>2]);A=Q((i>m?m:i)+N[e+4>>2]);B=Q((l>p?p:l)+N[e>>2]);d=J[a+96>>2];n=u==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/u);h=n<Q(0);C=(h<<4)+g|8;o=k==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/k);q=o<Q(0);D=(q<<4)+g|4;E=(!h<<4)+g|8;F=(!q<<4)+g|4;p=j==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/j);h=p<Q(0);G=(h<<4)+g|0;H=(!h<<4)+g|0;while(1){h=J[d+4>>2];J[g>>2]=J[d>>2];J[g+4>>2]=h;h=J[d+12>>2];J[g+8>>2]=J[d+8>>2];J[g+12>>2]=h;h=J[d+28>>2];J[g+24>>2]=J[d+24>>2];J[g+28>>2]=h;h=J[d+20>>2];J[g+16>>2]=J[d+16>>2];J[g+20>>2]=h;N[g>>2]=N[g>>2]-N[f>>2];N[g+4>>2]=N[g+4>>2]-N[f+4>>2];N[g+8>>2]=N[g+8>>2]-N[f+8>>2];N[g+16>>2]=N[g+16>>2]-N[e>>2];N[g+20>>2]=N[g+20>>2]-N[e+4>>2];N[g+24>>2]=N[g+24>>2]-N[e+8>>2];h=0;a:{if(N[d+16>>2]<B){break a}h=0;if(N[d>>2]>w){break a}h=1;}q=0;b:{c:{d:{e:{f:{if((N[d+24>>2]<z|s<N[d+8>>2]?q:h)^1|N[d+4>>2]>v|N[d+20>>2]<A){break f}j=N[c>>2];l=Q(p*Q(N[G>>2]-j));i=N[c+4>>2];m=Q(o*Q(N[F>>2]-i));if(l>m){break f}i=Q(o*Q(N[D>>2]-i));j=Q(p*Q(N[H>>2]-j));if(i>j){break f}l=i>l?i:l;k=N[c+8>>2];i=Q(n*Q(N[E>>2]-k));if(l>i){break f}k=Q(n*Q(N[C>>2]-k));m=j>m?m:j;if(k>m){break f}y=J[d+32>>2];q=(y|0)==-1;h=r>(k>l?k:l)&(i<m?i:m)>Q(0);if(!h|(y|0)!=-1){break e}ua[J[J[b>>2]+8>>2]](b,J[d+36>>2],J[d+40>>2]);break d}q=J[d+32>>2]==-1;h=0;}if(q){break d}if(!h){break c}}t=t+1|0;d=d- -64|0;break b}h=J[d+32>>2];t=h+t|0;d=(h<<6)+d|0;}x=x+1|0;if(J[a+56>>2]>(t|0)){continue}break}}if(J[8470]<(x|0)){J[8470]=x;}sa=g+32|0;}function ks(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;J[8456]=J[8456]+1;b=ua[J[8258]](172,16)|0;J[b+4>>2]=1065353216;J[b+8>>2]=1065353216;J[b+48>>2]=0;H[b+36|0]=1;J[b+12>>2]=1065353216;J[b+16>>2]=0;J[b+32>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;H[b+100|0]=1;J[b>>2]=22040;J[b+96>>2]=0;H[b+120|0]=1;J[b+88>>2]=0;J[b+92>>2]=0;J[b+116>>2]=0;H[b+140|0]=1;J[b+108>>2]=0;J[b+112>>2]=0;J[b+136>>2]=0;H[b+160|0]=1;J[b+128>>2]=0;J[b+132>>2]=0;J[b+168>>2]=0;H[b+164|0]=1;J[b+148>>2]=0;J[b+152>>2]=0;J[b+156>>2]=0;H[b+165|0]=1;J[8456]=J[8456]+1;f=ua[J[8258]](32,16)|0;h=J[b+24>>2];a:{if((h|0)<=0){break a}if((h|0)!=1){j=h&-2;while(1){e=d<<5;c=f+e|0;a=J[b+32>>2]+e|0;g=J[a+4>>2];J[c>>2]=J[a>>2];J[c+4>>2]=g;g=J[a+28>>2];J[c+24>>2]=J[a+24>>2];J[c+28>>2]=g;g=J[a+20>>2];J[c+16>>2]=J[a+16>>2];J[c+20>>2]=g;g=J[a+12>>2];J[c+8>>2]=J[a+8>>2];J[c+12>>2]=g;a=e|32;c=a+f|0;a=a+J[b+32>>2]|0;e=J[a+4>>2];J[c>>2]=J[a>>2];J[c+4>>2]=e;e=J[a+12>>2];J[c+8>>2]=J[a+8>>2];J[c+12>>2]=e;e=J[a+20>>2];J[c+16>>2]=J[a+16>>2];J[c+20>>2]=e;e=J[a+28>>2];J[c+24>>2]=J[a+24>>2];J[c+28>>2]=e;d=d+2|0;i=i+2|0;if((i|0)!=(j|0)){continue}break}}if(!(h&1)){break a}a=d<<5;d=a+f|0;a=a+J[b+32>>2]|0;c=J[a+4>>2];J[d>>2]=J[a>>2];J[d+4>>2]=c;c=J[a+28>>2];J[d+24>>2]=J[a+24>>2];J[d+28>>2]=c;c=J[a+20>>2];J[d+16>>2]=J[a+16>>2];J[d+20>>2]=c;c=J[a+12>>2];J[d+8>>2]=J[a+8>>2];J[d+12>>2]=c;}a=J[b+32>>2];if(!(a?!a|!K[b+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[b+32>>2]=f;H[b+36|0]=1;J[b+28>>2]=1;a=f+(J[b+24>>2]<<5)|0;J[a+24>>2]=2;J[a+28>>2]=0;J[a+16>>2]=0;J[a+20>>2]=16;J[a+8>>2]=12;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;J[b+24>>2]=J[b+24>>2]+1;c=K[b+164|0];f=J[(c?b+128|0:b+148|0)>>2];a=J[b+32>>2];J[a+24>>2]=c?2:3;J[a+4>>2]=0;d=12;J[a+8>>2]=c?12:6;J[a>>2]=(f|0)/3;b:{if(K[b+165|0]){d=16;c=J[b+88>>2];break b}c=J[b+108>>2]/3|0;}J[a+20>>2]=d;J[a+16>>2]=0;J[a+12>>2]=c;return b|0}function $a(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=0,p=0,q=0,r=Q(0),s=Q(0);c=sa+-64|0;sa=c;b=J[a+8>>2];g=J[a+4>>2];d=c+48|0;e=c+32|0;ua[J[J[b>>2]+8>>2]](b,g+4|0,d,e);b=J[a+12>>2];f=J[b+68>>2];ua[J[J[f>>2]+16>>2]](f,J[J[a+4>>2]+188>>2],d,e,J[b+24>>2]);d=J[a+12>>2];b=J[d+24>>2];ua[J[J[b>>2]+32>>2]](b,J[J[a+4>>2]+344>>2],d+28|0,b);J[c+24>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;H[c+28|0]=1;b=J[J[a+4>>2]+344>>2];a:{if((ua[J[J[b>>2]+36>>2]](b)|0)<=0){break a}while(1){d=J[c+16>>2];b:{if((d|0)>=0){break b}if(J[c+20>>2]<0){b=J[c+24>>2];if(!(b?!b|!K[c+28|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[c+28|0]=1;J[c+20>>2]=0;J[c+24>>2]=0;}e=0;b=d;f=0-b&3;if(f){while(1){J[J[c+24>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(d>>>0>4294967292){break b}while(1){d=b<<2;J[d+J[c+24>>2]>>2]=0;J[(d+J[c+24>>2]|0)+4>>2]=0;J[(d+J[c+24>>2]|0)+8>>2]=0;J[(d+J[c+24>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}J[c+16>>2]=0;b=J[J[a+4>>2]+344>>2];b=J[(ua[J[J[b>>2]+28>>2]](b)|0)+12>>2]+(h<<4)|0;d=J[J[J[b+4>>2]>>2]+188>>2];e=J[J[J[b>>2]>>2]+188>>2];c:{if(!(J[d+8>>2]&J[e+4>>2])|!(J[e+8>>2]&J[d+4>>2])){break c}b=J[b+8>>2];if(b){ua[J[J[b>>2]+16>>2]](b,c+12|0);}n=J[c+16>>2];if((n|0)<=0){break c}p=J[a+4>>2];d=0;q=J[c+24>>2];while(1){f=J[(d<<2)+q>>2];o=J[f+844>>2];if((o|0)>0){i=J[f+836>>2]==(p|0)?Q(-1):Q(1);j=N[g+60>>2];k=N[g+56>>2];l=N[g+52>>2];b=0;while(1){e=f+P(b,208)|0;r=N[e+68>>2];s=N[e+72>>2];m=N[e+84>>2];j=Q(Q(m*Q(i*N[e+76>>2]))+j);N[g+60>>2]=j;k=Q(Q(m*Q(i*s))+k);N[g+56>>2]=k;l=Q(Q(m*Q(i*r))+l);N[g+52>>2]=l;b=b+1|0;if((o|0)!=(b|0)){continue}break}}d=d+1|0;if((n|0)!=(d|0)){continue}break}}b=J[J[a+4>>2]+344>>2];h=h+1|0;if((ua[J[J[b>>2]+36>>2]](b)|0)>(h|0)){continue}break}a=J[c+24>>2];if(!a|!K[c+28|0]){break a}if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}sa=c- -64|0;}function Ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=Q(0),i=0,j=0,k=0,l=0,m=Q(0),n=0,o=0,p=0,q=0,r=Q(0),s=Q(0),t=Q(0),u=0,v=Q(0),w=0;i=sa-2048|0;sa=i;a:{if((d|0)<=0){break a}if(d>>>0>=8){l=d&-8;while(1){e=f<<4;J[(e+c|0)+12>>2]=-581039253;J[((e|16)+c|0)+12>>2]=-581039253;J[((e|32)+c|0)+12>>2]=-581039253;J[((e|48)+c|0)+12>>2]=-581039253;J[((e|64)+c|0)+12>>2]=-581039253;J[((e|80)+c|0)+12>>2]=-581039253;J[((e|96)+c|0)+12>>2]=-581039253;J[((e|112)+c|0)+12>>2]=-581039253;f=f+8|0;j=j+8|0;if((l|0)!=(j|0)){continue}break}}e=d&7;if(e){while(1){J[((f<<4)+c|0)+12>>2]=-581039253;f=f+1|0;g=g+1|0;if((e|0)!=(g|0)){continue}break}}if((d|0)<=0){break a}while(1){if((ua[J[J[a>>2]+96>>2]](a)|0)>0){e=p<<4;q=e+b|0;l=c+e|0;n=0;while(1){g=128;b:{c:{if(((ua[J[J[a>>2]+96>>2]](a)|0)-n|0)>127){break c}g=(ua[J[J[a>>2]+96>>2]](a)|0)-n|0;if((g|0)>0){break c}h=Q(-34028234663852886e22);g=-1;break b}e=0;j=(g|0)==1;if(!j){k=g&-2;f=0;while(1){ua[J[J[a>>2]+108>>2]](a,e,(e<<4)+i|0);o=e|1;ua[J[J[a>>2]+108>>2]](a,o,(o<<4)+i|0);e=e+2|0;f=f+2|0;if((k|0)!=(f|0)){continue}break}}o=g&1;if(o){ua[J[J[a>>2]+108>>2]](a,e,(e<<4)+i|0);}m=N[q+8>>2];r=N[q+4>>2];s=N[q>>2];d:{if(j){e=0;g=-1;h=Q(-34028234663852886e22);break d}w=g&-2;e=0;g=-1;h=Q(-34028234663852886e22);j=0;while(1){f=(e<<4)+i|0;t=Q(Q(N[f+8>>2]*m)+Q(Q(N[f>>2]*s)+Q(r*N[f+4>>2])));f=t>h;u=e|1;k=(u<<4)+i|0;v=Q(Q(N[k+8>>2]*m)+Q(Q(N[k>>2]*s)+Q(r*N[k+4>>2])));h=f?t:h;k=v>h;h=k?v:h;g=k?u:f?e:g;e=e+2|0;j=j+2|0;if((w|0)!=(j|0)){continue}break}}if(!o){break b}f=(e<<4)+i|0;m=Q(Q(N[f+8>>2]*m)+Q(Q(N[f>>2]*s)+Q(r*N[f+4>>2])));f=m>h;h=f?m:h;g=f?e:g;}if(N[l+12>>2]<h){e=(g<<4)+i|0;J[l+8>>2]=J[e+8>>2];g=J[e+4>>2];J[l>>2]=J[e>>2];J[l+4>>2]=g;N[l+12>>2]=h;}n=n+128|0;if((ua[J[J[a>>2]+96>>2]](a)|0)>(n|0)){continue}break}}p=p+1|0;if((p|0)!=(d|0)){continue}break}}sa=i+2048|0;}function qf(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{l=J[a+32>>2];b=J[a+12>>2];if((l|0)>=(b|0)){break a}b:{if((b|0)<=J[a+36>>2]){d=J[a+40>>2];break b}if(b){J[8456]=J[8456]+1;d=ua[J[8258]](b<<2,16)|0;c=J[a+32>>2];}else {c=l;}g=J[a+40>>2];c:{if((c|0)>0){if(c>>>0>=4){j=c&-4;while(1){e=f<<2;J[e+d>>2]=J[e+g>>2];h=e|4;J[h+d>>2]=J[g+h>>2];h=e|8;J[h+d>>2]=J[g+h>>2];e=e|12;J[e+d>>2]=J[e+g>>2];f=f+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}c=c&3;if(!c){break c}while(1){e=f<<2;J[e+d>>2]=J[e+g>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break c}if(g){break c}J[a+40>>2]=d;J[a+36>>2]=b;H[a+44|0]=1;break b}if(g?K[a+44|0]:0){J[8457]=J[8457]+1;ua[J[8259]](g);}J[a+40>>2]=d;H[a+44|0]=1;J[a+36>>2]=b;}c=l<<2;j=b<<2;Fa(c+d|0,0,j-c|0);J[a+32>>2]=b;g=J[a+52>>2];if((g|0)<(b|0)){d:{if((b|0)<=J[a+56>>2]){d=J[a+60>>2];break d}e:{if(!b){d=0;c=g;break e}J[8456]=J[8456]+1;d=ua[J[8258]](j,16)|0;c=J[a+52>>2];}e=J[a+60>>2];f:{if((c|0)>0){k=0;f=0;if(c>>>0>=4){n=c&-4;i=0;while(1){h=f<<2;J[h+d>>2]=J[e+h>>2];m=h|4;J[m+d>>2]=J[e+m>>2];m=h|8;J[m+d>>2]=J[e+m>>2];h=h|12;J[h+d>>2]=J[e+h>>2];f=f+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}c=c&3;if(!c){break f}while(1){i=f<<2;J[i+d>>2]=J[e+i>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break f}if(e){break f}J[a+60>>2]=d;J[a+56>>2]=b;H[a- -64|0]=1;break d}if(e?K[a- -64|0]:0){J[8457]=J[8457]+1;ua[J[8259]](e);}J[a+60>>2]=d;H[a+64|0]=1;J[a+56>>2]=b;}c=g<<2;Fa(c+d|0,0,j-c|0);}J[a+52>>2]=b;if((b|0)>0){Fa(J[a+40>>2],255,j);Fa(J[a+60>>2],255,j);}if((l|0)<=0){break a}c=J[a+60>>2];g=J[a+16>>2];d=J[a+40>>2];f=0;while(1){b=g+(f<<4)|0;b=J[J[b+4>>2]+12>>2]<<16|J[J[b>>2]+12>>2];b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=d+((J[a+12>>2]-1&(b>>>16^b))<<2)|0;J[c+(f<<2)>>2]=J[b>>2];J[b>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function hi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=0,q=0,r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=0,w=0,x=Q(0),y=Q(0),z=Q(0);e=J[a+28>>2];d=J[a+32>>2];c=J[b+8>>2];J[c>>2]=1065353216;p=J[b+24>>2];l=p<<2;v=l+4|0;J[c+v>>2]=1065353216;q=p<<3;w=q+8|0;J[c+w>>2]=1065353216;m=N[e+24>>2];n=N[e+28>>2];o=N[e+40>>2];g=N[a+304>>2];j=N[e+44>>2];f=N[a+308>>2];k=N[e+12>>2];r=N[e+4>>2];s=N[e+8>>2];t=N[e+20>>2];u=N[e+36>>2];i=N[a+300>>2];c=J[b+12>>2];J[c+12>>2]=0;J[c>>2]=0;o=Q(Q(j*f)+Q(Q(u*i)+Q(g*o)));N[c+4>>2]=o;m=Q(Q(n*f)+Q(Q(t*i)+Q(g*m)));N[c+8>>2]=-m;h=c+l|0;J[h+12>>2]=0;n=Q(Q(k*f)+Q(Q(r*i)+Q(s*g)));N[h+8>>2]=n;J[h+4>>2]=0;N[h>>2]=-o;c=c+q|0;J[c+8>>2]=0;J[c+12>>2]=0;N[c+4>>2]=-n;N[c>>2]=m;c=J[b+16>>2];J[c>>2]=-1082130432;J[c+v>>2]=-1082130432;J[c+w>>2]=-1082130432;k=N[d+40>>2];r=N[d+44>>2];j=N[d+24>>2];g=N[a+320>>2];s=N[d+28>>2];f=N[a+324>>2];t=N[d+12>>2];u=N[d+4>>2];x=N[d+8>>2];y=N[d+36>>2];z=N[d+20>>2];i=N[a+316>>2];c=J[b+20>>2];J[c+12>>2]=0;J[c>>2]=0;j=Q(Q(s*f)+Q(Q(z*i)+Q(g*j)));N[c+8>>2]=j;k=Q(Q(r*f)+Q(Q(y*i)+Q(g*k)));N[c+4>>2]=-k;h=c+l|0;J[h+12>>2]=0;g=Q(Q(t*f)+Q(Q(u*i)+Q(x*g)));N[h+8>>2]=-g;J[h+4>>2]=0;N[h>>2]=k;c=c+q|0;J[c+8>>2]=0;J[c+12>>2]=0;N[c+4>>2]=g;N[c>>2]=-j;c=J[b+28>>2];h=J[a+332>>2];f=Q(N[(h&1?a+336|0:b+4|0)>>2]*N[b>>2]);N[c>>2]=f*Q(Q(Q(g+N[d+52>>2])-n)-N[e+52>>2]);N[c+l>>2]=f*Q(Q(Q(j+N[d+56>>2])-m)-N[e+56>>2]);N[c+q>>2]=f*Q(Q(Q(k+N[d+60>>2])-o)-N[e+60>>2]);e=p<<1;if(h&2){d=J[b+32>>2];N[d>>2]=N[a+340>>2];N[d+l>>2]=N[a+340>>2];N[d+(e<<2)>>2]=N[a+340>>2];}f=N[a+356>>2];a:{if(!(f>Q(0))){break a}i=Q(-f);N[J[b+36>>2]>>2]=i;N[J[b+40>>2]>>2]=f;g=N[a+356>>2];if(g>Q(0)){d=p<<2;N[d+J[b+36>>2]>>2]=i;N[d+J[b+40>>2]>>2]=f;g=N[a+356>>2];}if(!(g>Q(0))){break a}e=e<<2;N[e+J[b+36>>2]>>2]=i;N[e+J[b+40>>2]>>2]=f;}N[b+48>>2]=N[a+352>>2];}function Jc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{l=J[a+28>>2];b=J[a+12>>2];if((l|0)>=(b|0)){break a}b:{if((b|0)<=J[a+32>>2]){d=J[a+36>>2];break b}if(b){J[8456]=J[8456]+1;d=ua[J[8258]](b<<2,16)|0;c=J[a+28>>2];}else {c=l;}g=J[a+36>>2];c:{if((c|0)>0){if(c>>>0>=4){j=c&-4;while(1){e=f<<2;J[e+d>>2]=J[e+g>>2];h=e|4;J[h+d>>2]=J[g+h>>2];h=e|8;J[h+d>>2]=J[g+h>>2];e=e|12;J[e+d>>2]=J[e+g>>2];f=f+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}c=c&3;if(!c){break c}while(1){e=f<<2;J[e+d>>2]=J[e+g>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break c}if(g){break c}J[a+36>>2]=d;J[a+32>>2]=b;H[a+40|0]=1;break b}if(g?K[a+40|0]:0){J[8457]=J[8457]+1;ua[J[8259]](g);}J[a+36>>2]=d;H[a+40|0]=1;J[a+32>>2]=b;}c=l<<2;j=b<<2;Fa(c+d|0,0,j-c|0);J[a+28>>2]=b;g=J[a+48>>2];if((g|0)<(b|0)){d:{if((b|0)<=J[a+52>>2]){d=J[a+56>>2];break d}e:{if(!b){d=0;c=g;break e}J[8456]=J[8456]+1;d=ua[J[8258]](j,16)|0;c=J[a+48>>2];}e=J[a+56>>2];f:{if((c|0)>0){k=0;f=0;if(c>>>0>=4){n=c&-4;i=0;while(1){h=f<<2;J[h+d>>2]=J[e+h>>2];m=h|4;J[m+d>>2]=J[e+m>>2];m=h|8;J[m+d>>2]=J[e+m>>2];h=h|12;J[h+d>>2]=J[e+h>>2];f=f+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}c=c&3;if(!c){break f}while(1){i=f<<2;J[i+d>>2]=J[e+i>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break f}if(e){break f}J[a+56>>2]=d;J[a+52>>2]=b;H[a+60|0]=1;break d}if(e?K[a+60|0]:0){J[8457]=J[8457]+1;ua[J[8259]](e);}J[a+56>>2]=d;H[a+60|0]=1;J[a+52>>2]=b;}c=g<<2;Fa(c+d|0,0,j-c|0);}J[a+48>>2]=b;if((b|0)>0){Fa(J[a+36>>2],255,j);Fa(J[a+56>>2],255,j);}if((l|0)<=0){break a}c=J[a+56>>2];g=J[a+16>>2];d=J[a+36>>2];f=0;while(1){b=g+P(f,12)|0;b=J[b+4>>2]<<16|J[b>>2];b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=d+((J[a+12>>2]-1&(b>>>16^b))<<2)|0;J[c+(f<<2)>>2]=J[b>>2];J[b>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function Xd(a,b,c,d,e,f,g){var h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0);J[e>>2]=0;J[e+4>>2]=0;J[e+32>>2]=0;J[e+24>>2]=0;J[e+28>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;J[f+4>>2]=c;J[f>>2]=a;l=N[d+20>>2];m=N[d+36>>2];h=N[b+20>>2];i=N[b+36>>2];n=N[d+24>>2];o=N[b+24>>2];p=N[d+40>>2];q=N[b+40>>2];j=N[d+32>>2];r=N[d>>2];s=N[d+16>>2];t=N[d+4>>2];u=N[b+32>>2];v=N[b>>2];w=N[b+16>>2];x=N[b+4>>2];y=N[d+8>>2];k=N[b+8>>2];J[f+52>>2]=0;J[f+36>>2]=0;J[f+20>>2]=0;N[f+48>>2]=Q(p*q)+Q(Q(y*k)+Q(o*n));N[f+44>>2]=Q(p*i)+Q(Q(y*x)+Q(h*n));N[f+40>>2]=Q(p*u)+Q(Q(y*v)+Q(w*n));N[f+32>>2]=Q(m*q)+Q(Q(t*k)+Q(o*l));N[f+28>>2]=Q(m*i)+Q(Q(t*x)+Q(h*l));N[f+24>>2]=Q(m*u)+Q(Q(t*v)+Q(w*l));N[f+16>>2]=Q(j*q)+Q(Q(r*k)+Q(s*o));N[f+12>>2]=Q(j*i)+Q(Q(r*x)+Q(s*h));N[f+8>>2]=Q(j*u)+Q(Q(r*v)+Q(s*w));B=N[b+52>>2];C=N[d+52>>2];D=N[b+56>>2];z=N[d+56>>2];l=N[b+20>>2];m=N[b+36>>2];r=N[d+20>>2];s=N[d+36>>2];h=N[b+24>>2];t=N[d+24>>2];i=N[b+40>>2];u=N[d+40>>2];E=N[b+48>>2];A=N[d+48>>2];n=N[b+32>>2];o=N[b>>2];p=N[b+16>>2];q=N[b+4>>2];v=N[d+32>>2];w=N[d>>2];x=N[d+16>>2];y=N[d+4>>2];j=N[b+8>>2];k=N[d+8>>2];J[f+124>>2]=0;J[f+120>>2]=g?904:905;J[f+116>>2]=0;J[f+100>>2]=0;J[f+84>>2]=0;J[f+68>>2]=0;N[f+96>>2]=Q(i*u)+Q(Q(j*k)+Q(t*h));N[f+92>>2]=Q(i*s)+Q(Q(j*y)+Q(r*h));N[f+88>>2]=Q(i*v)+Q(Q(j*w)+Q(x*h));N[f+80>>2]=Q(m*u)+Q(Q(q*k)+Q(t*l));N[f+76>>2]=Q(m*s)+Q(Q(q*y)+Q(r*l));N[f+72>>2]=Q(m*v)+Q(Q(q*w)+Q(x*l));N[f- -64>>2]=Q(n*u)+Q(Q(o*k)+Q(p*t));N[f+60>>2]=Q(n*s)+Q(Q(o*y)+Q(p*r));N[f+56>>2]=Q(n*v)+Q(Q(o*w)+Q(p*x));k=i;i=Q(z-D);z=j;j=Q(A-E);A=h;h=Q(C-B);N[f+112>>2]=Q(k*i)+Q(Q(z*j)+Q(A*h));N[f+108>>2]=Q(m*i)+Q(Q(q*j)+Q(h*l));N[f+104>>2]=Q(n*i)+Q(Q(o*j)+Q(h*p));}function kc(a,b,c){var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0);d=sa-48|0;sa=d;H[a+60|0]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;e=N[b+8>>2];g=N[a+48>>2];f=N[b>>2];m=N[a+40>>2];i=N[b+4>>2];n=N[a+44>>2];j=Q(Q(e*g)+Q(Q(f*m)+Q(i*n)));h=e;e=Q(g*j);o=Q(h-e);h=Q(n*j);p=Q(i-h);i=f;f=Q(m*j);k=Q(i-f);a:{if(j<=Q(0)){N[d+24>>2]=e;N[d+20>>2]=h;N[d+16>>2]=f;i=h;r=f;h=Q(0);f=Q(0);break a}J[d+44>>2]=0;N[d+40>>2]=e;N[d+36>>2]=h;N[d+32>>2]=f;i=Q(0);q=e;e=Q(0);}b=0;J[d+12>>2]=0;N[d+4>>2]=p;N[d>>2]=k;N[d+8>>2]=o;k=Q(Q(o*o)+Q(Q(k*k)+Q(p*p)));b:{c:{if(k<Q(14210854715202004e-30)){H[a+65|0]=0;l=K[a+64|0];if(!(l|K[a+61|0])){break c}break b}H[a+65|0]=1;l=K[a+64|0];if(l|K[a+61|0]){break b}j=g;g=N[a+32>>2];N[d+40>>2]=Q(j*g)+q;N[d+36>>2]=Q(n*g)+h;N[d+32>>2]=Q(m*g)+f;}H[a+108|0]=0;b=jc(a,d+32|0,c,10)?2:0;l=K[a+64|0];}d:{if(l){break d}e:{if(K[a+61|0]){break e}if((ua[J[J[a>>2]+16>>2]](a)|0)!=1){break e}H[a+108|0]=1;}b=jc(a,d,c,10)|b;if(K[a+61|0]){break d}if((ua[J[J[a>>2]+16>>2]](a)|0)!=1){break d}H[a+108|0]=0;}if(!(k<Q(14210854715202004e-30))){f=N[a+40>>2];q=N[a+44>>2];g=e;e=N[a+32>>2];N[d+24>>2]=g-Q(e*N[a+48>>2]);N[d+20>>2]=i-Q(e*q);N[d+16>>2]=r-Q(f*e);}f:{if(K[a+61|0]){break f}if((ua[J[J[a>>2]+16>>2]](a)|0)!=1){break f}H[a+108|0]=1;}if(K[a+65|0]?K[a+64|0]:1){H[a+108|0]=0;}g:{h:{i:{if(!jc(a,d+16|0,c,1)){break i}b=b|4;if(K[a+64|0]){break i}c=Q(Q(N[a+80>>2]*N[a+48>>2])+Q(Q(N[a+72>>2]*N[a+40>>2])+Q(N[a+76>>2]*N[a+44>>2])));if(!(c>=Q(0))|!(Ma(N[a+28>>2])>c)){break i}H[a+60|0]=1;if(K[a+61|0]){break g}if((ua[J[J[a>>2]+16>>2]](a)|0)==1){break h}break g}if(K[a+61|0]){break g}if((ua[J[J[a>>2]+16>>2]](a)|0)!=1){break g}}H[a+108|0]=0;}sa=d+48|0;return b}function rk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=0,t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=0;e=sa-80|0;sa=e;x=Q(ua[J[J[a>>2]+48>>2]](a));while(1){J[e+72>>2]=0;J[e+76>>2]=0;J[e+64>>2]=0;J[e+68>>2]=0;s=t<<2;y=s+(e- -64|0)|0;J[y>>2]=1065353216;i=N[b+32>>2];j=N[b>>2];k=N[b+16>>2];l=N[b+36>>2];m=N[b+4>>2];n=N[b+20>>2];f=N[b+40>>2];g=N[b+8>>2];h=N[b+24>>2];J[e+44>>2]=0;o=f;f=N[e+72>>2];p=g;g=N[e+64>>2];q=h;h=N[e+68>>2];N[e+40>>2]=Q(o*f)+Q(Q(p*g)+Q(q*h));N[e+36>>2]=Q(l*f)+Q(Q(m*g)+Q(h*n));N[e+32>>2]=Q(i*f)+Q(Q(j*g)+Q(k*h));r=e+32|0;ua[J[J[a>>2]+64>>2]](e+48|0,a,r);i=N[b+48>>2];j=N[b+8>>2];k=N[b>>2];l=N[b+4>>2];m=N[b+52>>2];n=N[b+24>>2];p=N[b+16>>2];q=N[b+20>>2];f=N[b+56>>2];g=N[b+40>>2];h=N[b+32>>2];u=N[b+36>>2];J[e+44>>2]=0;o=f;f=N[e+56>>2];v=Q(g*f);g=N[e+48>>2];w=Q(h*g);h=N[e+52>>2];N[e+40>>2]=o+Q(v+Q(w+Q(u*h)));N[e+36>>2]=m+Q(Q(f*n)+Q(Q(g*p)+Q(h*q)));N[e+32>>2]=i+Q(Q(f*j)+Q(Q(g*k)+Q(h*l)));r=s+r|0;N[d+s>>2]=x+N[r>>2];J[y>>2]=-1082130432;i=N[b+32>>2];j=N[b>>2];k=N[b+16>>2];l=N[b+36>>2];m=N[b+4>>2];n=N[b+20>>2];f=N[b+40>>2];g=N[b+8>>2];h=N[b+24>>2];J[e+12>>2]=0;o=f;f=N[e+72>>2];p=g;g=N[e+64>>2];q=h;h=N[e+68>>2];N[e+8>>2]=Q(o*f)+Q(Q(p*g)+Q(q*h));N[e+4>>2]=Q(l*f)+Q(Q(m*g)+Q(h*n));N[e>>2]=Q(i*f)+Q(Q(j*g)+Q(k*h));ua[J[J[a>>2]+64>>2]](e+16|0,a,e);i=N[b+48>>2];j=N[b+8>>2];k=N[b>>2];l=N[b+4>>2];m=N[b+52>>2];n=N[b+24>>2];p=N[b+16>>2];q=N[b+20>>2];f=N[b+56>>2];g=N[b+40>>2];h=N[b+32>>2];u=N[b+36>>2];J[e+44>>2]=0;o=f;f=N[e+24>>2];v=Q(g*f);g=N[e+16>>2];w=Q(h*g);h=N[e+20>>2];N[e+40>>2]=o+Q(v+Q(w+Q(u*h)));N[e+36>>2]=m+Q(Q(f*n)+Q(Q(g*p)+Q(h*q)));N[e+32>>2]=i+Q(Q(f*j)+Q(Q(g*k)+Q(h*l)));N[c+s>>2]=N[r>>2]-x;t=t+1|0;if((t|0)!=3){continue}break}sa=e+80|0;}function ac(a,b,c){var d=0,e=Q(0),f=Q(0),g=Q(0),h=0;if(!J[a>>2]){J[a>>2]=c;J[c+32>>2]=0;return}d=J[b+40>>2];if(d){f=Q(N[c>>2]+N[c+16>>2]);e=Q(N[c+8>>2]+N[c+24>>2]);g=Q(N[c+4>>2]+N[c+20>>2]);while(1){h=b+36|0;b=J[b+36>>2];b=J[h+(!(Q(Q(Q(R(Q(f-Q(N[b>>2]+N[b+16>>2]))))+Q(R(Q(g-Q(N[b+4>>2]+N[b+20>>2])))))+Q(R(Q(e-Q(N[b+8>>2]+N[b+24>>2])))))<Q(Q(Q(R(Q(f-Q(N[d>>2]+N[d+16>>2]))))+Q(R(Q(g-Q(N[d+4>>2]+N[d+20>>2])))))+Q(R(Q(e-Q(N[d+8>>2]+N[d+24>>2]))))))<<2)>>2];d=J[b+40>>2];if(d){continue}break}}h=J[b+32>>2];d=J[a+4>>2];a:{if(d){J[a+4>>2]=0;break a}J[8456]=J[8456]+1;d=ua[J[8258]](44,16)|0;J[d>>2]=0;J[d+4>>2]=0;J[d+40>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;}J[d+36>>2]=0;J[d+40>>2]=0;J[d+32>>2]=h;f=N[c>>2];e=N[b>>2];N[d>>2]=e>f?f:e;f=N[c+16>>2];e=N[b+16>>2];N[d+16>>2]=e<f?f:e;f=N[c+4>>2];e=N[b+4>>2];N[d+4>>2]=e>f?f:e;f=N[c+20>>2];e=N[b+20>>2];N[d+20>>2]=e<f?f:e;f=N[c+8>>2];e=N[b+8>>2];N[d+8>>2]=e>f?f:e;f=N[c+24>>2];e=N[b+24>>2];N[d+24>>2]=e<f?f:e;b:{if(h){J[(((J[J[b+32>>2]+40>>2]==(b|0))<<2)+h|0)+36>>2]=d;J[d+36>>2]=b;J[b+32>>2]=d;J[d+40>>2]=c;J[c+32>>2]=d;f=N[d>>2];while(1){a=d;d=h;c:{if(!(N[d>>2]<=f)|!(N[d+4>>2]<=N[a+4>>2])|(!(N[d+8>>2]<=N[a+8>>2])|!(N[d+16>>2]>=N[a+16>>2]))){break c}if(!(N[d+20>>2]>=N[a+20>>2])){break c}if(N[d+24>>2]>=N[a+24>>2]){break b}}a=J[d+36>>2];f=N[a>>2];b=J[d+40>>2];e=N[b>>2];f=e>f?f:e;N[d>>2]=f;e=N[a+16>>2];g=N[b+16>>2];N[d+16>>2]=e>g?e:g;e=N[a+4>>2];g=N[b+4>>2];N[d+4>>2]=e<g?e:g;e=N[a+20>>2];g=N[b+20>>2];N[d+20>>2]=e>g?e:g;e=N[a+8>>2];g=N[b+8>>2];N[d+8>>2]=e<g?e:g;e=N[a+24>>2];g=N[b+24>>2];N[d+24>>2]=e>g?e:g;h=J[d+32>>2];if(h){continue}break}break b}J[d+36>>2]=b;J[b+32>>2]=d;J[d+40>>2]=c;J[c+32>>2]=d;J[a>>2]=d;}}function Dc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=J[a+56>>2];a:{if(g){break a}d=J[a+52>>2];b:{if(d){J[a+52>>2]=J[d+8>>2];g=J[d>>2];break b}J[8456]=J[8456]+1;d=ua[J[8258]](12,16)|0;e=J[a+60>>2];J[d+8>>2]=0;J[d+4>>2]=e;J[8456]=J[8456]+1;g=ua[J[8258]](P(e,24),16)|0;J[d>>2]=g;J[d+8>>2]=J[a+48>>2];J[a+48>>2]=d;}h=J[d+4>>2];if((h|0)<=0){break a}e=g;if(h>>>0>=4){m=h&-4;d=g;while(1){e=d+96|0;j=i+4|0;J[d+72>>2]=(h|0)>(j|0)?e:0;J[d+48>>2]=(h|0)>(i|3)?d+72|0:0;J[d+24>>2]=(h|0)>(i|2)?d+48|0:0;J[d>>2]=(h|0)>(i|1)?d+24|0:0;i=j;d=e;f=f+4|0;if((m|0)!=(f|0)){continue}break}}d=h&3;if(!d){break a}while(1){f=e;e=e+24|0;j=j+1|0;J[f>>2]=(h|0)>(j|0)?e:0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}J[a+56>>2]=J[g>>2];J[g+16>>2]=0;J[g+20>>2]=0;J[g+8>>2]=0;J[g+12>>2]=0;J[g>>2]=0;J[g+4>>2]=0;f=J[a+56>>2];c:{if(f){break c}d=J[a+52>>2];d:{if(d){J[a+52>>2]=J[d+8>>2];f=J[d>>2];break d}J[8456]=J[8456]+1;d=ua[J[8258]](12,16)|0;e=J[a+60>>2];J[d+8>>2]=0;J[d+4>>2]=e;J[8456]=J[8456]+1;f=ua[J[8258]](P(e,24),16)|0;J[d>>2]=f;J[d+8>>2]=J[a+48>>2];J[a+48>>2]=d;}k=J[d+4>>2];if((k|0)<=0){break c}l=0;j=0;e=f;if(k>>>0>=4){m=k&-4;i=0;d=f;h=0;while(1){e=d+96|0;j=i+4|0;J[d+72>>2]=(k|0)>(j|0)?e:0;J[d+48>>2]=(i|3)<(k|0)?d+72|0:0;J[d+24>>2]=(i|2)<(k|0)?d+48|0:0;J[d>>2]=(i|1)<(k|0)?d+24|0:0;i=j;d=e;h=h+4|0;if((m|0)!=(h|0)){continue}break}}d=k&3;if(!d){break c}while(1){i=e;e=e+24|0;j=j+1|0;J[i>>2]=(k|0)>(j|0)?e:0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}J[a+56>>2]=J[f>>2];J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;J[f>>2]=0;J[f+4>>2]=0;J[g+8>>2]=f;J[f+8>>2]=g;e=J[a+100>>2];J[g+20>>2]=e;J[f+20>>2]=e;J[g+12>>2]=c;J[f+12>>2]=b;J[g+16>>2]=0;J[f+16>>2]=0;c=J[a+116>>2];b=c+1|0;J[a+116>>2]=b;if((c|0)>=J[a+120>>2]){J[a+120>>2]=b;}return g}function Xr(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0;a=La(176);e=sa-32|0;sa=e;J[a>>2]=11916;b=a+4|0;J[b+16>>2]=0;J[b+8>>2]=-1;J[b+12>>2]=0;J[b>>2]=0;J[b+4>>2]=0;J[b+32>>2]=0;H[b+36|0]=1;J[b+24>>2]=0;J[b+28>>2]=0;b=a+44|0;J[b+16>>2]=0;J[b+8>>2]=-1;J[b+12>>2]=0;J[b>>2]=0;J[b+4>>2]=0;J[b+32>>2]=0;H[b+36|0]=1;J[b+24>>2]=0;J[b+28>>2]=0;J[a+168>>2]=0;c=1;H[a+172|0]=1;J[a+160>>2]=0;J[a+164>>2]=0;H[a+153|0]=0;H[a+154|0]=1;H[a+152|0]=1;J[a+124>>2]=0;J[a+100>>2]=0;J[a+104>>2]=0;J[a+136>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+116>>2]=10;J[a+120>>2]=1;J[a+108>>2]=1;J[a+112>>2]=0;J[8456]=J[8456]+1;d=rf(ua[J[8258]](72,16)|0);b=J[a+160>>2];J[a+148>>2]=0;J[a+96>>2]=d;J[a+140>>2]=0;J[a+144>>2]=0;J[a+84>>2]=0;J[a+88>>2]=0;J[a+92>>2]=0;J[e+24>>2]=0;H[e+28|0]=1;J[e+16>>2]=0;J[e+20>>2]=0;a:{if((b|0)>=2){while(1){d=J[a+168>>2]+P(c,20)|0;f=J[d+12>>2];if(!(f?!f|!K[d+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](f);}H[d+16|0]=1;J[d+12>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;c=c+1|0;if((c|0)!=(b|0)){continue}break a}}if((b|0)==1){break a}c=0;if(J[a+164>>2]<=0){J[8456]=J[8456]+1;f=ua[J[8258]](20,16)|0;d=J[a+160>>2];b:{if((d|0)<=0){break b}while(1){g=P(c,20);xf(g+f|0,g+J[a+168>>2]|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}h=J[a+160>>2];if((h|0)<=0){break b}c=0;while(1){d=J[a+168>>2]+P(c,20)|0;g=J[d+12>>2];if(!(g?!g|!K[d+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](g);}H[d+16|0]=1;J[d+12>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;c=c+1|0;if((h|0)!=(c|0)){continue}break}}c=J[a+168>>2];if(!(c?!c|!K[a+172|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+168>>2]=f;H[a+172|0]=1;J[a+164>>2]=1;}while(1){c=b;xf(J[a+168>>2]+P(b,20)|0,e+12|0);b=b+1|0;if(c){continue}break}}J[a+160>>2]=1;b=J[e+24>>2];if(!(b?!b|!K[e+28|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}sa=e+32|0;return a|0}function en(a){a=a|0;var b=0,c=Q(0),d=0,e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=0;m=sa-16|0;sa=m;ua[J[8262]](4699);d=J[a+8>>2];if((d|0)>0){while(1){g=J[J[a+16>>2]+(l<<2)>>2];a:{b:{if(K[a+76|0]){break b}switch(J[g+220>>2]-2|0){case 0:case 3:break a;default:break b}}b=sa+-64|0;sa=b;d=J[g+192>>2];ua[J[J[d>>2]+8>>2]](d,g+4|0,b+48|0,b+32|0);c=N[8265];k=Q(N[b+48>>2]-c);N[b+48>>2]=k;h=Q(N[b+52>>2]-c);N[b+52>>2]=h;f=Q(N[b+56>>2]-c);N[b+56>>2]=f;e=Q(c+N[b+32>>2]);N[b+32>>2]=e;i=Q(c+N[b+36>>2]);N[b+36>>2]=i;j=Q(c+N[b+40>>2]);N[b+40>>2]=j;c:{if(K[g+204|0]&3|(!K[a+44|0]|J[g+252>>2]!=2)){break c}d=J[g+192>>2];ua[J[J[d>>2]+8>>2]](d,g+68|0,b+16|0,b);h=Q(N[b+16>>2]-c);N[b+16>>2]=h;f=Q(N[b+20>>2]-c);N[b+20>>2]=f;e=Q(N[b+24>>2]-c);N[b+24>>2]=e;i=Q(c+N[b>>2]);N[b>>2]=i;j=Q(c+N[b+4>>2]);N[b+4>>2]=j;c=Q(c+N[b+8>>2]);N[b+8>>2]=c;k=N[b+48>>2];if(h<k){N[b+48>>2]=h;k=h;}h=N[b+52>>2];if(f<h){N[b+52>>2]=f;h=f;}f=N[b+56>>2];if(e<f){N[b+56>>2]=e;f=e;}e=N[b+28>>2];if(e<N[b+60>>2]){N[b+60>>2]=e;}e=N[b+32>>2];if(i>e){N[b+32>>2]=i;e=i;}i=N[b+36>>2];if(j>i){N[b+36>>2]=j;i=j;}j=N[b+40>>2];if(c>j){N[b+40>>2]=c;j=c;}c=N[b+12>>2];if(!(c>N[b+44>>2])){break c}N[b+44>>2]=c;}d=J[a+68>>2];d:{e:{if(!(H[g+204|0]&1)){c=Q(j-f);f=Q(c*c);c=Q(e-k);e=Q(c*c);c=Q(i-h);if(!(Q(f+Q(e+Q(c*c)))<Q(999999995904))){break e}}ua[J[J[d>>2]+16>>2]](d,J[g+188>>2],b+48|0,b+32|0,J[a+24>>2]);break d}if((J[g+220>>2]&-2)!=4){J[g+220>>2]=5;}if(K[33852]){break d}d=J[a+72>>2];if(!d){break d}H[33852]=1;ua[J[J[d>>2]+44>>2]](d,5794);d=J[a+72>>2];ua[J[J[d>>2]+44>>2]](d,10341);d=J[a+72>>2];ua[J[J[d>>2]+44>>2]](d,10418);d=J[a+72>>2];ua[J[J[d>>2]+44>>2]](d,10409);}sa=b- -64|0;d=J[a+8>>2];}l=l+1|0;if((l|0)<(d|0)){continue}break}}ua[J[8263]]();sa=m+16|0;}function Qm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=0,u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=0,B=0;c=sa-96|0;sa=c;e=N[a+76>>2];i=N[a+36>>2];f=N[a+32>>2];j=N[a+80>>2];n=N[a+52>>2];o=N[a+44>>2];p=N[a+48>>2];k=N[a+84>>2];q=N[a+68>>2];w=N[a+60>>2];x=N[a- -64>>2];y=N[a+28>>2];l=N[b+8>>2];g=N[b>>2];h=N[b+4>>2];J[c+92>>2]=0;u=Q(k+Q(Q(l*q)+Q(Q(g*w)+Q(h*x))));N[c+88>>2]=u;v=Q(j+Q(Q(l*n)+Q(Q(g*o)+Q(h*p))));N[c+84>>2]=v;l=Q(e+Q(Q(l*i)+Q(Q(g*y)+Q(h*f))));N[c+80>>2]=l;g=N[b+20>>2];h=N[b+24>>2];m=N[b+16>>2];J[c+76>>2]=0;z=Q(k+Q(Q(h*q)+Q(Q(m*w)+Q(x*g))));N[c+72>>2]=z;r=Q(j+Q(Q(h*n)+Q(Q(m*o)+Q(p*g))));N[c+68>>2]=r;s=Q(e+Q(Q(h*i)+Q(Q(m*y)+Q(f*g))));N[c+64>>2]=s;g=N[b+36>>2];h=N[b+40>>2];m=N[b+32>>2];J[c+60>>2]=0;k=Q(k+Q(Q(h*q)+Q(Q(m*w)+Q(x*g))));N[c+56>>2]=k;j=Q(j+Q(Q(h*n)+Q(Q(m*o)+Q(p*g))));N[c+52>>2]=j;e=Q(e+Q(Q(h*i)+Q(Q(m*y)+Q(f*g))));N[c+48>>2]=e;J[c+44>>2]=0;n=Q(Q(Q(u+z)+k)*Q(.3333333432674408));N[c+40>>2]=n;o=Q(Q(Q(v+r)+j)*Q(.3333333432674408));N[c+36>>2]=o;p=Q(Q(Q(l+s)+e)*Q(.3333333432674408));N[c+32>>2]=p;b=J[a+8>>2];if(ua[J[J[b>>2]+56>>2]](b)&16384){J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=1065353216;J[c+20>>2]=1065353216;b=J[a+8>>2];J[c+12>>2]=0;i=Q(s-l);f=Q(j-v);j=Q(e-l);q=Q(r-v);e=Q(Q(i*f)-Q(j*q));s=e;r=Q(e*e);k=Q(k-u);e=f;f=Q(z-u);e=Q(Q(q*k)-Q(e*f));i=Q(Q(f*j)-Q(k*i));f=Q(Q(1)/Q(Y(Q(r+Q(Q(e*e)+Q(i*i))))));N[c+8>>2]=Q(s*f)+n;N[c+4>>2]=Q(i*f)+o;N[c>>2]=p+Q(e*f);ua[J[J[b>>2]+16>>2]](b,c+32|0,c,c+16|0);}d=J[a+8>>2];A=c+80|0;t=c- -64|0;b=a+12|0;ua[J[J[d>>2]+16>>2]](d,A,t,b);d=J[a+8>>2];B=t;t=c+48|0;ua[J[J[d>>2]+16>>2]](d,B,t,b);a=J[a+8>>2];ua[J[J[a>>2]+16>>2]](a,t,A,b);sa=c+96|0;}function lf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=Q(0);N[b+16>>2]=N[a+4>>2];N[b+20>>2]=N[a+8>>2];N[b+24>>2]=N[a+12>>2];N[b+28>>2]=N[a+16>>2];N[b+32>>2]=N[a+20>>2];N[b+36>>2]=N[a+24>>2];N[b+40>>2]=N[a+28>>2];N[b+44>>2]=N[a+32>>2];N[b+48>>2]=N[a+36>>2];N[b+52>>2]=N[a+40>>2];N[b+56>>2]=N[a+44>>2];N[b+60>>2]=N[a+48>>2];N[b- -64>>2]=N[a+52>>2];N[b+68>>2]=N[a+56>>2];N[b+72>>2]=N[a+60>>2];N[b+76>>2]=N[a- -64>>2];N[b+80>>2]=N[a+68>>2];N[b+84>>2]=N[a+72>>2];N[b+88>>2]=N[a+76>>2];N[b+92>>2]=N[a+80>>2];N[b+96>>2]=N[a+84>>2];N[b+100>>2]=N[a+88>>2];N[b+104>>2]=N[a+92>>2];N[b+108>>2]=N[a+96>>2];N[b+112>>2]=N[a+100>>2];N[b+116>>2]=N[a+104>>2];N[b+120>>2]=N[a+108>>2];N[b+124>>2]=N[a+112>>2];N[b+128>>2]=N[a+116>>2];N[b+132>>2]=N[a+120>>2];N[b+136>>2]=N[a+124>>2];N[b+140>>2]=N[a+128>>2];N[b+144>>2]=N[a+132>>2];N[b+148>>2]=N[a+136>>2];N[b+152>>2]=N[a+140>>2];N[b+156>>2]=N[a+144>>2];N[b+160>>2]=N[a+148>>2];N[b+164>>2]=N[a+152>>2];N[b+168>>2]=N[a+156>>2];N[b+172>>2]=N[a+160>>2];N[b+176>>2]=N[a+164>>2];N[b+180>>2]=N[a+168>>2];N[b+184>>2]=N[a+172>>2];N[b+188>>2]=N[a+176>>2];J[b+232>>2]=J[a+180>>2];f=N[a+184>>2];J[b>>2]=0;N[b+192>>2]=f;d=ua[J[J[c>>2]+28>>2]](c,J[a+192>>2])|0;J[b+8>>2]=0;J[b+4>>2]=d;J[b+236>>2]=J[a+204>>2];J[b+240>>2]=J[a+208>>2];J[b+244>>2]=J[a+212>>2];J[b+248>>2]=J[a+220>>2];N[b+196>>2]=N[a+224>>2];N[b+200>>2]=N[a+228>>2];N[b+204>>2]=N[a+236>>2];N[b+208>>2]=N[a+244>>2];N[b+212>>2]=N[a+248>>2];N[b+216>>2]=N[a+232>>2];J[b+252>>2]=J[a+252>>2];d=ua[J[J[c>>2]+40>>2]](c,a)|0;e=ua[J[J[c>>2]+28>>2]](c,d)|0;J[b+12>>2]=e;if(e){ua[J[J[c>>2]+48>>2]](c,d);}N[b+220>>2]=N[a+268>>2];N[b+224>>2]=N[a+272>>2];N[b+228>>2]=N[a+276>>2];a=J[a+280>>2];J[b+260>>2]=0;J[b+256>>2]=a;return 8678}function xb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=0;n=sa-256|0;sa=n;a:{if(!a){break a}p=N[b+24>>2];q=N[b+20>>2];r=N[b+16>>2];s=N[b+8>>2];t=N[b+4>>2];u=N[b>>2];J[n>>2]=a;d=n;a=64;b=1;while(1){b:{c:{d:{e=b-1|0;l=e<<2;h=J[l+d>>2];e:{if(!(N[h>>2]<=r)|!(N[h+16>>2]>=u)|(!(N[h+4>>2]<=q)|!(N[h+20>>2]>=t))){break e}if(!(N[h+8>>2]<=p)|!(N[h+24>>2]>=s)){break e}if(J[h+40>>2]){if((a|0)!=(e|0)){break d}f=a?a<<1:1;if((f|0)<(b|0)){break d}if(f){J[8456]=J[8456]+1;e=ua[J[8258]](f<<2,16)|0;}else {e=0;}f:{if(!a){break f}i=0;j=0;if(a>>>0>=4){v=a&-4;g=0;while(1){k=j<<2;J[k+e>>2]=J[d+k>>2];m=k|4;J[m+e>>2]=J[d+m>>2];m=k|8;J[m+e>>2]=J[d+m>>2];k=k|12;J[k+e>>2]=J[d+k>>2];j=j+4|0;g=g+4|0;if((v|0)!=(g|0)){continue}break}}a=a&3;if(!a){break f}while(1){g=j<<2;J[g+e>>2]=J[d+g>>2];j=j+1|0;i=i+1|0;if((a|0)!=(i|0)){continue}break}}a=o;o=1;if(!a){break c}if(d){J[8457]=J[8457]+1;ua[J[8259]](d);}break c}ua[J[J[c>>2]+12>>2]](c,h);}b=e;break b}f=a;e=d;}J[e+l>>2]=J[h+36>>2];g:{if((b|0)!=(f|0)){a=f;d=e;break g}a=b?b<<1:1;if((b|0)>=(a|0)){a=b;d=e;break g}if(a){J[8456]=J[8456]+1;d=ua[J[8258]](a<<2,16)|0;}else {d=0;}h:{if((b|0)<=0){break h}j=0;g=0;if(b>>>0>=4){k=b&-4;i=0;while(1){f=g<<2;J[f+d>>2]=J[e+f>>2];l=f|4;J[l+d>>2]=J[e+l>>2];l=f|8;J[l+d>>2]=J[e+l>>2];f=f|12;J[f+d>>2]=J[e+f>>2];g=g+4|0;i=i+4|0;if((k|0)!=(i|0)){continue}break}}f=b&3;if(!f){break h}while(1){i=g<<2;J[i+d>>2]=J[e+i>>2];g=g+1|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}f=o;o=1;if(!f){break g}if(e){J[8457]=J[8457]+1;ua[J[8259]](e);}}J[(b<<2)+d>>2]=J[h+40>>2];b=b+1|0;}if((b|0)>0){continue}break}if(!o){break a}if(d){J[8457]=J[8457]+1;ua[J[8259]](d);}}sa=n+256|0;}function Jm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=Q(0),g=Q(0),h=Q(0),i=0,j=0,k=0,l=0,m=Q(0),n=0;a=sa-624|0;sa=a;g=Q(N[b+124>>2]-N[b+60>>2]);h=Q(g*g);g=Q(N[b+116>>2]-N[b+52>>2]);f=Q(g*g);g=Q(N[b+120>>2]-N[b+56>>2]);f=Q(h+Q(f+Q(g*g)));g=N[b+276>>2];a:{b:{if(f<Q(g*g)){g=Q(1);f=Q(N[c+124>>2]-N[c+60>>2]);m=Q(f*f);f=Q(N[c+116>>2]-N[c+52>>2]);h=Q(f*f);f=Q(N[c+120>>2]-N[c+56>>2]);h=Q(m+Q(h+Q(f*f)));f=N[c+276>>2];if(h<Q(f*f)){break a}if(!K[33853]){break b}break a}g=Q(1);if(K[33853]){break a}}i=J[b+192>>2];g=N[c+272>>2];d=Sa(a+564|0);J[d+32>>2]=0;J[d+36>>2]=0;J[d+20>>2]=1065353216;J[d+24>>2]=1065353216;J[d+4>>2]=8;J[d>>2]=21396;J[d+56>>2]=0;N[d+52>>2]=g;J[d+28>>2]=1065353216;J[d+40>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;N[d+36>>2]=g;J[a+560>>2]=0;J[a+552>>2]=1566444395;J[a+556>>2]=0;J[a+388>>2]=13156;H[a+360|0]=0;J[a+336>>2]=953267991;e=a+12|0;J[e+12>>2]=d;J[e+8>>2]=i;J[e+4>>2]=a+28;J[e>>2]=22600;i=b+4|0;j=b+68|0;k=c+4|0;l=c+68|0;g=Q(1);c:{if(!vc(e,i,j,k,l,a+388|0)){break c}f=N[a+552>>2];if(f<N[b+268>>2]){N[b+268>>2]=f;}if(f<N[c+268>>2]){N[c+268>>2]=f;}g=Q(1);if(!(f<Q(1))){break c}g=f;}n=J[c+192>>2];f=N[b+272>>2];d=Sa(a+564|0);J[d+32>>2]=0;J[d+36>>2]=0;J[d+20>>2]=1065353216;J[d+24>>2]=1065353216;J[d+4>>2]=8;J[d>>2]=21396;J[d+56>>2]=0;N[d+52>>2]=f;J[d+28>>2]=1065353216;J[d+40>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;N[d+36>>2]=f;J[a+560>>2]=0;J[a+552>>2]=1566444395;J[a+556>>2]=0;J[a+388>>2]=13156;H[a+360|0]=0;J[a+336>>2]=953267991;e=a+12|0;J[e+12>>2]=n;J[e+8>>2]=d;J[e+4>>2]=a+28;J[e>>2]=22600;d:{if(!vc(e,i,j,k,l,a+388|0)){break d}f=N[a+552>>2];if(f<N[b+268>>2]){N[b+268>>2]=f;}if(f<N[c+268>>2]){N[c+268>>2]=f;}if(!(f<g)){break d}g=f;}}sa=a+624|0;return Q(g)}function qk(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=0,v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0),G=Q(0),H=Q(0),I=Q(0),K=Q(0),L=Q(0),M=Q(0),O=Q(0);h=sa-48|0;sa=h;l=N[b+36>>2];m=N[b+20>>2];n=N[b+40>>2];o=N[b+24>>2];p=N[b+4>>2];q=N[b+8>>2];i=N[c+8>>2];r=N[b+32>>2];j=N[c>>2];s=N[b>>2];k=N[c+4>>2];t=N[b+16>>2];J[h+44>>2]=0;N[h+32>>2]=Q(r*i)+Q(Q(s*j)+Q(t*k));N[h+40>>2]=Q(n*i)+Q(Q(q*j)+Q(k*o));N[h+36>>2]=Q(l*i)+Q(Q(p*j)+Q(k*m));u=h+16|0;ua[J[J[a>>2]+64>>2]](u,a,h+32|0);o=N[b+56>>2];p=N[b+40>>2];q=N[b+36>>2];r=N[b+52>>2];s=N[b+24>>2];t=N[b+20>>2];v=N[b+32>>2];w=N[b+48>>2];x=N[b+8>>2];y=N[b>>2];z=N[b+4>>2];A=N[b+16>>2];i=N[h+24>>2];j=N[h+16>>2];k=N[h+20>>2];J[h+12>>2]=0;N[h+8>>2]=-N[h+40>>2];N[h+4>>2]=-N[h+36>>2];N[h>>2]=-N[h+32>>2];ua[J[J[a>>2]+64>>2]](u,a,h);B=N[b+56>>2];C=N[b+40>>2];D=N[b+36>>2];E=N[b+52>>2];F=N[b+24>>2];G=N[b+20>>2];H=N[b+32>>2];I=N[b+48>>2];K=N[b+8>>2];L=N[b>>2];M=N[b+4>>2];O=N[b+16>>2];l=N[h+24>>2];m=N[h+16>>2];n=N[h+20>>2];o=Q(o+Q(Q(i*p)+Q(Q(j*v)+Q(k*q))));p=Q(w+Q(Q(i*x)+Q(Q(j*y)+Q(k*z))));i=Q(r+Q(Q(i*s)+Q(Q(j*A)+Q(k*t))));N[d>>2]=Q(o*N[c+8>>2])+Q(Q(p*N[c>>2])+Q(i*N[c+4>>2]));j=Q(B+Q(Q(l*C)+Q(Q(m*H)+Q(n*D))));k=Q(I+Q(Q(l*K)+Q(Q(m*L)+Q(n*M))));l=Q(E+Q(Q(l*F)+Q(Q(m*O)+Q(n*G))));N[e>>2]=Q(j*N[c+8>>2])+Q(Q(k*N[c>>2])+Q(l*N[c+4>>2]));J[g+12>>2]=0;N[g+8>>2]=j;N[g+4>>2]=l;N[g>>2]=k;J[f+12>>2]=0;N[f+8>>2]=o;N[f+4>>2]=i;N[f>>2]=p;m=N[d>>2];n=N[e>>2];if(m>n){N[d>>2]=n;N[e>>2]=m;J[g+12>>2]=0;N[g+8>>2]=o;N[g+4>>2]=i;N[g>>2]=p;J[f+12>>2]=0;N[f+8>>2]=j;N[f+4>>2]=l;N[f>>2]=k;}sa=h+48|0;}function nm(a,b,c){a=a|0;b=b|0;c=Q(c);var d=Q(0),e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=0;f=sa-32|0;sa=f;l=N[a+64>>2];i=Q(N[a+80>>2]-l);d=N[a+68>>2];h=Q(N[a+100>>2]-d);j=Q(N[a+96>>2]-l);e=Q(N[a+84>>2]-d);g=Q(Q(i*h)-Q(j*e));k=g;o=Q(g*g);n=e;e=N[a+72>>2];g=Q(N[a+104>>2]-e);m=Q(N[a+88>>2]-e);h=Q(Q(n*g)-Q(h*m));i=Q(Q(m*j)-Q(g*i));j=Q(Q(1)/Q(Y(Q(o+Q(Q(h*h)+Q(i*i))))));g=Q(k*j);h=Q(h*j);i=Q(i*j);d=Q(Q(Q(N[b+8>>2]*g)+Q(Q(N[b>>2]*h)+Q(N[b+4>>2]*i)))-Q(Q(e*g)+Q(Q(l*h)+Q(d*i))));l=Q(-c);a:{if(!(d>=l)|!(c>=d)){break a}ua[J[J[a>>2]+104>>2]](a,0,f+16|0,f);j=N[f+16>>2];d=Q(N[f>>2]-j);m=N[f+20>>2];e=Q(N[f+4>>2]-m);c=Q(Q(d*i)-Q(h*e));k=c;o=Q(c*c);c=Q(e*g);n=N[f+24>>2];e=Q(N[f+8>>2]-n);c=Q(c-Q(i*e));d=Q(Q(e*h)-Q(g*d));e=Q(Q(1)/Q(Y(Q(o+Q(Q(c*c)+Q(d*d))))));k=Q(k*e);c=Q(c*e);d=Q(d*e);if(l>Q(Q(Q(N[b+8>>2]*k)+Q(Q(N[b>>2]*c)+Q(N[b+4>>2]*d)))-Q(Q(n*k)+Q(Q(j*c)+Q(m*d))))){break a}ua[J[J[a>>2]+104>>2]](a,1,f+16|0,f);j=N[f+16>>2];d=Q(N[f>>2]-j);m=N[f+20>>2];e=Q(N[f+4>>2]-m);c=Q(Q(d*i)-Q(h*e));k=c;o=Q(c*c);c=Q(e*g);n=N[f+24>>2];e=Q(N[f+8>>2]-n);c=Q(c-Q(i*e));d=Q(Q(e*h)-Q(g*d));e=Q(Q(1)/Q(Y(Q(o+Q(Q(c*c)+Q(d*d))))));k=Q(k*e);c=Q(c*e);d=Q(d*e);if(l>Q(Q(Q(N[b+8>>2]*k)+Q(Q(N[b>>2]*c)+Q(N[b+4>>2]*d)))-Q(Q(n*k)+Q(Q(j*c)+Q(m*d))))){break a}ua[J[J[a>>2]+104>>2]](a,2,f+16|0,f);k=l;l=N[f+16>>2];d=Q(N[f>>2]-l);e=N[f+20>>2];j=Q(N[f+4>>2]-e);c=Q(Q(d*i)-Q(h*j));n=c;m=Q(c*c);o=Q(j*g);c=i;i=N[f+24>>2];j=Q(N[f+8>>2]-i);c=Q(o-Q(c*j));g=Q(Q(j*h)-Q(g*d));h=Q(Q(1)/Q(Y(Q(m+Q(Q(c*c)+Q(g*g))))));d=Q(n*h);c=Q(c*h);g=Q(g*h);if(k>Q(Q(Q(N[b+8>>2]*d)+Q(Q(N[b>>2]*c)+Q(N[b+4>>2]*g)))-Q(Q(i*d)+Q(Q(l*c)+Q(e*g))))){break a}p=1;}sa=f+32|0;return p|0}function im(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=0,E=Q(0),F=Q(0),G=Q(0),H=0,I=Q(0),L=Q(0),M=Q(0),O=Q(0),R=0;D=J[a+52>>2];if((D|0)<=0){return Q(Q(1))}f=K[a+68|0];H=f?b:c;b=f?c:b;I=N[b- -64>>2];E=N[b+60>>2];F=N[b+56>>2];G=N[b+52>>2];L=N[b+48>>2];h=N[b+44>>2];i=N[b+40>>2];j=N[b+36>>2];M=N[b+32>>2];k=N[b+28>>2];l=N[b+24>>2];m=N[b+20>>2];O=N[b+16>>2];n=N[b+12>>2];o=N[b+8>>2];r=J[b+304>>2];p=N[b+4>>2];R=J[b+192>>2];q=Q(1);f=0;while(1){c=J[R+32>>2]+P(f,80)|0;g=N[c+56>>2];s=N[c+52>>2];t=N[c+48>>2];u=N[c+36>>2];v=N[c+20>>2];w=N[c+4>>2];x=N[c+40>>2];y=N[c+24>>2];z=N[c+8>>2];A=N[c+32>>2];B=N[c>>2];C=N[c+16>>2];J[b+64>>2]=0;J[b+48>>2]=0;J[b+32>>2]=0;J[b+16>>2]=0;J[b+304>>2]=r+1;N[b+36>>2]=Q(A*h)+Q(Q(B*j)+Q(i*C));N[b+20>>2]=Q(A*k)+Q(Q(B*m)+Q(l*C));N[b+4>>2]=Q(A*n)+Q(Q(B*p)+Q(o*C));N[b+44>>2]=Q(x*h)+Q(Q(z*j)+Q(i*y));N[b+40>>2]=Q(u*h)+Q(Q(w*j)+Q(i*v));N[b+28>>2]=Q(x*k)+Q(Q(z*m)+Q(l*y));N[b+24>>2]=Q(u*k)+Q(Q(w*m)+Q(l*v));N[b+12>>2]=Q(x*n)+Q(Q(z*p)+Q(o*y));N[b+8>>2]=Q(u*n)+Q(Q(w*p)+Q(o*v));N[b+60>>2]=E+Q(Q(g*h)+Q(Q(t*j)+Q(i*s)));N[b+56>>2]=F+Q(Q(g*k)+Q(Q(t*m)+Q(l*s)));N[b+52>>2]=G+Q(Q(g*n)+Q(Q(t*p)+Q(o*s)));c=J[J[a+60>>2]+(f<<2)>>2];g=Q(ua[J[J[c>>2]+12>>2]](c,b,H,d,e));N[b+64>>2]=I;N[b+60>>2]=E;N[b+56>>2]=F;N[b+52>>2]=G;N[b+48>>2]=L;N[b+44>>2]=h;N[b+40>>2]=i;N[b+36>>2]=j;N[b+32>>2]=M;N[b+28>>2]=k;N[b+24>>2]=l;N[b+20>>2]=m;N[b+16>>2]=O;N[b+12>>2]=n;N[b+8>>2]=o;N[b+4>>2]=p;r=J[b+304>>2]+1|0;J[b+304>>2]=r;q=g<q?g:q;f=f+1|0;if((D|0)!=(f|0)){continue}break}return Q(q)}function wo(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0);f=sa-32|0;sa=f;g=N[b+4>>2];k=N[b>>2];j=N[b+8>>2];a:{if(Q(R(j))>Q(.7071067690849304)){h=Q(Q(g*g)+Q(j*j));i=Q(Q(1)/Q(Y(h)));m=Q(h*i);n=Q(g*i);h=Q(n*Q(100));l=Q(i*Q(-j));o=Q(k*l);n=Q(n*Q(-k));i=Q(0);break a}i=Q(Q(k*k)+Q(g*g));h=Q(Q(1)/Q(Y(i)));o=Q(i*h);m=Q(h*Q(-g));i=Q(m*Q(100));n=Q(j*m);l=Q(k*h);m=Q(l*Q(-j));h=Q(0);}p=N[d+52>>2];q=N[d+20>>2];r=N[d+24>>2];s=N[d+56>>2];t=N[d+36>>2];u=N[d+40>>2];v=N[d+48>>2];w=N[d+8>>2];x=N[d>>2];y=N[d+4>>2];z=N[d+16>>2];C=N[d+32>>2];J[f+28>>2]=0;j=Q(j*c);A=Q(j+h);k=Q(k*c);B=Q(k+i);c=Q(g*c);l=Q(l*Q(100));g=Q(c+l);N[f+24>>2]=s+Q(Q(u*A)+Q(Q(C*B)+Q(t*g)));N[f+20>>2]=p+Q(Q(A*r)+Q(Q(B*z)+Q(g*q)));N[f+16>>2]=v+Q(Q(A*w)+Q(Q(B*x)+Q(g*y)));J[f+12>>2]=0;g=Q(j-h);i=Q(k-i);h=Q(c-l);N[f+8>>2]=s+Q(Q(u*g)+Q(Q(C*i)+Q(t*h)));N[f+4>>2]=p+Q(Q(g*r)+Q(Q(i*z)+Q(h*q)));N[f>>2]=v+Q(Q(g*w)+Q(Q(i*x)+Q(h*y)));b=f+16|0;ua[J[J[a>>2]+16>>2]](a,b,f,e);g=N[d+52>>2];i=N[d+24>>2];h=N[d+20>>2];l=N[d+56>>2];p=N[d+40>>2];q=N[d+36>>2];r=N[d+48>>2];s=N[d+8>>2];t=N[d>>2];u=N[d+4>>2];v=N[d+16>>2];w=N[d+32>>2];J[f+28>>2]=0;x=Q(o*Q(100));o=Q(j+x);y=Q(m*Q(100));m=Q(k+y);z=Q(n*Q(100));n=Q(c+z);N[f+24>>2]=l+Q(Q(p*o)+Q(Q(w*m)+Q(q*n)));N[f+20>>2]=g+Q(Q(o*i)+Q(Q(m*v)+Q(n*h)));N[f+16>>2]=r+Q(Q(o*s)+Q(Q(m*t)+Q(n*u)));J[f+12>>2]=0;j=Q(j-x);k=Q(k-y);c=Q(c-z);N[f+8>>2]=l+Q(Q(p*j)+Q(Q(w*k)+Q(q*c)));N[f+4>>2]=g+Q(Q(j*i)+Q(Q(k*v)+Q(c*h)));N[f>>2]=r+Q(Q(j*s)+Q(Q(k*t)+Q(c*u)));ua[J[J[a>>2]+16>>2]](a,b,f,e);sa=f+32|0;}function kb(a,b,c,d,e){var f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=0,o=Q(0),p=Q(0);n=sa-16|0;sa=n;f=N[a+52>>2];g=N[a+56>>2];i=N[a+48>>2];h=N[b>>2];j=N[b+4>>2];k=N[b+8>>2];J[e+60>>2]=0;N[e+56>>2]=g+Q(k*d);N[e+52>>2]=f+Q(j*d);N[e+48>>2]=i+Q(h*d);i=N[c+8>>2];l=N[c>>2];m=N[c+4>>2];f=Q(Q(i*i)+Q(Q(l*l)+Q(m*m)));f=f>Q(1.1920928955078125e-7)?Q(Y(f)):Q(0);g=Q(f*d)>Q(.7853981852531433)?Q(Q(.7853981852531433)/d):f;a:{if(g<Q(.0010000000474974513)){f=Q(Q(d*Q(.5))+Q(g*Q(Q(Q(Q(d*d)*d)*Q(-.02083333395421505))*g)));break a}f=Q(Na(Q(Q(g*Q(.5))*d))/g);}ob(a,n);h=N[n+4>>2];j=N[n+12>>2];g=Ma(Q(Q(g*d)*Q(.5)));k=N[n>>2];l=Q(l*f);m=Q(m*f);o=Q(i*f);p=N[n+8>>2];f=Q(Q(Q(Q(j*g)-Q(k*l))-Q(h*m))-Q(o*p));i=Q(Q(Q(l*h)+Q(Q(g*p)+Q(o*j)))-Q(m*k));d=Q(Q(Q(m*p)+Q(Q(g*k)+Q(l*j)))-Q(o*h));g=Q(Q(Q(o*k)+Q(Q(g*h)+Q(m*j)))-Q(l*p));h=Q(Q(f*f)+Q(Q(i*i)+Q(Q(d*d)+Q(g*g))));if(h>Q(1.1920928955078125e-7)){h=Q(Q(1)/Q(Y(h)));f=Q(f*h);i=Q(i*h);d=Q(d*h);g=Q(g*h);h=Q(Q(f*f)+Q(Q(i*i)+Q(Q(d*d)+Q(g*g))));}b:{if(h>Q(1.1920928955078125e-7)){J[e+12>>2]=0;J[e+44>>2]=0;J[e+28>>2]=0;j=Q(Q(2)/h);h=Q(i*j);k=Q(g*h);l=Q(d*j);m=Q(f*l);N[e+36>>2]=k+m;o=Q(d*h);j=Q(g*j);p=Q(f*j);N[e+32>>2]=o-p;N[e+24>>2]=k-m;k=Q(d*j);f=Q(f*h);N[e+16>>2]=k+f;N[e+8>>2]=o+p;N[e+4>>2]=k-f;d=Q(d*l);f=Q(g*j);N[e+40>>2]=Q(1)-Q(d+f);g=d;d=Q(i*h);N[e+20>>2]=Q(1)-Q(g+d);N[e>>2]=Q(1)-Q(f+d);break b}b=J[a+4>>2];J[e>>2]=J[a>>2];J[e+4>>2]=b;b=J[a+12>>2];J[e+8>>2]=J[a+8>>2];J[e+12>>2]=b;b=J[a+20>>2];J[e+16>>2]=J[a+16>>2];J[e+20>>2]=b;b=J[a+28>>2];J[e+24>>2]=J[a+24>>2];J[e+28>>2]=b;b=J[a+36>>2];J[e+32>>2]=J[a+32>>2];J[e+36>>2]=b;b=J[a+44>>2];J[e+40>>2]=J[a+40>>2];J[e+44>>2]=b;}sa=n+16|0;}function Am(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=Q(0),h=Q(0),i=0,j=0,k=Q(0),l=0,m=Q(0),n=0,o=0,p=0;i=sa-144|0;sa=i;ua[J[8262]](7475);g=N[b>>2];h=N[b+16>>2];m=g<h?g:h;k=N[b+32>>2];a:{if(N[a+20>>2]<(k>m?m:k)){break a}e=g>h;if(N[(k<(e?g:h)?!e<<4:32)+b>>2]<N[a+4>>2]){break a}g=N[b+8>>2];e=b+24|0;h=N[e>>2];m=g<h?g:h;j=b+40|0;k=N[j>>2];if(N[a+28>>2]<(k>m?m:k)){break a}l=e;e=g>h;if(N[(k<(e?g:h)?e?b+8|0:l:j)>>2]<N[a+12>>2]){break a}g=N[b+4>>2];e=b+20|0;h=N[e>>2];m=g<h?g:h;j=b+36|0;k=N[j>>2];if(N[a+24>>2]<(k>m?m:k)){break a}l=e;e=g>h;if(J[J[J[a+36>>2]+4>>2]+4>>2]>19|N[(k<(e?g:h)?e?b+4|0:l:j)>>2]<N[a+8>>2]){break a}j=J[a+48>>2];e=Ob(i+28|0);J[e+4>>2]=1;J[e>>2]=15832;f=J[b+12>>2];J[e+72>>2]=J[b+8>>2];J[e+76>>2]=f;f=J[b+4>>2];J[e+64>>2]=J[b>>2];J[e+68>>2]=f;f=J[b+28>>2];J[e+88>>2]=J[b+24>>2];J[e+92>>2]=f;f=J[b+20>>2];J[e+80>>2]=J[b+16>>2];J[e+84>>2]=f;f=J[b+44>>2];J[e+104>>2]=J[b+40>>2];J[e+108>>2]=f;f=J[b+36>>2];J[e+96>>2]=J[b+32>>2];J[e+100>>2]=f;N[e+52>>2]=N[a+56>>2];b=J[a+40>>2];f=J[b+8>>2];n=J[b+12>>2];J[i+24>>2]=d;J[i+20>>2]=c;J[i+12>>2]=f;J[i+16>>2]=n;J[i+8>>2]=e;J[i+4>>2]=b;b=J[a+36>>2];b:{if(N[J[a+44>>2]+32>>2]>Q(0)){b=ua[J[J[j>>2]+8>>2]](j,b,i+4|0,0,2)|0;break b}b=ua[J[J[j>>2]+8>>2]](j,b,i+4|0,J[a+64>>2],1)|0;}f=J[a+44>>2];n=J[f+8>>2];c:{if(J[n+8>>2]==J[J[a+40>>2]+8>>2]){l=f+8|0;o=2;break c}n=J[f+12>>2];l=f+12|0;o=3;}p=l;l=i+4|0;J[p>>2]=l;ua[J[J[f>>2]+(o<<2)>>2]](f,c,d);ua[J[J[b>>2]+8>>2]](b,J[a+36>>2],l,J[a+52>>2],J[a+44>>2]);c=J[a+44>>2];J[(J[J[c+8>>2]+8>>2]==J[J[a+40>>2]+8>>2]?8:12)+c>>2]=n;ua[J[J[b>>2]>>2]](b)|0;ua[J[J[j>>2]+60>>2]](j,b);sb(e);}ua[J[8263]]();sa=i+144|0;}function wd(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=J[a+8>>2];c=J[a+32>>2];f=c?J[a+40>>2]:0;d=c;c=J[a+52>>2];g=c?J[a+60>>2]:0;h=c;c=J[a+72>>2];Q(ua[J[J[b>>2]+12>>2]](b,f,d,g,h,c?J[a+80>>2]:0,c,J[a+4>>2],J[a+20>>2],J[a+24>>2]));c=J[a+32>>2];a:{if((c|0)>=0){break a}if(J[a+36>>2]<0){b=J[a+40>>2];if(!(b?!b|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+44|0]=1;J[a+36>>2]=0;J[a+40>>2]=0;}b=c;d=0-b&3;if(d){while(1){J[J[a+40>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break a}while(1){c=b<<2;J[c+J[a+40>>2]>>2]=0;J[(c+J[a+40>>2]|0)+4>>2]=0;J[(c+J[a+40>>2]|0)+8>>2]=0;J[(c+J[a+40>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}J[a+32>>2]=0;c=J[a+52>>2];b:{if((c|0)>=0){break b}if(J[a+56>>2]<0){b=J[a+60>>2];if(!(b?!b|!K[a- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+64|0]=1;J[a+56>>2]=0;J[a+60>>2]=0;}e=0;b=c;d=0-b&3;if(d){while(1){J[J[a+60>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break b}while(1){c=b<<2;J[c+J[a+60>>2]>>2]=0;J[(c+J[a+60>>2]|0)+4>>2]=0;J[(c+J[a+60>>2]|0)+8>>2]=0;J[(c+J[a+60>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}J[a+52>>2]=0;c=J[a+72>>2];c:{if((c|0)>=0){break c}if(J[a+76>>2]<0){b=J[a+80>>2];if(!(b?!b|!K[a+84|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+84|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;}e=0;b=c;d=0-b&3;if(d){while(1){J[J[a+80>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break c}while(1){c=b<<2;J[c+J[a+80>>2]>>2]=0;J[(c+J[a+80>>2]|0)+4>>2]=0;J[(c+J[a+80>>2]|0)+8>>2]=0;J[(c+J[a+80>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}J[a+72>>2]=0;}function bn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=0;e=sa-256|0;sa=e;J[e+36>>2]=14660;f=J[b+12>>2];J[e+80>>2]=J[b+8>>2];J[e+84>>2]=f;f=J[b+4>>2];J[e+72>>2]=J[b>>2];J[e+76>>2]=f;f=J[c+12>>2];J[e+96>>2]=J[c+8>>2];J[e+100>>2]=f;f=J[c>>2];m=J[c+4>>2];J[e+108>>2]=0;J[e+112>>2]=0;J[e+116>>2]=0;J[e+120>>2]=0;J[e+128>>2]=0;J[e+132>>2]=0;J[e+124>>2]=1065353216;J[e+136>>2]=0;J[e+140>>2]=0;J[e+144>>2]=1065353216;J[e+148>>2]=0;J[e+88>>2]=f;J[e+92>>2]=m;J[e+252>>2]=d;J[e+104>>2]=1065353216;J[e+248>>2]=a;d=J[b+4>>2];J[e+152>>2]=J[b>>2];J[e+156>>2]=d;d=J[b+12>>2];J[e+160>>2]=J[b+8>>2];J[e+164>>2]=d;J[e+172>>2]=0;J[e+176>>2]=0;J[e+180>>2]=0;J[e+184>>2]=0;J[e+188>>2]=1065353216;J[e+192>>2]=0;J[e+196>>2]=0;J[e+200>>2]=0;J[e+204>>2]=0;J[e+208>>2]=1065353216;J[e+212>>2]=0;J[e+168>>2]=1065353216;d=J[c+12>>2];J[e+224>>2]=J[c+8>>2];J[e+228>>2]=d;d=J[c+4>>2];J[e+216>>2]=J[c>>2];J[e+220>>2]=d;g=Q(N[c+8>>2]-N[b+8>>2]);j=Q(N[c>>2]-N[b>>2]);h=Q(N[c+4>>2]-N[b+4>>2]);i=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(j*j)+Q(h*h))))));g=Q(g*i);k=g==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/g);N[e+48>>2]=k;h=Q(h*i);l=h==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/h);N[e+44>>2]=l;J[e- -64>>2]=k<Q(0);J[e+60>>2]=l<Q(0);i=Q(j*i);j=i==Q(0)?Q(0xde0b6b000000000):Q(Q(1)/i);N[e+40>>2]=j;J[e+56>>2]=j<Q(0);N[e+68>>2]=Q(g*Q(N[e+96>>2]-N[e+80>>2]))+Q(Q(i*Q(N[e+88>>2]-N[e+72>>2]))+Q(h*Q(N[e+92>>2]-N[e+76>>2])));a=J[a+68>>2];J[e+24>>2]=0;J[e+28>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;J[e>>2]=0;J[e+4>>2]=0;ua[J[J[a>>2]+24>>2]](a,b,c,e+36|0,e+16|0,e);sa=e+256|0;}function Kc(a){a=a|0;var b=0;J[a>>2]=16752;if(K[a+20|0]){b=J[J[a+16>>2]+16>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+16>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}if(K[a+12|0]){b=J[J[a+8>>2]+16>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+8>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}b=J[a+28>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+28>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+32>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+32>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+36>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+36>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+40>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+40>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+44>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+44>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+48>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+48>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+52>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+52>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+56>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+56>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+72>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+72>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+76>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+76>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+68>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+68>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+84>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+84>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+80>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+80>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+24>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+24>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}return a|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{c:{d:{e:{f:{g:{h:{d=J[J[b>>2]+192>>2];if(J[d+4>>2]!=31){break h}f=J[b+4>>2];if(!f){break h}n=J[J[(J[d+32>>2]+P(J[f>>2],80)|0)+64>>2]+8>>2];d=J[a+136>>2];if((d|0)!=J[a+140>>2]){break a}j=d?d<<1:1;if((j|0)<=(d|0)){break a}if(j){J[8456]=J[8456]+1;g=ua[J[8258]](j<<2,16)|0;d=J[a+136>>2];}f=J[a+144>>2];if((d|0)<=0){break g}if(d>>>0>=4){m=d&-4;while(1){e=h<<2;J[e+g>>2]=J[f+e>>2];i=e|4;J[i+g>>2]=J[f+i>>2];i=e|8;J[i+g>>2]=J[f+i>>2];e=e|12;J[e+g>>2]=J[f+e>>2];h=h+4|0;k=k+4|0;if((m|0)!=(k|0)){continue}break}}d=d&3;if(!d){break c}while(1){e=h<<2;J[e+g>>2]=J[f+e>>2];h=h+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}break c}n=J[d+8>>2];d=J[a+136>>2];if((d|0)!=J[a+140>>2]){break a}j=d?d<<1:1;if((j|0)<=(d|0)){break a}if(j){J[8456]=J[8456]+1;g=ua[J[8258]](j<<2,16)|0;d=J[a+136>>2];}f=J[a+144>>2];if((d|0)<=0){break f}if(d>>>0>=4){m=d&-4;while(1){e=h<<2;J[e+g>>2]=J[f+e>>2];i=e|4;J[i+g>>2]=J[f+i>>2];i=e|8;J[i+g>>2]=J[f+i>>2];e=e|12;J[e+g>>2]=J[f+e>>2];h=h+4|0;k=k+4|0;if((m|0)!=(k|0)){continue}break}}d=d&3;if(!d){break e}while(1){e=h<<2;J[e+g>>2]=J[f+e>>2];h=h+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}break e}if(f){break c}break b}if(!f){break d}}if(f?K[a+148|0]:0){J[8457]=J[8457]+1;ua[J[8259]](f);}d=J[a+136>>2];}J[a+144>>2]=g;J[a+140>>2]=j;H[a+148|0]=1;break a}if(f?K[a+148|0]:0){J[8457]=J[8457]+1;ua[J[8259]](f);}d=J[a+136>>2];}J[a+144>>2]=g;J[a+140>>2]=j;H[a+148|0]=1;}J[J[a+144>>2]+(d<<2)>>2]=n;J[a+136>>2]=J[a+136>>2]+1;return Q(Kf(a,b,c))}function Ec(a){var b=0,c=0,d=Q(0),e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0;e=J[a+28>>2];if((e|0)<=0){return 1}f=N[a+84>>2];g=N[a+68>>2];i=Q(f+g);h=N[a+88>>2];d=N[a+72>>2];j=Q(h+d);h=Q(d-h);f=Q(g-f);d=N[a+80>>2];k=N[a+64>>2];g=Q(d+k);d=Q(k-d);a=J[a+36>>2];a:{b:{while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(j*N[b+28>>2])+Q(Q(g*N[b+20>>2])+Q(i*N[b+24>>2]))))>Q(0)){break b}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(h*N[b+28>>2])+Q(Q(g*N[b+20>>2])+Q(i*N[b+24>>2]))))>Q(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(j*N[b+28>>2])+Q(Q(g*N[b+20>>2])+Q(f*N[b+24>>2]))))>Q(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(h*N[b+28>>2])+Q(Q(g*N[b+20>>2])+Q(f*N[b+24>>2]))))>Q(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(j*N[b+28>>2])+Q(Q(d*N[b+20>>2])+Q(i*N[b+24>>2]))))>Q(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(h*N[b+28>>2])+Q(Q(d*N[b+20>>2])+Q(i*N[b+24>>2]))))>Q(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+P(c,36)|0;if(Q(N[b+32>>2]+Q(Q(j*N[b+28>>2])+Q(Q(d*N[b+20>>2])+Q(f*N[b+24>>2]))))>Q(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){c:{b=a+P(c,36)|0;b=Q(N[b+32>>2]+Q(Q(h*N[b+28>>2])+Q(Q(d*N[b+20>>2])+Q(f*N[b+24>>2]))))>Q(0);l=!b;if(b){break c}c=c+1|0;if((e|0)!=(c|0)){continue}}break}return l}return 0}return 0}function vr(a,b,c){a=a|0;b=Q(b);c=Q(c);var d=Q(0),e=Q(0),f=0,g=0,h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=0,z=Q(0);h=sa-16|0;sa=h;N[h+12>>2]=b;d=N[a+692>>2];a:{if(!(d>Q(0))){break a}e=N[a+688>>2];b=Qa(Q(N[h+12>>2]-e));b:{if(b<Q(-3.1415927410125732)){b=Q(b+Q(6.2831854820251465));break b}if(!(b>Q(3.1415927410125732))){break b}b=Q(b+Q(-6.2831854820251465));}if(!(Q(-d)>b)&b<=d){break a}c:{if(b>Q(0)){b=Qa(Q(d+e));if(b<Q(-3.1415927410125732)){b=Q(b+Q(6.2831854820251465));break c}if(!(b>Q(3.1415927410125732))){break c}b=Q(b+Q(-6.2831854820251465));break c}b=Qa(Q(e-d));if(b<Q(-3.1415927410125732)){b=Q(b+Q(6.2831854820251465));break c}if(!(b>Q(3.1415927410125732))){break c}b=Q(b+Q(-6.2831854820251465));}N[h+12>>2]=b;}f=J[a+32>>2];b=N[a+652>>2];d=N[a+620>>2];e=N[a+636>>2];m=Q(Q(N[f+44>>2]*b)+Q(Q(N[f+36>>2]*d)+Q(e*N[f+40>>2])));g=J[a+28>>2];n=N[g+44>>2];i=N[a+584>>2];o=N[g+36>>2];j=N[a+552>>2];k=N[a+568>>2];p=N[g+40>>2];v=Q(m*Q(Q(n*i)+Q(Q(o*j)+Q(k*p))));q=Q(Q(N[f+12>>2]*b)+Q(Q(N[f+4>>2]*d)+Q(e*N[f+8>>2])));r=N[g+12>>2];s=N[g+4>>2];t=N[g+8>>2];w=Q(q*Q(Q(r*i)+Q(Q(s*j)+Q(k*t))));u=N[g+28>>2];l=Q(u*i);i=N[g+20>>2];x=Q(i*j);j=N[g+24>>2];l=Q(l+Q(x+Q(k*j)));k=Q(Q(N[f+28>>2]*b)+Q(Q(N[f+20>>2]*d)+Q(e*N[f+24>>2])));b=N[a+588>>2];d=N[a+556>>2];e=N[a+572>>2];y=a,z=Q(Q(N[h+12>>2]-Q(Ia(Q(v+Q(w+Q(l*k))),Q(Q(m*Q(Q(n*b)+Q(Q(o*d)+Q(p*e))))+Q(Q(q*Q(Q(r*b)+Q(Q(s*d)+Q(t*e))))+Q(Q(Q(u*b)+Q(Q(i*d)+Q(j*e)))*k))))*N[a+732>>2]))/c),N[y+680>>2]=z;sa=h+16|0;}function Ei(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=0,B=Q(0);i=sa-32|0;sa=i;h=N[b+20>>2];r=N[b+36>>2];s=N[b+24>>2];x=N[b+40>>2];j=N[b+4>>2];t=N[b+32>>2];o=N[b+8>>2];p=N[b>>2];u=N[b+16>>2];J[i+28>>2]=0;g=Q(u-p);k=Q(r-j);e=Q(t-p);l=Q(h-j);f=Q(Q(g*k)-Q(e*l));m=l;l=Q(x-o);n=Q(s-o);k=Q(Q(m*l)-Q(k*n));g=Q(Q(n*e)-Q(l*g));e=Q(Q(o*f)+Q(Q(p*k)+Q(j*g)));v=N[a+12>>2];m=N[a+4>>2];q=N[a+8>>2];l=Q(Q(Q(f*v)+Q(Q(k*m)+Q(g*q)))-e);w=N[a+28>>2];y=N[a+20>>2];z=N[a+24>>2];e=Q(Q(Q(f*w)+Q(Q(k*y)+Q(g*z)))-e);a:{if(Q(l*e)>=Q(0)){break a}b=J[a+36>>2];if(b&1&l<=Q(0)){break a}e=Q(l/Q(l-e));if(!(e<N[a+40>>2])){break a}n=Q(Q(1)-e);m=Q(Q(n*m)+Q(y*e));p=Q(p-m);q=Q(Q(n*q)+Q(z*e));h=Q(h-q);u=Q(u-m);j=Q(j-q);n=Q(Q(n*v)+Q(w*e));s=Q(s-n);o=Q(o-n);w=Q(Q(f*f)+Q(Q(k*k)+Q(g*g)));v=Q(w*Q(-9999999747378752e-20));if(!(Q(Q(Q(Q(p*h)-Q(u*j))*f)+Q(Q(Q(Q(j*s)-Q(h*o))*k)+Q(g*Q(Q(o*u)-Q(s*p)))))>=v)){break a}r=Q(r-q);t=Q(t-m);q=Q(Q(Q(u*r)-Q(t*h))*f);m=h;h=Q(x-n);if(!(v<=Q(q+Q(Q(Q(Q(m*h)-Q(r*s))*k)+Q(g*Q(Q(s*t)-Q(h*u))))))|!(v<=Q(Q(Q(Q(t*j)-Q(p*r))*f)+Q(Q(Q(Q(r*o)-Q(j*h))*k)+Q(g*Q(Q(h*p)-Q(o*t))))))){break a}h=f;f=Q(Q(1)/Q(Y(w)));j=Q(h*f);N[i+24>>2]=j;g=Q(g*f);N[i+20>>2]=g;f=Q(k*f);N[i+16>>2]=f;if(!(!(l<=Q(0))|b&2)){J[i+12>>2]=0;N[i+8>>2]=-j;N[i+4>>2]=-g;N[i>>2]=-f;A=a,B=Q(ua[J[J[a>>2]+12>>2]](a,i,e,c,d)),N[A+40>>2]=B;break a}A=a,B=Q(ua[J[J[a>>2]+12>>2]](a,i+16|0,e,c,d)),N[A+40>>2]=B;}sa=i+32|0;}function Hn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=sa-32|0;sa=c;J[c+24>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;H[c+28|0]=1;a:{if(J[a+8>>2]<=0){break a}while(1){e=J[a+16>>2]+(j<<4)|0;b:{if(J[c+20>>2]!=(d|0)){break b}f=d?d<<1:1;if((f|0)<=(d|0)){break b}h=0;i=0;if(f){J[8456]=J[8456]+1;i=ua[J[8258]](f<<4,16)|0;}if((d|0)>0){while(1){g=h<<4;k=g+i|0;g=g+J[c+24>>2]|0;J[k>>2]=J[g>>2];J[k+4>>2]=J[g+4>>2];J[k+8>>2]=J[g+8>>2];J[k+12>>2]=J[g+12>>2];h=h+1|0;if((h|0)!=(d|0)){continue}break}}d=J[c+24>>2];if(!(d?!d|!K[c+28|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[c+24>>2]=i;H[c+28|0]=1;J[c+20>>2]=f;d=J[c+16>>2];}d=J[c+24>>2]+(d<<4)|0;J[d>>2]=J[e>>2];J[d+4>>2]=J[e+4>>2];J[d+8>>2]=J[e+8>>2];J[d+12>>2]=J[e+12>>2];f=J[c+16>>2];d=f+1|0;J[c+16>>2]=d;j=j+1|0;if((j|0)<J[a+8>>2]){continue}break}e=0;if((f|0)<0){break a}i=f+1|0;k=i&1;h=J[c+24>>2];if(f){i=i&-2;f=0;while(1){g=e<<4;j=g+h|0;ua[J[J[a>>2]+12>>2]](a,J[j>>2],J[j+4>>2],b)|0;g=h+(g|16)|0;ua[J[J[a>>2]+12>>2]](a,J[g>>2],J[g+4>>2],b)|0;e=e+2|0;f=f+2|0;if((i|0)!=(f|0)){continue}break}}if(!k){break a}e=h+(e<<4)|0;ua[J[J[a>>2]+12>>2]](a,J[e>>2],J[e+4>>2],b)|0;}if(J[a+52>>2]>0){b=J[a+60>>2];e=0;while(1){J[b+(e<<2)>>2]=-1;e=e+1|0;if((e|0)<J[a+52>>2]){continue}break}d=J[c+16>>2];}if((d|0)>=2){Yb(c+12|0,c+11|0,0,d-1|0);d=J[c+16>>2];}if((d|0)>0){e=0;while(1){b=J[c+24>>2]+(e<<4)|0;ua[J[J[a>>2]+8>>2]](a,J[b>>2],J[b+4>>2])|0;e=e+1|0;if((e|0)<J[c+16>>2]){continue}break}}a=J[c+24>>2];if(!(a?!a|!K[c+28|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}sa=c+32|0;}function ih(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=sa-16|0;sa=k;ua[J[8262]](4554);b=J[a+220>>2];ua[J[J[b>>2]+8>>2]](b,a,J[a+24>>2]);h=J[a+324>>2];if((h|0)>0){i=J[a+332>>2];j=J[a+220>>2];while(1){b=J[i+(g<<2)>>2];c=J[b+836>>2];a:{if(!c){break a}b=J[b+840>>2];if(!b|J[c+204>>2]&3|K[b+204|0]&3){break a}b=J[b+208>>2];d=J[j+16>>2];e=J[c+208>>2];f=d+(e<<3)|0;c=J[f>>2];if((c|0)!=(e|0)){while(1){c=d+(c<<3)|0;J[f>>2]=J[c>>2];e=J[c>>2];f=d+(e<<3)|0;c=J[f>>2];if((c|0)!=(e|0)){continue}break}}f=d+(b<<3)|0;c=J[f>>2];if((c|0)!=(b|0)){while(1){b=d+(c<<3)|0;J[f>>2]=J[b>>2];b=J[b>>2];f=d+(b<<3)|0;c=J[f>>2];if((b|0)!=(c|0)){continue}break}}if((b|0)==(e|0)){break a}c=d+(e<<3)|0;J[c>>2]=b;b=d+(b<<3)|0;J[b+4>>2]=J[b+4>>2]+J[c+4>>2];}g=g+1|0;if((h|0)!=(g|0)){continue}break}}h=J[a+228>>2];if((h|0)>0){i=J[a+236>>2];j=J[a+220>>2];f=0;while(1){b=J[i+(f<<2)>>2];b:{if(!K[b+20|0]){break b}c=J[b+28>>2];if(K[c+204|0]&3){break b}b=J[b+32>>2];if(K[b+204|0]&3){break b}b=J[b+208>>2];d=J[j+16>>2];e=J[c+208>>2];c=d+(e<<3)|0;g=J[c>>2];if((g|0)!=(e|0)){while(1){e=c;c=d+(g<<3)|0;J[e>>2]=J[c>>2];e=J[c>>2];c=d+(e<<3)|0;g=J[c>>2];if((g|0)!=(e|0)){continue}break}}c=d+(b<<3)|0;g=J[c>>2];if((g|0)!=(b|0)){while(1){b=d+(g<<3)|0;J[c>>2]=J[b>>2];b=J[b>>2];c=d+(b<<3)|0;g=J[c>>2];if((b|0)!=(g|0)){continue}break}}if((b|0)==(e|0)){break b}c=d+(e<<3)|0;J[c>>2]=b;b=d+(b<<3)|0;J[b+4>>2]=J[b+4>>2]+J[c+4>>2];}f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=J[a+220>>2];ua[J[J[b>>2]+12>>2]](b,a);ua[J[8263]]();sa=k+16|0;}function or(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=J[b+4>>2];J[a+40>>2]=J[b>>2];J[a+44>>2]=f;f=J[b+12>>2];J[a+48>>2]=J[b+8>>2];J[a+52>>2]=f;b=J[c+4>>2];J[a+56>>2]=J[c>>2];J[a+60>>2]=b;f=J[c+12>>2];b=a- -64|0;J[b>>2]=J[c+8>>2];J[b+4>>2]=f;H[a+152|0]=e;J[a+12>>2]=d;J[a+4>>2]=1065353216;J[a+8>>2]=0;c=J[a+136>>2];if((c|0)<0){b=J[a+144>>2];if(J[a+140>>2]<0){if(!(b?!b|!K[a+148|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+148|0]=1;J[a+140>>2]=0;J[a+144>>2]=0;b=0;}d=b;b=c<<2;Fa(d+b|0,0,0-b|0);}J[a+136>>2]=0;c=J[a+116>>2];if((c|0)<0){b=J[a+124>>2];if(J[a+120>>2]<0){if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+128|0]=1;J[a+120>>2]=0;J[a+124>>2]=0;b=0;}d=b;b=c<<2;Fa(d+b|0,0,0-b|0);}J[a+116>>2]=0;c=J[a+24>>2];a:{if((c|0)>=0){break a}if(J[a+28>>2]<0){b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+36|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;}d=0;b=c;e=0-b&3;if(e){while(1){J[J[a+32>>2]+(b<<2)>>2]=0;b=b+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(c>>>0>4294967292){break a}while(1){c=b<<2;J[c+J[a+32>>2]>>2]=0;J[(c+J[a+32>>2]|0)+4>>2]=0;J[(c+J[a+32>>2]|0)+8>>2]=0;J[(c+J[a+32>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}J[a+24>>2]=0;if((J[a+96>>2]&J[a+100>>2])<0){b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+108|0]=1;J[a+100>>2]=0;J[a+104>>2]=0;}J[a+96>>2]=0;if((J[a+76>>2]&J[a+80>>2])<0){b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+88|0]=1;J[a+80>>2]=0;J[a+84>>2]=0;}J[a+76>>2]=0;}function Mp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=J[b+4>>2];J[a+40>>2]=J[b>>2];J[a+44>>2]=f;f=J[b+12>>2];J[a+48>>2]=J[b+8>>2];J[a+52>>2]=f;b=J[c+4>>2];J[a+56>>2]=J[c>>2];J[a+60>>2]=b;f=J[c+12>>2];b=a- -64|0;J[b>>2]=J[c+8>>2];J[b+4>>2]=f;H[a+152|0]=e;J[a+12>>2]=d;J[a+4>>2]=1065353216;c=J[a+136>>2];if((c|0)<0){b=J[a+144>>2];if(J[a+140>>2]<0){if(!(b?!b|!K[a+148|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+148|0]=1;J[a+140>>2]=0;J[a+144>>2]=0;b=0;}d=b;b=c<<2;Fa(d+b|0,0,0-b|0);}J[a+136>>2]=0;c=J[a+116>>2];if((c|0)<0){b=J[a+124>>2];if(J[a+120>>2]<0){if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+128|0]=1;J[a+120>>2]=0;J[a+124>>2]=0;b=0;}d=b;b=c<<2;Fa(d+b|0,0,0-b|0);}J[a+116>>2]=0;c=J[a+24>>2];a:{if((c|0)>=0){break a}if(J[a+28>>2]<0){b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+36|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;}d=0;b=c;e=0-b&3;if(e){while(1){J[J[a+32>>2]+(b<<2)>>2]=0;b=b+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(c>>>0>4294967292){break a}while(1){c=b<<2;J[c+J[a+32>>2]>>2]=0;J[(c+J[a+32>>2]|0)+4>>2]=0;J[(c+J[a+32>>2]|0)+8>>2]=0;J[(c+J[a+32>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}J[a+24>>2]=0;if((J[a+96>>2]&J[a+100>>2])<0){b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+108|0]=1;J[a+100>>2]=0;J[a+104>>2]=0;}J[a+96>>2]=0;if((J[a+76>>2]&J[a+80>>2])<0){b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+88|0]=1;J[a+80>>2]=0;J[a+84>>2]=0;}J[a+76>>2]=0;}function gj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{b:{c:{switch(J[a+100>>2]-2|0){case 0:b=J[a+108>>2];J[c>>2]=J[a+104>>2];J[c+4>>2]=b;b=J[a+116>>2];J[c+8>>2]=J[a+112>>2];J[c+12>>2]=b;a=a+120|0;break b;case 1:d:{switch(b|0){case 0:b=J[a+108>>2];J[c>>2]=J[a+104>>2];J[c+4>>2]=b;b=J[a+116>>2];J[c+8>>2]=J[a+112>>2];J[c+12>>2]=b;a=a+120|0;break b;case 1:b=J[a+132>>2];J[c+8>>2]=J[a+128>>2];J[c+12>>2]=b;b=J[a+124>>2];J[c>>2]=J[a+120>>2];J[c+4>>2]=b;a=a+136|0;break b;case 2:break d;default:break a}}b=J[a+148>>2];J[c+8>>2]=J[a+144>>2];J[c+12>>2]=b;b=J[a+140>>2];J[c>>2]=J[a+136>>2];J[c+4>>2]=b;a=a+104|0;break b;case 2:break c;default:break a}}e:{switch(b|0){case 0:b=J[a+108>>2];J[c>>2]=J[a+104>>2];J[c+4>>2]=b;b=J[a+116>>2];J[c+8>>2]=J[a+112>>2];J[c+12>>2]=b;a=a+120|0;break b;case 1:b=J[a+132>>2];J[c+8>>2]=J[a+128>>2];J[c+12>>2]=b;b=J[a+124>>2];J[c>>2]=J[a+120>>2];J[c+4>>2]=b;a=a+136|0;break b;case 2:b=J[a+148>>2];J[c+8>>2]=J[a+144>>2];J[c+12>>2]=b;b=J[a+140>>2];J[c>>2]=J[a+136>>2];J[c+4>>2]=b;a=a+104|0;break b;case 3:b=J[a+108>>2];J[c>>2]=J[a+104>>2];J[c+4>>2]=b;b=J[a+116>>2];J[c+8>>2]=J[a+112>>2];J[c+12>>2]=b;a=a+152|0;break b;case 4:b=J[a+132>>2];J[c+8>>2]=J[a+128>>2];J[c+12>>2]=b;b=J[a+124>>2];J[c>>2]=J[a+120>>2];J[c+4>>2]=b;a=a+152|0;break b;case 5:break e;default:break a}}b=J[a+148>>2];J[c+8>>2]=J[a+144>>2];J[c+12>>2]=b;b=J[a+140>>2];J[c>>2]=J[a+136>>2];J[c+4>>2]=b;a=a+152|0;}b=J[a+4>>2];J[d>>2]=J[a>>2];J[d+4>>2]=b;b=J[a+12>>2];J[d+8>>2]=J[a+8>>2];J[d+12>>2]=b;}}function eh(a,b){a=a|0;b=Q(b);var c=0,d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=0,n=0,o=Q(0);n=sa-16|0;sa=n;ua[J[8262]](5587);l=J[a+248>>2];if((l|0)>0){while(1){c=J[J[a+256>>2]+(m<<2)>>2];if(!(K[c+204|0]&3)){d=N[c+372>>2];k=N[c+504>>2];e=md(Q(Q(1)-k),b);d=Q(d*e);N[c+372>>2]=d;h=Q(e*N[c+376>>2]);N[c+376>>2]=h;e=Q(e*N[c+380>>2]);N[c+380>>2]=e;g=N[c+388>>2];o=N[c+508>>2];f=md(Q(Q(1)-o),b);g=Q(g*f);N[c+388>>2]=g;i=Q(f*N[c+392>>2]);N[c+392>>2]=i;f=Q(f*N[c+396>>2]);N[c+396>>2]=f;a:{if(!K[c+512|0]){break a}if(!(!(N[c+524>>2]>Q(Q(f*f)+Q(Q(g*g)+Q(i*i))))|!(N[c+520>>2]>Q(Q(e*e)+Q(Q(d*d)+Q(h*h)))))){j=N[c+516>>2];f=Q(f*j);N[c+396>>2]=f;i=Q(i*j);N[c+392>>2]=i;g=Q(g*j);N[c+388>>2]=g;e=Q(e*j);N[c+380>>2]=e;h=Q(h*j);N[c+376>>2]=h;d=Q(d*j);N[c+372>>2]=d;}j=Q(Y(Q(Q(e*e)+Q(Q(d*d)+Q(h*h)))));b:{if(!(j<k)){break b}if(j>Q(.004999999888241291)){k=e;e=Q(Q(1)/j);N[c+380>>2]=k-Q(Q(k*e)*Q(.004999999888241291));N[c+376>>2]=h-Q(Q(h*e)*Q(.004999999888241291));N[c+372>>2]=d-Q(Q(d*e)*Q(.004999999888241291));break b}J[c+372>>2]=0;J[c+376>>2]=0;J[c+380>>2]=0;J[c+384>>2]=0;}d=Q(Y(Q(Q(f*f)+Q(Q(g*g)+Q(i*i)))));if(!(d<o)){break a}if(d>Q(.004999999888241291)){d=Q(Q(1)/d);N[c+396>>2]=f-Q(Q(f*d)*Q(.004999999888241291));N[c+392>>2]=i-Q(Q(i*d)*Q(.004999999888241291));N[c+388>>2]=g-Q(Q(g*d)*Q(.004999999888241291));break a}J[c+388>>2]=0;J[c+392>>2]=0;J[c+396>>2]=0;J[c+400>>2]=0;}pb(c,b,c+68|0);l=J[a+248>>2];}m=m+1|0;if((m|0)<(l|0)){continue}break}}ua[J[8263]]();sa=n+16|0;}function Jn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;J[8459]=J[8459]+1;e=J[b+12>>2]>J[c+12>>2];h=e?b:c;f=J[h+12>>2];i=e?c:b;g=J[i+12>>2];b=f<<16|g;b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=J[a+12>>2]-1&(b>>>16^b);c=J[J[a+40>>2]+(j<<2)>>2];a:{if((c|0)==-1){break a}k=J[a+60>>2];e=J[a+16>>2];while(1){b=e+(c<<4)|0;if(!((g|0)==J[J[b>>2]+12>>2]&(f|0)==J[J[b+4>>2]+12>>2])){c=J[(c<<2)+k>>2];if((c|0)!=-1){continue}break a}break}ua[J[J[a>>2]+32>>2]](a,b,d);l=J[(e+(c<<4)|0)+12>>2];b:{c:{f=J[a+40>>2]+(j<<2)|0;c=J[f>>2];e=b-J[a+16>>2]>>4;if((c|0)==(e|0)){break c}g=J[a+60>>2];while(1){b=c;c=J[g+(b<<2)>>2];if((e|0)!=(c|0)){continue}break}if((b|0)==-1){break c}c=b<<2;b=J[a+60>>2];J[c+b>>2]=J[b+(e<<2)>>2];break b}J[f>>2]=J[J[a+60>>2]+(e<<2)>>2];}f=J[a+8>>2]-1|0;b=J[a+68>>2];if(b){ua[J[J[b>>2]+12>>2]](b,i,h,d)|0;}if((e|0)!=(f|0)){d:{e:{h=J[a+16>>2];d=h+(f<<4)|0;b=J[J[d+4>>2]+12>>2]<<16|J[J[d>>2]+12>>2];b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;i=J[a+12>>2]-1&(b>>>16^b);g=J[a+40>>2]+(i<<2)|0;c=J[g>>2];if((f|0)==(c|0)){break e}j=J[a+60>>2];while(1){b=c;c=J[j+(b<<2)>>2];if((f|0)!=(c|0)){continue}break}if((b|0)==-1){break e}c=b<<2;b=J[a+60>>2];J[c+b>>2]=J[b+(f<<2)>>2];break d}J[g>>2]=J[J[a+60>>2]+(f<<2)>>2];}c=J[d+4>>2];b=h+(e<<4)|0;J[b>>2]=J[d>>2];J[b+4>>2]=c;c=J[d+12>>2];J[b+8>>2]=J[d+8>>2];J[b+12>>2]=c;b=J[a+40>>2]+(i<<2)|0;J[J[a+60>>2]+(e<<2)>>2]=J[b>>2];J[b>>2]=e;}J[a+8>>2]=J[a+8>>2]-1;}return l|0}function md(a,b){var c=0,d=0,e=0,f=0,g=0,h=Q(0),i=0,j=0;e=(B(b),v(2));f=(e<<1)+16777216>>>0<16777217;a:{b:{c:{c=(B(a),v(2));d:{if(c-2139095040>>>0>=2164260864){if(f){break d}break b}if(!f){break c}}h=Q(1);if((c|0)==1065353216){break a}g=e<<1;if(!g){break a}c=c<<1;if(!(g>>>0<4278190081&c>>>0<=4278190080)){return Q(a+b)}if((c|0)==2130706432){break a}return c>>>0>2130706431^(e|0)>=0?Q(0):Q(b*b)}if((c<<1)+16777216>>>0<16777217){h=Q(a*a);if((c|0)<0){h=(ld(e)|0)==1?Q(-h):h;}if((e|0)>=0){break a}c=sa-16|0;N[c+12>>2]=Q(1)/h;return N[c+12>>2]}if((c|0)<0){e=ld(e);if(!e){a=Q(a-a);return Q(a/a)}g=((e|0)==1)<<16;c=c&2147483647;}if(c>>>0>8388607){break b}c=((B(Q(a*Q(8388608))),v(2))&2147483647)-192937984|0;}e=c-1060306944|0;f=e>>>15&240;d=+(x(2,c-(e&-8388608)|0),C())*O[f+29592>>3]+-1;i=d*d;d=((O[3731]*d+O[3732])*(i*i)+((O[3733]*d+O[3734])*i+(O[3735]*d+(O[f+29600>>3]+ +(e>>23)))))*+b;A(+d);c=v(1)|0;v(0)|0;e:{c=c&2147450880;if((c|0)==1079967744|c>>>0<1079967744){break e}if(d>127.99999995700433){c=sa-16|0;N[c+12>>2]=g?Q(-15845632502852868e13):Q(15845632502852868e13);return Q(N[c+12>>2]*Q(15845632502852868e13))}if(!(d<=-150)){break e}c=sa-16|0;N[c+12>>2]=g?Q(-2524354896707238e-44):Q(2524354896707238e-44);return Q(N[c+12>>2]*Q(2524354896707238e-44))}i=O[3690];j=i+d;d=d-(j-i);d=(O[3691]*d+O[3692])*(d*d)+(O[3693]*d+1);A(+j);v(1)|0;f=v(0)|0;c=g+f|0;g=((f&31)<<3)+29264|0;f=J[g>>2];e=f;c=J[g+4>>2]+(c<<15)|0;x(0,e|0);x(1,(e>>>0<e>>>0?c+1|0:c)|0);h=Q(d*+z());}return h}function rb(a,b,c,d,e){var f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=0,q=Q(0);f=J[a+18504>>2];if(f){g=J[f+48>>2];if(g){J[g+44>>2]=J[f+44>>2];}g=J[f+44>>2];if(g){J[g+48>>2]=J[f+48>>2];}if(J[a+18504>>2]==(f|0)){J[a+18504>>2]=J[f+48>>2];}g=a+18508|0;J[g>>2]=J[g>>2]-1;J[f+44>>2]=0;J[f+48>>2]=J[a+18496>>2];g=J[a+18496>>2];if(g){J[g+44>>2]=f;}J[a+18496>>2]=f;g=a+18500|0;J[g>>2]=J[g>>2]+1;J[f+28>>2]=d;J[f+24>>2]=c;J[f+20>>2]=b;H[f+55|0]=0;k=N[c+24>>2];q=N[d+24>>2];h=N[b+24>>2];l=N[d+20>>2];j=N[b+20>>2];m=N[c+20>>2];n=N[c+16>>2];o=N[d+16>>2];i=N[b+16>>2];J[f+12>>2]=0;n=Q(n-i);l=Q(l-j);i=Q(o-i);m=Q(m-j);j=Q(Q(n*l)-Q(i*m));N[f+8>>2]=j;k=Q(k-h);o=Q(k*i);i=Q(q-h);h=Q(o-Q(i*n));N[f+4>>2]=h;i=Q(Q(m*i)-Q(l*k));N[f>>2]=i;p=2;a:{h=Q(Y(Q(Q(j*j)+Q(Q(i*i)+Q(h*h)))));if(!(h>Q(9999999747378752e-20))){break a}g=f+16|0;b:{if(tc(f,b,c,g)){break b}if(tc(f,c,d,g)){break b}if(tc(f,d,b,g)){break b}N[f+16>>2]=Q(Q(N[b+24>>2]*N[f+8>>2])+Q(Q(N[b+16>>2]*N[f>>2])+Q(N[b+20>>2]*N[f+4>>2])))/h;}h=Q(Q(1)/h);N[f>>2]=h*N[f>>2];N[f+4>>2]=h*N[f+4>>2];N[f+8>>2]=h*N[f+8>>2];if(e){return f}p=3;if(!(N[g>>2]>=Q(-9999999747378752e-21))){break a}return f}J[a>>2]=p;b=J[f+48>>2];if(b){J[b+44>>2]=J[f+44>>2];}b=J[f+44>>2];if(b){J[b+48>>2]=J[f+48>>2];}if(J[a+18496>>2]==(f|0)){J[a+18496>>2]=J[f+48>>2];}J[a+18500>>2]=J[a+18500>>2]-1;J[f+44>>2]=0;J[f+48>>2]=J[a+18504>>2];b=J[a+18504>>2];if(b){J[b+44>>2]=f;}J[a+18504>>2]=f;J[a+18508>>2]=J[a+18508>>2]+1;return 0}J[a>>2]=5;return 0}function is(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;J[8456]=J[8456]+1;e=ua[J[8258]](84,16)|0;d=sa-48|0;sa=d;J[e+12>>2]=0;J[e+16>>2]=0;J[e+4>>2]=35;J[e+8>>2]=0;J[e+20>>2]=0;J[e>>2]=20152;J[e+56>>2]=a;J[e>>2]=22140;J[e+4>>2]=21;a:{if(ua[J[J[a>>2]+40>>2]](a)|0){ua[J[J[a>>2]+48>>2]](a,e+24|0,e+40|0);break a}J[d+44>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+32>>2]=1065353216;g=d+16|0;a=d+32|0;ua[J[J[e>>2]+68>>2]](g,e,a);N[e+40>>2]=N[d+16>>2]+N[e+20>>2];J[d+32>>2]=-1082130432;ua[J[J[e>>2]+68>>2]](d,e,a);f=J[d+12>>2];J[d+24>>2]=J[d+8>>2];J[d+28>>2]=f;f=J[d+4>>2];J[d+16>>2]=J[d>>2];J[d+20>>2]=f;N[e+24>>2]=N[d+16>>2]-N[e+20>>2];J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+36>>2]=1065353216;ua[J[J[e>>2]+68>>2]](g,e,a);N[e+44>>2]=N[d+20>>2]+N[e+20>>2];J[d+36>>2]=-1082130432;ua[J[J[e>>2]+68>>2]](d,e,a);f=J[d+12>>2];J[d+24>>2]=J[d+8>>2];J[d+28>>2]=f;f=J[d+4>>2];J[d+16>>2]=J[d>>2];J[d+20>>2]=f;N[e+28>>2]=N[d+20>>2]-N[e+20>>2];J[d+40>>2]=0;J[d+44>>2]=0;J[d+40>>2]=1065353216;J[d+32>>2]=0;J[d+36>>2]=0;ua[J[J[e>>2]+68>>2]](g,e,a);N[e+48>>2]=N[d+24>>2]+N[e+20>>2];J[d+40>>2]=-1082130432;ua[J[J[e>>2]+68>>2]](d,e,a);a=J[d+12>>2];J[d+24>>2]=J[d+8>>2];J[d+28>>2]=a;a=J[d+4>>2];J[d+16>>2]=J[d>>2];J[d+20>>2]=a;N[e+32>>2]=N[d+24>>2]-N[e+20>>2];}sa=d+48|0;H[e+69|0]=0;H[e+68|0]=b;J[e+60>>2]=0;J[e+64>>2]=0;J[e>>2]=18524;J[e+4>>2]=21;if(c){J[8456]=J[8456]+1;a=le(ua[J[8258]](172,16)|0);J[e+60>>2]=a;ke(a,J[e+56>>2],K[e+68|0],e+24|0,e+40|0);H[e+69|0]=1;}return e|0}function Mh(a,b,c){a=a|0;b=b|0;c=c|0;lf(a,b,c);N[b+264>>2]=N[a+324>>2];N[b+268>>2]=N[a+328>>2];N[b+272>>2]=N[a+332>>2];N[b+276>>2]=N[a+336>>2];N[b+280>>2]=N[a+340>>2];N[b+284>>2]=N[a+344>>2];N[b+288>>2]=N[a+348>>2];N[b+292>>2]=N[a+352>>2];N[b+296>>2]=N[a+356>>2];N[b+300>>2]=N[a+360>>2];N[b+304>>2]=N[a+364>>2];N[b+308>>2]=N[a+368>>2];N[b+312>>2]=N[a+372>>2];N[b+316>>2]=N[a+376>>2];N[b+320>>2]=N[a+380>>2];N[b+324>>2]=N[a+384>>2];N[b+328>>2]=N[a+388>>2];N[b+332>>2]=N[a+392>>2];N[b+336>>2]=N[a+396>>2];N[b+340>>2]=N[a+400>>2];N[b+456>>2]=N[a+404>>2];N[b+344>>2]=N[a+604>>2];N[b+348>>2]=N[a+608>>2];N[b+352>>2]=N[a+612>>2];N[b+356>>2]=N[a+616>>2];N[b+360>>2]=N[a+408>>2];N[b+364>>2]=N[a+412>>2];N[b+368>>2]=N[a+416>>2];N[b+372>>2]=N[a+420>>2];N[b+376>>2]=N[a+424>>2];N[b+380>>2]=N[a+428>>2];N[b+384>>2]=N[a+432>>2];N[b+388>>2]=N[a+436>>2];N[b+392>>2]=N[a+440>>2];N[b+396>>2]=N[a+444>>2];N[b+400>>2]=N[a+448>>2];N[b+404>>2]=N[a+452>>2];N[b+408>>2]=N[a+456>>2];N[b+412>>2]=N[a+460>>2];N[b+416>>2]=N[a+464>>2];N[b+420>>2]=N[a+468>>2];N[b+424>>2]=N[a+472>>2];N[b+428>>2]=N[a+476>>2];N[b+432>>2]=N[a+480>>2];N[b+436>>2]=N[a+484>>2];N[b+440>>2]=N[a+488>>2];N[b+444>>2]=N[a+492>>2];N[b+448>>2]=N[a+496>>2];N[b+452>>2]=N[a+500>>2];N[b+460>>2]=N[a+504>>2];N[b+464>>2]=N[a+508>>2];J[b+492>>2]=K[a+512|0];N[b+468>>2]=N[a+516>>2];N[b+472>>2]=N[a+520>>2];N[b+476>>2]=N[a+524>>2];N[b+480>>2]=N[a+528>>2];N[b+484>>2]=N[a+532>>2];N[b+488>>2]=N[a+536>>2];return 8570}function Eo(a,b,c){a=a|0;b=b|0;c=Q(c);var d=0,e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0;d=sa-48|0;sa=d;e=J[b+60>>2];J[d+40>>2]=J[b+56>>2];J[d+44>>2]=e;e=J[b+52>>2];J[d+32>>2]=J[b+48>>2];J[d+36>>2]=e;f=N[b+24>>2];g=N[b+20>>2];h=N[b+40>>2];i=N[b+36>>2];j=N[b+8>>2];k=N[b>>2];l=N[b+4>>2];m=N[b+16>>2];n=N[b+32>>2];J[d+28>>2]=0;N[d+24>>2]=Q(Q(h*Q(0))+Q(Q(n*c)+Q(i*Q(0))))+N[d+40>>2];N[d+20>>2]=Q(Q(f*Q(0))+Q(Q(m*c)+Q(g*Q(0))))+N[d+36>>2];N[d+16>>2]=Q(Q(j*Q(0))+Q(Q(k*c)+Q(l*Q(0))))+N[d+32>>2];J[d+8>>2]=1050253722;J[d+12>>2]=0;J[d>>2]=1065353216;J[d+4>>2]=1050253722;e=d+32|0;o=d+16|0;ua[J[J[a>>2]+16>>2]](a,e,o,d);f=N[b+24>>2];g=N[b+20>>2];h=N[b+40>>2];i=N[b+36>>2];j=N[b+8>>2];k=N[b>>2];l=N[b+4>>2];m=N[b+16>>2];n=N[b+32>>2];J[d+28>>2]=0;N[d+24>>2]=Q(Q(h*Q(0))+Q(Q(n*Q(0))+Q(i*c)))+N[d+40>>2];N[d+20>>2]=Q(Q(f*Q(0))+Q(Q(m*Q(0))+Q(g*c)))+N[d+36>>2];N[d+16>>2]=Q(Q(j*Q(0))+Q(Q(k*Q(0))+Q(l*c)))+N[d+32>>2];J[d+8>>2]=1050253722;J[d+12>>2]=0;J[d>>2]=1050253722;J[d+4>>2]=1065353216;ua[J[J[a>>2]+16>>2]](a,e,o,d);f=N[b+24>>2];g=N[b+20>>2];h=N[b+40>>2];i=N[b+36>>2];j=N[b+8>>2];k=N[b>>2];l=N[b+4>>2];m=N[b+16>>2];n=N[b+32>>2];J[d+28>>2]=0;N[d+24>>2]=Q(Q(h*c)+Q(Q(n*Q(0))+Q(i*Q(0))))+N[d+40>>2];N[d+20>>2]=Q(Q(f*c)+Q(Q(m*Q(0))+Q(g*Q(0))))+N[d+36>>2];N[d+16>>2]=Q(Q(j*c)+Q(Q(k*Q(0))+Q(l*Q(0))))+N[d+32>>2];J[d+8>>2]=1065353216;J[d+12>>2]=0;J[d>>2]=1050253722;J[d+4>>2]=1050253722;ua[J[J[a>>2]+16>>2]](a,e,o,d);sa=d+48|0;}function yc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{b:{c:{d:{e:{if(K[a+164|0]){m=a+128|0;c=J[m>>2];if((c|0)!=J[a+132>>2]){break b}i=c?c<<1:1;if((i|0)<=(c|0)){break b}if(i){J[8456]=J[8456]+1;h=ua[J[8258]](i<<2,16)|0;c=J[a+128>>2];}d=J[a+136>>2];if((c|0)<=0){break e}if(c>>>0>=4){k=c&-4;while(1){f=e<<2;J[f+h>>2]=J[d+f>>2];j=f|4;J[j+h>>2]=J[d+j>>2];j=f|8;J[j+h>>2]=J[d+j>>2];f=f|12;J[f+h>>2]=J[d+f>>2];e=e+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}c=c&3;if(!c){break d}while(1){f=e<<2;J[f+h>>2]=J[d+f>>2];e=e+1|0;g=g+1|0;if((c|0)!=(g|0)){continue}break}break d}m=a+148|0;g=J[m>>2];f:{if((g|0)!=J[a+152>>2]){break f}f=g?g<<1:1;if((f|0)<=(g|0)){break f}if(f){J[8456]=J[8456]+1;h=ua[J[8258]](f<<1,16)|0;g=J[a+148>>2];}c=J[a+156>>2];g:{h:{if((g|0)>0){if(g>>>0>=4){i=g&-4;while(1){d=e<<1;I[d+h>>1]=L[c+d>>1];k=d|2;I[k+h>>1]=L[c+k>>1];k=d|4;I[k+h>>1]=L[c+k>>1];d=d|6;I[d+h>>1]=L[c+d>>1];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=g&3;if(d){while(1){i=e<<1;I[i+h>>1]=L[c+i>>1];e=e+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}if(K[a+160|0]){break h}break g}if(!c|!K[a+160|0]){break g}}if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}g=J[a+148>>2];}J[a+156>>2]=h;J[a+152>>2]=f;H[a+160|0]=1;}e=J[a+156>>2];I[e+(g<<1)>>1]=b;break a}if(!d){break c}}if(d?K[a+140|0]:0){J[8457]=J[8457]+1;ua[J[8259]](d);}c=J[a+128>>2];}J[a+136>>2]=h;J[a+132>>2]=i;H[a+140|0]=1;}e=J[a+136>>2];J[e+(c<<2)>>2]=b;g=J[a+128>>2];}J[m>>2]=g+1;J[J[a+32>>2]+4>>2]=e;}function $h(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0;e=N[c+128>>2];a:{if(e==Q(0)){break a}J[8760]=J[8760]+1;d=N[c+96>>2];f=Q(e-Q(d*N[c+116>>2]));g=N[c+24>>2];h=N[c+16>>2];i=N[c+20>>2];e=N[c+108>>2];e=Q(Q(f-Q(Q(Q(Q(g*N[a+152>>2])+Q(Q(h*N[a+144>>2])+Q(i*N[a+148>>2])))+Q(Q(N[c+8>>2]*N[a+168>>2])+Q(Q(N[c>>2]*N[a+160>>2])+Q(N[c+4>>2]*N[a+164>>2]))))*e))-Q(Q(Q(Q(N[c+56>>2]*N[b+152>>2])+Q(Q(N[c+48>>2]*N[b+144>>2])+Q(N[c+52>>2]*N[b+148>>2])))+Q(Q(N[c+40>>2]*N[b+168>>2])+Q(Q(N[c+32>>2]*N[b+160>>2])+Q(N[c+36>>2]*N[b+164>>2]))))*e));j=Q(d+e);f=N[c+120>>2];k=j<f;N[c+96>>2]=k?f:j;d=k?Q(f-d):e;if(J[a+240>>2]){N[a+144>>2]=Q(N[a+112>>2]*Q(d*Q(h*N[a+128>>2])))+N[a+144>>2];N[a+148>>2]=Q(Q(d*Q(i*N[a+132>>2]))*N[a+116>>2])+N[a+148>>2];N[a+152>>2]=Q(Q(d*Q(g*N[a+136>>2]))*N[a+120>>2])+N[a+152>>2];e=N[c+72>>2];f=N[c+68>>2];N[a+160>>2]=Q(Q(d*N[a+96>>2])*N[c+64>>2])+N[a+160>>2];g=N[a+104>>2];N[a+164>>2]=Q(f*Q(d*N[a+100>>2]))+N[a+164>>2];N[a+168>>2]=Q(e*Q(d*g))+N[a+168>>2];}if(!J[b+240>>2]){break a}e=N[c+56>>2];f=N[c+52>>2];N[b+144>>2]=Q(N[b+112>>2]*Q(d*Q(N[c+48>>2]*N[b+128>>2])))+N[b+144>>2];N[b+148>>2]=Q(Q(d*Q(f*N[b+132>>2]))*N[b+116>>2])+N[b+148>>2];N[b+152>>2]=Q(Q(d*Q(e*N[b+136>>2]))*N[b+120>>2])+N[b+152>>2];e=N[c+88>>2];f=N[c+84>>2];N[b+160>>2]=Q(Q(d*N[b+96>>2])*N[c+80>>2])+N[b+160>>2];g=N[b+104>>2];N[b+164>>2]=Q(f*Q(d*N[b+100>>2]))+N[b+164>>2];N[b+168>>2]=Q(e*Q(d*g))+N[b+168>>2];}return Q(d)}function $g(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;ua[J[J[b>>2]+32>>2]](b);d=ua[J[J[b>>2]+16>>2]](b,104,1)|0;c=Fa(J[d+8>>2],0,104);N[c+88>>2]=N[a+264>>2];N[c+92>>2]=N[a+268>>2];N[c+96>>2]=N[a+272>>2];N[c+100>>2]=N[a+276>>2];N[c>>2]=N[a+92>>2];N[c+4>>2]=N[a+96>>2];N[c+8>>2]=N[a+100>>2];N[c+12>>2]=N[a+104>>2];N[c+16>>2]=N[a+108>>2];N[c+20>>2]=N[a+116>>2];N[c+24>>2]=N[a+120>>2];N[c+28>>2]=N[a+124>>2];N[c+32>>2]=N[a+128>>2];N[c+36>>2]=N[a+132>>2];N[c+40>>2]=N[a+148>>2];N[c+44>>2]=N[a+152>>2];N[c+48>>2]=N[a+156>>2];N[c+52>>2]=N[a+160>>2];N[c+56>>2]=N[a+176>>2];N[c+60>>2]=N[a+180>>2];J[c+64>>2]=J[a+112>>2];J[c+68>>2]=J[a+164>>2];J[c+72>>2]=J[a+168>>2];J[c+76>>2]=J[a+172>>2];e=J[a+144>>2];J[c+84>>2]=0;J[c+80>>2]=e;ua[J[J[b>>2]+20>>2]](b,d,8729,1145853764,c);ff(a,b);c=0;e=J[a+8>>2];if((e|0)>0){while(1){d=J[J[a+16>>2]+(c<<2)>>2];if(K[d+252|0]&2){e=(g=b,h=ua[J[J[d>>2]+16>>2]](d)|0,i=1,f=J[J[b>>2]+16>>2],ua[f](g|0,h|0,i|0)|0);i=b,h=e,g=ua[J[J[d>>2]+20>>2]](d,J[e+8>>2],b)|0,j=1497645650,k=d,f=J[J[b>>2]+20>>2],ua[f](i|0,h|0,g|0,j|0,k|0);e=J[a+8>>2];}c=c+1|0;if((e|0)>(c|0)){continue}break}}if(J[a+228>>2]>0){c=0;while(1){d=J[J[a+236>>2]+(c<<2)>>2];e=(k=b,j=ua[J[J[d>>2]+36>>2]](d)|0,g=1,f=J[J[b>>2]+16>>2],ua[f](k|0,j|0,g|0)|0);g=b,j=e,k=ua[J[J[d>>2]+40>>2]](d,J[e+8>>2],b)|0,h=1397641027,i=d,f=J[J[b>>2]+20>>2],ua[f](g|0,j|0,k|0,h|0,i|0);c=c+1|0;if((c|0)<J[a+228>>2]){continue}break}}ua[J[J[b>>2]+36>>2]](b);}function Jj(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=0,f=0,g=0,h=0,i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=0,o=0,p=Q(0),q=0,r=Q(0),s=0;g=sa-2048|0;sa=g;J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;d=N[c+8>>2];i=N[c>>2];l=N[c+4>>2];j=Q(Q(d*d)+Q(Q(i*i)+Q(l*l)));if(j<Q(9999999747378752e-20)){i=Q(1);}else {m=d;d=Q(Q(1)/Q(Y(j)));m=Q(m*d);p=Q(l*d);i=Q(i*d);}if((ua[J[J[b>>2]+96>>2]](b)|0)>0){l=Q(-0xde0b6b000000000);while(1){e=128;a:{b:{if(((ua[J[J[b>>2]+96>>2]](b)|0)-o|0)>127){break b}e=(ua[J[J[b>>2]+96>>2]](b)|0)-o|0;if((e|0)>0){break b}d=Q(-34028234663852886e22);f=-1;break a}c=0;h=(e|0)==1;if(!h){k=e&-2;f=0;while(1){ua[J[J[b>>2]+108>>2]](b,c,(c<<4)+g|0);n=c|1;ua[J[J[b>>2]+108>>2]](b,n,(n<<4)+g|0);c=c+2|0;f=f+2|0;if((k|0)!=(f|0)){continue}break}}n=e&1;if(n){ua[J[J[b>>2]+108>>2]](b,c,(c<<4)+g|0);}c:{if(h){c=0;f=-1;d=Q(-34028234663852886e22);break c}s=e&-2;c=0;f=-1;d=Q(-34028234663852886e22);e=0;while(1){h=(c<<4)+g|0;j=Q(Q(N[h+8>>2]*m)+Q(Q(N[h>>2]*i)+Q(p*N[h+4>>2])));h=j>d;q=c|1;k=(q<<4)+g|0;r=Q(Q(N[k+8>>2]*m)+Q(Q(N[k>>2]*i)+Q(p*N[k+4>>2])));d=h?j:d;k=r>d;d=k?r:d;f=k?q:h?c:f;c=c+2|0;e=e+2|0;if((s|0)!=(e|0)){continue}break}}if(!n){break a}e=(c<<4)+g|0;j=Q(Q(N[e+8>>2]*m)+Q(Q(N[e>>2]*i)+Q(p*N[e+4>>2])));e=j>d;d=e?j:d;f=e?c:f;}if(d>l){c=(f<<4)+g|0;e=J[c+12>>2];J[a+8>>2]=J[c+8>>2];J[a+12>>2]=e;e=J[c+4>>2];J[a>>2]=J[c>>2];J[a+4>>2]=e;l=d;}o=o+128|0;if((ua[J[J[b>>2]+96>>2]](b)|0)>(o|0)){continue}break}}sa=g+2048|0;}function de(a,b,c,d){var e=Q(0),f=0,g=0,h=0,i=0,j=0,k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=0,s=0,t=0,u=Q(0),v=Q(0),w=Q(0);i=sa-32|0;sa=i;while(1){r=c;h=J[a+12>>2]+P((c+d|0)/2|0,24)|0;s=J[h+20>>2];m=N[h+16>>2];u=N[h+8>>2];v=N[h+4>>2];w=N[h>>2];h=d;while(1){n=N[b+8>>2];k=Q(u-n);e=Q(k*k);o=N[b>>2];k=Q(w-o);l=Q(k*k);p=N[b+4>>2];k=Q(v-p);k=Q(e+Q(l+Q(k*k)));j=J[a+12>>2];while(1){a:{f=P(c,24)+j|0;e=N[f+16>>2];b:{if(e!=m){if(e<m){break b}break a}e=Q(N[f+8>>2]-n);l=Q(e*e);e=Q(N[f>>2]-o);q=Q(e*e);e=Q(N[f+4>>2]-p);e=Q(l+Q(q+Q(e*e)));if(((e!=k?e<k:J[f+20>>2]<(s|0))|0)!=1){break a}}c=c+1|0;continue}break}while(1){c:{t=P(h,24);g=t+j|0;e=N[g+16>>2];d:{if(e!=m){if(e>m){break d}break c}e=Q(N[g+8>>2]-n);l=Q(e*e);e=Q(N[g>>2]-o);q=Q(e*e);e=Q(N[g+4>>2]-p);e=Q(l+Q(q+Q(e*e)));if(((e!=k?e>k:J[g+20>>2]>(s|0))|0)!=1){break c}}h=h-1|0;continue}break}if((c|0)<=(h|0)){j=J[f+20>>2];J[i+24>>2]=J[f+16>>2];J[i+28>>2]=j;j=J[f+12>>2];J[i+16>>2]=J[f+8>>2];J[i+20>>2]=j;j=J[f+4>>2];J[i+8>>2]=J[f>>2];J[i+12>>2]=j;j=J[g+4>>2];J[f>>2]=J[g>>2];J[f+4>>2]=j;j=J[g+12>>2];J[f+8>>2]=J[g+8>>2];J[f+12>>2]=j;j=J[g+20>>2];J[f+16>>2]=J[g+16>>2];J[f+20>>2]=j;g=J[i+12>>2];f=J[a+12>>2]+t|0;J[f>>2]=J[i+8>>2];J[f+4>>2]=g;g=J[i+28>>2];J[f+16>>2]=J[i+24>>2];J[f+20>>2]=g;g=J[i+20>>2];J[f+8>>2]=J[i+16>>2];J[f+12>>2]=g;h=h-1|0;c=c+1|0;}if((c|0)<=(h|0)){continue}break}if((h|0)>(r|0)){de(a,b,r,h);}if((c|0)<(d|0)){continue}break}sa=i+32|0;}function Wm(a,b){a=a|0;b=b|0;var c=0,d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=Q(0),B=Q(0),C=Q(0),D=0;c=sa-128|0;sa=c;m=J[b+36>>2];b=J[J[a+24>>2]+32>>2]+P(m,80)|0;z=J[b+64>>2];n=N[b+32>>2];o=N[b>>2];p=N[b+16>>2];q=N[b+56>>2];r=N[b+52>>2];s=N[b+48>>2];t=N[b+36>>2];u=N[b+20>>2];v=N[b+4>>2];w=N[b+40>>2];x=N[b+24>>2];y=N[b+8>>2];b=J[a+28>>2];A=N[b+52>>2];B=N[b+56>>2];d=N[b+24>>2];e=N[b+20>>2];f=N[b+40>>2];g=N[b+36>>2];C=N[b+48>>2];h=N[b+8>>2];i=N[b>>2];j=N[b+4>>2];k=N[b+16>>2];l=N[b+32>>2];J[c+124>>2]=0;J[c+108>>2]=0;J[c+92>>2]=0;N[c+104>>2]=Q(w*f)+Q(Q(y*l)+Q(x*g));N[c+100>>2]=Q(t*f)+Q(Q(v*l)+Q(u*g));N[c+88>>2]=Q(w*d)+Q(Q(y*k)+Q(x*e));N[c+84>>2]=Q(t*d)+Q(Q(v*k)+Q(u*e));N[c+120>>2]=B+Q(Q(q*f)+Q(Q(s*l)+Q(r*g)));N[c+116>>2]=A+Q(Q(q*d)+Q(Q(s*k)+Q(r*e)));J[c+76>>2]=0;N[c+72>>2]=Q(w*h)+Q(Q(y*i)+Q(x*j));N[c+68>>2]=Q(t*h)+Q(Q(v*i)+Q(u*j));N[c+64>>2]=Q(n*h)+Q(Q(o*i)+Q(p*j));N[c+112>>2]=C+Q(Q(q*h)+Q(Q(s*i)+Q(r*j)));N[c+96>>2]=Q(n*f)+Q(Q(o*l)+Q(p*g));N[c+80>>2]=Q(n*d)+Q(Q(o*k)+Q(p*e));b=J[a+32>>2];J[c+48>>2]=0;J[c+40>>2]=1;J[c+44>>2]=-1;J[c+60>>2]=m;J[c+56>>2]=b;J[c+52>>2]=z;J[c+32>>2]=14400;N[c+36>>2]=N[b+4>>2];b=J[a+4>>2];D=J[b+8>>2];J[c+28>>2]=m;J[c+24>>2]=-1;J[c+16>>2]=D;J[c+12>>2]=z;J[c+8>>2]=b;J[c+20>>2]=c- -64;Tc(J[a+8>>2],J[a+12>>2],J[a+16>>2],c+8|0,c+32|0,N[a+20>>2]);sa=c+128|0;}function Te(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=sa-32|0;sa=h;e=J[a+52>>2];n=K[a+68|0];l=n?c:b;m=J[l+4>>2];f=J[m+24>>2];a:{if((e|0)>=(f|0)){break a}if(J[a+56>>2]<(f|0)){if(f){J[8456]=J[8456]+1;i=ua[J[8258]](f<<2,16)|0;d=J[a+52>>2];}else {d=e;}b:{if((d|0)<=0){break b}if(d>>>0>=4){q=d&-4;while(1){g=j<<2;J[g+i>>2]=J[g+J[a+60>>2]>>2];k=g|4;J[k+i>>2]=J[k+J[a+60>>2]>>2];k=g|8;J[k+i>>2]=J[k+J[a+60>>2]>>2];g=g|12;J[g+i>>2]=J[g+J[a+60>>2]>>2];j=j+4|0;o=o+4|0;if((o|0)!=(q|0)){continue}break}}d=d&3;if(!d){break b}while(1){g=j<<2;J[g+i>>2]=J[g+J[a+60>>2]>>2];j=j+1|0;p=p+1|0;if((d|0)!=(p|0)){continue}break}}d=J[a+60>>2];if(!(d?!d|!K[a- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+60>>2]=i;H[a+64|0]=1;J[a+56>>2]=f;}d=(e^-1)+f|0;i=f-e&3;if(i){j=0;while(1){J[J[a+60>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((i|0)!=(j|0)){continue}break}}if(d>>>0<3){break a}while(1){d=e<<2;J[d+J[a+60>>2]>>2]=0;J[(d+J[a+60>>2]|0)+4>>2]=0;J[(d+J[a+60>>2]|0)+8>>2]=0;J[(d+J[a+60>>2]|0)+12>>2]=0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}J[a+52>>2]=f;if((f|0)>0){b=n?b:c;e=0;while(1){c:{if(J[m+72>>2]){J[J[a+60>>2]+(e<<2)>>2]=0;break c}c=J[l+12>>2];d=J[l+8>>2];J[h+12>>2]=J[(J[m+32>>2]+P(e,80)|0)+64>>2];J[h+28>>2]=e;J[h+24>>2]=-1;J[h+16>>2]=d;J[h+20>>2]=c;J[h+8>>2]=l;c=J[a+4>>2];c=ua[J[J[c>>2]+8>>2]](c,h+8|0,b,J[a+72>>2],1)|0;J[J[a+60>>2]+(e<<2)>>2]=c;}e=e+1|0;if((f|0)!=(e|0)){continue}break}}sa=h+32|0;}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;J[8460]=J[8460]+1;d=J[a+24>>2];a:{b:{if(d){if(ua[J[J[d>>2]+8>>2]](d,b,c)|0){break b}break a}if(!(J[c+8>>2]&J[b+4>>2])|!(J[b+8>>2]&J[c+4>>2])){break a}}e=J[b+12>>2]>J[c+12>>2];j=e?b:c;g=J[j+12>>2];k=e?c:b;h=J[k+12>>2];b=g<<16|h;b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;m=b>>>16^b;c=a;b=J[c+12>>2];l=m&b-1;a=J[J[c+40>>2]+(l<<2)>>2];c:{if((a|0)!=-1){i=J[c+60>>2];d=J[c+16>>2];while(1){f=a<<4;e=f+d|0;if((h|0)==J[J[e>>2]+12>>2]&(g|0)==J[J[(d+f|0)+4>>2]+12>>2]){break c}a=J[i+(a<<2)>>2];if((a|0)!=-1){continue}break}}h=J[c+8>>2];e=h;a=b;d:{if((e|0)!=(b|0)){break d}e=b;d=b?b<<1:1;if((d|0)<=(b|0)){break d}e:{if(!d){e=0;a=b;break e}J[8456]=J[8456]+1;e=ua[J[8258]](d<<4,16)|0;a=J[c+8>>2];}g=a;if((g|0)>0){a=0;while(1){f=a<<4;i=f+e|0;f=f+J[c+16>>2]|0;J[i>>2]=J[f>>2];J[i+4>>2]=J[f+4>>2];J[i+8>>2]=J[f+8>>2];J[i+12>>2]=J[f+12>>2];a=a+1|0;if((g|0)!=(a|0)){continue}break}}a=J[c+16>>2];if(!(a?!a|!K[c+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[c+16>>2]=e;H[c+20|0]=1;J[c+12>>2]=d;e=J[c+8>>2];a=d;}J[c+8>>2]=e+1;g=J[c+16>>2];e=g+(h<<4)|0;d=J[c+68>>2];if(d){ua[J[J[d>>2]+8>>2]](d,k,j)|0;a=J[c+12>>2];}if((a|0)>(b|0)){qf(c);l=J[c+12>>2]-1&m;}b=J[k+12>>2]<J[j+12>>2];J[e>>2]=b?k:j;a=g+(h<<4)|0;J[a+8>>2]=0;J[a+12>>2]=0;J[a+4>>2]=b?j:k;a=J[c+40>>2]+(l<<2)|0;J[J[c+60>>2]+(h<<2)>>2]=J[a>>2];J[a>>2]=h;}}return e|0}function bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0);g=N[c+100>>2];h=N[c+24>>2];i=N[c+16>>2];j=N[c+20>>2];e=N[c+108>>2];d=Q(Q(Q(N[c+112>>2]-Q(g*N[c+116>>2]))-Q(Q(Q(Q(h*N[a+72>>2])+Q(Q(i*N[a+64>>2])+Q(j*N[a+68>>2])))+Q(Q(N[c+8>>2]*N[a+88>>2])+Q(Q(N[c>>2]*N[a+80>>2])+Q(N[c+4>>2]*N[a+84>>2]))))*e))-Q(Q(Q(Q(N[c+56>>2]*N[b+72>>2])+Q(Q(N[c+48>>2]*N[b+64>>2])+Q(N[c+52>>2]*N[b+68>>2])))+Q(Q(N[c+40>>2]*N[b+88>>2])+Q(Q(N[c+32>>2]*N[b+80>>2])+Q(N[c+36>>2]*N[b+84>>2]))))*e));e=Q(g+d);f=N[c+120>>2];a:{if(e<f){d=Q(f-g);e=f;break a}f=N[c+124>>2];if(!(f<e)){break a}d=Q(f-g);e=f;}N[c+100>>2]=e;if(J[a+240>>2]){N[a+64>>2]=Q(N[a+112>>2]*Q(d*Q(i*N[a+128>>2])))+N[a+64>>2];N[a+68>>2]=Q(Q(d*Q(j*N[a+132>>2]))*N[a+116>>2])+N[a+68>>2];N[a+72>>2]=Q(Q(d*Q(h*N[a+136>>2]))*N[a+120>>2])+N[a+72>>2];e=N[c+72>>2];f=N[c+68>>2];N[a+80>>2]=Q(Q(d*N[a+96>>2])*N[c+64>>2])+N[a+80>>2];g=N[a+104>>2];N[a+84>>2]=Q(f*Q(d*N[a+100>>2]))+N[a+84>>2];N[a+88>>2]=Q(e*Q(d*g))+N[a+88>>2];}if(J[b+240>>2]){e=N[c+56>>2];f=N[c+52>>2];N[b+64>>2]=Q(N[b+112>>2]*Q(d*Q(N[c+48>>2]*N[b+128>>2])))+N[b+64>>2];N[b+68>>2]=Q(Q(d*Q(f*N[b+132>>2]))*N[b+116>>2])+N[b+68>>2];N[b+72>>2]=Q(Q(d*Q(e*N[b+136>>2]))*N[b+120>>2])+N[b+72>>2];e=N[c+88>>2];f=N[c+84>>2];N[b+80>>2]=Q(Q(d*N[b+96>>2])*N[c+80>>2])+N[b+80>>2];g=N[b+104>>2];N[b+84>>2]=Q(f*Q(d*N[b+100>>2]))+N[b+84>>2];N[b+88>>2]=Q(e*Q(d*g))+N[b+88>>2];}return Q(d)}function os(){var a=0,b=0,c=0,d=0,e=0,f=0;J[8456]=J[8456]+1;d=Fa(ua[J[8258]](100,16)|0,0,100);a=d;J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=31;J[a+8>>2]=0;J[a+80>>2]=0;J[a+84>>2]=1065353216;J[a+72>>2]=0;J[a+76>>2]=1;J[a+56>>2]=-581039253;J[a+60>>2]=-581039253;J[a+40>>2]=1566444395;J[a+44>>2]=1566444395;H[a+36|0]=1;J[a>>2]=19276;J[a+32>>2]=0;J[a+96>>2]=0;J[a+88>>2]=1065353216;J[a+92>>2]=1065353216;a=a- -64|0;J[a>>2]=-581039253;J[a+4>>2]=0;J[d+48>>2]=1566444395;J[d+52>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[8456]=J[8456]+1;a=ua[J[8258]](40,16)|0;J[a+16>>2]=0;J[a+8>>2]=-1;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0;J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;J[d+72>>2]=a;if(J[d+28>>2]<0){f=J[d+24>>2];if((f|0)>0){while(1){a=P(e,80);b=a+J[d+32>>2]|0;c=J[b+4>>2];J[a>>2]=J[b>>2];J[a+4>>2]=c;c=J[b+12>>2];J[a+8>>2]=J[b+8>>2];J[a+12>>2]=c;c=J[b+28>>2];J[a+24>>2]=J[b+24>>2];J[a+28>>2]=c;c=J[b+20>>2];J[a+16>>2]=J[b+16>>2];J[a+20>>2]=c;c=J[b+44>>2];J[a+40>>2]=J[b+40>>2];J[a+44>>2]=c;c=J[b+36>>2];J[a+32>>2]=J[b+32>>2];J[a+36>>2]=c;c=J[b+60>>2];J[a+56>>2]=J[b+56>>2];J[a+60>>2]=c;c=J[b+52>>2];J[a+48>>2]=J[b+48>>2];J[a+52>>2]=c;c=J[b+68>>2];J[a+64>>2]=J[b+64>>2];J[a+68>>2]=c;c=J[b+76>>2];J[a+72>>2]=J[b+72>>2];J[a+76>>2]=c;e=e+1|0;if((f|0)!=(e|0)){continue}break}}a=J[d+32>>2];if(!(a?!a|!K[d+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}J[d+32>>2]=0;H[d+36|0]=1;J[d+28>>2]=0;}J[d>>2]=31040;return d|0}function Sc(a,b,c,d,e,f,g,h,i,j,k){var l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0);g=(g<<2)+i|0;q=N[g+32>>2];r=Q(N[j+56>>2]-N[i+56>>2]);s=N[g>>2];u=Q(N[j+48>>2]-N[i+48>>2]);o=N[g+16>>2];v=Q(N[j+52>>2]-N[i+52>>2]);t=Q(Q(q*r)+Q(Q(s*u)+Q(o*v)));g=(h<<2)+j|0;w=N[g+32>>2];x=N[g>>2];y=N[g+16>>2];n=Q(-Q(Q(w*r)+Q(Q(x*u)+Q(y*v))));p=Q(Q(q*w)+Q(Q(s*x)+Q(o*y)));m=Q(Q(1)-Q(p*p));a:{if(m==Q(0)){break a}l=Q(-c);m=Q(Q(Q(n*p)+t)/m);if(l>m){break a}l=m;if(!(l>c)){break a}l=c;}m=Q(Q(l*p)+n);n=Q(-e);b:{c:{if(m<n){l=Q(-c);e=Q(Q(n*p)+t);if(l>e){m=n;break b}if(!(c<e)){m=n;l=e;break b}e=n;break c}if(!(e<m)){break b}l=Q(-c);n=Q(Q(e*p)+t);if(l>n){m=e;break b}if(!(c<n)){m=e;l=n;break b}}m=e;l=c;}z=k;n=Q(w*m);c=Q(n+Q(r-Q(q*l)));p=Q(x*m);e=Q(p+Q(u-Q(s*l)));m=Q(y*m);k=Q(m+Q(v-Q(o*l)));l=Q(Q(c*c)+Q(Q(e*e)+Q(k*k)));t=Q(Y(l));r=Q(Q(t-d)-f);if(!(z<r)){d:{if(l<=Q(14210854715202004e-30)){if(Q(R(q))>Q(.7071067690849304)){J[a>>2]=0;d=Q(Q(1)/Q(Y(Q(Q(o*o)+Q(q*q)))));c=Q(o*d);N[a+8>>2]=c;l=Q(d*Q(-q));N[a+4>>2]=l;d=Q(0);break d}J[a+8>>2]=0;c=Q(Q(1)/Q(Y(Q(Q(s*s)+Q(o*o)))));l=Q(s*c);N[a+4>>2]=l;d=Q(c*Q(-o));N[a>>2]=d;c=Q(0);break d}J[a+12>>2]=0;d=Q(Q(-1)/t);c=Q(c*d);N[a+8>>2]=c;l=Q(k*d);N[a+4>>2]=l;d=Q(e*d);N[a>>2]=d;}e=N[j+48>>2];k=N[j+52>>2];o=N[j+56>>2];J[b+12>>2]=0;N[b+8>>2]=Q(n+o)+Q(c*f);N[b+4>>2]=Q(m+k)+Q(l*f);N[b>>2]=Q(p+e)+Q(d*f);}return r}
  19. function Gb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=Q(0),j=0,k=0,l=0;k=b,l=ua[J[J[c>>2]+28>>2]](c,J[a+28>>2])|0,J[k>>2]=l;k=b,l=ua[J[J[c>>2]+28>>2]](c,J[a+32>>2])|0,J[k+4>>2]=l;d=ua[J[J[c>>2]+40>>2]](c,a)|0;f=ua[J[J[c>>2]+28>>2]](c,d)|0;J[b+8>>2]=f;if(f){ua[J[J[c>>2]+48>>2]](c,d);}J[b+12>>2]=J[a+4>>2];J[b+24>>2]=K[a+21|0];J[b+40>>2]=J[a+24>>2];N[b+44>>2]=N[a+16>>2];J[b+48>>2]=K[a+20|0];J[b+20>>2]=J[a+12>>2];J[b+16>>2]=J[a+8>>2];N[b+28>>2]=N[a+36>>2];i=N[a+40>>2];c=0;J[b+36>>2]=0;N[b+32>>2]=i;d=J[a+28>>2];e=J[d+548>>2];a:{if((e|0)<=0){break a}f=J[d+556>>2];if(e>>>0>=4){h=e&-4;d=0;while(1){g=c<<2;if(J[g+f>>2]==(a|0)){J[b+36>>2]=1;}if(J[f+(g|4)>>2]==(a|0)){J[b+36>>2]=1;}if(J[f+(g|8)>>2]==(a|0)){J[b+36>>2]=1;}if(J[f+(g|12)>>2]==(a|0)){J[b+36>>2]=1;}c=c+4|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}e=e&3;if(!e){break a}d=0;while(1){if(J[f+(c<<2)>>2]==(a|0)){J[b+36>>2]=1;}c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=J[a+32>>2];e=J[c+548>>2];b:{if((e|0)<=0){break b}f=J[c+556>>2];d=0;c=0;if(e>>>0>=4){j=e&-4;h=0;while(1){g=c<<2;if(J[g+f>>2]==(a|0)){J[b+36>>2]=1;}if(J[f+(g|4)>>2]==(a|0)){J[b+36>>2]=1;}if(J[f+(g|8)>>2]==(a|0)){J[b+36>>2]=1;}if(J[f+(g|12)>>2]==(a|0)){J[b+36>>2]=1;}c=c+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=e&3;if(!e){break b}while(1){if(J[f+(c<<2)>>2]==(a|0)){J[b+36>>2]=1;}c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}return 8651}function Ym(a,b){a=a|0;b=b|0;var c=0,d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=0,n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=0,A=Q(0),B=Q(0),C=Q(0);c=sa-128|0;sa=c;m=J[b+36>>2];b=J[J[a+8>>2]+32>>2]+P(m,80)|0;z=J[b+64>>2];n=N[b+32>>2];o=N[b>>2];p=N[b+16>>2];q=N[b+56>>2];r=N[b+52>>2];s=N[b+48>>2];t=N[b+36>>2];u=N[b+20>>2];v=N[b+4>>2];w=N[b+40>>2];x=N[b+24>>2];y=N[b+8>>2];b=J[a+12>>2];A=N[b+52>>2];B=N[b+56>>2];d=N[b+24>>2];e=N[b+20>>2];f=N[b+40>>2];g=N[b+36>>2];C=N[b+48>>2];h=N[b+8>>2];i=N[b>>2];j=N[b+4>>2];k=N[b+16>>2];l=N[b+32>>2];J[c+124>>2]=0;J[c+108>>2]=0;J[c+92>>2]=0;N[c+104>>2]=Q(w*f)+Q(Q(y*l)+Q(x*g));N[c+100>>2]=Q(t*f)+Q(Q(v*l)+Q(u*g));N[c+88>>2]=Q(w*d)+Q(Q(y*k)+Q(x*e));N[c+84>>2]=Q(t*d)+Q(Q(v*k)+Q(u*e));N[c+120>>2]=B+Q(Q(q*f)+Q(Q(s*l)+Q(g*r)));N[c+116>>2]=A+Q(Q(q*d)+Q(Q(s*k)+Q(e*r)));J[c+76>>2]=0;N[c+72>>2]=Q(w*h)+Q(Q(y*i)+Q(j*x));N[c+68>>2]=Q(t*h)+Q(Q(v*i)+Q(j*u));N[c+64>>2]=Q(n*h)+Q(Q(o*i)+Q(p*j));N[c+112>>2]=C+Q(Q(q*h)+Q(Q(s*i)+Q(j*r)));N[c+96>>2]=Q(n*f)+Q(Q(o*l)+Q(p*g));N[c+80>>2]=Q(n*d)+Q(Q(o*k)+Q(p*e));b=J[a+4>>2];J[c+60>>2]=m;J[c+56>>2]=-1;J[c+48>>2]=b;J[c+44>>2]=z;J[c+40>>2]=0;J[c+52>>2]=c- -64;b=J[a+24>>2];J[c+36>>2]=m;J[c+32>>2]=b;J[c+28>>2]=z;J[c+8>>2]=13584;J[c+16>>2]=0;N[c+12>>2]=N[b+4>>2];J[c+24>>2]=J[b+16>>2];Uc(J[a+16>>2],J[a+20>>2],c+40|0,c+8|0);sa=c+128|0;}function xf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;J[a+12>>2]=0;H[a+16|0]=1;J[a+4>>2]=0;J[a+8>>2]=0;f=J[b+4>>2];if((f|0)<=0){J[a+4>>2]=f;return}J[8456]=J[8456]+1;d=ua[J[8258]](f<<2,16)|0;i=J[a+4>>2];a:{if((i|0)<=0){break a}if(i>>>0>=4){k=i&-4;while(1){g=c<<2;J[g+d>>2]=J[g+J[a+12>>2]>>2];j=g|4;J[j+d>>2]=J[j+J[a+12>>2]>>2];j=g|8;J[j+d>>2]=J[j+J[a+12>>2]>>2];g=g|12;J[g+d>>2]=J[g+J[a+12>>2]>>2];c=c+4|0;e=e+4|0;if((k|0)!=(e|0)){continue}break}}e=i&3;if(!e){break a}while(1){g=c<<2;J[g+d>>2]=J[g+J[a+12>>2]>>2];c=c+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}c=J[a+12>>2];if(!(c?!c|!K[a+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+12>>2]=d;H[a+16|0]=1;J[a+8>>2]=f;e=0;c=0;if(f>>>0>=4){g=f&-4;h=0;while(1){d=c<<2;J[d+J[a+12>>2]>>2]=0;J[J[a+12>>2]+(d|4)>>2]=0;J[J[a+12>>2]+(d|8)>>2]=0;J[J[a+12>>2]+(d|12)>>2]=0;c=c+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}h=f&3;if(h){while(1){J[J[a+12>>2]+(c<<2)>>2]=0;c=c+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}J[a+4>>2]=f;b:{if((f|0)<=0){break b}a=J[a+12>>2];h=0;c=0;if(f>>>0>=4){g=f&-4;e=0;while(1){d=c<<2;J[d+a>>2]=J[d+J[b+12>>2]>>2];i=d|4;J[i+a>>2]=J[i+J[b+12>>2]>>2];i=d|8;J[i+a>>2]=J[i+J[b+12>>2]>>2];d=d|12;J[d+a>>2]=J[d+J[b+12>>2]>>2];c=c+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}f=f&3;if(!f){break b}while(1){e=c<<2;J[e+a>>2]=J[e+J[b+12>>2]>>2];c=c+1|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}}function qj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0);f=sa-48|0;sa=f;n=N[c+8>>2];j=N[d+8>>2];p=N[c+4>>2];q=N[d+4>>2];k=N[c>>2];l=N[d>>2];e=N[a- -64>>2];a:{if(Q(R(e))>Q(.7071067690849304)){i=N[a+60>>2];g=Q(Q(i*i)+Q(e*e));h=Q(Q(1)/Q(Y(g)));m=Q(g*h);t=Q(i*h);g=N[a+56>>2];r=Q(t*Q(-g));o=Q(h*Q(-e));u=Q(g*o);break a}g=N[a+56>>2];i=N[a+60>>2];m=Q(Q(g*g)+Q(i*i));h=Q(Q(1)/Q(Y(m)));u=Q(m*h);v=Q(h*Q(-i));r=Q(e*v);o=Q(g*h);m=Q(o*Q(-e));}h=N[a+72>>2];J[f+44>>2]=0;J[f+28>>2]=0;s=Q(Q(j+n)*Q(.5));w=Q(Q(l+k)*Q(.5));x=Q(Q(q+p)*Q(.5));h=Q(Q(Q(e*s)+Q(Q(g*w)+Q(x*i)))-h);s=Q(s-Q(e*h));e=Q(Q(j-n)*Q(.5));j=Q(e*e);e=Q(Q(l-k)*Q(.5));k=Q(e*e);e=Q(Q(q-p)*Q(.5));e=Q(Y(Q(j+Q(k+Q(e*e)))));j=Q(e*t);p=Q(s-j);n=Q(e*u);q=Q(p-n);N[f+40>>2]=q;k=Q(x-Q(i*h));l=Q(e*o);o=Q(k-l);i=Q(e*r);r=Q(o-i);N[f+36>>2]=r;j=Q(j+s);N[f+24>>2]=j-n;k=Q(l+k);N[f+20>>2]=k-i;J[f+12>>2]=0;g=Q(w-Q(g*h));h=Q(e*v);l=Q(g-h);e=Q(e*m);m=Q(l-e);N[f+32>>2]=m;g=Q(h+g);N[f+16>>2]=g-e;h=Q(n+j);N[f+8>>2]=h;j=Q(i+k);N[f+4>>2]=j;g=Q(e+g);N[f>>2]=g;ua[J[J[b>>2]+8>>2]](b,f,0,0);J[f+44>>2]=0;N[f+40>>2]=h;N[f+36>>2]=j;J[f+28>>2]=0;N[f+24>>2]=n+p;N[f+20>>2]=i+o;N[f+32>>2]=g;N[f+16>>2]=e+l;J[f+12>>2]=0;N[f+8>>2]=q;N[f+4>>2]=r;N[f>>2]=m;ua[J[J[b>>2]+8>>2]](b,f,0,1);sa=f+48|0;}function ai(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0;d=N[c+100>>2];g=N[c+24>>2];h=N[c+16>>2];i=N[c+20>>2];e=N[c+108>>2];e=Q(Q(Q(N[c+112>>2]-Q(d*N[c+116>>2]))-Q(Q(Q(Q(g*N[a+72>>2])+Q(Q(h*N[a+64>>2])+Q(i*N[a+68>>2])))+Q(Q(N[c+8>>2]*N[a+88>>2])+Q(Q(N[c>>2]*N[a+80>>2])+Q(N[c+4>>2]*N[a+84>>2]))))*e))-Q(Q(Q(Q(N[c+56>>2]*N[b+72>>2])+Q(Q(N[c+48>>2]*N[b+64>>2])+Q(N[c+52>>2]*N[b+68>>2])))+Q(Q(N[c+40>>2]*N[b+88>>2])+Q(Q(N[c+32>>2]*N[b+80>>2])+Q(N[c+36>>2]*N[b+84>>2]))))*e));j=Q(d+e);f=N[c+120>>2];k=j<f;N[c+100>>2]=k?f:j;d=k?Q(f-d):e;if(J[a+240>>2]){N[a+64>>2]=Q(N[a+112>>2]*Q(d*Q(h*N[a+128>>2])))+N[a+64>>2];N[a+68>>2]=Q(Q(d*Q(i*N[a+132>>2]))*N[a+116>>2])+N[a+68>>2];N[a+72>>2]=Q(Q(d*Q(g*N[a+136>>2]))*N[a+120>>2])+N[a+72>>2];e=N[c+72>>2];f=N[c+68>>2];N[a+80>>2]=Q(Q(d*N[a+96>>2])*N[c+64>>2])+N[a+80>>2];g=N[a+104>>2];N[a+84>>2]=Q(f*Q(d*N[a+100>>2]))+N[a+84>>2];N[a+88>>2]=Q(e*Q(d*g))+N[a+88>>2];}if(J[b+240>>2]){e=N[c+56>>2];f=N[c+52>>2];N[b+64>>2]=Q(N[b+112>>2]*Q(d*Q(N[c+48>>2]*N[b+128>>2])))+N[b+64>>2];N[b+68>>2]=Q(Q(d*Q(f*N[b+132>>2]))*N[b+116>>2])+N[b+68>>2];N[b+72>>2]=Q(Q(d*Q(e*N[b+136>>2]))*N[b+120>>2])+N[b+72>>2];e=N[c+88>>2];f=N[c+84>>2];N[b+80>>2]=Q(Q(d*N[b+96>>2])*N[c+80>>2])+N[b+80>>2];g=N[b+104>>2];N[b+84>>2]=Q(f*Q(d*N[b+100>>2]))+N[b+84>>2];N[b+88>>2]=Q(e*Q(d*g))+N[b+88>>2];}return Q(d)}function Vi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{b:{if(K[a+165|0]){l=a+92|0;if(J[l>>2]>=(b|0)){break a}if(b){J[8456]=J[8456]+1;f=ua[J[8258]](b<<4,16)|0;}else {f=0;}e=J[a+88>>2];c:{if((e|0)<=0){break c}if((e|0)!=1){j=e&-2;while(1){g=d<<4;h=g+f|0;c=g+J[a+96>>2]|0;k=J[c+4>>2];J[h>>2]=J[c>>2];J[h+4>>2]=k;k=J[c+12>>2];J[h+8>>2]=J[c+8>>2];J[h+12>>2]=k;c=g|16;g=c+f|0;c=c+J[a+96>>2]|0;h=J[c+4>>2];J[g>>2]=J[c>>2];J[g+4>>2]=h;h=J[c+12>>2];J[g+8>>2]=J[c+8>>2];J[g+12>>2]=h;d=d+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(!(e&1)){break c}d=d<<4;e=d+f|0;d=d+J[a+96>>2]|0;c=J[d+4>>2];J[e>>2]=J[d>>2];J[e+4>>2]=c;c=J[d+12>>2];J[e+8>>2]=J[d+8>>2];J[e+12>>2]=c;}d=J[a+96>>2];if(!(d?!d|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+96>>2]=f;H[a+100|0]=1;break b}l=a+112|0;if(J[l>>2]>=(b|0)){break a}if(b){J[8456]=J[8456]+1;f=ua[J[8258]](b<<2,16)|0;}else {f=0;}e=J[a+116>>2];g=J[a+108>>2];d:{e:{if((g|0)>0){if(g>>>0>=4){h=g&-4;while(1){c=d<<2;N[c+f>>2]=N[c+e>>2];j=c|4;N[j+f>>2]=N[e+j>>2];j=c|8;N[j+f>>2]=N[e+j>>2];c=c|12;N[c+f>>2]=N[c+e>>2];d=d+4|0;i=i+4|0;if((h|0)!=(i|0)){continue}break}}c=g&3;if(c){while(1){i=d<<2;N[i+f>>2]=N[e+i>>2];d=d+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}if(K[a+120|0]){break e}break d}if(!e|!K[a+120|0]){break d}}if(e){J[8457]=J[8457]+1;ua[J[8259]](e);}}J[a+116>>2]=f;H[a+120|0]=1;}J[l>>2]=b;}}function jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=sa-96|0;sa=f;e=J[a+8>>2];J[b+216>>2]=e;a:{if(J[a+12>>2]!=(e|0)){break a}k=e?e<<1:1;if((k|0)<=(e|0)){break a}if(k){J[8456]=J[8456]+1;h=ua[J[8258]](k<<2,16)|0;e=J[a+8>>2];}b:{if((e|0)<=0){break b}if(e>>>0>=4){l=e&-4;while(1){g=i<<2;J[g+h>>2]=J[g+J[a+16>>2]>>2];j=g|4;J[j+h>>2]=J[j+J[a+16>>2]>>2];j=g|8;J[j+h>>2]=J[j+J[a+16>>2]>>2];g=g|12;J[g+h>>2]=J[g+J[a+16>>2]>>2];i=i+4|0;m=m+4|0;if((l|0)!=(m|0)){continue}break}}g=e&3;if(!g){break b}while(1){l=i<<2;J[l+h>>2]=J[l+J[a+16>>2]>>2];i=i+1|0;n=n+1|0;if((g|0)!=(n|0)){continue}break}}i=J[a+16>>2];if(!(!i|!K[a+20|0])){if(i){J[8457]=J[8457]+1;ua[J[8259]](i);}e=J[a+8>>2];}J[a+16>>2]=h;H[a+20|0]=1;J[a+12>>2]=k;}J[J[a+16>>2]+(e<<2)>>2]=b;J[a+8>>2]=e+1;e=J[b+16>>2];J[f+40>>2]=J[b+12>>2];J[f+44>>2]=e;e=J[b+8>>2];J[f+32>>2]=J[b+4>>2];J[f+36>>2]=e;e=J[b+32>>2];J[f+56>>2]=J[b+28>>2];J[f+60>>2]=e;e=J[b+24>>2];J[f+48>>2]=J[b+20>>2];J[f+52>>2]=e;e=J[b+48>>2];J[f+72>>2]=J[b+44>>2];J[f+76>>2]=e;e=J[b+40>>2];J[f+64>>2]=J[b+36>>2];J[f+68>>2]=e;e=J[b+64>>2];J[f+88>>2]=J[b+60>>2];J[f+92>>2]=e;e=J[b+56>>2];J[f+80>>2]=J[b+52>>2];J[f+84>>2]=e;e=J[b+192>>2];h=f+16|0;ua[J[J[e>>2]+8>>2]](e,f+32|0,h,f);e=J[a+68>>2];o=b,p=ua[J[J[e>>2]+8>>2]](e,h,f,J[J[b+192>>2]+4>>2],b,c,d,J[a+24>>2])|0,J[o+188>>2]=p;sa=f+96|0;}function Fl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;J[8467]=J[8467]+1;d=c<<16|b;d=(d<<15^-1)+d|0;d=P(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;m=d>>>16^d;d=J[a+12>>2];k=m&d-1;e=J[J[a+36>>2]+(k<<2)>>2];a:{if((e|0)!=-1){i=J[a+56>>2];j=J[a+16>>2];while(1){f=j+P(e,12)|0;if(J[f>>2]==(b|0)&J[f+4>>2]==(c|0)){break a}e=J[i+(e<<2)>>2];if((e|0)!=-1){continue}break}}b:{c:{i=J[a+8>>2];f=i;if((f|0)==(d|0)){j=d?d<<1:1;n=(j|0)<=(d|0);if(!n){break c}}else {d=f;}J[a+8>>2]=d+1;f=J[a+16>>2];break b}d:{if(!j){f=0;break d}J[8456]=J[8456]+1;f=ua[J[8258]](P(j,12),16)|0;d=J[a+8>>2];}e:{if((d|0)<=0){break e}e=0;if((d|0)!=1){p=d&-2;while(1){g=P(e,12);h=g+J[a+16>>2]|0;l=J[h+4>>2];g=f+g|0;J[g>>2]=J[h>>2];J[g+4>>2]=l;J[g+8>>2]=J[h+8>>2];g=P(e|1,12);h=g+J[a+16>>2]|0;l=J[h+4>>2];g=f+g|0;J[g>>2]=J[h>>2];J[g+4>>2]=l;J[g+8>>2]=J[h+8>>2];e=e+2|0;o=o+2|0;if((p|0)!=(o|0)){continue}break}}if(!(d&1)){break e}e=P(e,12);d=e+f|0;e=e+J[a+16>>2]|0;h=J[e+4>>2];J[d>>2]=J[e>>2];J[d+4>>2]=h;J[d+8>>2]=J[e+8>>2];}d=J[a+16>>2];if(!(d?!d|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[a+16>>2]=f;H[a+20|0]=1;J[a+12>>2]=j;J[a+8>>2]=J[a+8>>2]+1;if(n){break b}Jc(a);k=J[a+12>>2]-1&m;}f=P(i,12)+f|0;J[f+8>>2]=0;J[f+4>>2]=c;J[f>>2]=b;b=J[a+56>>2]+(i<<2)|0;a=J[a+36>>2]+(k<<2)|0;J[b>>2]=J[a>>2];J[a>>2]=i;}return f|0}function yf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=sa-32|0;sa=e;a:{if(!J[a>>2]){break a}g=(b|0)<0?J[a+12>>2]:b;if((g|0)<=0){break a}while(1){h=0;b=J[a>>2];f=b+40|0;if(J[f>>2]){while(1){d=J[b+32>>2];b:{if(d>>>0<=b>>>0){d=b;break b}c=J[d+40>>2];l=(c|0)==(b|0);i=((b|0)!=(c|0))<<2;j=J[(i+d|0)+36>>2];c=J[d+32>>2];if(c){k=(((J[c+40>>2]==(d|0))<<2)+c|0)+36|0;}else {k=a;}J[k>>2]=b;J[j+32>>2]=b;J[d+32>>2]=b;J[b+32>>2]=c;J[d+36>>2]=J[b+36>>2];J[d+40>>2]=J[f>>2];J[J[b+36>>2]+32>>2]=d;J[J[f>>2]+32>>2]=d;c=b+36|0;J[c+(l<<2)>>2]=d;J[c+i>>2]=j;c=d+24|0;f=J[c+4>>2];J[e+24>>2]=J[c>>2];J[e+28>>2]=f;c=d+16|0;f=J[c+4>>2];J[e+16>>2]=J[c>>2];J[e+20>>2]=f;c=d+8|0;f=J[c+4>>2];J[e+8>>2]=J[c>>2];J[e+12>>2]=f;c=J[d+4>>2];J[e>>2]=J[d>>2];J[e+4>>2]=c;c=b+24|0;f=J[c+4>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=f;c=b+16|0;f=J[c+4>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=f;c=b+8|0;f=J[c+4>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=f;c=J[b+4>>2];J[d>>2]=J[b>>2];J[d+4>>2]=c;c=J[e+28>>2];J[b+24>>2]=J[e+24>>2];J[b+28>>2]=c;c=J[e+20>>2];J[b+16>>2]=J[e+16>>2];J[b+20>>2]=c;c=J[e+12>>2];J[b+8>>2]=J[e+8>>2];J[b+12>>2]=c;c=J[e+4>>2];J[b>>2]=J[e>>2];J[b+4>>2]=c;}b=J[a+16>>2]>>>h|0;h=h+1&31;b=J[(((b&1)<<2)+d|0)+36>>2];f=b+40|0;if(J[f>>2]){continue}break}}d=bc(a,b);ac(a,d?J[a>>2]:0,b);J[a+16>>2]=J[a+16>>2]+1;g=g-1|0;if(g){continue}break}}sa=e+32|0;}function Jd(a){a=a|0;var b=0;J[a>>2]=23736;b=J[a+204>>2];if(!(b?!b|!K[a+208|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+204>>2]=0;H[a+208|0]=1;J[a+196>>2]=0;J[a+200>>2]=0;b=J[a+176>>2];if(!(b?!b|!K[a+180|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+176>>2]=0;H[a+180|0]=1;J[a+168>>2]=0;J[a+172>>2]=0;b=J[a+156>>2];if(!(b?!b|!K[a+160|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+156>>2]=0;H[a+160|0]=1;J[a+148>>2]=0;J[a+152>>2]=0;b=J[a+136>>2];if(!(b?!b|!K[a+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+136>>2]=0;H[a+140|0]=1;J[a+128>>2]=0;J[a+132>>2]=0;b=J[a+116>>2];if(!(b?!b|!K[a+120|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+116>>2]=0;H[a+120|0]=1;J[a+108>>2]=0;J[a+112>>2]=0;b=J[a+96>>2];if(!(b?!b|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+96>>2]=0;H[a+100|0]=1;J[a+88>>2]=0;J[a+92>>2]=0;b=J[a+76>>2];if(!(b?!b|!K[a+80|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+76>>2]=0;H[a+80|0]=1;J[a+68>>2]=0;J[a+72>>2]=0;b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=0;H[a+60|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;b=J[a+36>>2];if(!(b?!b|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+36>>2]=0;H[a+40|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;return a|0}function zl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=sa-160|0;sa=g;f=J[a+12>>2];a:{if(!f){break a}h=K[a+16|0];i=h?b:c;j=J[i+4>>2];b=h?c:b;h=J[b+4>>2];J[e+4>>2]=f;c=g+144|0;N[c+12>>2]=N[f+848>>2]+N[e+32>>2];J[c+8>>2]=j;J[c+4>>2]=h;J[c>>2]=18068;J[g+136>>2]=1566444395;b=J[b+12>>2];f=J[b+12>>2];J[g+16>>2]=J[b+8>>2];J[g+20>>2]=f;f=J[b+4>>2];J[g+8>>2]=J[b>>2];J[g+12>>2]=f;f=J[b+28>>2];J[g+32>>2]=J[b+24>>2];J[g+36>>2]=f;f=J[b+20>>2];J[g+24>>2]=J[b+16>>2];J[g+28>>2]=f;f=J[b+44>>2];J[g+48>>2]=J[b+40>>2];J[g+52>>2]=f;f=J[b+36>>2];J[g+40>>2]=J[b+32>>2];J[g+44>>2]=f;h=J[b+60>>2];f=g- -64|0;J[f>>2]=J[b+56>>2];J[f+4>>2]=h;f=J[b+52>>2];J[g+56>>2]=J[b+48>>2];J[g+60>>2]=f;b=J[i+12>>2];f=J[b+12>>2];J[g+80>>2]=J[b+8>>2];J[g+84>>2]=f;f=J[b+4>>2];J[g+72>>2]=J[b>>2];J[g+76>>2]=f;f=J[b+20>>2];J[g+88>>2]=J[b+16>>2];J[g+92>>2]=f;f=J[b+28>>2];J[g+96>>2]=J[b+24>>2];J[g+100>>2]=f;f=J[b+36>>2];J[g+104>>2]=J[b+32>>2];J[g+108>>2]=f;f=J[b+44>>2];J[g+112>>2]=J[b+40>>2];J[g+116>>2]=f;f=J[b+52>>2];J[g+120>>2]=J[b+48>>2];J[g+124>>2]=f;f=J[b+60>>2];J[g+128>>2]=J[b+56>>2];J[g+132>>2]=f;Ie(c,g+8|0,e,J[d+20>>2],K[a+16|0]);if(!K[a+8|0]){break a}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);f=a;a=J[J[e+12>>2]+8>>2];Ua(f,(b?c:a)+4|0,(b?a:d)+4|0);}sa=g+160|0;}function jg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=sa+-64|0;sa=f;a:{if(Ka(b,30288,0)){J[c>>2]=0;d=1;break a}b:{if(K[a+8|0]&24){e=1;}else {if(!b){break b}e=Ta(b,30020);if(!e){break b}e=(K[e+8|0]&24)!=0;}g=Ka(a,b,e);}if(g){d=1;a=J[c>>2];if(!a){break a}J[c>>2]=J[a>>2];break a}c:{if(!b){break c}e=Ta(b,30068);if(!e){break a}b=J[c>>2];if(b){J[c>>2]=J[b>>2];}g=J[e+8>>2];b=J[a+8>>2];if(g&(b^-1)&7|b&(g^-1)&96){break a}d=1;if(Ka(J[a+12>>2],J[e+12>>2],0)){break a}if(Ka(J[a+12>>2],30276,0)){a=J[e+12>>2];if(!a){break a}d=!Ta(a,30120);break a}g=J[a+12>>2];if(!g){break c}d=0;b=Ta(g,30068);if(b){if(!(H[a+8|0]&1)){break a}a=J[e+12>>2];c=0;d:{e:{while(1){d=0;if(!a){break d}a=Ta(a,30068);if(!a|J[a+8>>2]&(J[b+8>>2]^-1)){break e}d=1;if(Ka(J[b+12>>2],J[a+12>>2],0)){break d}if(!(H[b+8|0]&1)){break e}d=J[b+12>>2];if(!d){break e}b=Ta(d,30068);if(b){a=J[a+12>>2];continue}break}b=Ta(d,30180);if(!b){break e}c=id(b,J[a+12>>2]);}d=c;}break a}b=Ta(g,30180);if(b){if(!(H[a+8|0]&1)){break a}d=id(b,J[e+12>>2]);break a}b=Ta(g,29972);if(!b){break a}a=J[e+12>>2];if(!a){break a}a=Ta(a,29972);if(!a){break a}Fa(f+12|0,0,52);J[f+56>>2]=1;J[f+20>>2]=-1;J[f+16>>2]=b;J[f+8>>2]=a;ua[J[J[a>>2]+28>>2]](a,f+8|0,J[c>>2],1);a=J[f+32>>2];if(!(!J[c>>2]|(a|0)!=1)){J[c>>2]=J[f+24>>2];}d=(a|0)==1;break a}d=0;}sa=f- -64|0;return d|0}function Ud(a,b,c,d,e,f){var g=0;J[a+4>>2]=b;J[a>>2]=23140;b=J[c+12>>2];J[a+16>>2]=J[c+8>>2];J[a+20>>2]=b;b=J[c+4>>2];J[a+8>>2]=J[c>>2];J[a+12>>2]=b;b=J[c+28>>2];J[a+32>>2]=J[c+24>>2];J[a+36>>2]=b;b=J[c+20>>2];J[a+24>>2]=J[c+16>>2];J[a+28>>2]=b;b=J[c+44>>2];J[a+48>>2]=J[c+40>>2];J[a+52>>2]=b;b=J[c+36>>2];J[a+40>>2]=J[c+32>>2];J[a+44>>2]=b;g=J[c+60>>2];b=a- -64|0;J[b>>2]=J[c+56>>2];J[b+4>>2]=g;b=J[c+52>>2];J[a+56>>2]=J[c+48>>2];J[a+60>>2]=b;b=J[d+12>>2];J[a+80>>2]=J[d+8>>2];J[a+84>>2]=b;b=J[d+4>>2];J[a+72>>2]=J[d>>2];J[a+76>>2]=b;b=J[d+28>>2];J[a+96>>2]=J[d+24>>2];J[a+100>>2]=b;b=J[d+20>>2];J[a+88>>2]=J[d+16>>2];J[a+92>>2]=b;b=J[d+44>>2];J[a+112>>2]=J[d+40>>2];J[a+116>>2]=b;b=J[d+36>>2];J[a+104>>2]=J[d+32>>2];J[a+108>>2]=b;b=J[d+60>>2];J[a+128>>2]=J[d+56>>2];J[a+132>>2]=b;b=J[d+52>>2];J[a+120>>2]=J[d+48>>2];J[a+124>>2]=b;b=J[e+12>>2];J[a+144>>2]=J[e+8>>2];J[a+148>>2]=b;b=J[e+4>>2];J[a+136>>2]=J[e>>2];J[a+140>>2]=b;b=J[e+28>>2];J[a+160>>2]=J[e+24>>2];J[a+164>>2]=b;b=J[e+20>>2];J[a+152>>2]=J[e+16>>2];J[a+156>>2]=b;b=J[e+44>>2];J[a+176>>2]=J[e+40>>2];J[a+180>>2]=b;b=J[e+36>>2];J[a+168>>2]=J[e+32>>2];J[a+172>>2]=b;b=J[e+60>>2];J[a+192>>2]=J[e+56>>2];J[a+196>>2]=b;b=J[e+52>>2];J[a+184>>2]=J[e+48>>2];J[a+188>>2]=b;J[a+208>>2]=0;N[a+204>>2]=f;J[a+200>>2]=1065353216;return a}function Dh(a,b){a=a|0;b=Q(b);var c=0,d=0,e=0,f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0);e=J[a+8>>2];if((e|0)>0){while(1){c=J[J[a+16>>2]+(g<<2)>>2];if(!(!c|!(J[c+252>>2]&2)|(!(K[c+204|0]&2)|J[c+220>>2]==2))){e=sa-32|0;sa=e;if(b!=Q(0)){d=J[c+540>>2];if(d){ua[J[J[d>>2]+8>>2]](d,c+4|0);}J[c+384>>2]=0;f=Q(Q(1)/b);N[c+380>>2]=f*Q(N[c+60>>2]-N[c+124>>2]);N[c+376>>2]=f*Q(N[c+56>>2]-N[c+120>>2]);N[c+372>>2]=f*Q(N[c+52>>2]-N[c+116>>2]);Vb(c+68|0,c+4|0,e+16|0,e+12|0);i=N[e+16>>2];j=N[e+20>>2];k=N[e+24>>2];h=N[e+12>>2];J[c+400>>2]=0;N[c+396>>2]=f*Q(h*k);N[c+392>>2]=f*Q(h*j);N[c+388>>2]=f*Q(i*h);d=J[c+384>>2];J[c+140>>2]=J[c+380>>2];J[c+144>>2]=d;d=J[c+376>>2];J[c+132>>2]=J[c+372>>2];J[c+136>>2]=d;d=J[c+392>>2];J[c+148>>2]=J[c+388>>2];J[c+152>>2]=d;d=J[c+400>>2];J[c+156>>2]=J[c+396>>2];J[c+160>>2]=d;d=J[c+8>>2];J[c+68>>2]=J[c+4>>2];J[c+72>>2]=d;d=J[c+16>>2];J[c+76>>2]=J[c+12>>2];J[c+80>>2]=d;d=J[c+24>>2];J[c+84>>2]=J[c+20>>2];J[c+88>>2]=d;d=J[c+32>>2];J[c+92>>2]=J[c+28>>2];J[c+96>>2]=d;d=J[c+48>>2];J[c+108>>2]=J[c+44>>2];J[c+112>>2]=d;d=J[c+40>>2];J[c+100>>2]=J[c+36>>2];J[c+104>>2]=d;d=J[c+64>>2];J[c+124>>2]=J[c+60>>2];J[c+128>>2]=d;d=J[c+56>>2];J[c+116>>2]=J[c+52>>2];J[c+120>>2]=d;}sa=e+32|0;e=J[a+8>>2];}g=g+1|0;if((g|0)<(e|0)){continue}break}}}function _l(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=sa-160|0;sa=f;g=J[a+12>>2];a:{if(!g){break a}h=J[c+4>>2];i=J[b+4>>2];J[e+4>>2]=g;J[f+152>>2]=1566444395;b=J[b+12>>2];g=J[b+12>>2];J[f+32>>2]=J[b+8>>2];J[f+36>>2]=g;g=J[b+4>>2];J[f+24>>2]=J[b>>2];J[f+28>>2]=g;g=J[b+28>>2];J[f+48>>2]=J[b+24>>2];J[f+52>>2]=g;g=J[b+20>>2];J[f+40>>2]=J[b+16>>2];J[f+44>>2]=g;j=J[b+44>>2];g=f- -64|0;J[g>>2]=J[b+40>>2];J[g+4>>2]=j;g=J[b+36>>2];J[f+56>>2]=J[b+32>>2];J[f+60>>2]=g;g=J[b+60>>2];J[f+80>>2]=J[b+56>>2];J[f+84>>2]=g;g=J[b+52>>2];J[f+72>>2]=J[b+48>>2];J[f+76>>2]=g;b=J[c+12>>2];c=J[b+12>>2];J[f+96>>2]=J[b+8>>2];J[f+100>>2]=c;c=J[b+4>>2];J[f+88>>2]=J[b>>2];J[f+92>>2]=c;c=J[b+20>>2];J[f+104>>2]=J[b+16>>2];J[f+108>>2]=c;c=J[b+28>>2];J[f+112>>2]=J[b+24>>2];J[f+116>>2]=c;c=J[b+36>>2];J[f+120>>2]=J[b+32>>2];J[f+124>>2]=c;c=J[b+44>>2];J[f+128>>2]=J[b+40>>2];J[f+132>>2]=c;c=J[b+52>>2];J[f+136>>2]=J[b+48>>2];J[f+140>>2]=c;c=J[b+60>>2];J[f+144>>2]=J[b+56>>2];J[f+148>>2]=c;b=f+12|0;J[b+8>>2]=h;J[b+4>>2]=i;J[b>>2]=16504;Pe(b,f+24|0,e,J[d+20>>2],0);if(!K[a+8|0]){break a}a=J[e+4>>2];if(!J[a+844>>2]){break a}c=J[a+836>>2];d=J[J[e+8>>2]+8>>2];b=(c|0)==(d|0);g=a;a=J[J[e+12>>2]+8>>2];Ua(g,(b?c:a)+4|0,(b?a:d)+4|0);}sa=f+160|0;}function Bk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;bb(a,b,c);N[b+20>>2]=N[a+80>>2];d=J[a+24>>2];J[b+12>>2]=0;J[b+16>>2]=d;if(d){g=ua[J[J[c>>2]+16>>2]](c,76,d)|0;d=J[g+8>>2];j=b,k=ua[J[J[c>>2]+28>>2]](c,d)|0,J[j+12>>2]=k;if(J[b+16>>2]>0){f=J[a+32>>2];while(1){e=P(h,80);f=e+f|0;N[d+72>>2]=N[f+72>>2];j=d,k=ua[J[J[c>>2]+28>>2]](c,J[f+64>>2])|0,J[j+64>>2]=k;if(!(ua[J[J[c>>2]+24>>2]](c,J[(e+J[a+32>>2]|0)+64>>2])|0)){f=J[(e+J[a+32>>2]|0)+64>>2];f=(k=c,l=ua[J[J[f>>2]+52>>2]](f)|0,m=1,j=J[J[c>>2]+16>>2],ua[j](k|0,l|0,m|0)|0);i=J[(e+J[a+32>>2]|0)+64>>2];m=c,l=f,k=ua[J[J[i>>2]+56>>2]](i,J[f+8>>2],c)|0,n=1346455635,o=J[(e+J[a+32>>2]|0)+64>>2],j=J[J[c>>2]+20>>2],ua[j](m|0,l|0,k|0,n|0,o|0);}f=J[a+32>>2];e=e+f|0;J[d+68>>2]=J[e+68>>2];N[d>>2]=N[e>>2];N[d+4>>2]=N[e+4>>2];N[d+8>>2]=N[e+8>>2];N[d+12>>2]=N[e+12>>2];N[d+16>>2]=N[e+16>>2];N[d+20>>2]=N[e+20>>2];N[d+24>>2]=N[e+24>>2];N[d+28>>2]=N[e+28>>2];N[d+32>>2]=N[e+32>>2];N[d+36>>2]=N[e+36>>2];N[d+40>>2]=N[e+40>>2];N[d+44>>2]=N[e+44>>2];N[d+48>>2]=N[e+48>>2];N[d+52>>2]=N[e+52>>2];N[d+56>>2]=N[e+56>>2];N[d+60>>2]=N[e+60>>2];d=d+76|0;h=h+1|0;if((h|0)<J[b+16>>2]){continue}break}}ua[J[J[c>>2]+20>>2]](c,g,9087,1497453121,J[g+8>>2]);}return 8973}function lm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=Q(0);c=sa-800|0;sa=c;ua[J[8262]](7501);J[c+744>>2]=0;J[c+748>>2]=0;J[c+756>>2]=0;J[c+760>>2]=0;J[c+752>>2]=1065353216;J[c+764>>2]=0;J[c+768>>2]=0;J[c+776>>2]=0;J[c+780>>2]=0;J[c+772>>2]=1065353216;J[c+784>>2]=0;J[c+788>>2]=0;J[c+792>>2]=0;J[c+736>>2]=0;J[c+740>>2]=0;J[c+732>>2]=1065353216;J[c+724>>2]=0;J[c+728>>2]=0;J[c+556>>2]=13156;N[c+720>>2]=N[a+200>>2];g=N[a+196>>2];d=Sa(c+496|0);J[d+32>>2]=0;J[d+36>>2]=0;J[d+20>>2]=1065353216;J[d+24>>2]=1065353216;J[d+4>>2]=8;J[d>>2]=21396;J[d+56>>2]=0;N[d+52>>2]=g;J[d+28>>2]=1065353216;J[d+40>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;N[d+36>>2]=g;e=Ob(c+384|0);J[e+4>>2]=1;J[e>>2]=15832;f=J[b+12>>2];J[e+72>>2]=J[b+8>>2];J[e+76>>2]=f;f=J[b+4>>2];J[e+64>>2]=J[b>>2];J[e+68>>2]=f;f=J[b+20>>2];J[e+80>>2]=J[b+16>>2];J[e+84>>2]=f;f=J[b+28>>2];J[e+88>>2]=J[b+24>>2];J[e+92>>2]=f;f=J[b+36>>2];J[e+96>>2]=J[b+32>>2];J[e+100>>2]=f;f=J[b+44>>2];J[e+104>>2]=J[b+40>>2];J[e+108>>2]=f;H[c+356|0]=0;J[c+332>>2]=953267991;b=c+8|0;J[b+12>>2]=e;J[b+8>>2]=d;J[b+4>>2]=c+24;J[b>>2]=23248;d=b;b=c+732|0;a:{if(!Td(d,a+4|0,a+68|0,b,b,c+556|0)){break a}g=N[c+720>>2];if(!(g<N[a+200>>2])){break a}N[a+200>>2]=g;}sb(e);ua[J[8263]]();sa=c+800|0;}function Ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{b:{if(K[a+164|0]){k=a+132|0;if(J[k>>2]>=(b|0)){break a}if(b){J[8456]=J[8456]+1;e=ua[J[8258]](b<<2,16)|0;}else {e=0;}d=J[a+136>>2];f=J[a+128>>2];c:{d:{if((f|0)>0){if(f>>>0>=4){l=f&-4;while(1){c=g<<2;J[c+e>>2]=J[d+c>>2];h=c|4;J[h+e>>2]=J[d+h>>2];h=c|8;J[h+e>>2]=J[d+h>>2];c=c|12;J[c+e>>2]=J[d+c>>2];g=g+4|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}c=f&3;if(c){while(1){f=g<<2;J[f+e>>2]=J[d+f>>2];g=g+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(K[a+140|0]){break d}break c}if(!d|!K[a+140|0]){break c}}if(d){J[8457]=J[8457]+1;ua[J[8259]](d);}}J[a+136>>2]=e;H[a+140|0]=1;break b}k=a+152|0;if(J[k>>2]>=(b|0)){break a}if(b){J[8456]=J[8456]+1;e=ua[J[8258]](b<<1,16)|0;}else {e=0;}d=J[a+156>>2];f=J[a+148>>2];e:{f:{if((f|0)>0){if(f>>>0>=4){l=f&-4;while(1){c=g<<1;I[c+e>>1]=L[d+c>>1];h=c|2;I[h+e>>1]=L[d+h>>1];h=c|4;I[h+e>>1]=L[d+h>>1];c=c|6;I[c+e>>1]=L[d+c>>1];g=g+4|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}c=f&3;if(c){while(1){f=g<<1;I[f+e>>1]=L[d+f>>1];g=g+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(K[a+160|0]){break f}break e}if(!d|!K[a+160|0]){break e}}if(d){J[8457]=J[8457]+1;ua[J[8259]](d);}}J[a+156>>2]=e;H[a+160|0]=1;}J[k>>2]=b;}}function Wb(a){var b=0;J[a+132>>2]=0;J[a+136>>2]=0;J[a+188>>2]=0;J[a+192>>2]=0;J[a+180>>2]=0;J[a+184>>2]=1566444395;J[a+164>>2]=1065353216;J[a+168>>2]=1065353216;J[a+276>>2]=0;J[a+280>>2]=0;J[a+268>>2]=1065353216;J[a+272>>2]=0;J[a+260>>2]=-1;J[a+264>>2]=-1;J[a+252>>2]=1;J[a+256>>2]=0;J[a+244>>2]=1036831949;J[a+248>>2]=1176256512;J[a+236>>2]=0;J[a+240>>2]=0;J[a+228>>2]=1056964608;J[a+232>>2]=0;J[a+220>>2]=1;J[a+224>>2]=0;J[a+212>>2]=-1;J[a+216>>2]=-1;J[a+204>>2]=1;J[a+208>>2]=-1;J[a>>2]=13004;J[a+140>>2]=0;J[a+144>>2]=0;J[a+148>>2]=0;J[a+152>>2]=0;J[a+156>>2]=0;J[a+160>>2]=0;J[a+172>>2]=1065353216;J[a+176>>2]=0;J[a+196>>2]=0;J[a+200>>2]=0;H[a+300|0]=1;J[a+304>>2]=0;J[a+296>>2]=0;J[a+288>>2]=0;J[a+292>>2]=0;J[a+4>>2]=1065353216;J[a+8>>2]=0;J[a+12>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+24>>2]=1065353216;J[a+28>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;J[a+40>>2]=0;J[a+44>>2]=1065353216;J[a+48>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;J[a+60>>2]=0;b=a- -64|0;J[b>>2]=0;J[b+4>>2]=1065353216;J[a+72>>2]=0;J[a+76>>2]=0;J[a+80>>2]=0;J[a+84>>2]=0;J[a+88>>2]=1065353216;J[a+92>>2]=0;J[a+96>>2]=0;J[a+100>>2]=0;J[a+104>>2]=0;J[a+112>>2]=0;J[a+116>>2]=0;J[a+108>>2]=1065353216;J[a+120>>2]=0;J[a+124>>2]=0;J[a+128>>2]=0;return a}function Cr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;J[8456]=J[8456]+1;a=mc(ua[J[8258]](768,16)|0,4,a,b);J[a>>2]=23552;b=J[c+12>>2];J[a+560>>2]=J[c+8>>2];J[a+564>>2]=b;b=J[c+4>>2];J[a+552>>2]=J[c>>2];J[a+556>>2]=b;b=J[c+28>>2];J[a+576>>2]=J[c+24>>2];J[a+580>>2]=b;b=J[c+20>>2];J[a+568>>2]=J[c+16>>2];J[a+572>>2]=b;b=J[c+44>>2];J[a+592>>2]=J[c+40>>2];J[a+596>>2]=b;b=J[c+36>>2];J[a+584>>2]=J[c+32>>2];J[a+588>>2]=b;b=J[c+60>>2];J[a+608>>2]=J[c+56>>2];J[a+612>>2]=b;b=J[c+52>>2];J[a+600>>2]=J[c+48>>2];J[a+604>>2]=b;b=J[d+12>>2];J[a+624>>2]=J[d+8>>2];J[a+628>>2]=b;b=J[d+4>>2];J[a+616>>2]=J[d>>2];J[a+620>>2]=b;b=J[d+20>>2];J[a+632>>2]=J[d+16>>2];J[a+636>>2]=b;b=J[d+28>>2];J[a+640>>2]=J[d+24>>2];J[a+644>>2]=b;b=J[d+36>>2];J[a+648>>2]=J[d+32>>2];J[a+652>>2]=b;b=J[d+44>>2];J[a+656>>2]=J[d+40>>2];J[a+660>>2]=b;b=J[d+52>>2];J[a+664>>2]=J[d+48>>2];J[a+668>>2]=b;b=J[d+60>>2];J[a+672>>2]=J[d+56>>2];J[a+676>>2]=b;J[a+688>>2]=0;J[a+692>>2]=-1082130432;J[a+696>>2]=1063675494;J[a+700>>2]=1050253722;J[a+704>>2]=1065353216;J[a+708>>2]=0;J[a+712>>2]=0;H[a+716|0]=0;H[a+740|0]=0;J[a+736>>2]=16777216;J[a+764>>2]=0;J[a+756>>2]=0;J[a+760>>2]=0;J[a+748>>2]=0;J[a+752>>2]=0;N[a+732>>2]=1;return a|0}function Do(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=Q(e);f=Q(f);g=Q(g);h=Q(h);i=i|0;j=j|0;k=Q(k);var l=0,m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=0,t=Q(0),u=Q(0),v=Q(0),w=0,x=Q(0),y=Q(0),z=Q(0);l=sa-32|0;sa=l;t=N[c+8>>2];n=N[d+8>>2];p=N[c>>2];o=N[d+4>>2];q=N[d>>2];u=N[c+4>>2];v=N[b>>2];y=N[b+4>>2];m=N[b+8>>2];J[l+28>>2]=0;r=Na(g);x=Q(Q(Q(p*o)-Q(q*u))*f);z=m;m=Ma(g);N[l+24>>2]=Q(r*x)+Q(z+Q(m*Q(n*e)));p=Q(Q(Q(t*q)-Q(n*p))*f);N[l+20>>2]=Q(y+Q(m*Q(o*e)))+Q(r*p);n=Q(Q(Q(u*n)-Q(o*t))*f);N[l+16>>2]=Q(r*n)+Q(v+Q(m*Q(q*e)));o=Q(h-g);f=Q(R(Q(o/Q(k*Q(.01745329238474369)))));a:{if(Q(R(f))<Q(2147483648)){c=~~f;break a}c=-2147483648;}if(j){ua[J[J[a>>2]+16>>2]](a,b,l+16|0,i);}w=c>>>0<=1?1:c;if((w|0)>0){k=Q(w|0);c=1;while(1){q=N[d+8>>2];h=Q(Q(Q(o*Q(c|0))/k)+g);f=Ma(h);t=N[b+8>>2];h=Na(h);u=N[b>>2];r=N[d>>2];m=N[b+4>>2];v=N[d+4>>2];N[l+8>>2]=Q(x*h)+Q(t+Q(f*Q(q*e)));J[l+12>>2]=0;N[l+4>>2]=Q(p*h)+Q(m+Q(f*Q(v*e)));N[l>>2]=Q(n*h)+Q(u+Q(f*Q(r*e)));ua[J[J[a>>2]+16>>2]](a,l+16|0,l,i);s=J[l+12>>2];J[l+24>>2]=J[l+8>>2];J[l+28>>2]=s;s=J[l+4>>2];J[l+16>>2]=J[l>>2];J[l+20>>2]=s;s=(c|0)==(w|0);c=c+1|0;if(!s){continue}break}}if(j){ua[J[J[a>>2]+16>>2]](a,b,l+16|0,i);}sa=l+32|0;}function lb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=J[a+16>>2];c=J[b+16>>2];if((d|0)!=(c|0)){return d-c|0}if(!d){return 0}n=d;e=J[b+8>>2];f=J[a+4>>2];i=J[b+12>>2];k=J[a>>2];j=us(i,0,k,0);d=ta;g=f;c=0;f=us(i,0,f,c);h=d+f|0;d=ta+c|0;l=e;i=0;e=us(e,i,g,c);c=f>>>0>h>>>0?d+1|0:d;f=ta;g=f+h|0;d=g;f=f>>>0>d>>>0?c+1|0:c;c=0;g=e;e=e+j|0;j=g>>>0>e>>>0?c+1|0:c;g=j+d|0;d=f;d=g>>>0<j>>>0?d+1|0:d;h=g;j=0;f=us(k,m,l,i);i=j+f|0;c=ta+e|0;c=f>>>0>i>>>0?c+1|0:c;g=c;e=(e|0)==(c|0)&i>>>0<j>>>0|c>>>0<e>>>0;c=d;d=e+h|0;c=d>>>0<e>>>0?c+1|0:c;j=d;k=c;e=J[b>>2];d=J[b+4>>2];b=J[a+8>>2];a=J[a+12>>2];c=0;l=b;f=us(d,c,b,0);b=ta;h=a;a=us(d,c,a,0);b=b+a|0;d=ta;d=a>>>0>b>>>0?d+1|0:d;a=us(e,0,h,c);c=d;d=b;b=ta;h=d+b|0;d=h;b=b>>>0>d>>>0?c+1|0:c;c=0;h=a;a=a+f|0;f=h>>>0>a>>>0?c+1|0:c;h=f+d|0;d=b;d=f>>>0>h>>>0?d+1|0:d;f=0;e=us(e,m,l,m);b=f+e|0;c=ta+a|0;c=b>>>0<e>>>0?c+1|0:c;e=c;a=(a|0)==(c|0)&b>>>0<f>>>0|a>>>0>c>>>0;c=d;d=a;a=a+h|0;c=d>>>0>a>>>0?c+1|0:c;d=-1;a:{if((c|0)==(k|0)&a>>>0>j>>>0|c>>>0>k>>>0){break a}d=1;if((c|0)==(k|0)&a>>>0<j>>>0|c>>>0<k>>>0){break a}d=-1;if((e|0)==(g|0)&b>>>0>i>>>0|e>>>0>g>>>0){break a}d=(e|0)==(g|0)&b>>>0<i>>>0|e>>>0<g>>>0;}return P(n,d)}function hg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(Ka(a,J[b+8>>2],e)){if(!(J[b+28>>2]==1|J[b+4>>2]!=(c|0))){J[b+28>>2]=d;}return}a:{if(Ka(a,J[b>>2],e)){if(!(J[b+16>>2]!=(c|0)&J[b+20>>2]!=(c|0))){if((d|0)!=1){break a}J[b+32>>2]=1;return}J[b+32>>2]=d;if(J[b+44>>2]!=4){f=a+16|0;h=f+(J[a+12>>2]<<3)|0;d=0;b:{c:{while(1){d:{if(f>>>0>=h>>>0){break d}I[b+52>>1]=0;fc(f,b,c,c,1,e);if(K[b+54|0]){break d}e:{if(!K[b+53|0]){break e}if(K[b+52|0]){d=1;if(J[b+24>>2]==1){break c}g=1;if(K[a+8|0]&2){break e}break c}g=1;if(!(H[a+8|0]&1)){break c}}f=f+8|0;continue}break}a=4;if(!g){break b}}a=3;}J[b+44>>2]=a;if(d&1){break a}}J[b+20>>2]=c;J[b+40>>2]=J[b+40>>2]+1;if(J[b+36>>2]!=1|J[b+24>>2]!=2){break a}H[b+54|0]=1;return}g=J[a+12>>2];h=a+16|0;yb(h,b,c,d,e);f=a+24|0;g=h+(g<<3)|0;if(f>>>0>=g>>>0){break a}a=J[a+8>>2];if(!(!(a&2)&J[b+36>>2]!=1)){while(1){if(K[b+54|0]){break a}yb(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}break a}if(!(a&1)){while(1){if(K[b+54|0]|J[b+36>>2]==1){break a}yb(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break a}}while(1){if(K[b+54|0]|J[b+36>>2]==1&J[b+24>>2]==1){break a}yb(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}}}function nk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=sa-80|0;sa=e;a:{if((d|0)<=0){break a}if(d>>>0>=8){j=d&-8;while(1){f=i<<4;J[(f+c|0)+12>>2]=-581039253;J[((f|16)+c|0)+12>>2]=-581039253;J[((f|32)+c|0)+12>>2]=-581039253;J[((f|48)+c|0)+12>>2]=-581039253;J[((f|64)+c|0)+12>>2]=-581039253;J[((f|80)+c|0)+12>>2]=-581039253;J[((f|96)+c|0)+12>>2]=-581039253;J[((f|112)+c|0)+12>>2]=-581039253;i=i+8|0;g=g+8|0;if((j|0)!=(g|0)){continue}break}}g=d&7;if(g){while(1){J[((i<<4)+c|0)+12>>2]=-581039253;i=i+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}if((d|0)<=0){break a}f=e- -64|0;i=0;while(1){J[e+40>>2]=19952;J[e+52>>2]=0;J[e+56>>2]=0;J[e+44>>2]=0;J[e+48>>2]=0;J[e+60>>2]=-581039253;g=i<<4;j=g+b|0;h=J[j+12>>2];J[f+8>>2]=J[j+8>>2];J[f+12>>2]=h;h=J[j+4>>2];J[f>>2]=J[j>>2];J[f+4>>2]=h;J[e+32>>2]=1566444395;J[e+36>>2]=0;J[e+24>>2]=1566444395;J[e+28>>2]=1566444395;h=J[a+100>>2];J[e+16>>2]=-581039253;J[e+20>>2]=0;J[e+8>>2]=-581039253;J[e+12>>2]=-581039253;ua[J[J[h>>2]+8>>2]](h,e+40|0,e+8|0,e+24|0);h=J[e+56>>2];g=c+g|0;J[g+8>>2]=J[e+52>>2];J[g+12>>2]=h;h=J[e+48>>2];J[g>>2]=J[e+44>>2];J[g+4>>2]=h;i=i+1|0;if((i|0)!=(d|0)){continue}break}}sa=e+80|0;}function Dj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0);i=J[a+40>>2];e=N[i+32>>2];f=N[a+32>>2];h=N[i+48>>2];k=N[i+28>>2];g=N[a+28>>2];l=N[i+44>>2];m=N[i+24>>2];t=N[i+40>>2];j=N[a+24>>2];n=Q(ua[J[J[i>>2]+48>>2]](i));z=N[b+52>>2];q=N[b+24>>2];u=N[b+20>>2];o=N[b+56>>2];p=N[b+40>>2];r=N[b+36>>2];A=N[b+48>>2];v=N[b+8>>2];w=N[b+4>>2];x=N[b>>2];y=N[b+16>>2];s=N[b+32>>2];J[c+12>>2]=0;B=o;e=Q(e*f);h=Q(h*f);o=f<=Q(0)?e:h;e=f>=Q(0)?e:h;f=Q(Q(o+e)*Q(.5));h=Q(m*j);m=Q(t*j);t=j<=Q(0)?h:m;h=j>=Q(0)?h:m;j=Q(Q(t+h)*Q(.5));k=Q(k*g);l=Q(l*g);m=g<=Q(0)?k:l;k=g>=Q(0)?k:l;g=Q(Q(m+k)*Q(.5));l=Q(B+Q(Q(p*f)+Q(Q(s*j)+Q(r*g))));e=Q(n+Q(Q(o-e)*Q(.5)));o=Q(e*Q(R(p)));p=Q(n+Q(Q(t-h)*Q(.5)));n=Q(n+Q(Q(m-k)*Q(.5)));r=Q(o+Q(Q(p*Q(R(s)))+Q(n*Q(R(r)))));N[c+8>>2]=l-r;s=Q(z+Q(Q(f*q)+Q(Q(j*y)+Q(g*u))));q=Q(Q(e*Q(R(q)))+Q(Q(p*Q(R(y)))+Q(n*Q(R(u)))));N[c+4>>2]=s-q;f=Q(A+Q(Q(f*v)+Q(Q(j*x)+Q(g*w))));g=Q(Q(e*Q(R(v)))+Q(Q(p*Q(R(x)))+Q(n*Q(R(w)))));N[c>>2]=f-g;J[d+12>>2]=0;N[d+8>>2]=r+l;N[d+4>>2]=q+s;N[d>>2]=g+f;}function Yb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;while(1){q=c;g=J[a+12>>2]+((c+d|0)/2<<4)|0;r=J[g+8>>2];l=J[g+4>>2];k=J[g>>2];g=d;while(1){s=J[a+12>>2];while(1){e=-1;i=-1;f=(c<<4)+s|0;m=J[f>>2];if(m){i=J[m+12>>2];}e=k?J[k+12>>2]:e;j=-1;h=-1;n=J[f+4>>2];if(n){h=J[n+12>>2];}j=l?J[l+12>>2]:j;a:{b:{if((e|0)<(i|0)){break b}e=(k|0)==(m|0)&(h|0)>(j|0);if(!(e|(k|0)!=(m|0))){if((l|0)!=(n|0)){break a}if(M[f+8>>2]>r>>>0){break b}break a}if(!e){break a}}c=c+1|0;continue}break}while(1){t=g<<4;e=t+s|0;i=-1;j=-1;j=k?J[k+12>>2]:j;h=J[e>>2];if(h){i=J[h+12>>2];}u=-1;o=-1;o=l?J[l+12>>2]:o;p=J[e+4>>2];if(p){u=J[p+12>>2];}c:{d:{if((i|0)<(j|0)){break d}i=(h|0)==(k|0)&(u|0)<(o|0);if(!(i|(h|0)!=(k|0))){if((l|0)!=(p|0)){break c}if(M[e+8>>2]<r>>>0){break d}break c}if(!i){break c}}g=g-1|0;continue}break}if((c|0)<=(g|0)){i=J[f+8>>2];j=J[f+12>>2];h=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=h;h=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=h;f=J[a+12>>2]+t|0;J[f+4>>2]=n;J[f+8>>2]=i;J[f+12>>2]=j;J[f>>2]=m;g=g-1|0;c=c+1|0;}if((c|0)<=(g|0)){continue}break}if((g|0)>(q|0)){Yb(a,b,q,g);}if((c|0)<(d|0)){continue}break}}function Ri(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0),C=Q(0),D=Q(0),E=Q(0),F=Q(0);h=N[a+32>>2];f=N[a+48>>2];u=N[a+28>>2];v=N[a+44>>2];w=N[a+24>>2];x=N[a+40>>2];y=Q(ua[J[J[a>>2]+48>>2]](a));z=Q(ua[J[J[a>>2]+48>>2]](a));A=Q(ua[J[J[a>>2]+48>>2]](a));B=N[b+52>>2];i=N[b+24>>2];j=N[b+20>>2];k=N[b+56>>2];l=N[a+28>>2];o=N[a+44>>2];m=N[a+32>>2];C=N[a+48>>2];e=N[b+40>>2];n=N[b+36>>2];D=N[b+48>>2];q=N[b+8>>2];r=N[b>>2];s=N[b+4>>2];t=N[b+16>>2];E=N[a+24>>2];F=N[a+40>>2];g=N[b+32>>2];J[c+12>>2]=0;p=k;k=Q(Q(C+m)*Q(.5));m=Q(Q(F+E)*Q(.5));l=Q(Q(o+l)*Q(.5));o=Q(p+Q(Q(e*k)+Q(Q(g*m)+Q(n*l))));h=Q(A+Q(Q(f-h)*Q(.5)));p=Q(h*Q(R(e)));e=Q(y+Q(Q(x-w)*Q(.5)));f=Q(e*Q(R(g)));g=Q(z+Q(Q(v-u)*Q(.5)));n=Q(p+Q(f+Q(g*Q(R(n)))));N[c+8>>2]=o-n;f=Q(B+Q(Q(k*i)+Q(Q(m*t)+Q(l*j))));i=Q(Q(h*Q(R(i)))+Q(Q(e*Q(R(t)))+Q(g*Q(R(j)))));N[c+4>>2]=f-i;j=Q(D+Q(Q(k*q)+Q(Q(m*r)+Q(l*s))));e=Q(Q(h*Q(R(q)))+Q(Q(e*Q(R(r)))+Q(g*Q(R(s)))));N[c>>2]=j-e;J[d+12>>2]=0;N[d+8>>2]=n+o;N[d+4>>2]=i+f;N[d>>2]=e+j;}function Cl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=0;d=sa-32|0;sa=d;a=J[a+12>>2];a:{if(!a){break a}J[e+4>>2]=a;f=J[b+12>>2];k=J[c+12>>2];i=Q(N[f+56>>2]-N[k+56>>2]);m=Q(N[f+48>>2]-N[k+48>>2]);j=Q(N[f+52>>2]-N[k+52>>2]);g=Q(Q(i*i)+Q(Q(m*m)+Q(j*j)));f=J[c+4>>2];l=N[f+20>>2];h=N[f+36>>2];b=J[b+4>>2];n=N[b+20>>2];o=N[b+36>>2];f=J[a+844>>2];if((f|0)>0){b=0;while(1){f=a+P(b,208)|0;k=J[f+120>>2];b:{if(!k){break b}p=J[8753];if(!p){break b}ua[p|0](k)|0;J[f+120>>2]=0;}b=b+1|0;f=J[a+844>>2];if((b|0)<(f|0)){continue}break}}g=Q(Y(g));l=Q(h*l);h=Q(o*n);c:{if(!f){break c}b=J[8756];if(!b){break c}J[d+16>>2]=a;ua[b|0](d+16|0);}J[a+844>>2]=0;h=Q(h+l);if(g>Q(h+N[e+32>>2])){break a}J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=1065353216;J[d+20>>2]=0;h=Q(g-h);d:{if(!(g>Q(1.1920928955078125e-7))){g=Q(1);i=Q(0);j=Q(0);break d}g=Q(Q(1)/g);i=Q(i*g);N[d+24>>2]=i;j=Q(j*g);N[d+20>>2]=j;g=Q(m*g);N[d+16>>2]=g;}a=J[c+12>>2];m=N[a+52>>2];n=N[a+56>>2];o=N[a+48>>2];J[d+12>>2]=0;N[d>>2]=o+Q(l*g);N[d+8>>2]=n+Q(l*i);N[d+4>>2]=m+Q(l*j);ua[J[J[e>>2]+16>>2]](e,d+16|0,d,h);}sa=d+32|0;}function Gl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;J[8466]=J[8466]+1;k=J[a+36>>2];d=c<<16|b;d=(d<<15^-1)+d|0;d=P(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;i=k+((J[a+12>>2]-1&(d>>>16^d))<<2)|0;d=J[i>>2];a:{if((d|0)==-1){break a}f=J[a+56>>2];g=J[a+16>>2];e=d;while(1){j=g+P(e,12)|0;if(!(J[j>>2]==(b|0)&J[j+4>>2]==(c|0))){e=J[(e<<2)+f>>2];if((e|0)!=-1){continue}break a}break}l=J[(g+P(e,12)|0)+8>>2];b:{c:{if((d|0)==(e|0)){break c}while(1){b=d;d=J[(b<<2)+f>>2];if((e|0)!=(d|0)){continue}break}if((b|0)==-1){break c}J[(b<<2)+f>>2]=J[(e<<2)+f>>2];break b}J[i>>2]=J[(e<<2)+f>>2];}h=J[a+8>>2]-1|0;if((h|0)!=(e|0)){d:{e:{g=g+P(h,12)|0;b=J[g+4>>2]<<16|J[g>>2];b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;i=J[a+12>>2]-1&(b>>>16^b);d=k+(i<<2)|0;b=J[d>>2];if((h|0)==(b|0)){break e}while(1){c=b;b=J[(b<<2)+f>>2];if((h|0)!=(b|0)){continue}break}if((c|0)==-1){break e}J[(c<<2)+f>>2]=J[(h<<2)+f>>2];break d}J[d>>2]=J[(h<<2)+f>>2];}b=J[g+4>>2];J[j>>2]=J[g>>2];J[j+4>>2]=b;J[j+8>>2]=J[g+8>>2];b=J[a+36>>2]+(i<<2)|0;J[J[a+56>>2]+(e<<2)>>2]=J[b>>2];J[b>>2]=e;e=J[a+8>>2]-1|0;}J[a+8>>2]=e;}return l|0}function wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=sa-48|0;sa=c;d=J[b+4>>2];e=J[a+56>>2];J[e+4>>2]=J[b>>2];J[e+8>>2]=d;d=J[b+12>>2];J[e+12>>2]=J[b+8>>2];J[e+16>>2]=d;J[c+44>>2]=0;J[c+36>>2]=0;J[c+40>>2]=0;J[c+32>>2]=1065353216;e=c+16|0;b=c+32|0;ua[J[J[a>>2]+68>>2]](e,a,b);N[a+40>>2]=N[c+16>>2]+N[a+20>>2];J[c+32>>2]=-1082130432;ua[J[J[a>>2]+68>>2]](c,a,b);d=J[c+12>>2];J[c+24>>2]=J[c+8>>2];J[c+28>>2]=d;d=J[c+4>>2];J[c+16>>2]=J[c>>2];J[c+20>>2]=d;N[a+24>>2]=N[c+16>>2]-N[a+20>>2];J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[c+36>>2]=1065353216;ua[J[J[a>>2]+68>>2]](e,a,b);N[a+44>>2]=N[c+20>>2]+N[a+20>>2];J[c+36>>2]=-1082130432;ua[J[J[a>>2]+68>>2]](c,a,b);d=J[c+12>>2];J[c+24>>2]=J[c+8>>2];J[c+28>>2]=d;d=J[c+4>>2];J[c+16>>2]=J[c>>2];J[c+20>>2]=d;N[a+28>>2]=N[c+20>>2]-N[a+20>>2];J[c+40>>2]=0;J[c+44>>2]=0;J[c+40>>2]=1065353216;J[c+32>>2]=0;J[c+36>>2]=0;ua[J[J[a>>2]+68>>2]](e,a,b);N[a+48>>2]=N[c+24>>2]+N[a+20>>2];J[c+40>>2]=-1082130432;ua[J[J[a>>2]+68>>2]](c,a,b);b=J[c+12>>2];J[c+24>>2]=J[c+8>>2];J[c+28>>2]=b;b=J[c+4>>2];J[c+16>>2]=J[c>>2];J[c+20>>2]=b;N[a+32>>2]=N[c+24>>2]-N[a+20>>2];sa=c+48|0;}function Ja(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){oa(a|0,b|0,c|0);return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){H[c|0]=K[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0<e>>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0<c>>>0){break c}while(1){J[c>>2]=J[b>>2];J[c+4>>2]=J[b+4>>2];J[c+8>>2]=J[b+8>>2];J[c+12>>2]=J[b+12>>2];J[c+16>>2]=J[b+16>>2];J[c+20>>2]=J[b+20>>2];J[c+24>>2]=J[b+24>>2];J[c+28>>2]=J[b+28>>2];J[c+32>>2]=J[b+32>>2];J[c+36>>2]=J[b+36>>2];J[c+40>>2]=J[b+40>>2];J[c+44>>2]=J[b+44>>2];J[c+48>>2]=J[b+48>>2];J[c+52>>2]=J[b+52>>2];J[c+56>>2]=J[b+56>>2];J[c+60>>2]=J[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){J[c>>2]=J[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0<a>>>0){c=a;break a}c=a;while(1){H[c|0]=K[b|0];H[c+1|0]=K[b+1|0];H[c+2|0]=K[b+2|0];H[c+3|0]=K[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0<e>>>0){while(1){H[c|0]=K[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function oh(a,b){a=a|0;b=Q(b);var c=0,d=Q(0),e=0,f=Q(0),g=0,h=Q(0),i=0;i=sa-16|0;sa=i;ua[J[8262]](7100);if(J[a+248>>2]>0){while(1){c=J[J[a+256>>2]+(g<<2)>>2];a:{if(!c){break a}b:{c:{d:{e=J[c+220>>2];switch(e-2|0){case 0:case 2:break c;default:break d}}e:{d=N[c+380>>2];f=Q(d*d);d=N[c+372>>2];h=Q(d*d);d=N[c+376>>2];f=Q(f+Q(h+Q(d*d)));d=N[c+532>>2];if(!(f<Q(d*d))){break e}d=N[c+396>>2];f=Q(d*d);d=N[c+388>>2];h=Q(d*d);d=N[c+392>>2];f=Q(f+Q(h+Q(d*d)));d=N[c+536>>2];if(!(f<Q(d*d))){break e}N[c+224>>2]=N[c+224>>2]+b;break b}J[c+224>>2]=0;if((J[c+220>>2]&-2)!=4){J[c+220>>2]=0;}e=J[c+220>>2];}if((e|0)==4){break a}}f:{if(K[35721]){break f}d=N[8267];if(d==Q(0)|!(d<N[c+224>>2])&(e&-2)!=2){break f}if(K[c+204|0]&3){if((J[c+220>>2]&-2)!=4){J[c+220>>2]=2;}break a}if((e|0)==1){if((J[c+220>>2]&-2)!=4){J[c+220>>2]=3;}e=J[c+220>>2];}if((e|0)!=2){break a}J[c+388>>2]=0;J[c+392>>2]=0;J[c+372>>2]=0;J[c+376>>2]=0;J[c+396>>2]=0;J[c+400>>2]=0;J[c+380>>2]=0;J[c+384>>2]=0;J[c+304>>2]=J[c+304>>2]+2;break a}if((J[c+220>>2]&-2)!=4){J[c+220>>2]=1;}}g=g+1|0;if((g|0)<J[a+248>>2]){continue}break}}ua[J[8263]]();sa=i+16|0;}function Bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;J[a+12>>2]=0;H[a+16|0]=1;J[a+4>>2]=0;J[a+8>>2]=0;d=J[b+4>>2];if((d|0)<=0){J[a+4>>2]=d;return}J[8456]=J[8456]+1;l=d<<2;e=ua[J[8258]](l,16)|0;g=J[a+12>>2];a:{b:{c:{d:{k=J[a+4>>2];if((k|0)>0){if(k>>>0>=4){m=k&-4;while(1){c=f<<2;J[c+e>>2]=J[c+g>>2];j=c|4;J[j+e>>2]=J[g+j>>2];j=c|8;J[j+e>>2]=J[g+j>>2];c=c|12;J[c+e>>2]=J[c+g>>2];f=f+4|0;h=h+4|0;if((m|0)!=(h|0)){continue}break}}c=k&3;if(c){while(1){h=f<<2;J[h+e>>2]=J[g+h>>2];f=f+1|0;i=i+1|0;if((c|0)!=(i|0)){continue}break}}if(!K[a+16|0]){break c}break d}if(K[a+16|0]?g:0){break d}J[a+12>>2]=e;H[a+16|0]=1;J[a+8>>2]=d;Fa(e,0,l);J[a+4>>2]=d;break b}if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}}J[a+12>>2]=e;H[a+16|0]=1;J[a+8>>2]=d;Fa(e,0,l);J[a+4>>2]=d;if((d|0)<=0){break a}}a=J[b+12>>2];i=0;f=0;if(d>>>0>=4){g=d&-4;h=0;while(1){b=f<<2;J[b+e>>2]=J[a+b>>2];c=b|4;J[c+e>>2]=J[a+c>>2];c=b|8;J[c+e>>2]=J[a+c>>2];b=b|12;J[b+e>>2]=J[a+b>>2];f=f+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}b=d&3;if(!b){break a}while(1){d=f<<2;J[d+e>>2]=J[a+d>>2];f=f+1|0;i=i+1|0;if((b|0)!=(i|0)){continue}break}}}function dl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;bb(a,b,c);d=J[a+56>>2];ua[J[J[d>>2]+56>>2]](d,b+12|0,c)|0;N[b+52>>2]=N[a+20>>2];a:{b:{if(!J[a+60>>2]){break b}if(ua[J[J[c>>2]+52>>2]](c)&1){break b}d=ua[J[J[c>>2]+24>>2]](c,J[a+60>>2])|0;if(d){J[b+44>>2]=0;J[b+40>>2]=d;break a}d=ua[J[J[c>>2]+28>>2]](c,J[a+60>>2])|0;J[b+44>>2]=0;J[b+40>>2]=d;d=J[a+60>>2];d=(g=c,h=ua[J[J[d>>2]+12>>2]](d)|0,i=1,f=J[J[c>>2]+16>>2],ua[f](g|0,h|0,i|0)|0);e=J[a+60>>2];i=c,h=d,g=ua[J[J[e>>2]+16>>2]](e,J[d+8>>2],c)|0,j=1213612625,k=J[a+60>>2],f=J[J[c>>2]+20>>2],ua[f](i|0,h|0,g|0,j|0,k|0);break a}J[b+40>>2]=0;J[b+44>>2]=0;}c:{d:{if(!J[a+64>>2]){break d}if(ua[J[J[c>>2]+52>>2]](c)&2){break d}d=ua[J[J[c>>2]+24>>2]](c,J[a+64>>2])|0;if(d){J[b+48>>2]=d;break c}f=b,k=ua[J[J[c>>2]+28>>2]](c,J[a+64>>2])|0,J[f+48>>2]=k;d=J[a+64>>2];d=(k=c,j=ua[J[J[d>>2]+8>>2]](d)|0,g=1,f=J[J[c>>2]+16>>2],ua[f](k|0,j|0,g|0)|0);e=J[a+64>>2];g=c,j=d,k=ua[J[J[e>>2]+12>>2]](e,J[d+8>>2],c)|0,h=1346456916,i=J[a+64>>2],f=J[J[c>>2]+20>>2],ua[f](g|0,j|0,k|0,h|0,i|0);break c}J[b+48>>2]=0;}J[b+56>>2]=0;return 8861}function li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0);Gb(a,b,c);N[b+52>>2]=N[a+552>>2];N[b+56>>2]=N[a+556>>2];N[b+60>>2]=N[a+560>>2];N[b- -64>>2]=N[a+564>>2];N[b+68>>2]=N[a+568>>2];N[b+72>>2]=N[a+572>>2];N[b+76>>2]=N[a+576>>2];N[b+80>>2]=N[a+580>>2];N[b+84>>2]=N[a+584>>2];N[b+88>>2]=N[a+588>>2];N[b+92>>2]=N[a+592>>2];N[b+96>>2]=N[a+596>>2];N[b+100>>2]=N[a+600>>2];N[b+104>>2]=N[a+604>>2];N[b+108>>2]=N[a+608>>2];N[b+112>>2]=N[a+612>>2];N[b+116>>2]=N[a+616>>2];N[b+120>>2]=N[a+620>>2];N[b+124>>2]=N[a+624>>2];N[b+128>>2]=N[a+628>>2];N[b+132>>2]=N[a+632>>2];N[b+136>>2]=N[a+636>>2];N[b+140>>2]=N[a+640>>2];N[b+144>>2]=N[a+644>>2];N[b+148>>2]=N[a+648>>2];N[b+152>>2]=N[a+652>>2];N[b+156>>2]=N[a+656>>2];N[b+160>>2]=N[a+660>>2];N[b+164>>2]=N[a+664>>2];N[b+168>>2]=N[a+668>>2];N[b+172>>2]=N[a+672>>2];N[b+176>>2]=N[a+676>>2];J[b+184>>2]=K[a+736|0];J[b+188>>2]=K[a+737|0];N[b+196>>2]=N[a+684>>2];N[b+192>>2]=N[a+680>>2];J[b+180>>2]=K[a+740|0];c=a+688|0;d=b,e=Eb(c),N[d+200>>2]=e;d=b,e=Fb(c),N[d+204>>2]=e;N[b+208>>2]=N[a+696>>2];N[b+212>>2]=N[a+700>>2];N[b+216>>2]=N[a+704>>2];return 8624}function Ql(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a=J[b>>2];b=Pc(ua[J[J[a>>2]+56>>2]](a,116)|0,b,c,d,0);J[b>>2]=16340;H[b+104|0]=1;J[b+100>>2]=0;J[b+92>>2]=0;J[b+96>>2]=0;J[8456]=J[8456]+1;a=ua[J[8258]](64,16)|0;H[a+20|0]=1;J[a>>2]=17788;J[a+16>>2]=0;H[a+40|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;J[a+36>>2]=0;H[a+60|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;J[a+56>>2]=0;J[a+48>>2]=0;J[a+52>>2]=0;J[8456]=J[8456]+1;i=ua[J[8258]](24,16)|0;g=J[a+8>>2];a:{if((g|0)<=0){break a}if((g|0)!=1){l=g&-2;while(1){e=P(f,12);h=e+J[a+16>>2]|0;j=J[h+4>>2];e=e+i|0;J[e>>2]=J[h>>2];J[e+4>>2]=j;J[e+8>>2]=J[h+8>>2];e=P(f|1,12);h=e+J[a+16>>2]|0;j=J[h+4>>2];e=e+i|0;J[e>>2]=J[h>>2];J[e+4>>2]=j;J[e+8>>2]=J[h+8>>2];f=f+2|0;k=k+2|0;if((l|0)!=(k|0)){continue}break}}if(!(g&1)){break a}g=P(f,12);f=g+J[a+16>>2]|0;h=J[f+4>>2];g=g+i|0;J[g>>2]=J[f>>2];J[g+4>>2]=h;J[g+8>>2]=J[f+8>>2];}f=J[a+16>>2];if(!(f?!f|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](f);}J[a+16>>2]=i;H[a+20|0]=1;J[a+12>>2]=2;Jc(a);J[b+84>>2]=a;J[b+108>>2]=J[J[c+4>>2]+76>>2];J[b+112>>2]=J[J[d+4>>2]+76>>2];return b|0}function pc(a,b){var c=Q(0),d=Q(0),e=0,f=Q(0),g=Q(0),h=Q(0);d=N[((b<<2)+a|0)+1364>>2];e=P(b,88)+a|0;f=N[e+968>>2];g=N[e+972>>2];a:{if(f>=g){break a}if(d<f){c=Qa(Q(f-d));b:{if(c<Q(-3.1415927410125732)){c=Q(c+Q(6.2831854820251465));break b}if(!(c>Q(3.1415927410125732))){break b}c=Q(c+Q(-6.2831854820251465));}h=Q(R(c));c=Qa(Q(g-d));c:{if(c<Q(-3.1415927410125732)){c=Q(c+Q(6.2831854820251465));break c}if(!(c>Q(3.1415927410125732))){break c}c=Q(c+Q(-6.2831854820251465));}d=h<Q(R(c))?d:Q(d+Q(6.2831854820251465));break a}if(!(d>g)){break a}c=Qa(Q(d-g));d:{if(c<Q(-3.1415927410125732)){c=Q(c+Q(6.2831854820251465));break d}if(!(c>Q(3.1415927410125732))){break d}c=Q(c+Q(-6.2831854820251465));}h=Q(R(c));c=Qa(Q(d-f));e:{if(c<Q(-3.1415927410125732)){c=Q(c+Q(6.2831854820251465));break e}if(!(c>Q(3.1415927410125732))){break e}c=Q(c+Q(-6.2831854820251465));}d=h>Q(R(c))?Q(d+Q(-6.2831854820251465)):d;}N[e+1048>>2]=d;e=e+1040|0;if(f>g){J[(P(b,88)+a|0)+1052>>2]=0;J[e>>2]=0;return}N[e>>2]=d-f;if(f==g){J[(P(b,88)+a|0)+1052>>2]=3;return}a=P(b,88)+a|0;J[a+1052>>2]=4;N[a+1044>>2]=d-g;}function Ci(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0);e=sa-688|0;sa=e;f=Ob(e+576|0);J[f+4>>2]=1;J[f>>2]=15832;g=J[b+12>>2];J[f+72>>2]=J[b+8>>2];J[f+76>>2]=g;g=J[b+4>>2];J[f+64>>2]=J[b>>2];J[f+68>>2]=g;g=J[b+28>>2];J[f+88>>2]=J[b+24>>2];J[f+92>>2]=g;g=J[b+20>>2];J[f+80>>2]=J[b+16>>2];J[f+84>>2]=g;g=J[b+44>>2];J[f+104>>2]=J[b+40>>2];J[f+108>>2]=g;g=J[b+36>>2];J[f+96>>2]=J[b+32>>2];J[f+100>>2]=g;N[f+52>>2]=N[a+204>>2];H[e+548|0]=0;J[e+524>>2]=953267991;J[e+212>>2]=22676;g=J[a+4>>2];b=e+188|0;J[b+20>>2]=0;J[b+16>>2]=f;J[b+12>>2]=g;J[b+8>>2]=e+212;J[b+4>>2]=e+216;J[b>>2]=22452;J[e+12>>2]=13156;J[e+176>>2]=1065353216;J[e+180>>2]=0;N[e+184>>2]=N[a+208>>2];g=b;b=a+136|0;a:{if(!Yd(g,a+8|0,a+72|0,b,b,e+12|0)){break a}h=N[e+152>>2];i=N[e+144>>2];j=N[e+148>>2];k=Q(Q(h*h)+Q(Q(i*i)+Q(j*j)));if(!(k>Q(9999999747378752e-20))){break a}l=N[e+176>>2];if(!(l<N[a+200>>2])){break a}m=h;h=Q(Q(1)/Q(Y(k)));N[e+152>>2]=m*h;N[e+148>>2]=j*h;N[e+144>>2]=i*h;Q(ua[J[J[a>>2]+12>>2]](a,e+144|0,e+160|0,l,c,d));}sb(f);sa=e+688|0;}function xi(a,b){a=a|0;b=b|0;var c=0,d=0;qc(a,J[a+28>>2]+4|0,J[a+32>>2]+4|0);J[b>>2]=0;J[b+4>>2]=0;d=2;a:{b:{c:{c=J[a+956>>2];switch(c|0){case 0:break a;case 4:break b;default:break c}}d=1;}J[b>>2]=d;c=d;}if(K[a+792|0]){c=c+1|0;J[b>>2]=c;}if(K[a+798|0]){c=c+1|0;J[b>>2]=c;}d=2;d:{switch(J[a+960>>2]){default:d=1;case 4:c=c+d|0;J[b>>2]=c;break;case 0:break d}}if(K[a+793|0]){c=c+1|0;J[b>>2]=c;}if(K[a+799|0]){c=c+1|0;J[b>>2]=c;}d=2;e:{switch(J[a+964>>2]){default:d=1;case 4:c=c+d|0;J[b>>2]=c;break;case 0:break e}}if(K[a+794|0]){c=c+1|0;J[b>>2]=c;}if(K[a+800|0]){J[b>>2]=c+1;}pc(a,0);c=2;f:{switch(J[a+1052>>2]){default:c=1;case 4:J[b>>2]=J[b>>2]+c;break;case 0:break f}}if(K[a+996|0]){J[b>>2]=J[b>>2]+1;}if(K[a+1016|0]){J[b>>2]=J[b>>2]+1;}pc(a,1);c=2;g:{switch(J[a+1140>>2]){default:c=1;case 4:J[b>>2]=J[b>>2]+c;break;case 0:break g}}if(K[a+1084|0]){J[b>>2]=J[b>>2]+1;}if(K[a+1104|0]){J[b>>2]=J[b>>2]+1;}c=2;pc(a,2);h:{switch(J[a+1228>>2]){default:c=1;case 4:J[b>>2]=J[b>>2]+c;break;case 0:break h}}if(K[a+1172|0]){J[b>>2]=J[b>>2]+1;}if(K[a+1192|0]){J[b>>2]=J[b>>2]+1;}}function Fk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0);a:{if(J[a+24>>2]){g=N[a- -64>>2];e=N[a+48>>2];h=Q(Q(g+e)*Q(.5));f=N[a+60>>2];k=N[a+44>>2];i=Q(Q(f+k)*Q(.5));l=Q(Q(g-e)*Q(.5));u=Q(Q(f-k)*Q(.5));e=N[a+56>>2];f=N[a+40>>2];g=Q(Q(e+f)*Q(.5));e=Q(Q(e-f)*Q(.5));break a}e=Q(0);}v=Q(ua[J[J[a>>2]+48>>2]](a));w=Q(ua[J[J[a>>2]+48>>2]](a));p=Q(ua[J[J[a>>2]+48>>2]](a));x=N[b+52>>2];f=N[b+20>>2];k=N[b+24>>2];o=N[b+56>>2];m=N[b+36>>2];j=N[b+40>>2];y=N[b+48>>2];q=N[b+8>>2];r=N[b>>2];s=N[b+4>>2];t=N[b+16>>2];n=N[b+32>>2];J[c+12>>2]=0;o=Q(o+Q(Q(h*j)+Q(Q(g*n)+Q(i*m))));l=Q(l+p);p=Q(l*Q(R(j)));e=Q(e+v);j=Q(u+w);m=Q(p+Q(Q(e*Q(R(n)))+Q(j*Q(R(m)))));N[c+8>>2]=o-m;n=Q(x+Q(Q(h*k)+Q(Q(g*t)+Q(i*f))));f=Q(Q(l*Q(R(k)))+Q(Q(e*Q(R(t)))+Q(j*Q(R(f)))));N[c+4>>2]=n-f;h=Q(y+Q(Q(h*q)+Q(Q(g*r)+Q(i*s))));i=Q(Q(l*Q(R(q)))+Q(Q(e*Q(R(r)))+Q(j*Q(R(s)))));N[c>>2]=h-i;J[d+12>>2]=0;N[d+8>>2]=m+o;N[d+4>>2]=f+n;N[d>>2]=i+h;}function Ra(a,b,c){var d=0,e=Q(0),f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=0,w=Q(0),x=Q(0),y=Q(0);d=sa-48|0;sa=d;f=J[b+120>>2];v=J[b+124>>2];g=J[b>>2]+(v>>1)|0;if(v&1){f=J[f+J[g>>2]>>2];}ua[f|0](d,g,c);h=N[c+8>>2];i=N[c+4>>2];k=N[c>>2];f=J[b+124>>2];g=J[b+4>>2]+(f>>1)|0;c=J[b+120>>2];c=f&1?J[J[g>>2]+c>>2]:c;l=N[b+16>>2];m=N[b+12>>2];n=N[b+32>>2];o=N[b+24>>2];p=N[b+28>>2];q=N[b+48>>2];e=N[b+40>>2];r=N[b+44>>2];s=N[b+8>>2];J[d+28>>2]=0;j=e;e=Q(-k);N[d+24>>2]=Q(Q(j*e)-Q(r*i))-Q(q*h);N[d+20>>2]=Q(Q(o*e)-Q(p*i))-Q(n*h);N[d+16>>2]=Q(Q(s*e)-Q(m*i))-Q(l*h);ua[c|0](d+32|0,g,d+16|0);w=N[b+104>>2];x=N[b- -64>>2];y=N[b+60>>2];h=N[b+108>>2];i=N[b+80>>2];k=N[b+72>>2];l=N[b+76>>2];m=N[b+112>>2];n=N[b+96>>2];o=N[b+88>>2];p=N[b+92>>2];q=N[b+56>>2];j=N[d+40>>2];t=N[d+32>>2];u=N[d+36>>2];e=N[d>>2];r=N[d+4>>2];s=N[d+8>>2];J[a+12>>2]=0;N[a+8>>2]=s-Q(m+Q(Q(j*n)+Q(Q(t*o)+Q(u*p))));N[a+4>>2]=r-Q(h+Q(Q(j*i)+Q(Q(t*k)+Q(u*l))));N[a>>2]=e-Q(w+Q(Q(j*x)+Q(Q(t*q)+Q(u*y))));sa=d+48|0;}function ri(a,b){a=a|0;b=b|0;var c=Q(0),d=0,e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0);a:{b:{if(K[a+738|0]){J[b>>2]=0;a=0;break b}J[b>>2]=5;J[b+4>>2]=1;d=J[a+32>>2];c=N[a+652>>2];f=N[a+620>>2];g=N[a+636>>2];l=Q(Q(N[d+44>>2]*c)+Q(Q(N[d+36>>2]*f)+Q(g*N[d+40>>2])));e=J[a+28>>2];m=N[e+44>>2];h=N[a+584>>2];n=N[e+36>>2];i=N[a+552>>2];j=N[a+568>>2];o=N[e+40>>2];u=Q(l*Q(Q(m*h)+Q(Q(n*i)+Q(j*o))));p=Q(Q(N[d+12>>2]*c)+Q(Q(N[d+4>>2]*f)+Q(g*N[d+8>>2])));q=N[e+12>>2];r=N[e+4>>2];s=N[e+8>>2];v=Q(p*Q(Q(q*h)+Q(Q(r*i)+Q(j*s))));t=N[e+28>>2];k=Q(t*h);h=N[e+20>>2];w=Q(h*i);i=N[e+24>>2];k=Q(k+Q(w+Q(j*i)));j=Q(Q(N[d+28>>2]*c)+Q(Q(N[d+20>>2]*f)+Q(g*N[d+24>>2])));c=N[a+588>>2];f=N[a+556>>2];g=N[a+572>>2];c=Q(Ia(Q(u+Q(v+Q(k*j))),Q(Q(l*Q(Q(m*c)+Q(Q(n*f)+Q(o*g))))+Q(Q(p*Q(Q(q*c)+Q(Q(r*f)+Q(s*g))))+Q(Q(Q(t*c)+Q(Q(h*f)+Q(i*g)))*j))))*N[a+732>>2]);N[a+728>>2]=c;Id(a+688|0,c);if(!(K[a+716|0]|K[a+737|0])){break a}J[b>>2]=J[b>>2]+1;a=J[b+4>>2]-1|0;}J[b+4>>2]=a;}}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=sa-16|0;sa=d;ua[J[8262]](7775);gf(a);a:{if(!(ua[J[J[a>>2]+20>>2]](a)|0)){break a}b=ua[J[J[a>>2]+20>>2]](a)|0;if(!(ua[J[J[b>>2]+56>>2]](b)&6144)){break a}b=ua[J[J[a>>2]+104>>2]](a)|0;if((b|0)<=0){break a}c=b;if(b&1){c=b-1|0;f=a,g=ua[J[J[a>>2]+108>>2]](a,c)|0,e=J[J[a>>2]+172>>2],ua[e](f|0,g|0);}if((b|0)==1){break a}while(1){b=c-1|0;g=a,f=ua[J[J[a>>2]+108>>2]](a,b)|0,e=J[J[a>>2]+172>>2],ua[e](g|0,f|0);c=c-2|0;f=a,g=ua[J[J[a>>2]+108>>2]](a,c)|0,e=J[J[a>>2]+172>>2],ua[e](f|0,g|0);if(b>>>0>1){continue}break}}b:{if(!(ua[J[J[a>>2]+20>>2]](a)|0)){break b}b=ua[J[J[a>>2]+20>>2]](a)|0;if(!(ua[J[J[b>>2]+56>>2]](b)&16387)){break b}if(!(ua[J[J[a>>2]+20>>2]](a)|0)){break b}b=ua[J[J[a>>2]+20>>2]](a)|0;if(!(ua[J[J[b>>2]+56>>2]](b)|0)|J[a+296>>2]<=0){break b}c=0;while(1){b=J[J[a+304>>2]+(c<<2)>>2];ua[J[J[b>>2]+12>>2]](b,J[a+72>>2]);c=c+1|0;if((c|0)<J[a+296>>2]){continue}break}}if(ua[J[J[a>>2]+20>>2]](a)|0){a=ua[J[J[a>>2]+20>>2]](a)|0;ua[J[J[a>>2]+104>>2]](a);}ua[J[8263]]();sa=d+16|0;}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=J[a+288>>2];a:{b:{if(c){c:{if(J[a+292>>2]!=(d|0)){break c}h=d?d<<1:1;if((h|0)<=(d|0)){break c}if(h){J[8456]=J[8456]+1;f=ua[J[8258]](h<<2,16)|0;d=J[a+288>>2];}d:{if((d|0)<=0){break d}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;J[e+f>>2]=J[e+J[a+296>>2]>>2];g=e|4;J[g+f>>2]=J[g+J[a+296>>2]>>2];g=e|8;J[g+f>>2]=J[g+J[a+296>>2]>>2];e=e|12;J[e+f>>2]=J[e+J[a+296>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break d}while(1){i=c<<2;J[i+f>>2]=J[i+J[a+296>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=J[a+296>>2];if(!(!c|!K[a+300|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}d=J[a+288>>2];}J[a+296>>2]=f;H[a+300|0]=1;J[a+292>>2]=h;}J[J[a+296>>2]+(d<<2)>>2]=b;d=d+1|0;break b}if((d|0)<=0){break a}f=J[a+296>>2];c=0;while(1){e=f+(c<<2)|0;if(J[e>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break a}break}if((c|0)>=(d|0)){break a}d=d-1|0;c=d<<2;J[e>>2]=J[c+f>>2];J[c+J[a+296>>2]>>2]=b;}J[a+288>>2]=d;}J[a+280>>2]=(d|0)>0;}function Le(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;b=J[a+36>>2];if(!(b?!b|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+36>>2]=0;H[a+40|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=0;H[a+60|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;if(J[a+12>>2]<=1){J[8456]=J[8456]+1;f=ua[J[8258]](24,16)|0;d=J[a+8>>2];a:{if((d|0)<=0){break a}b=0;if((d|0)!=1){i=d&-2;while(1){c=P(b,12);e=c+J[a+16>>2]|0;g=J[e+4>>2];c=c+f|0;J[c>>2]=J[e>>2];J[c+4>>2]=g;J[c+8>>2]=J[e+8>>2];c=P(b|1,12);e=c+J[a+16>>2]|0;g=J[e+4>>2];c=c+f|0;J[c>>2]=J[e>>2];J[c+4>>2]=g;J[c+8>>2]=J[e+8>>2];b=b+2|0;h=h+2|0;if((h|0)!=(i|0)){continue}break}}if(!(d&1)){break a}d=P(b,12);b=d+J[a+16>>2]|0;e=J[b+4>>2];d=d+f|0;J[d>>2]=J[b>>2];J[d+4>>2]=e;J[d+8>>2]=J[b+8>>2];}b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=f;H[a+20|0]=1;J[a+12>>2]=2;}Jc(a);}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=J[a+188>>2];j=J[b>>2];d=J[a+328>>2];a:{b:{if((d|0)<=0){break b}g=J[a+336>>2];while(1){if(J[g+(e<<2)>>2]!=(j|0)){e=e+1|0;if((e|0)!=(d|0)){continue}break b}break}if((d|0)!=(e|0)){break a}}m=c?c:f;c:{if(J[a+332>>2]!=(d|0)){break c}g=d?d<<1:1;if((g|0)<=(d|0)){break c}d:{if(!g){c=0;break d}J[8456]=J[8456]+1;c=ua[J[8258]](g<<2,16)|0;d=J[a+328>>2];}e:{if((d|0)<=0){break e}e=0;if(d>>>0>=4){i=d&-4;while(1){f=e<<2;J[f+c>>2]=J[f+J[a+336>>2]>>2];h=f|4;J[h+c>>2]=J[h+J[a+336>>2]>>2];h=f|8;J[h+c>>2]=J[h+J[a+336>>2]>>2];f=f|12;J[f+c>>2]=J[f+J[a+336>>2]>>2];e=e+4|0;k=k+4|0;if((i|0)!=(k|0)){continue}break}}f=d&3;if(!f){break e}while(1){i=e<<2;J[i+c>>2]=J[i+J[a+336>>2]>>2];e=e+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}e=J[a+336>>2];if(!(!e|!K[a+340|0])){if(e){J[8457]=J[8457]+1;ua[J[8259]](e);}d=J[a+328>>2];}J[a+336>>2]=c;H[a+340|0]=1;J[a+332>>2]=g;}J[J[a+336>>2]+(d<<2)>>2]=j;J[a+328>>2]=d+1;a=J[a+344>>2];ua[J[J[a>>2]+8>>2]](a,m,b)|0;}}function Cb(a){a=a|0;var b=0;J[a>>2]=24120;if(K[a+288|0]){b=J[a+220>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+220>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}b=J[a+212>>2];if(b){ua[J[J[b>>2]>>2]](b)|0;b=J[a+212>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}if(K[a+289|0]){b=J[a+216>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+216>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}b=J[a+332>>2];if(!(b?!b|!K[a+336|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+332>>2]=0;H[a+336|0]=1;J[a+324>>2]=0;J[a+328>>2]=0;b=J[a+304>>2];if(!(b?!b|!K[a+308|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+304>>2]=0;H[a+308|0]=1;J[a+296>>2]=0;J[a+300>>2]=0;b=J[a+256>>2];if(!(b?!b|!K[a+260|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+256>>2]=0;H[a+260|0]=1;J[a+248>>2]=0;J[a+252>>2]=0;b=J[a+236>>2];if(!(b?!b|!K[a+240|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+236>>2]=0;H[a+240|0]=1;J[a+228>>2]=0;J[a+232>>2]=0;b=J[a+204>>2];if(!(b?!b|!K[a+208|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+204>>2]=0;H[a+208|0]=1;J[a+196>>2]=0;J[a+200>>2]=0;return Wc(a)|0}function mb(a,b,c,d,e,f,g){var h=Q(0),i=Q(0),j=0,k=0,l=Q(0),m=Q(0),n=Q(0),o=0;J[d>>2]=2139095039;J[e>>2]=-8388609;o=J[a+8>>2];if((o|0)<=0){h=Q(-34028234663852886e22);}else {while(1){k=J[a+16>>2]+(j<<4)|0;h=N[k+8>>2];i=N[k>>2];l=N[k+4>>2];m=Q(Q(Q(h*N[b+40>>2])+Q(Q(i*N[b+32>>2])+Q(l*N[b+36>>2])))+N[b+56>>2]);n=Q(Q(Q(h*N[b+8>>2])+Q(Q(i*N[b>>2])+Q(l*N[b+4>>2])))+N[b+48>>2]);i=Q(Q(Q(h*N[b+24>>2])+Q(Q(i*N[b+16>>2])+Q(l*N[b+20>>2])))+N[b+52>>2]);h=Q(Q(m*N[c+8>>2])+Q(Q(n*N[c>>2])+Q(i*N[c+4>>2])));if(h<N[d>>2]){N[d>>2]=h;J[f+12>>2]=0;N[f+8>>2]=m;N[f+4>>2]=i;N[f>>2]=n;}if(h>N[e>>2]){N[e>>2]=h;J[g+12>>2]=0;N[g+8>>2]=m;N[g+4>>2]=i;N[g>>2]=n;}j=j+1|0;if((o|0)!=(j|0)){continue}break}h=N[e>>2];}i=N[d>>2];if(h<i){N[d>>2]=h;N[e>>2]=i;b=J[f+12>>2];a=sa-16|0;J[a+8>>2]=J[f+8>>2];J[a+12>>2]=b;b=J[f+4>>2];J[a>>2]=J[f>>2];J[a+4>>2]=b;b=J[g+12>>2];J[f+8>>2]=J[g+8>>2];J[f+12>>2]=b;b=J[g+4>>2];J[f>>2]=J[g>>2];J[f+4>>2]=b;b=J[a+12>>2];J[g+8>>2]=J[a+8>>2];J[g+12>>2]=b;b=J[a+4>>2];J[g>>2]=J[a>>2];J[g+4>>2]=b;}}function fe(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=sa-16|0;sa=h;while(1){m=c;g=J[a+12>>2]+((c+d|0)/2<<4)|0;n=J[g+8>>2];k=J[g+4>>2];l=J[g>>2];g=d;while(1){i=J[a+12>>2];while(1){a:{f=(c<<4)+i|0;e=J[f+4>>2];b:{if((e|0)<(k|0)){break b}if((e|0)!=(k|0)){break a}e=J[f>>2];if((e|0)<(l|0)){break b}if((e|0)!=(l|0)|J[f+8>>2]>=(n|0)){break a}}c=c+1|0;continue}break}while(1){c:{o=g<<4;e=o+i|0;j=J[e+4>>2];d:{if((j|0)>(k|0)){break d}if((k|0)!=(j|0)){break c}j=J[e>>2];if((j|0)>(l|0)){break d}if((l|0)!=(j|0)|J[e+8>>2]<=(n|0)){break c}}g=g-1|0;continue}break}if((c|0)<=(g|0)){i=J[f+12>>2];J[h+8>>2]=J[f+8>>2];J[h+12>>2]=i;i=J[f+4>>2];J[h>>2]=J[f>>2];J[h+4>>2]=i;i=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=i;i=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=i;e=J[h+4>>2];f=J[a+12>>2]+o|0;J[f>>2]=J[h>>2];J[f+4>>2]=e;e=J[h+12>>2];J[f+8>>2]=J[h+8>>2];J[f+12>>2]=e;g=g-1|0;c=c+1|0;}if((c|0)<=(g|0)){continue}break}if((g|0)>(m|0)){fe(a,b,m,g);}if((c|0)<(d|0)){continue}break}sa=h+16|0;}function vd(a,b,c){var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0);y=N[b+52>>2];z=N[b+56>>2];m=N[c+52>>2];n=N[c+56>>2];d=N[b+20>>2];e=N[b+24>>2];o=N[c+20>>2];p=N[c+36>>2];f=N[b+36>>2];q=N[c+24>>2];g=N[b+40>>2];r=N[c+40>>2];A=N[b+48>>2];s=N[c+48>>2];h=N[b+16>>2];t=N[c+4>>2];i=N[b+32>>2];u=N[c+8>>2];j=N[b+8>>2];v=N[c+32>>2];k=N[b>>2];w=N[c>>2];l=N[b+4>>2];x=N[c+16>>2];J[a+60>>2]=0;J[a+44>>2]=0;J[a+28>>2]=0;J[a+12>>2]=0;N[a>>2]=Q(v*j)+Q(Q(w*k)+Q(x*l));N[a+40>>2]=Q(r*g)+Q(Q(u*i)+Q(q*f));N[a+36>>2]=Q(p*g)+Q(Q(t*i)+Q(o*f));N[a+32>>2]=Q(v*g)+Q(Q(w*i)+Q(x*f));N[a+24>>2]=Q(r*e)+Q(Q(u*h)+Q(q*d));N[a+20>>2]=Q(p*e)+Q(Q(t*h)+Q(o*d));N[a+16>>2]=Q(v*e)+Q(Q(w*h)+Q(x*d));N[a+8>>2]=Q(r*j)+Q(Q(u*k)+Q(l*q));N[a+4>>2]=Q(p*j)+Q(Q(t*k)+Q(l*o));N[a+56>>2]=z+Q(Q(n*g)+Q(Q(s*i)+Q(f*m)));N[a+52>>2]=y+Q(Q(n*e)+Q(Q(s*h)+Q(d*m)));N[a+48>>2]=A+Q(Q(n*j)+Q(Q(s*k)+Q(l*m)));}function bc(a,b){var c=0,d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0);if(J[a>>2]==(b|0)){J[a>>2]=0;return 0}d=J[b+32>>2];c=J[(((J[d+40>>2]!=(b|0))<<2)+d|0)+36>>2];b=J[d+32>>2];a:{b:{if(b){J[((((d|0)==J[b+40>>2])<<2)+b|0)+36>>2]=c;J[c+32>>2]=b;c=J[a+4>>2];if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+4>>2]=d;while(1){q=N[b>>2];d=J[b+36>>2];e=N[d>>2];c=J[b+40>>2];k=N[c>>2];e=e<k?e:k;N[b>>2]=e;k=N[b+16>>2];f=N[d+16>>2];l=N[c+16>>2];f=f>l?f:l;N[b+16>>2]=f;l=N[b+4>>2];g=N[d+4>>2];m=N[c+4>>2];g=g<m?g:m;N[b+4>>2]=g;m=N[b+20>>2];h=N[d+20>>2];n=N[c+20>>2];h=h>n?h:n;N[b+20>>2]=h;n=N[b+8>>2];i=N[d+8>>2];o=N[c+8>>2];i=i<o?i:o;N[b+8>>2]=i;o=N[b+24>>2];j=N[d+24>>2];p=N[c+24>>2];j=j>p?j:p;N[b+24>>2]=j;c:{if(e!=q|l!=g|(n!=i|k!=f)){break c}if(m!=h){break c}if(o==j){break a}}b=J[b+32>>2];if(b){continue}break}break b}J[a>>2]=c;J[c+32>>2]=0;b=J[a+4>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+4>>2]=d;}b=J[a>>2];}return b}function Ad(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;while(1){n=c;m=J[J[a+12>>2]+((c+d|0)/2<<2)>>2];f=d;while(1){k=J[a+12>>2];j=J[J[m+836>>2]+208>>2];g=(j|0)<0;a:{if(!g){while(1){h=c;l=(c<<2)+k|0;i=J[l>>2];e=J[J[i+836>>2]+208>>2];if((e|0)<0){e=J[J[i+840>>2]+208>>2];}c=h+1|0;if((e|0)<(j|0)){continue}break a}}o=J[J[m+840>>2]+208>>2];while(1){h=c;l=(c<<2)+k|0;i=J[l>>2];e=J[J[i+836>>2]+208>>2];if((e|0)<0){e=J[J[i+840>>2]+208>>2];}c=h+1|0;if((e|0)<(o|0)){continue}break}}b:{if(!g){while(1){c=f;g=J[(c<<2)+k>>2];e=J[J[g+836>>2]+208>>2];if((e|0)<0){e=J[J[g+840>>2]+208>>2];}f=c-1|0;if((e|0)>(j|0)){continue}break b}}j=J[J[m+840>>2]+208>>2];while(1){c=f;g=J[(c<<2)+k>>2];e=J[J[g+836>>2]+208>>2];if((e|0)<0){e=J[J[g+840>>2]+208>>2];}f=c-1|0;if((e|0)>(j|0)){continue}break}}c:{if((c|0)<(h|0)){f=c;c=h;break c}J[l>>2]=g;J[J[a+12>>2]+(c<<2)>>2]=i;f=c-1|0;c=h+1|0;}if((c|0)<=(f|0)){continue}break}if((f|0)>(n|0)){Ad(a,b,n,f);}if((c|0)<(d|0)){continue}break}}function ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=J[a+32>>2];e=J[a+24>>2];a:{while(1){if((e|0)<=0){break a}e=e-1|0;if(J[(g+P(e,80)|0)+64>>2]!=(b|0)){continue}break}b=sa+-64|0;sa=b;f=J[c+4>>2];g=P(e,80);e=g+J[a+32>>2]|0;J[e>>2]=J[c>>2];J[e+4>>2]=f;f=J[c+12>>2];J[e+8>>2]=J[c+8>>2];J[e+12>>2]=f;f=J[c+28>>2];J[e+24>>2]=J[c+24>>2];J[e+28>>2]=f;f=J[c+20>>2];J[e+16>>2]=J[c+16>>2];J[e+20>>2]=f;f=J[c+44>>2];J[e+40>>2]=J[c+40>>2];J[e+44>>2]=f;f=J[c+36>>2];J[e+32>>2]=J[c+32>>2];J[e+36>>2]=f;f=J[c+60>>2];J[e+56>>2]=J[c+56>>2];J[e+60>>2]=f;f=J[c+52>>2];J[e+48>>2]=J[c+48>>2];J[e+52>>2]=f;if(J[a+72>>2]){e=J[(g+J[a+32>>2]|0)+64>>2];ua[J[J[e>>2]+8>>2]](e,c,b+48|0,b+32|0);c=J[b+60>>2];J[b+8>>2]=J[b+56>>2];J[b+12>>2]=c;c=J[b+44>>2];J[b+24>>2]=J[b+40>>2];J[b+28>>2]=c;c=J[b+36>>2];J[b+16>>2]=J[b+32>>2];J[b+20>>2]=c;c=J[b+52>>2];J[b>>2]=J[b+48>>2];J[b+4>>2]=c;_c(J[a+72>>2],J[(g+J[a+32>>2]|0)+76>>2],b);}if(d){ua[J[J[a>>2]+68>>2]](a);}sa=b- -64|0;}}function xd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;while(1){n=c;m=J[J[a+12>>2]+((c+d|0)/2<<2)>>2];f=d;while(1){k=J[a+12>>2];j=J[J[m+28>>2]+208>>2];g=(j|0)<0;a:{if(!g){while(1){h=c;l=(c<<2)+k|0;i=J[l>>2];e=J[J[i+28>>2]+208>>2];if((e|0)<0){e=J[J[i+32>>2]+208>>2];}c=h+1|0;if((e|0)<(j|0)){continue}break a}}o=J[J[m+32>>2]+208>>2];while(1){h=c;l=(c<<2)+k|0;i=J[l>>2];e=J[J[i+28>>2]+208>>2];if((e|0)<0){e=J[J[i+32>>2]+208>>2];}c=h+1|0;if((e|0)<(o|0)){continue}break}}b:{if(!g){while(1){c=f;g=J[(c<<2)+k>>2];e=J[J[g+28>>2]+208>>2];if((e|0)<0){e=J[J[g+32>>2]+208>>2];}f=c-1|0;if((e|0)>(j|0)){continue}break b}}j=J[J[m+32>>2]+208>>2];while(1){c=f;g=J[(c<<2)+k>>2];e=J[J[g+28>>2]+208>>2];if((e|0)<0){e=J[J[g+32>>2]+208>>2];}f=c-1|0;if((e|0)>(j|0)){continue}break}}c:{if((c|0)<(h|0)){f=c;c=h;break c}J[l>>2]=g;J[J[a+12>>2]+(c<<2)>>2]=i;f=c-1|0;c=h+1|0;}if((c|0)<=(f|0)){continue}break}if((f|0)>(n|0)){xd(a,b,n,f);}if((c|0)<(d|0)){continue}break}}function qh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!(K[b+204|0]&3|H[b+564|0]&1)){Db(b,a+264|0);}if(J[b+192>>2]){a:{if(!(H[b+204|0]&1)){c=J[a+248>>2];b:{if((c|0)!=J[a+252>>2]){break b}h=c?c<<1:1;if((h|0)<=(c|0)){break b}if(h){J[8456]=J[8456]+1;f=ua[J[8258]](h<<2,16)|0;c=J[a+248>>2];}c:{if((c|0)<=0){break c}if(c>>>0>=4){i=c&-4;while(1){d=e<<2;J[d+f>>2]=J[d+J[a+256>>2]>>2];g=d|4;J[g+f>>2]=J[g+J[a+256>>2]>>2];g=d|8;J[g+f>>2]=J[g+J[a+256>>2]>>2];d=d|12;J[d+f>>2]=J[d+J[a+256>>2]>>2];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=c&3;if(!d){break c}while(1){i=e<<2;J[i+f>>2]=J[i+J[a+256>>2]>>2];e=e+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}e=J[a+256>>2];if(!(!e|!K[a+260|0])){if(e){J[8457]=J[8457]+1;ua[J[8259]](e);}c=J[a+248>>2];}J[a+256>>2]=f;H[a+260|0]=1;J[a+252>>2]=h;}J[J[a+256>>2]+(c<<2)>>2]=b;J[a+248>>2]=c+1;break a}if((J[b+220>>2]&-2)!=4){J[b+220>>2]=2;}}c=b;b=J[b+204>>2]&3;ua[J[J[a>>2]+36>>2]](a,c,b?2:1,b?-3:-1);}}function ic(a){var b=0,c=Q(0),d=0,e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0),j=0,k=0;d=sa-16|0;sa=d;b=J[a+8>>2];a:{if(!b){J[8456]=J[8456]+1;b=te(ua[J[8258]](64,16)|0,N[a+152>>2],N[a+156>>2]);J[a+8>>2]=b;break a}e=N[a+156>>2];c=N[a+152>>2];N[b+52>>2]=c;J[b+48>>2]=0;N[b+44>>2]=c;N[b+36>>2]=c;J[b+28>>2]=1065353216;J[b+32>>2]=0;J[b+20>>2]=1065353216;J[b+24>>2]=1065353216;J[b+60>>2]=1;N[b+40>>2]=e*Q(.5);}f=J[a+4>>2];ua[J[J[f>>2]+8>>2]](f,b);e=Q(ua[J[J[a>>2]+20>>2]](a));c=N[a+152>>2];J[d+12>>2]=0;N[d+8>>2]=c;N[d+4>>2]=e;N[d>>2]=c;b=J[a+104>>2];b:{if(!b){J[8456]=J[8456]+1;j=a,k=Ic(ua[J[8258]](64,16)|0,d),J[j+104>>2]=k;break b}g=Q(ua[J[J[b>>2]+48>>2]](b));h=Q(ua[J[J[b>>2]+48>>2]](b));i=Q(ua[J[J[b>>2]+48>>2]](b));J[b+48>>2]=0;N[b+44>>2]=Q(c*N[b+28>>2])-i;N[b+40>>2]=Q(e*N[b+24>>2])-h;N[b+36>>2]=Q(c*N[b+20>>2])-g;a=c<e;c=Q(N[((c>(a?c:e)?!a:2)<<2)+d>>2]*Q(.10000000149011612));if(!(Q(ua[J[J[b>>2]+48>>2]](b))>c)){break b}ua[J[J[b>>2]+44>>2]](b,c);}sa=d+16|0;}function Dd(a,b){var c=0,d=0,e=0,f=0;a:{d=J[a+548>>2];if((d|0)<=0){break a}e=J[a+556>>2];while(1){if(J[e+(c<<2)>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break a}break}if((c|0)>=(d|0)){break a}c=0;b:{while(1){f=e+(c<<2)|0;if(J[f>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}if((c|0)>=(d|0)){break b}d=d-1|0;c=d<<2;J[f>>2]=J[c+e>>2];J[c+J[a+556>>2]>>2]=b;J[a+548>>2]=d;}d=J[b+32>>2];e=J[b+28>>2];c:{if((e|0)==(a|0)){b=J[a+288>>2];if((b|0)<=0){break c}e=J[a+296>>2];c=0;while(1){f=e+(c<<2)|0;if((d|0)!=J[f>>2]){c=c+1|0;if((c|0)!=(b|0)){continue}break c}break}if((b|0)<=(c|0)){break c}b=b-1|0;c=b<<2;J[f>>2]=J[c+e>>2];J[c+J[a+296>>2]>>2]=d;J[a+288>>2]=b;break c}b=J[d+288>>2];d:{if((b|0)<=0){break d}a=J[d+296>>2];c=0;while(1){f=a+(c<<2)|0;if((e|0)!=J[f>>2]){c=c+1|0;if((c|0)!=(b|0)){continue}break d}break}if((b|0)<=(c|0)){break d}c=a;b=b-1|0;a=b<<2;J[f>>2]=J[c+a>>2];J[a+J[d+296>>2]>>2]=e;J[d+288>>2]=b;}a=d;}J[a+280>>2]=(b|0)>0;}}function Ig(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=J[b>>2];c=J[a+328>>2];a:{b:{if((c|0)<=0){break b}e=J[a+336>>2];b=0;while(1){if(J[e+(b<<2)>>2]!=(i|0)){b=b+1|0;if((c|0)!=(b|0)){continue}break b}break}if((b|0)!=(c|0)){break a}}c:{if(J[a+332>>2]!=(c|0)){break c}g=c?c<<1:1;if((g|0)<=(c|0)){break c}d:{if(!g){e=0;break d}J[8456]=J[8456]+1;e=ua[J[8258]](g<<2,16)|0;c=J[a+328>>2];}e:{if((c|0)<=0){break e}b=0;if(c>>>0>=4){h=c&-4;while(1){d=b<<2;J[d+e>>2]=J[d+J[a+336>>2]>>2];f=d|4;J[f+e>>2]=J[f+J[a+336>>2]>>2];f=d|8;J[f+e>>2]=J[f+J[a+336>>2]>>2];d=d|12;J[d+e>>2]=J[d+J[a+336>>2]>>2];b=b+4|0;j=j+4|0;if((h|0)!=(j|0)){continue}break}}d=c&3;if(!d){break e}while(1){h=b<<2;J[h+e>>2]=J[h+J[a+336>>2]>>2];b=b+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}b=J[a+336>>2];if(!(!b|!K[a+340|0])){if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}c=J[a+328>>2];}J[a+336>>2]=e;H[a+340|0]=1;J[a+332>>2]=g;}J[J[a+336>>2]+(c<<2)>>2]=i;J[a+328>>2]=c+1;}}function be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0);e=Q(ua[J[J[a>>2]+48>>2]](a));y=N[b+52>>2];i=N[b+24>>2];j=N[b+20>>2];k=N[b+56>>2];g=N[b+40>>2];h=N[a+72>>2];f=N[a+88>>2];l=N[b+36>>2];p=N[a+68>>2];q=N[a+84>>2];z=N[b+48>>2];r=N[b+8>>2];s=N[b>>2];t=N[b+4>>2];u=N[b+16>>2];v=N[b+32>>2];w=N[a+64>>2];x=N[a+80>>2];J[c+12>>2]=0;m=k;k=Q(Q(f+h)*Q(.5));n=Q(Q(x+w)*Q(.5));o=Q(Q(q+p)*Q(.5));m=Q(m+Q(Q(g*k)+Q(Q(v*n)+Q(l*o))));h=Q(e+Q(Q(f-h)*Q(.5)));f=Q(h*Q(R(g)));g=Q(e+Q(Q(x-w)*Q(.5)));e=Q(e+Q(Q(q-p)*Q(.5)));f=Q(f+Q(Q(g*Q(R(v)))+Q(e*Q(R(l)))));N[c+8>>2]=m-f;l=Q(y+Q(Q(k*i)+Q(Q(n*u)+Q(o*j))));i=Q(Q(h*Q(R(i)))+Q(Q(g*Q(R(u)))+Q(e*Q(R(j)))));N[c+4>>2]=l-i;j=Q(z+Q(Q(k*r)+Q(Q(n*s)+Q(o*t))));e=Q(Q(h*Q(R(r)))+Q(Q(g*Q(R(s)))+Q(e*Q(R(t)))));N[c>>2]=j-e;J[d+12>>2]=0;N[d+8>>2]=f+m;N[d+4>>2]=i+l;N[d>>2]=e+j;}function Fr(){var a=0,b=0,c=0,d=0,e=0;b=sa-16|0;sa=b;if(!K[35720]){J[b+8>>2]=0;J[b+12>>2]=0;J[b>>2]=0;J[b+4>>2]=0;a=sa-144|0;sa=a;c=Wb(35044);J[c>>2]=23996;H[c+560|0]=1;J[c+556>>2]=0;J[c+548>>2]=0;J[c+552>>2]=0;J[a+72>>2]=0;J[a+4>>2]=0;N[a>>2]=0;d=J[b+12>>2];J[a+84>>2]=J[b+8>>2];J[a+88>>2]=d;e=J[b>>2];d=J[b+4>>2];J[a+20>>2]=0;J[a+24>>2]=0;J[a+12>>2]=0;J[a+16>>2]=0;J[a+28>>2]=1065353216;J[a+40>>2]=0;J[a+44>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;J[a+48>>2]=1065353216;J[a+52>>2]=0;J[a+56>>2]=0;J[a+60>>2]=0;J[a+64>>2]=0;J[a+68>>2]=0;J[a+76>>2]=e;J[a+80>>2]=d;J[a+136>>2]=1008981770;J[a+140>>2]=1008981770;J[a+128>>2]=1000593162;J[a+132>>2]=1008981770;H[a+124|0]=0;J[a+116>>2]=1061997773;J[a+120>>2]=1065353216;J[a+108>>2]=0;J[a+112>>2]=0;J[a+100>>2]=1056964608;J[a+104>>2]=0;J[a+92>>2]=0;J[a+96>>2]=0;J[a+8>>2]=1065353216;Hd(c,a);sa=a+144|0;H[35720]=1;}J[b+8>>2]=0;J[b+12>>2]=0;J[b>>2]=0;J[b+4>>2]=0;lc(35044,Q(0),b);sa=b+16|0;return 35044}function ph(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!(K[b+204|0]&3|H[b+564|0]&1)){Db(b,a+264|0);}if(J[b+192>>2]){a:{if(!(H[b+204|0]&1)){e=J[a+248>>2];b:{if((e|0)!=J[a+252>>2]){break b}j=e?e<<1:1;if((j|0)<=(e|0)){break b}if(j){J[8456]=J[8456]+1;h=ua[J[8258]](j<<2,16)|0;e=J[a+248>>2];}c:{if((e|0)<=0){break c}if(e>>>0>=4){k=e&-4;while(1){f=g<<2;J[f+h>>2]=J[f+J[a+256>>2]>>2];i=f|4;J[i+h>>2]=J[i+J[a+256>>2]>>2];i=f|8;J[i+h>>2]=J[i+J[a+256>>2]>>2];f=f|12;J[f+h>>2]=J[f+J[a+256>>2]>>2];g=g+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}f=e&3;if(!f){break c}while(1){k=g<<2;J[k+h>>2]=J[k+J[a+256>>2]>>2];g=g+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}g=J[a+256>>2];if(!(!g|!K[a+260|0])){if(g){J[8457]=J[8457]+1;ua[J[8259]](g);}e=J[a+248>>2];}J[a+256>>2]=h;H[a+260|0]=1;J[a+252>>2]=j;}J[J[a+256>>2]+(e<<2)>>2]=b;J[a+248>>2]=e+1;break a}if((J[b+220>>2]&-2)!=4){J[b+220>>2]=2;}}ua[J[J[a>>2]+36>>2]](a,b,c,d);}}function zh(a){a=a|0;var b=0,c=0,d=Q(0),e=0,f=0,g=0,h=0;f=sa+-64|0;sa=f;a:{if(K[a+290|0]){c=J[a+8>>2];if((c|0)<=0){break a}while(1){b=J[J[a+16>>2]+(e<<2)>>2];if(!(!b|!(J[b+252>>2]&2)|(!J[b+540>>2]|K[b+204|0]&3))){c=b+68|0;g=b+132|0;h=b+148|0;b:{c:{if(!K[a+316|0]){break c}d=N[a+284>>2];if(d==Q(0)){break c}d=Q(N[a+280>>2]-d);break b}d=Q(N[a+280>>2]*N[b+268>>2]);}kb(c,g,h,d,f);b=J[b+540>>2];ua[J[J[b>>2]+12>>2]](b,f);c=J[a+8>>2];}e=e+1|0;if((c|0)>(e|0)){continue}break}break a}c=J[a+248>>2];if((c|0)<=0){break a}while(1){d:{e:{b=J[J[a+256>>2]+(e<<2)>>2];switch(J[b+220>>2]-2|0){case 0:case 3:break d;default:break e}}if(!J[b+540>>2]|K[b+204|0]&3){break d}c=b+68|0;g=b+132|0;h=b+148|0;f:{g:{if(!K[a+316|0]){break g}d=N[a+284>>2];if(d==Q(0)){break g}d=Q(N[a+280>>2]-d);break f}d=Q(N[a+280>>2]*N[b+268>>2]);}kb(c,g,h,d,f);b=J[b+540>>2];ua[J[J[b>>2]+12>>2]](b,f);c=J[a+248>>2];}e=e+1|0;if((c|0)>(e|0)){continue}break}}sa=f- -64|0;}function Dq(a,b){a=Q(a);b=b|0;var c=0;c=sa-144|0;sa=c;if(!K[33688]){J[8415]=0;J[8416]=0;J[8413]=35;J[8414]=0;J[8417]=0;J[8412]=20152;J[8413]=27;J[8412]=20260;H[33688]=1;}J[c+88>>2]=0;J[c+92>>2]=0;J[c+12>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+24>>2]=0;N[c>>2]=a;a=a==Q(0)?Q(0):Q(1.6666666269302368);N[c+84>>2]=a;N[c+80>>2]=a;J[c+136>>2]=1008981770;J[c+140>>2]=1008981770;J[c+128>>2]=1000593162;J[c+132>>2]=1008981770;H[c+124|0]=0;J[c+120>>2]=1065353216;J[c+112>>2]=0;J[c+116>>2]=1061997773;J[c+104>>2]=0;J[c+108>>2]=0;J[c+96>>2]=0;J[c+100>>2]=1056964608;J[c+4>>2]=b;J[c+8>>2]=1065353216;J[c+72>>2]=33648;N[c+76>>2]=a;J[c+32>>2]=0;J[c+36>>2]=0;J[c+28>>2]=1065353216;J[c+40>>2]=0;J[c+44>>2]=0;J[c+48>>2]=1065353216;J[c+52>>2]=0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+64>>2]=0;J[c+68>>2]=0;J[8456]=J[8456]+1;b=Wb(ua[J[8258]](676,16)|0);J[b>>2]=23996;H[b+560|0]=1;J[b+556>>2]=0;J[b+548>>2]=0;J[b+552>>2]=0;Hd(b,c);sa=c+144|0;return b|0}function co(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;h=sa-48|0;sa=h;J[8456]=J[8456]+1;d=ua[J[8258]](64,16)|0;J[d+8>>2]=g;J[d+4>>2]=f;J[d>>2]=e;e=J[b+4>>2];J[d+16>>2]=J[b>>2];J[d+20>>2]=e;e=J[b+12>>2];J[d+24>>2]=J[b+8>>2];J[d+28>>2]=e;e=J[c+4>>2];J[d+32>>2]=J[c>>2];J[d+36>>2]=e;e=J[c+12>>2];J[d+40>>2]=J[c+8>>2];J[d+44>>2]=e;J[d+52>>2]=0;J[d+56>>2]=0;e=J[b+12>>2];J[h+24>>2]=J[b+8>>2];J[h+28>>2]=e;e=J[b+4>>2];J[h+16>>2]=J[b>>2];J[h+20>>2]=e;b=J[c+12>>2];J[h+40>>2]=J[c+8>>2];J[h+44>>2]=b;b=J[c+4>>2];J[h+32>>2]=J[c>>2];J[h+36>>2]=b;J[d+60>>2]=J[a+104>>2];b=J[a+148>>2]+1|0;J[a+148>>2]=b;J[d+12>>2]=b;i=d,j=$b(a+4|0,h+16|0,d),J[i+48>>2]=j;b=J[a+104>>2];J[d+52>>2]=0;b=(b<<2)+a|0;J[d+56>>2]=J[b+84>>2];c=J[b+84>>2];if(c){J[c+52>>2]=d;}J[b+84>>2]=d;if(!K[a+153|0]){J[h+12>>2]=d;J[h+4>>2]=12044;J[h+8>>2]=a;b=h+16|0;c=h+4|0;xb(J[a+4>>2],b,c);xb(J[a+44>>2],b,c);}sa=h+48|0;return d|0}function uc(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(K[d+55|0]==(b|0)){break a}g=e<<2;h=J[g+22644>>2];b:{if(Q(Q(Q(N[d+8>>2]*N[c+24>>2])+Q(Q(N[d>>2]*N[c+16>>2])+Q(N[d+4>>2]*N[c+20>>2])))-N[d+16>>2])<Q(-9999999747378752e-21)){b=a;a=d+20|0;a=rb(b,J[a+(h<<2)>>2],J[a+g>>2],c,0);if(!a){break a}J[a+32>>2]=d;H[a+52|0]=e;H[(d+e|0)+52|0]=0;J[((e<<2)+d|0)+32>>2]=a;b=J[f>>2];c:{if(b){J[b+36>>2]=a;H[b+53|0]=2;J[a+40>>2]=b;H[a+54|0]=1;break c}J[f+4>>2]=a;}J[f>>2]=a;a=f+8|0;break b}H[d+55|0]=b;e=J[g+22656>>2];if(!uc(a,b,c,J[((h<<2)+d|0)+32>>2],K[(d+h|0)+52|0],f)){break a}if(!uc(a,b,c,J[((e<<2)+d|0)+32>>2],K[(d+e|0)+52|0],f)){break a}b=J[d+48>>2];if(b){J[b+44>>2]=J[d+44>>2];}b=J[d+44>>2];if(b){J[b+48>>2]=J[d+48>>2];}if(J[a+18496>>2]==(d|0)){J[a+18496>>2]=J[d+48>>2];}b=a+18500|0;J[b>>2]=J[b>>2]-1;J[d+44>>2]=0;J[d+48>>2]=J[a+18504>>2];b=J[a+18504>>2];if(b){J[b+44>>2]=d;}J[a+18504>>2]=d;a=a+18508|0;}i=1;J[a>>2]=J[a>>2]+1;}return i}function Yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0),v=Q(0),w=Q(0),x=Q(0),y=Q(0),z=Q(0),A=Q(0),B=Q(0);k=N[b+56>>2];n=N[b+36>>2];o=N[b+40>>2];l=N[b+52>>2];h=N[b+20>>2];f=N[a+120>>2];i=N[a+28>>2];p=N[a+44>>2];g=N[b+24>>2];e=N[a+124>>2];j=N[a+32>>2];q=N[a+48>>2];r=N[b+32>>2];m=N[b+48>>2];s=N[b>>2];t=N[b+4>>2];u=N[b+8>>2];v=N[b+16>>2];w=N[a+116>>2];x=N[a+24>>2];y=N[a+40>>2];z=Q(ua[J[J[a>>2]+48>>2]](a));A=Q(ua[J[J[a>>2]+48>>2]](a));B=Q(ua[J[J[a>>2]+48>>2]](a));J[c+12>>2]=0;e=Q(Q(e*Q(q-j))*Q(.5));j=Q(e*Q(R(g)));g=Q(Q(w*Q(y-x))*Q(.5));f=Q(Q(f*Q(p-i))*Q(.5));h=Q(A+Q(j+Q(Q(g*Q(R(v)))+Q(f*Q(R(h))))));N[c+4>>2]=l-h;i=Q(z+Q(Q(e*Q(R(u)))+Q(Q(g*Q(R(s)))+Q(f*Q(R(t))))));N[c>>2]=m-i;e=Q(B+Q(Q(e*Q(R(o)))+Q(Q(g*Q(R(r)))+Q(f*Q(R(n))))));N[c+8>>2]=k-e;J[d+12>>2]=0;N[d+8>>2]=k+e;N[d+4>>2]=l+h;N[d>>2]=m+i;}function Oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0);d=sa-144|0;sa=d;J[d+72>>2]=0;J[d+76>>2]=0;f=d- -64|0;J[f>>2]=0;J[f+4>>2]=0;J[d+108>>2]=0;J[d+112>>2]=0;J[d+116>>2]=0;J[d+120>>2]=0;J[d+52>>2]=0;J[d+56>>2]=0;J[d+84>>2]=0;J[d+88>>2]=0;J[d+80>>2]=1065353216;J[d+92>>2]=0;J[d+96>>2]=0;J[d+100>>2]=1065353216;J[d+104>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;J[d+60>>2]=1065353216;J[d+124>>2]=-581039253;J[d+40>>2]=22396;e=N[c+8>>2];g=N[c>>2];h=N[c+4>>2];J[d+140>>2]=0;i=Q(h*Q(0));N[d+136>>2]=e+Q(Q(g*N[d+68>>2])+i);e=Q(e*Q(0));N[d+132>>2]=e+Q(h+Q(g*N[f>>2]));N[d+128>>2]=e+Q(g+i);J[d+32>>2]=1566444395;J[d+36>>2]=0;J[d+24>>2]=1566444395;J[d+28>>2]=1566444395;J[d+16>>2]=-581039253;J[d+20>>2]=0;J[d+8>>2]=-581039253;J[d+12>>2]=-581039253;ua[J[J[b>>2]+64>>2]](b,d+40|0,d+8|0,d+24|0);b=J[d+56>>2];J[a+8>>2]=J[d+52>>2];J[a+12>>2]=b;b=J[d+48>>2];J[a>>2]=J[d+44>>2];J[a+4>>2]=b;sa=d+144|0;}function Uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J[b+4>>2];J[a+48>>2]=J[b>>2];J[a+52>>2]=d;d=J[b+12>>2];J[a+56>>2]=J[b+8>>2];J[a+60>>2]=d;d=J[b+28>>2];J[a+72>>2]=J[b+24>>2];J[a+76>>2]=d;e=J[b+20>>2];d=a- -64|0;J[d>>2]=J[b+16>>2];J[d+4>>2]=e;d=J[b+44>>2];J[a+88>>2]=J[b+40>>2];J[a+92>>2]=d;d=J[b+36>>2];J[a+80>>2]=J[b+32>>2];J[a+84>>2]=d;d=J[b+60>>2];J[a+104>>2]=J[b+56>>2];J[a+108>>2]=d;d=J[b+52>>2];J[a+96>>2]=J[b+48>>2];J[a+100>>2]=d;b=J[c+12>>2];J[a+120>>2]=J[c+8>>2];J[a+124>>2]=b;b=J[c+4>>2];J[a+112>>2]=J[c>>2];J[a+116>>2]=b;b=J[c+20>>2];J[a+128>>2]=J[c+16>>2];J[a+132>>2]=b;b=J[c+28>>2];J[a+136>>2]=J[c+24>>2];J[a+140>>2]=b;b=J[c+36>>2];J[a+144>>2]=J[c+32>>2];J[a+148>>2]=b;b=J[c+44>>2];J[a+152>>2]=J[c+40>>2];J[a+156>>2]=b;b=J[c+60>>2];J[a+168>>2]=J[c+56>>2];J[a+172>>2]=b;b=J[c+52>>2];J[a+160>>2]=J[c+48>>2];J[a+164>>2]=b;ua[J[J[a>>2]+8>>2]](a);qc(a,J[a+28>>2]+4|0,J[a+32>>2]+4|0);}function jb(a,b,c,d,e,f,g,h){var i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0),o=Q(0),p=0,q=Q(0),r=Q(0),s=0,t=0,u=0,v=0,w=Q(0),x=Q(0),y=0;p=J[(g?20:16)+d>>2];l=J[(g?12:8)+d>>2];s=e<<2;N[l+s>>2]=N[f>>2];t=e+1|0;u=t<<2;N[u+l>>2]=N[f+4>>2];y=l;l=e+2|0;v=l<<2;N[y+v>>2]=N[f+8>>2];N[p+s>>2]=-N[f>>2];N[p+u>>2]=-N[f+4>>2];N[p+v>>2]=-N[f+8>>2];if(!g){m=Q(N[a+1352>>2]-N[c+52>>2]);j=N[f+8>>2];k=N[f+4>>2];n=Q(N[a+1356>>2]-N[c+56>>2]);q=Q(Q(m*j)-Q(k*n));w=Q(N[a+1288>>2]-N[b+52>>2]);x=Q(N[a+1292>>2]-N[b+56>>2]);r=Q(Q(w*j)-Q(k*x));o=Q(N[a+1348>>2]-N[c+48>>2]);i=N[f>>2];m=Q(Q(o*k)-Q(i*m));n=Q(Q(n*i)-Q(j*o));o=Q(N[a+1284>>2]-N[b+48>>2]);k=Q(Q(o*k)-Q(i*w));j=Q(Q(x*i)-Q(j*o));if(!(!K[a+1452|0]|h)){i=N[a+1448>>2];m=Q(i*m);n=Q(i*n);q=Q(q*i);i=N[a+1444>>2];k=Q(i*k);r=Q(r*i);j=Q(i*j);}b=e<<2;a=b+J[d+12>>2]|0;N[a+8>>2]=k;N[a+4>>2]=j;N[a>>2]=r;a=J[d+20>>2];N[a+b>>2]=-q;N[a+(t<<2)>>2]=-n;N[a+(l<<2)>>2]=-m;}}function Ia(a,b){var c=0,d=0,e=0,f=Q(0),g=0;if(!(((B(a),v(2))&2147483647)>>>0<2139095041&((B(b),v(2))&2147483647)>>>0<=2139095040)){return Q(a+b)}c=(B(b),v(2));if((c|0)==1065353216){return od(a)}g=c>>>30&2;d=(B(a),v(2));e=g|d>>>31;a:{b:{d=d&2147483647;c:{if(!d){d:{switch(e-2|0){case 0:return Q(3.1415927410125732);case 1:break d;default:break c}}return Q(-3.1415927410125732)}c=c&2147483647;if((c|0)!=2139095040){if(!c|!((d|0)!=2139095040&d>>>0<=c+218103808>>>0)){break a}e:{if(g){f=Q(0);if(c>>>0>d+218103808>>>0){break e}}f=od(Q(R(Q(a/b))));}a=f;f:{switch(e|0){case 1:return Q(-a);case 2:return Q(Q(3.1415927410125732)-Q(a+Q(8.742277657347586e-8)));case 0:break c;default:break f}}return Q(Q(a+Q(8.742277657347586e-8))+Q(-3.1415927410125732))}if((d|0)==2139095040){break b}a=N[(e<<2)+26368>>2];}return a}return N[(e<<2)+26352>>2]}return x(2,(B(a),v(2))&-2147483648|1070141403),C()}function xh(a,b,c,d){a=a|0;b=Q(b);c=c|0;d=Q(d);var e=0,f=0,g=0,h=Q(0),i=0,j=0;a:{if(c){N[a+284>>2]=d;b=Q(N[a+280>>2]+b);N[a+280>>2]=b;if(!(b>=d)){break a}h=b;b=Q(b/d);b:{if(Q(R(b))<Q(2147483648)){e=~~b;break b}e=-2147483648;}N[a+280>>2]=h-Q(Q(e|0)*d);break a}J[a+284>>2]=0;N[a+280>>2]=K[a+316|0]?Q(0):b;d=b;e=!(Q(R(b))<Q(1.1920928955078125e-7));c=e;}if(ua[J[J[a>>2]+20>>2]](a)|0){g=ua[J[J[a>>2]+20>>2]](a)|0;i=35721,j=ua[J[J[g>>2]+56>>2]](g)>>>4&1,H[i|0]=j;}c:{if(e){f=(c|0)>(e|0)?e:c;ua[J[J[a>>2]+168>>2]](a,Q(d*Q(f|0)));ua[J[J[a>>2]+176>>2]](a);if((f|0)<=0){break c}if((f|0)!=1){g=f&-2;c=0;while(1){ua[J[J[a>>2]+160>>2]](a,d);ua[J[J[a>>2]+80>>2]](a);ua[J[J[a>>2]+160>>2]](a,d);ua[J[J[a>>2]+80>>2]](a);c=c+2|0;if((g|0)!=(c|0)){continue}break}}if(!(f&1)){break c}ua[J[J[a>>2]+160>>2]](a,d);ua[J[J[a>>2]+80>>2]](a);break c}ua[J[J[a>>2]+80>>2]](a);}ua[J[J[a>>2]+120>>2]](a);return e|0}function eq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=0,h=Q(0),i=0,j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0);d=J[b>>2];g=J[d+192>>2];a:{if(J[g+4>>2]!=31){break a}i=J[b+4>>2];if(!i){break a}g=J[(J[g+32>>2]+P(J[i>>2],80)|0)+64>>2];}J[a+84>>2]=J[g+8>>2];e=N[b+24>>2];J[a+8>>2]=d;N[a+4>>2]=e;b:{if(c){c=J[b+12>>2];J[a+52>>2]=J[b+8>>2];J[a+56>>2]=c;c=J[b+20>>2];J[a+60>>2]=J[b+16>>2];J[a+64>>2]=c;break b}j=N[d+8>>2];k=N[d+12>>2];l=N[d+20>>2];m=N[d+24>>2];n=N[d+28>>2];o=N[d+36>>2];p=N[d+40>>2];e=N[b+12>>2];q=N[d+44>>2];f=N[b+16>>2];r=N[d+4>>2];h=N[b+8>>2];J[a- -64>>2]=0;N[a+60>>2]=Q(q*f)+Q(Q(o*h)+Q(e*p));N[a+56>>2]=Q(n*f)+Q(Q(l*h)+Q(e*m));N[a+52>>2]=Q(k*f)+Q(Q(r*h)+Q(j*e));}e=N[b+24>>2];f=Q(Q(1)-e);N[a+68>>2]=Q(f*N[a+20>>2])+Q(e*N[a+36>>2]);N[a+72>>2]=Q(f*N[a+24>>2])+Q(e*N[a+40>>2]);N[a+76>>2]=Q(f*N[a+28>>2])+Q(e*N[a+44>>2]);return Q(N[b+24>>2])}function yk(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=0,k=0;e=Q(N[b+68>>2]*Q(.5));j=J[b+72>>2];k=J[b+76>>2];g=k<<2;d=N[c+8>>2];i=Q(d*d);d=N[c>>2];f=Q(d*d);d=N[c+4>>2];a:{b:{if(N[g+c>>2]>Q(N[b+60>>2]*Q(Y(Q(i+Q(f+Q(d*d))))))){J[(j<<2)+a>>2]=0;N[a+g>>2]=e;g=J[b+80>>2];break b}d=N[(j<<2)+c>>2];g=J[b+80>>2];f=N[(g<<2)+c>>2];h=Q(Y(Q(Q(d*d)+Q(f*f))));if(h>Q(1.1920928955078125e-7)){i=d;d=Q(N[b+64>>2]/h);N[(j<<2)+a>>2]=i*d;N[(k<<2)+a>>2]=-e;e=Q(f*d);break a}J[(j<<2)+a>>2]=0;N[(k<<2)+a>>2]=-e;}e=Q(0);}N[(g<<2)+a>>2]=e;if(Q(ua[J[J[b>>2]+48>>2]](b))!=Q(0)){e=N[c+4>>2];d=N[c>>2];f=N[c+8>>2];h=Q(ua[J[J[b>>2]+48>>2]](b));b=Q(Q(f*f)+Q(Q(d*d)+Q(e*e)))<Q(14210854715202004e-30);d=b?Q(-1):d;i=d;f=b?Q(-1):f;e=b?Q(-1):e;d=Q(Q(1)/Q(Y(Q(Q(f*f)+Q(Q(d*d)+Q(e*e))))));N[a>>2]=N[a>>2]+Q(h*Q(i*d));N[a+4>>2]=N[a+4>>2]+Q(h*Q(e*d));N[a+8>>2]=N[a+8>>2]+Q(h*Q(f*d));}}function Vg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0);e=Q(1);d=J[b>>2];if(!((d|0)==J[a+84>>2]|K[d+204|0]&4|Q(-N[a+88>>2])<=Q(Q(N[b+16>>2]*Q(N[a+44>>2]-N[a+28>>2]))+Q(Q(N[b+8>>2]*Q(N[a+36>>2]-N[a+20>>2]))+Q(Q(N[a+40>>2]-N[a+24>>2])*N[b+12>>2]))))){e=N[b+40>>2];J[a+16>>2]=d;N[a+4>>2]=e;a:{if(c){c=b+8|0;d=J[c+4>>2];J[a+52>>2]=J[c>>2];J[a+56>>2]=d;d=J[c+12>>2];J[a+60>>2]=J[c+8>>2];J[a+64>>2]=d;break a}h=N[d+12>>2];i=N[d+8>>2];j=N[d+28>>2];k=N[d+20>>2];l=N[d+24>>2];m=N[d+44>>2];n=N[d+36>>2];o=N[d+40>>2];p=N[d+4>>2];e=N[b+16>>2];f=N[b+8>>2];g=N[b+12>>2];J[a- -64>>2]=0;N[a+60>>2]=Q(m*e)+Q(Q(n*f)+Q(g*o));N[a+56>>2]=Q(j*e)+Q(Q(k*f)+Q(g*l));N[a+52>>2]=Q(h*e)+Q(Q(p*f)+Q(i*g));}c=J[b+28>>2];J[a+68>>2]=J[b+24>>2];J[a+72>>2]=c;c=J[b+36>>2];J[a+76>>2]=J[b+32>>2];J[a+80>>2]=c;e=N[b+40>>2];}return Q(e)}function Br(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=J[b+4>>2];J[a+552>>2]=J[b>>2];J[a+556>>2]=d;d=J[b+12>>2];J[a+560>>2]=J[b+8>>2];J[a+564>>2]=d;d=J[b+28>>2];J[a+576>>2]=J[b+24>>2];J[a+580>>2]=d;d=J[b+20>>2];J[a+568>>2]=J[b+16>>2];J[a+572>>2]=d;d=J[b+44>>2];J[a+592>>2]=J[b+40>>2];J[a+596>>2]=d;d=J[b+36>>2];J[a+584>>2]=J[b+32>>2];J[a+588>>2]=d;d=J[b+60>>2];J[a+608>>2]=J[b+56>>2];J[a+612>>2]=d;d=J[b+52>>2];J[a+600>>2]=J[b+48>>2];J[a+604>>2]=d;b=J[c+12>>2];J[a+624>>2]=J[c+8>>2];J[a+628>>2]=b;b=J[c+4>>2];J[a+616>>2]=J[c>>2];J[a+620>>2]=b;b=J[c+20>>2];J[a+632>>2]=J[c+16>>2];J[a+636>>2]=b;b=J[c+28>>2];J[a+640>>2]=J[c+24>>2];J[a+644>>2]=b;b=J[c+36>>2];J[a+648>>2]=J[c+32>>2];J[a+652>>2]=b;b=J[c+44>>2];J[a+656>>2]=J[c+40>>2];J[a+660>>2]=b;b=J[c+60>>2];J[a+672>>2]=J[c+56>>2];J[a+676>>2]=b;b=J[c+52>>2];J[a+664>>2]=J[c+48>>2];J[a+668>>2]=b;ua[J[J[a>>2]+8>>2]](a);}function nq(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0);g=N[a+404>>2];if(g!=Q(0)){e=N[b+8>>2];d=N[b+4>>2];h=N[a+408>>2];N[a+372>>2]=Q(g*Q(N[b>>2]*h))+N[a+372>>2];f=d;d=N[a+412>>2];N[a+376>>2]=Q(g*Q(f*d))+N[a+376>>2];f=e;e=N[a+416>>2];N[a+380>>2]=Q(g*Q(f*e))+N[a+380>>2];j=N[a+612>>2];k=N[a+364>>2];l=N[a+356>>2];m=N[a+360>>2];n=N[a+608>>2];o=N[a+348>>2];p=N[a+340>>2];q=N[a+344>>2];i=N[c>>2];d=Q(d*N[b+4>>2]);h=Q(h*N[b>>2]);f=N[c+4>>2];g=Q(Q(i*d)-Q(h*f));r=f;f=Q(e*N[b+8>>2]);e=d;d=N[c+8>>2];e=Q(Q(r*f)-Q(e*d));d=Q(Q(d*h)-Q(f*i));N[a+388>>2]=Q(Q(Q(N[a+332>>2]*g)+Q(Q(N[a+324>>2]*e)+Q(N[a+328>>2]*d)))*N[a+604>>2])+N[a+388>>2];N[a+392>>2]=Q(n*Q(Q(o*g)+Q(Q(p*e)+Q(d*q))))+N[a+392>>2];N[a+396>>2]=Q(j*Q(Q(k*g)+Q(Q(l*e)+Q(d*m))))+N[a+396>>2];}}function Lb(a){J[a>>2]=1025;J[a+120>>2]=0;J[a+124>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+144>>2]=0;J[a+148>>2]=0;J[a+152>>2]=0;J[a+156>>2]=0;J[a+160>>2]=0;J[a+164>>2]=0;J[a+168>>2]=0;J[a+328>>2]=0;J[a+332>>2]=0;J[a+336>>2]=0;J[a+340>>2]=0;J[a+344>>2]=0;J[a+348>>2]=0;J[a+352>>2]=0;J[a+356>>2]=0;J[a+360>>2]=0;J[a+364>>2]=0;J[a+368>>2]=0;J[a+372>>2]=0;J[a+376>>2]=0;J[a+536>>2]=0;J[a+540>>2]=0;J[a+544>>2]=0;J[a+548>>2]=0;J[a+552>>2]=0;J[a+556>>2]=0;J[a+560>>2]=0;J[a+564>>2]=0;J[a+568>>2]=0;J[a+572>>2]=0;J[a+576>>2]=0;J[a+580>>2]=0;J[a+584>>2]=0;J[a+792>>2]=0;J[a+784>>2]=0;J[a+788>>2]=0;J[a+776>>2]=0;J[a+780>>2]=0;J[a+768>>2]=0;J[a+772>>2]=0;J[a+760>>2]=0;J[a+764>>2]=0;J[a+752>>2]=0;J[a+756>>2]=0;J[a+744>>2]=0;J[a+748>>2]=0;J[a+836>>2]=0;J[a+840>>2]=0;J[a+864>>2]=0;J[a+844>>2]=0;return a}function Uk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=0,n=Q(0),o=Q(0),p=Q(0),q=0,r=Q(0),s=Q(0);if((d|0)>0){e=sa-16|0;q=a+36|0;while(1){J[e+8>>2]=0;J[e+12>>2]=0;J[e>>2]=0;J[e+4>>2]=0;g=J[a+60>>2];f=g<<2;h=N[f+q>>2];N[e+f>>2]=h;i=Q(-0xde0b6b000000000);m=l<<4;f=m+b|0;n=N[f+8>>2];k=N[e+8>>2];o=N[f>>2];r=N[e>>2];s=N[e+4>>2];p=N[f+4>>2];j=Q(Q(n*k)+Q(Q(o*r)+Q(s*p)));if(j>Q(-0xde0b6b000000000)){g=c+m|0;N[g+12>>2]=N[e+12>>2];N[g+8>>2]=k;N[g+4>>2]=s;N[g>>2]=r;g=J[a+60>>2];h=N[(g<<2)+q>>2];n=N[f+8>>2];p=N[f+4>>2];o=N[f>>2];i=j;}J[e+8>>2]=0;J[e+12>>2]=0;J[e>>2]=0;J[e+4>>2]=0;N[(g<<2)+e>>2]=-h;k=i;i=N[e+8>>2];j=N[e>>2];h=N[e+4>>2];if(k<Q(Q(n*i)+Q(Q(o*j)+Q(h*p)))){f=c+m|0;N[f+12>>2]=N[e+12>>2];N[f+8>>2]=i;N[f+4>>2]=h;N[f>>2]=j;}l=l+1|0;if((l|0)!=(d|0)){continue}break}}}function nh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=J[a+228>>2];a:{if((d|0)!=J[a+232>>2]){break a}i=d?d<<1:1;if((i|0)<=(d|0)){break a}if(i){J[8456]=J[8456]+1;g=ua[J[8258]](i<<2,16)|0;d=J[a+228>>2];}b:{if((d|0)<=0){break b}if(d>>>0>=4){j=d&-4;while(1){e=f<<2;J[e+g>>2]=J[e+J[a+236>>2]>>2];h=e|4;J[h+g>>2]=J[h+J[a+236>>2]>>2];h=e|8;J[h+g>>2]=J[h+J[a+236>>2]>>2];e=e|12;J[e+g>>2]=J[e+J[a+236>>2]>>2];f=f+4|0;k=k+4|0;if((j|0)!=(k|0)){continue}break}}e=d&3;if(!e){break b}while(1){j=f<<2;J[j+g>>2]=J[j+J[a+236>>2]>>2];f=f+1|0;l=l+1|0;if((e|0)!=(l|0)){continue}break}}f=J[a+236>>2];if(!(!f|!K[a+240|0])){if(f){J[8457]=J[8457]+1;ua[J[8259]](f);}d=J[a+228>>2];}J[a+236>>2]=g;H[a+240|0]=1;J[a+232>>2]=i;}J[J[a+236>>2]+(d<<2)>>2]=b;J[a+228>>2]=d+1;if(c){Ed(J[b+28>>2],b);Ed(J[b+32>>2],b);}}function Wk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=0,m=Q(0),n=Q(0);d=sa-16|0;J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;e=N[c+8>>2];f=N[c>>2];g=N[c+4>>2];h=Q(Q(e*e)+Q(Q(f*f)+Q(g*g)));a:{if(h<Q(9999999747378752e-20)){h=Q(1);e=Q(0);break a}i=e;e=Q(Q(1)/Q(Y(h)));k=Q(i*e);h=Q(f*e);e=Q(g*e);}J[d+8>>2]=0;J[d+12>>2]=0;J[d>>2]=0;J[d+4>>2]=0;c=J[b+60>>2]<<2;l=c+d|0;i=N[(b+c|0)+36>>2];N[l>>2]=i;f=Q(-0xde0b6b000000000);j=N[d+8>>2];m=N[d>>2];n=N[d+4>>2];g=Q(Q(k*j)+Q(Q(h*m)+Q(e*n)));if(g>Q(-0xde0b6b000000000)){N[a+12>>2]=N[d+12>>2];N[a+8>>2]=j;N[a+4>>2]=n;N[a>>2]=m;f=g;}J[d+8>>2]=0;J[d+12>>2]=0;J[d>>2]=0;J[d+4>>2]=0;N[l>>2]=-i;i=f;f=N[d+8>>2];g=N[d>>2];j=e;e=N[d+4>>2];if(i<Q(Q(k*f)+Q(Q(h*g)+Q(j*e)))){N[a+12>>2]=N[d+12>>2];N[a+8>>2]=f;N[a+4>>2]=e;N[a>>2]=g;}}function pd(){ra(30276,8254);qa(30300,6219,1,1,0);ca(30312,5359,1,-128,127);ca(30336,5352,1,-128,127);ca(30324,5350,1,0,255);ca(30348,2375,2,-32768,32767);ca(30360,2366,2,0,65535);ca(30372,2561,4,-2147483648,2147483647);ca(30384,2552,4,0,-1);ca(30396,6567,4,-2147483648,2147483647);ca(30408,6558,4,0,-1);hd(30420,3510,-2147483648,2147483647);hd(30432,3509,0,-1);ka(30444,3476,4);ka(30456,7542,8);ja(31628,6585);ja(25600,9944);ia(25672,4,6572);ia(25748,2,6597);ia(25824,4,6612);pa(31336,6224);_(25864,0,9875);_(25904,0,9977);_(25944,1,9905);_(25984,2,9440);_(26024,3,9471);_(26064,4,9511);_(26104,5,9540);_(26144,4,10014);_(26184,5,10044);_(25904,0,9642);_(25944,1,9609);_(25984,2,9708);_(26024,3,9674);_(26064,4,9842);_(26104,5,9808);_(26224,8,9775);_(26264,9,9741);_(26304,6,9578);_(26344,7,10083);}function od(a){var b=0,c=0,d=Q(0),e=Q(0),f=0,g=Q(0);f=(B(a),v(2));c=f&2147483647;if(c>>>0>=1283457024){return ((B(a),v(2))&2147483647)>>>0>2139095040?a:(x(2,(B(a),v(2))&-2147483648|1070141402),C())}a:{b:{if(c>>>0<=1054867455){b=-1;if(c>>>0>=964689920){break b}break a}a=Q(R(a));if(c>>>0<=1066926079){if(c>>>0<=1060110335){a=Q(Q(Q(a+a)+Q(-1))/Q(a+Q(2)));b=0;break b}a=Q(Q(a+Q(-1))/Q(a+Q(1)));b=1;break b}if(c>>>0<=1075576831){a=Q(Q(a+Q(-1.5))/Q(Q(a*Q(1.5))+Q(1)));b=2;break b}a=Q(Q(-1)/a);b=3;}e=Q(a*a);d=Q(e*e);g=Q(d*Q(Q(d*Q(-.106480173766613))+Q(-.19999158382415771)));d=Q(e*Q(Q(d*Q(Q(d*Q(.06168760731816292))+Q(.14253635704517365)))+Q(.333333283662796)));if(c>>>0<=1054867455){return Q(a-Q(a*Q(g+d)))}b=b<<2;a=Q(N[b+26384>>2]-Q(Q(Q(a*Q(g+d))-N[b+26400>>2])-a));a=(f|0)<0?Q(-a):a;}return a}function Wp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=J[J[J[b+4>>2]+8>>2]+8>>2];d=J[a+136>>2];a:{if((d|0)!=J[a+140>>2]){break a}j=d?d<<1:1;if((j|0)<=(d|0)){break a}if(j){J[8456]=J[8456]+1;g=ua[J[8258]](j<<2,16)|0;d=J[a+136>>2];}f=J[a+144>>2];b:{c:{if((d|0)>0){if(d>>>0>=4){n=d&-4;while(1){e=h<<2;J[e+g>>2]=J[f+e>>2];i=e|4;J[i+g>>2]=J[f+i>>2];i=e|8;J[i+g>>2]=J[f+i>>2];e=e|12;J[e+g>>2]=J[f+e>>2];h=h+4|0;k=k+4|0;if((k|0)!=(n|0)){continue}break}}d=d&3;if(!d){break c}while(1){e=h<<2;J[e+g>>2]=J[f+e>>2];h=h+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}break c}if(!f){break b}}if(f?K[a+148|0]:0){J[8457]=J[8457]+1;ua[J[8259]](f);}d=J[a+136>>2];}J[a+144>>2]=g;J[a+140>>2]=j;H[a+148|0]=1;}J[J[a+144>>2]+(d<<2)>>2]=m;J[a+136>>2]=J[a+136>>2]+1;return Q(Jf(a,b,c))}function ok(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);d=sa-80|0;sa=d;J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;f=N[c+8>>2];h=N[c>>2];g=N[c+4>>2];e=Q(Q(f*f)+Q(Q(h*h)+Q(g*g)));a:{if(e<Q(9999999747378752e-20)){f=Q(0);g=Q(0);e=Q(1);break a}e=Q(Q(1)/Q(Y(e)));f=Q(f*e);i=Q(g*e);g=N[c+12>>2];e=Q(h*e);}J[d+52>>2]=0;J[d+56>>2]=0;N[d+76>>2]=g;N[d+72>>2]=f;N[d+68>>2]=i;J[d+44>>2]=0;J[d+48>>2]=0;N[d+64>>2]=e;J[d+60>>2]=-581039253;J[d+40>>2]=19952;J[d+32>>2]=1566444395;J[d+36>>2]=0;J[d+24>>2]=1566444395;J[d+28>>2]=1566444395;b=J[b+100>>2];J[d+16>>2]=-581039253;J[d+20>>2]=0;J[d+8>>2]=-581039253;J[d+12>>2]=-581039253;ua[J[J[b>>2]+8>>2]](b,d+40|0,d+8|0,d+24|0);b=J[d+56>>2];J[a+8>>2]=J[d+52>>2];J[a+12>>2]=b;b=J[d+48>>2];J[a>>2]=J[d+44>>2];J[a+4>>2]=b;sa=d+80|0;}function Vk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=La(164);H[d+108|0]=0;J[d+104>>2]=0;H[d+65|0]=0;H[d+61|0]=0;H[d+62|0]=1;H[d+63|0]=1;H[d+64|0]=0;J[d+20>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[d+24>>2]=c;J[d+12>>2]=a;H[d+128|0]=1;J[d>>2]=25216;J[d+124>>2]=0;J[d+116>>2]=0;J[d+120>>2]=0;J[d+56>>2]=J[b+44>>2];a=J[b+16>>2];J[d+40>>2]=J[b+12>>2];J[d+44>>2]=a;a=J[b+24>>2];J[d+48>>2]=J[b+20>>2];J[d+52>>2]=a;N[d+32>>2]=N[b+4>>2];N[d+36>>2]=N[b+8>>2];N[d+28>>2]=N[b>>2];a=J[b+48>>2];J[d+132>>2]=0;J[d+20>>2]=a;J[d>>2]=25280;N[d+156>>2]=N[b+56>>2];N[d+152>>2]=N[b+52>>2];N[d+160>>2]=N[b+60>>2];J[8456]=J[8456]+1;a=sd(ua[J[8258]](348,16)|0);J[d+4>>2]=a;J[a+204>>2]=4;c=J[b+32>>2];J[a+52>>2]=J[b+28>>2];J[a+56>>2]=c;c=J[b+40>>2];J[a+60>>2]=J[b+36>>2];J[a+64>>2]=c;J[J[d+4>>2]+256>>2]=d;Bb(d);return d|0}function Hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=J[a+56>>2];if(!(!c|!K[a+52|0])){d=J[b+4>>2];a:{if((d|0)!=J[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){J[8456]=J[8456]+1;f=ua[J[8258]](h<<2,16)|0;d=J[b+4>>2];}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;J[e+f>>2]=J[e+J[b+12>>2]>>2];g=e|4;J[g+f>>2]=J[g+J[b+12>>2]>>2];g=e|8;J[g+f>>2]=J[g+J[b+12>>2]>>2];e=e|12;J[e+f>>2]=J[e+J[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;J[i+f>>2]=J[i+J[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=J[b+12>>2];if(!(!c|!K[b+16|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}d=J[b+4>>2];}J[b+12>>2]=f;H[b+16|0]=1;J[b+8>>2]=h;c=J[a+56>>2];}J[J[b+12>>2]+(d<<2)>>2]=c;J[b+4>>2]=d+1;}}function Sb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=J[a+12>>2];if(!(!c|!K[a+8|0])){d=J[b+4>>2];a:{if((d|0)!=J[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){J[8456]=J[8456]+1;f=ua[J[8258]](h<<2,16)|0;d=J[b+4>>2];}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;J[e+f>>2]=J[e+J[b+12>>2]>>2];g=e|4;J[g+f>>2]=J[g+J[b+12>>2]>>2];g=e|8;J[g+f>>2]=J[g+J[b+12>>2]>>2];e=e|12;J[e+f>>2]=J[e+J[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;J[i+f>>2]=J[i+J[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=J[b+12>>2];if(!(!c|!K[b+16|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}d=J[b+4>>2];}J[b+12>>2]=f;H[b+16|0]=1;J[b+8>>2]=h;c=J[a+12>>2];}J[J[b+12>>2]+(d<<2)>>2]=c;J[b+4>>2]=d+1;}}function pk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0);d=sa-32|0;sa=d;h=J[c+12>>2];J[d+24>>2]=J[c+8>>2];J[d+28>>2]=h;h=J[c+4>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=h;e=N[d+24>>2];f=N[d+16>>2];g=N[d+20>>2];if(Q(Q(e*e)+Q(Q(f*f)+Q(g*g)))<Q(14210854715202004e-30)){J[d+28>>2]=0;g=Q(-1);f=Q(-1);e=Q(-1);}i=e;e=Q(Q(1)/Q(Y(Q(Q(e*e)+Q(Q(f*f)+Q(g*g))))));N[d+24>>2]=i*e;N[d+20>>2]=g*e;N[d+16>>2]=f*e;ab(d,b,d+16|0);a:{b:{switch(J[b+4>>2]){case 8:e=Q(N[b+36>>2]*N[b+20>>2]);break a;case 0:case 1:case 4:case 5:case 10:case 11:case 13:e=N[b+52>>2];break a;default:break b}}e=Q(ua[J[J[b>>2]+48>>2]](b));}f=N[d>>2];g=N[d+16>>2];i=N[d+4>>2];j=N[d+20>>2];k=N[d+8>>2];l=N[d+24>>2];J[a+12>>2]=0;N[a+8>>2]=k+Q(e*l);N[a+4>>2]=i+Q(e*j);N[a>>2]=f+Q(e*g);sa=d+32|0;}function Ma(a){var b=Q(0),c=0,d=0,e=0,f=0;c=sa-16|0;sa=c;e=(B(a),v(2));d=e&2147483647;a:{if(d>>>0<=1061752794){b=Q(1);if(d>>>0<964689920){break a}b=Wa(+a);break a}if(d>>>0<=1081824209){if(d>>>0>=1075235812){b=Q(-Wa(((e|0)<0?3.141592653589793:-3.141592653589793)+ +a));break a}f=+a;if((e|0)<0){b=Va(f+1.5707963267948966);break a}b=Va(1.5707963267948966-f);break a}if(d>>>0<=1088565717){if(d>>>0>=1085271520){b=Wa(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if((e|0)<0){b=Va(-4.71238898038469-+a);break a}b=Va(+a+-4.71238898038469);break a}b=Q(a-a);if(d>>>0>=2139095040){break a}b:{switch(nd(a,c+8|0)&3){case 0:b=Wa(O[c+8>>3]);break a;case 1:b=Va(-O[c+8>>3]);break a;case 2:b=Q(-Wa(O[c+8>>3]));break a;default:break b}}b=Va(O[c+8>>3]);}a=b;sa=c+16|0;return a}function Cm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=J[a+72>>2];if(c){d=J[b+4>>2];a:{if((d|0)!=J[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){J[8456]=J[8456]+1;f=ua[J[8258]](h<<2,16)|0;d=J[b+4>>2];}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;J[e+f>>2]=J[e+J[b+12>>2]>>2];g=e|4;J[g+f>>2]=J[g+J[b+12>>2]>>2];g=e|8;J[g+f>>2]=J[g+J[b+12>>2]>>2];e=e|12;J[e+f>>2]=J[e+J[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;J[i+f>>2]=J[i+J[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=J[b+12>>2];if(!(!c|!K[b+16|0])){if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}d=J[b+4>>2];}J[b+12>>2]=f;H[b+16|0]=1;J[b+8>>2]=h;c=J[a+72>>2];}J[J[b+12>>2]+(d<<2)>>2]=c;J[b+4>>2]=d+1;}}function Na(a){var b=0,c=0,d=0,e=0;b=sa-16|0;sa=b;e=(B(a),v(2));c=e&2147483647;a:{if(c>>>0<=1061752794){if(c>>>0<964689920){break a}a=Va(+a);break a}if(c>>>0<=1081824209){d=+a;if(c>>>0<=1075235811){if((e|0)<0){a=Q(-Wa(d+1.5707963267948966));break a}a=Wa(d+-1.5707963267948966);break a}a=Va(-(((e|0)>=0?-3.141592653589793:3.141592653589793)+d));break a}if(c>>>0<=1088565717){if(c>>>0<=1085271519){d=+a;if((e|0)<0){a=Wa(d+4.71238898038469);break a}a=Q(-Wa(d+-4.71238898038469));break a}a=Va(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if(c>>>0>=2139095040){a=Q(a-a);break a}b:{switch(nd(a,b+8|0)&3){case 0:a=Va(O[b+8>>3]);break a;case 1:a=Wa(O[b+8>>3]);break a;case 2:a=Va(-O[b+8>>3]);break a;default:break b}}a=Q(-Wa(O[b+8>>3]));}sa=b+16|0;return a}function wl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=La(160);H[d+108|0]=0;J[d+104>>2]=0;H[d+65|0]=0;H[d+61|0]=0;H[d+62|0]=1;H[d+63|0]=1;H[d+64|0]=0;J[d+20>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;J[d+24>>2]=c;J[d+12>>2]=a;H[d+128|0]=1;J[d>>2]=25216;J[d+124>>2]=0;J[d+116>>2]=0;J[d+120>>2]=0;J[d+56>>2]=J[b+44>>2];a=J[b+16>>2];J[d+40>>2]=J[b+12>>2];J[d+44>>2]=a;a=J[b+24>>2];J[d+48>>2]=J[b+20>>2];J[d+52>>2]=a;N[d+32>>2]=N[b+4>>2];N[d+36>>2]=N[b+8>>2];N[d+28>>2]=N[b>>2];a=J[b+48>>2];J[d+132>>2]=0;J[d+20>>2]=a;J[d>>2]=25248;N[d+152>>2]=N[b+52>>2];N[d+156>>2]=N[b+56>>2];J[8456]=J[8456]+1;a=sd(ua[J[8258]](348,16)|0);J[d+4>>2]=a;J[a+204>>2]=4;c=J[b+32>>2];J[a+52>>2]=J[b+28>>2];J[a+56>>2]=c;c=J[b+40>>2];J[a+60>>2]=J[b+36>>2];J[a+64>>2]=c;J[J[d+4>>2]+256>>2]=d;ic(d);return d|0}function vg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0);e=Q(1);d=J[b>>2];if(!((d|0)==J[a+88>>2]|K[d+204|0]&4)){J[a+84>>2]=J[J[b+4>>2]+8>>2];e=N[b+40>>2];J[a+16>>2]=d;N[a+4>>2]=e;a:{if(c){c=J[b+12>>2];J[a+52>>2]=J[b+8>>2];J[a+56>>2]=c;c=J[b+20>>2];J[a+60>>2]=J[b+16>>2];J[a+64>>2]=c;break a}h=N[d+8>>2];i=N[d+12>>2];j=N[d+20>>2];k=N[d+24>>2];l=N[d+28>>2];m=N[d+36>>2];n=N[d+40>>2];e=N[b+12>>2];o=N[d+44>>2];f=N[b+16>>2];p=N[d+4>>2];g=N[b+8>>2];J[a- -64>>2]=0;N[a+60>>2]=Q(o*f)+Q(Q(m*g)+Q(e*n));N[a+56>>2]=Q(l*f)+Q(Q(j*g)+Q(e*k));N[a+52>>2]=Q(i*f)+Q(Q(p*g)+Q(h*e));}c=J[b+28>>2];J[a+68>>2]=J[b+24>>2];J[a+72>>2]=c;c=J[b+36>>2];J[a+76>>2]=J[b+32>>2];J[a+80>>2]=c;e=N[b+40>>2];}return Q(e)}function lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=J[a+296>>2];a:{if((c|0)!=J[a+300>>2]){break a}h=c?c<<1:1;if((h|0)<=(c|0)){break a}if(h){J[8456]=J[8456]+1;f=ua[J[8258]](h<<2,16)|0;c=J[a+296>>2];}b:{if((c|0)<=0){break b}if(c>>>0>=4){i=c&-4;while(1){d=e<<2;J[d+f>>2]=J[d+J[a+304>>2]>>2];g=d|4;J[g+f>>2]=J[g+J[a+304>>2]>>2];g=d|8;J[g+f>>2]=J[g+J[a+304>>2]>>2];d=d|12;J[d+f>>2]=J[d+J[a+304>>2]>>2];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=c&3;if(!d){break b}while(1){i=e<<2;J[i+f>>2]=J[i+J[a+304>>2]>>2];e=e+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}e=J[a+304>>2];if(!(!e|!K[a+308|0])){if(e){J[8457]=J[8457]+1;ua[J[8259]](e);}c=J[a+296>>2];}J[a+304>>2]=f;H[a+308|0]=1;J[a+300>>2]=h;}J[J[a+304>>2]+(c<<2)>>2]=b;J[a+296>>2]=c+1;}function og(a){a=a|0;var b=0,c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0);J[8456]=J[8456]+1;b=Sa(ua[J[8258]](64,16)|0);J[b+60>>2]=1;J[b>>2]=20016;d=N[a>>2];e=N[a+4>>2];c=N[a+8>>2];J[b+48>>2]=0;f=Q(c*N[b+28>>2]);c=N[b+52>>2];N[b+44>>2]=f-c;N[b+40>>2]=Q(e*N[b+24>>2])-c;N[b+36>>2]=Q(d*N[b+20>>2])-c;e=c;c=N[a>>2];d=N[a+4>>2];g=c<d;c=Q(N[((N[a+8>>2]>(g?c:d)?!g:2)<<2)+a>>2]*Q(.10000000149011612));if(e>c){d=N[b+52>>2];e=Q(ua[J[J[b>>2]+48>>2]](b));f=Q(ua[J[J[b>>2]+48>>2]](b));N[b+52>>2]=c;c=N[b+44>>2];h=N[b+36>>2];i=N[b+40>>2];j=Q(ua[J[J[b>>2]+48>>2]](b));k=Q(ua[J[J[b>>2]+48>>2]](b));l=Q(ua[J[J[b>>2]+48>>2]](b));J[b+48>>2]=0;N[b+40>>2]=Q(e+i)-k;N[b+36>>2]=Q(d+h)-j;N[b+44>>2]=Q(f+c)-l;}J[b+4>>2]=13;return b|0}function wk(a,b,c){a=a|0;b=Q(b);c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0);d=sa-96|0;sa=d;J[d+44>>2]=0;J[d+48>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+52>>2]=1065353216;h=d- -64|0;J[h>>2]=0;J[h+4>>2]=0;J[d+76>>2]=0;J[d+80>>2]=0;J[d+72>>2]=1065353216;J[d+84>>2]=0;J[d+88>>2]=0;J[d+92>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+32>>2]=1065353216;ua[J[J[a>>2]+8>>2]](a,d+32|0,d+16|0,d);i=N[d+24>>2];j=N[d+8>>2];f=N[d+16>>2];g=N[d>>2];k=N[d+20>>2];l=N[d+4>>2];e=Q(ua[J[J[a>>2]+48>>2]](a));J[c+12>>2]=0;b=Q(b*Q(.0833333283662796));f=Q(e+Q(Q(g-f)*Q(.5)));f=Q(f+f);f=Q(f*f);g=Q(e+Q(Q(l-k)*Q(.5)));g=Q(g+g);g=Q(g*g);N[c+8>>2]=b*Q(f+g);e=Q(e+Q(Q(j-i)*Q(.5)));e=Q(e+e);e=Q(e*e);N[c+4>>2]=b*Q(f+e);N[c>>2]=b*Q(g+e);sa=d+96|0;}function Gj(a,b,c){a=a|0;b=Q(b);c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0),k=Q(0),l=Q(0);d=sa-96|0;sa=d;e=Q(ua[J[J[a>>2]+48>>2]](a));J[d+44>>2]=0;J[d+48>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+52>>2]=1065353216;h=d- -64|0;J[h>>2]=0;J[h+4>>2]=0;J[d+76>>2]=0;J[d+80>>2]=0;J[d+72>>2]=1065353216;J[d+84>>2]=0;J[d+88>>2]=0;J[d+92>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+32>>2]=1065353216;ua[J[J[a>>2]+8>>2]](a,d+32|0,d+16|0,d);i=N[d+24>>2];j=N[d+8>>2];f=N[d+16>>2];g=N[d>>2];k=N[d+20>>2];l=N[d+4>>2];J[c+12>>2]=0;b=Q(b*Q(.0833333283662796));f=Q(e+Q(Q(g-f)*Q(.5)));f=Q(f+f);f=Q(f*f);g=Q(e+Q(Q(l-k)*Q(.5)));g=Q(g+g);g=Q(g*g);N[c+8>>2]=b*Q(f+g);e=Q(e+Q(Q(j-i)*Q(.5)));e=Q(e+e);e=Q(e*e);N[c+4>>2]=b*Q(f+e);N[c>>2]=b*Q(g+e);sa=d+96|0;}function zk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=0,g=0,h=0,i=Q(0),j=0,k=Q(0),l=0,m=Q(0),n=0,o=0,p=Q(0);if((d|0)>0){f=sa-16|0;while(1){i=Q(N[a+68>>2]*Q(.5));j=J[a+72>>2];o=l<<4;g=o+b|0;e=N[g+8>>2];h=J[a+76>>2]<<2;m=Q(e*e);e=N[g>>2];k=Q(e*e);e=N[g+4>>2];a:{b:{if(N[g+h>>2]>Q(N[a+60>>2]*Q(Y(Q(m+Q(k+Q(e*e))))))){J[(j<<2)+f>>2]=0;N[f+h>>2]=i;j=J[a+80>>2];break b}n=j<<2;e=N[g+n>>2];j=J[a+80>>2];k=N[g+(j<<2)>>2];p=Q(Y(Q(Q(e*e)+Q(k*k))));if(p>Q(1.1920928955078125e-7)){m=e;e=Q(N[a+64>>2]/p);N[f+n>>2]=m*e;N[f+h>>2]=-i;i=Q(k*e);break a}J[f+n>>2]=0;N[f+h>>2]=-i;}i=Q(0);}N[(j<<2)+f>>2]=i;h=J[f+12>>2];g=c+o|0;J[g+8>>2]=J[f+8>>2];J[g+12>>2]=h;h=J[f+4>>2];J[g>>2]=J[f>>2];J[g+4>>2]=h;l=l+1|0;if((l|0)!=(d|0)){continue}break}}}function Tl(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=Q(d);var e=0,f=0;f=sa-16|0;sa=f;e=J[b+12>>2];J[f+8>>2]=J[b+8>>2];J[f+12>>2]=e;e=J[b+4>>2];J[f>>2]=J[b>>2];J[f+4>>2]=e;d=Q(ua[J[J[a>>2]+20>>2]](a));H[a+65|0]=0;N[a+16>>2]=d;d=N[a+36>>2];N[a+36>>2]=d>Q(.009999999776482582)?d:Q(.009999999776482582);b=J[a+4>>2];e=J[b+56>>2];J[a+136>>2]=J[b+52>>2];J[a+140>>2]=e;e=J[b+64>>2];J[a+144>>2]=J[b+60>>2];J[a+148>>2]=e;b=kc(a,f,c);if(K[a+60|0]){H[a+61|0]=1;e=J[a+148>>2];b=J[a+4>>2];J[b+60>>2]=J[a+144>>2];J[b+64>>2]=e;e=J[a+140>>2];J[b+52>>2]=J[a+136>>2];J[b+56>>2]=e;b=kc(a,f,c);H[a+61|0]=0;}a:{if(!K[a+65|0]){break a}if(!(b&4)|(ua[J[J[a>>2]+16>>2]](a)|0)!=1){break a}H[a+64|0]=1;kc(a,f,c);H[a+64|0]=0;}J[a+132>>2]=b;sa=f+16|0;return b|0}function Ta(a,b){var c=0,d=0,e=0;c=sa+-64|0;sa=c;d=J[a>>2];e=J[d-4>>2];d=J[d-8>>2];J[c+32>>2]=0;J[c+36>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;H[c+55|0]=0;H[c+56|0]=0;H[c+57|0]=0;H[c+58|0]=0;H[c+59|0]=0;H[c+60|0]=0;H[c+61|0]=0;H[c+62|0]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+20>>2]=0;J[c+16>>2]=29924;J[c+12>>2]=a;J[c+8>>2]=b;a=a+d|0;d=0;a:{if(Ka(e,b,0)){J[c+56>>2]=1;ua[J[J[e>>2]+20>>2]](e,c+8|0,a,a,1,0);d=J[c+32>>2]==1?a:0;break a}ua[J[J[e>>2]+24>>2]](e,c+8|0,a,1,0);b:{switch(J[c+44>>2]){case 0:d=J[c+48>>2]==1?J[c+36>>2]==1?J[c+40>>2]==1?J[c+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(J[c+32>>2]!=1){if(J[c+48>>2]|J[c+36>>2]!=1|J[c+40>>2]!=1){break a}}d=J[c+24>>2];}sa=c- -64|0;return d}function Yr(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=sa-32|0;sa=b;a=La(10448);if(!K[33780]){J[b+24>>2]=0;J[b+28>>2]=1;J[b+16>>2]=4096;J[b+20>>2]=4096;J[b+8>>2]=0;J[b+12>>2]=0;Lc(b+8|0);H[33780]=1;}J[a+4>>2]=2;J[a+10444>>2]=33692;J[a+64>>2]=466;H[a+24|0]=1;J[a>>2]=12836;J[a+20>>2]=0;J[a+60>>2]=0;J[a+28>>2]=17852;J[a+12>>2]=0;J[a+16>>2]=0;g=a,h=ua[J[J[8423]+12>>2]](33692)|0,J[g+68>>2]=h;g=a,h=ua[J[J[8423]+8>>2]](33692)|0,J[g+72>>2]=h;while(1){c=0;while(1){e=(P(d,144)+a|0)+(c<<2)|0;f=J[a+10444>>2];g=e,h=ua[J[J[f>>2]+16>>2]](f,d,c)|0,J[g+76>>2]=h;f=e+5260|0;e=J[a+10444>>2];g=f,h=ua[J[J[e>>2]+20>>2]](e,d,c)|0,J[g>>2]=h;c=c+1|0;if((c|0)!=36){continue}break}d=d+1|0;if((d|0)!=36){continue}break}sa=b+32|0;return a|0}function Lo(a,b,c,d){a=a|0;b=Q(b);c=c|0;d=d|0;var e=0,f=0,g=Q(0);e=sa+-64|0;sa=e;f=J[c+60>>2];J[e+56>>2]=J[c+56>>2];J[e+60>>2]=f;f=J[c+52>>2];J[e+48>>2]=J[c+48>>2];J[e+52>>2]=f;N[e+32>>2]=N[c+4>>2];N[e+36>>2]=N[c+20>>2];g=N[c+36>>2];J[e+44>>2]=0;N[e+40>>2]=g;N[e+16>>2]=N[c>>2];N[e+20>>2]=N[c+16>>2];g=N[c+32>>2];J[e+28>>2]=0;N[e+24>>2]=g;c=e+48|0;f=e+32|0;ua[J[J[a>>2]+72>>2]](a,c,f,e+16|0,b,Q(-1.5707963705062866),Q(1.5707963705062866),Q(-1.5707963705062866),Q(1.5707963705062866),d,Q(30),0);J[e+12>>2]=0;N[e+8>>2]=-N[e+24>>2];N[e+4>>2]=-N[e+20>>2];N[e>>2]=-N[e+16>>2];ua[J[J[a>>2]+72>>2]](a,c,f,e,b,Q(-1.5707963705062866),Q(1.5707963705062866),Q(-1.5707963705062866),Q(1.5707963705062866),d,Q(30),0);sa=e- -64|0;}function Sk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0);f=sa-16|0;k=a+36|0;a=J[a+60>>2];e=N[k+((a+2|0)%3<<2)>>2];N[f+8>>2]=e;N[f+4>>2]=e;N[f>>2]=e;a=a<<2;N[a+f>>2]=e+N[a+k>>2];l=N[b+52>>2];g=N[b+24>>2];o=N[b+20>>2];m=N[b+56>>2];h=N[b+40>>2];p=N[b+36>>2];n=N[b+48>>2];q=N[b+8>>2];r=N[b>>2];s=N[b+4>>2];t=N[b+16>>2];u=N[b+32>>2];e=N[f+8>>2];i=N[f>>2];j=N[f+4>>2];J[c+12>>2]=0;h=Q(Q(e*Q(R(h)))+Q(Q(i*Q(R(u)))+Q(j*Q(R(p)))));N[c+8>>2]=m-h;g=Q(Q(e*Q(R(g)))+Q(Q(i*Q(R(t)))+Q(j*Q(R(o)))));N[c+4>>2]=l-g;e=Q(Q(e*Q(R(q)))+Q(Q(i*Q(R(r)))+Q(j*Q(R(s)))));N[c>>2]=n-e;J[d+12>>2]=0;N[d+8>>2]=m+h;N[d+4>>2]=l+g;N[d>>2]=n+e;}function Zp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0);J[a+84>>2]=J[J[J[b+4>>2]+8>>2]+8>>2];N[a+4>>2]=N[b+40>>2];d=J[b>>2];J[a+16>>2]=d;a:{if(c){c=J[b+12>>2];J[a+52>>2]=J[b+8>>2];J[a+56>>2]=c;c=J[b+20>>2];J[a+60>>2]=J[b+16>>2];J[a+64>>2]=c;break a}h=N[d+8>>2];i=N[d+12>>2];j=N[d+20>>2];k=N[d+24>>2];l=N[d+28>>2];m=N[d+36>>2];n=N[d+40>>2];e=N[b+12>>2];o=N[d+44>>2];f=N[b+16>>2];p=N[d+4>>2];g=N[b+8>>2];J[a- -64>>2]=0;N[a+60>>2]=Q(o*f)+Q(Q(m*g)+Q(e*n));N[a+56>>2]=Q(l*f)+Q(Q(j*g)+Q(e*k));N[a+52>>2]=Q(i*f)+Q(Q(p*g)+Q(h*e));}c=J[b+28>>2];J[a+68>>2]=J[b+24>>2];J[a+72>>2]=c;c=J[b+36>>2];J[a+76>>2]=J[b+32>>2];J[a+80>>2]=c;return Q(N[b+40>>2])}function bs(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=Q(d);e=Q(e);f=Q(f);var g=0,h=Q(0);J[8456]=J[8456]+1;g=ua[J[8258]](132,16)|0;J[g+12>>2]=0;J[g+16>>2]=0;J[g+4>>2]=35;J[g+8>>2]=0;J[g+20>>2]=0;J[g>>2]=20152;J[g>>2]=20364;J[g+116>>2]=1065353216;J[g+120>>2]=1065353216;J[g+112>>2]=1;H[g+109|0]=0;H[g+110|0]=0;H[g+108|0]=0;J[g+104>>2]=0;J[g+100>>2]=c;N[g+96>>2]=d;N[g+84>>2]=f;N[g+80>>2]=e;J[g+76>>2]=b;J[g+72>>2]=a;J[g+4>>2]=24;J[g+124>>2]=1065353216;J[g+128>>2]=0;d=Q(b-1|0);N[g+92>>2]=d;h=Q(a-1|0);N[g+88>>2]=h;N[g+40>>2]=h;J[g+24>>2]=0;J[g+52>>2]=0;N[g+48>>2]=d;N[g+44>>2]=f;J[g+32>>2]=0;J[g+36>>2]=0;N[g+28>>2]=e;J[g+68>>2]=0;N[g- -64>>2]=Q(d+Q(0))*Q(.5);N[g+60>>2]=Q(e+f)*Q(.5);N[g+56>>2]=Q(h+Q(0))*Q(.5);return g|0}function fd(a){a=a|0;var b=0;J[a>>2]=30840;b=J[a+144>>2];if(!(b?!b|!K[a+148|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+144>>2]=0;H[a+148|0]=1;J[a+136>>2]=0;J[a+140>>2]=0;J[a>>2]=30888;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+104>>2]=0;H[a+108|0]=1;J[a+96>>2]=0;J[a+100>>2]=0;b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+84>>2]=0;H[a+88|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;J[a>>2]=30816;return a|0}function Fa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!c){break a}H[a|0]=b;d=a+c|0;H[d-1|0]=b;if(c>>>0<3){break a}H[a+2|0]=b;H[a+1|0]=b;H[d-3|0]=b;H[d-2|0]=b;if(c>>>0<7){break a}H[a+3|0]=b;H[d-4|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=P(b&255,16843009);J[e>>2]=b;d=c-d&-4;c=d+e|0;J[c-4>>2]=b;if(d>>>0<9){break a}J[e+8>>2]=b;J[e+4>>2]=b;J[c-8>>2]=b;J[c-12>>2]=b;if(d>>>0<25){break a}J[e+24>>2]=b;J[e+20>>2]=b;J[e+16>>2]=b;J[e+12>>2]=b;J[c-16>>2]=b;J[c-20>>2]=b;J[c-24>>2]=b;J[c-28>>2]=b;g=e&4|24;c=d-g|0;if(c>>>0<32){break a}d=us(b,0,1,1);f=ta;b=e+g|0;while(1){J[b+24>>2]=d;J[b+28>>2]=f;J[b+16>>2]=d;J[b+20>>2]=f;J[b+8>>2]=d;J[b+12>>2]=f;J[b>>2]=d;J[b+4>>2]=f;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function ob(a,b){var c=Q(0),d=0,e=0,f=Q(0),g=0,h=Q(0),i=Q(0),j=0,k=0,l=0,m=0;e=sa-16|0;c=N[a>>2];h=N[a+20>>2];i=N[a+40>>2];f=Q(Q(c+h)+i);a:{if(f>Q(0)){f=Q(Y(Q(f+Q(1))));c=Q(Q(.5)/f);h=Q(c*Q(N[a+16>>2]-N[a+4>>2]));i=Q(c*Q(N[a+8>>2]-N[a+32>>2]));f=Q(f*Q(.5));c=Q(c*Q(N[a+36>>2]-N[a+24>>2]));break a}g=c<h?h<i?2:1:(c<i)<<1;j=g<<2;k=(g<<4)+a|0;d=g+1|0;d=(d|0)!=3?d:0;l=(d<<4)+a|0;d=d<<2;m=a;a=(g+2>>>0)%3|0;g=m+(a<<4)|0;a=a<<2;c=Q(Y(Q(Q(Q(N[k+j>>2]-N[l+d>>2])-N[g+a>>2])+Q(1))));N[j+e>>2]=c*Q(.5);c=Q(Q(.5)/c);N[e+12>>2]=Q(N[d+g>>2]-N[a+l>>2])*c;N[e+d>>2]=c*Q(N[j+l>>2]+N[d+k>>2]);N[(a|e)>>2]=c*Q(N[g+j>>2]+N[a+k>>2]);f=N[e+12>>2];h=N[e+8>>2];i=N[e+4>>2];c=N[e>>2];}N[b+12>>2]=f;N[b+8>>2]=h;N[b+4>>2]=i;N[b>>2]=c;}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0);J[a+84>>2]=J[J[b+4>>2]+8>>2];N[a+4>>2]=N[b+40>>2];d=J[b>>2];J[a+16>>2]=d;a:{if(c){c=J[b+12>>2];J[a+52>>2]=J[b+8>>2];J[a+56>>2]=c;c=J[b+20>>2];J[a+60>>2]=J[b+16>>2];J[a+64>>2]=c;break a}h=N[d+8>>2];i=N[d+12>>2];j=N[d+20>>2];k=N[d+24>>2];l=N[d+28>>2];m=N[d+36>>2];n=N[d+40>>2];e=N[b+12>>2];o=N[d+44>>2];f=N[b+16>>2];p=N[d+4>>2];g=N[b+8>>2];J[a- -64>>2]=0;N[a+60>>2]=Q(o*f)+Q(Q(m*g)+Q(e*n));N[a+56>>2]=Q(l*f)+Q(Q(j*g)+Q(e*k));N[a+52>>2]=Q(i*f)+Q(Q(p*g)+Q(h*e));}c=J[b+28>>2];J[a+68>>2]=J[b+24>>2];J[a+72>>2]=c;c=J[b+36>>2];J[a+76>>2]=J[b+32>>2];J[a+80>>2]=c;return Q(N[b+40>>2])}function dd(a){a=a|0;var b=0;J[a>>2]=30968;b=J[a+144>>2];if(!(b?!b|!K[a+148|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+144>>2]=0;H[a+148|0]=1;J[a+136>>2]=0;J[a+140>>2]=0;J[a>>2]=31016;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+104>>2]=0;H[a+108|0]=1;J[a+96>>2]=0;J[a+100>>2]=0;b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+84>>2]=0;H[a+88|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;return a|0}function Ip(a){a=a|0;var b=0,c=0;J[8456]=J[8456]+1;b=ua[J[8258]](144,16)|0;J[b+8>>2]=1065353216;J[b+12>>2]=1065353216;J[b+4>>2]=0;J[b+104>>2]=1065353216;J[b+108>>2]=1065353216;J[b+96>>2]=0;J[b+100>>2]=0;J[b+88>>2]=1065353216;J[b+92>>2]=0;J[b+80>>2]=0;J[b+84>>2]=0;J[b+72>>2]=1065353216;J[b+76>>2]=1065353216;c=b- -64|0;J[c>>2]=0;J[c+4>>2]=0;J[b+56>>2]=1065353216;J[b+60>>2]=0;J[b+48>>2]=1065353216;J[b+52>>2]=0;J[b+40>>2]=0;J[b+44>>2]=1065353216;J[b+32>>2]=0;J[b+36>>2]=0;J[b+24>>2]=0;J[b+28>>2]=1065353216;J[b+16>>2]=1065353216;J[b+20>>2]=0;J[b+112>>2]=0;J[b+116>>2]=0;J[b+120>>2]=0;J[b+124>>2]=0;J[b+128>>2]=0;J[b+132>>2]=0;H[b+136|0]=0;J[b+140>>2]=J[a>>2];J[a>>2]=0;J[b>>2]=31352;return b|0}function Vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=J[b+188>>2];if(d){c=J[a+68>>2];c=ua[J[J[c>>2]+36>>2]](c)|0;ua[J[J[c>>2]+40>>2]](c,d,J[a+24>>2]);c=J[a+68>>2];ua[J[J[c>>2]+12>>2]](c,d,J[a+24>>2]);J[b+188>>2]=0;}c=J[b+216>>2];d=J[a+8>>2];a:{if(!((c|0)<0|(c|0)>=(d|0))){e=J[a+16>>2];f=c<<2;g=e+f|0;h=J[g>>2];i=e;d=d-1|0;e=d<<2;J[g>>2]=J[i+e>>2];J[e+J[a+16>>2]>>2]=h;J[a+8>>2]=d;if((c|0)>=(d|0)){break a}J[J[f+J[a+16>>2]>>2]+216>>2]=c;break a}if((d|0)<=0){break a}e=J[a+16>>2];c=0;while(1){f=e+(c<<2)|0;if(J[f>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break a}break}if((c|0)>=(d|0)){break a}d=d-1|0;c=d<<2;J[f>>2]=J[c+e>>2];J[c+J[a+16>>2]>>2]=b;J[a+8>>2]=d;}J[b+216>>2]=-1;}function Gc(a){a=a|0;var b=0;J[a>>2]=18460;b=J[a+160>>2];if(!(b?!b|!K[a+164|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+160>>2]=0;H[a+164|0]=1;J[a+152>>2]=0;J[a+156>>2]=0;b=J[a+136>>2];if(!(b?!b|!K[a+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+136>>2]=0;H[a+140|0]=1;J[a+128>>2]=0;J[a+132>>2]=0;b=J[a+116>>2];if(!(b?!b|!K[a+120|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+116>>2]=0;H[a+120|0]=1;J[a+108>>2]=0;J[a+112>>2]=0;b=J[a+96>>2];if(!(b?!b|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+96>>2]=0;H[a+100|0]=1;J[a+88>>2]=0;J[a+92>>2]=0;b=J[a+76>>2];if(!(b?!b|!K[a+80|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+76>>2]=0;H[a+80|0]=1;J[a+68>>2]=0;J[a+72>>2]=0;return a|0}function Bn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=Q(0);d=sa-96|0;sa=d;f=J[J[a>>2]>>2];g=J[J[a+4>>2]>>2];a:{if(!(ua[J[J[b>>2]+24>>2]](b,f,g)|0)){break a}e=J[f+192>>2];J[d+88>>2]=-1;J[d+92>>2]=-1;J[d+84>>2]=f+4;J[d+80>>2]=f;J[d+76>>2]=e;J[d+72>>2]=0;e=J[g+192>>2];J[d+64>>2]=-1;J[d+68>>2]=-1;J[d+60>>2]=g+4;J[d+56>>2]=g;J[d+52>>2]=e;J[d+48>>2]=0;if(!J[a+8>>2]){b=ua[J[J[b>>2]+8>>2]](b,d+72|0,d+48|0,0,1)|0;J[a+8>>2]=b;if(!b){break a}}b=d+12|0;J[b+32>>2]=0;J[b+12>>2]=d+48;J[b+8>>2]=d+72;J[b+4>>2]=0;J[b>>2]=17852;a=J[a+8>>2];e=J[a>>2];if(J[c+8>>2]==1){ua[J[e+8>>2]](a,d+72|0,d+48|0,c,b);break a}h=Q(ua[J[e+12>>2]](a,f,g,c,b));if(!(h<N[c+12>>2])){break a}N[c+12>>2]=h;}sa=d+96|0;}function Wn(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0);f=J[a+44>>2];a=J[a+4>>2];a:{if(a){if(f){e=N[a+24>>2];d=N[f+24>>2];g=e>d?e:d;e=N[a+20>>2];d=N[f+20>>2];h=e>d?e:d;e=N[a+8>>2];d=N[f+8>>2];i=e<d?e:d;e=N[a+4>>2];d=N[f+4>>2];j=e<d?e:d;e=N[a+16>>2];d=N[f+16>>2];k=e>d?e:d;d=N[a>>2];e=N[f>>2];d=e>d?d:e;break a}l=N[a+28>>2];g=N[a+24>>2];h=N[a+20>>2];k=N[a+16>>2];e=N[a+12>>2];i=N[a+8>>2];j=N[a+4>>2];d=N[a>>2];break a}d=Q(0);if(!f){break a}l=N[f+28>>2];g=N[f+24>>2];h=N[f+20>>2];k=N[f+16>>2];e=N[f+12>>2];i=N[f+8>>2];j=N[f+4>>2];d=N[f>>2];}N[b+12>>2]=e;N[b+8>>2]=i;N[b+4>>2]=j;N[b>>2]=d;N[c+12>>2]=l;N[c+8>>2]=g;N[c+4>>2]=h;N[c>>2]=k;}function Qa(a){var b=0,c=0,d=0,e=0;e=(B(a),v(2));c=e>>>23&255;if((c|0)==255){a=Q(a*Q(6.2831854820251465));return Q(a/a)}b=e<<1;if(b>>>0<=2173837238){return (b|0)==-2121130058?Q(a*Q(0)):a}a:{if(!c){c=0;b=e<<9;if((b|0)>=0){while(1){c=c-1|0;b=b<<1;if((b|0)>=0){continue}break}}b=e<<1-c;break a}b=e&8388607|8388608;}if((c|0)>129){while(1){b:{d=b-13176795|0;if((d|0)<0){break b}b=d;if(b){break b}return Q(a*Q(0))}b=b<<1;c=c-1|0;if((c|0)>129){continue}break}c=129;}c:{d=b-13176795|0;if((d|0)<0){break c}b=d;if(b){break c}return Q(a*Q(0))}if(b>>>0<=8388607){while(1){c=c-1|0;d=b>>>0<4194304;b=b<<1;if(d){continue}break}}return x(2,e&-2147483648|((c|0)>0?b-8388608|c<<23:b>>>1-c|0)),C()}function Ej(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0);e=sa+-64|0;sa=e;J[e+44>>2]=b;J[e+40>>2]=21336;b=J[a+36>>2];J[e+56>>2]=J[a+32>>2];J[e+60>>2]=b;b=J[a+28>>2];J[e+48>>2]=J[a+24>>2];J[e+52>>2]=b;g=N[a+32>>2];f=N[a+28>>2];h=N[a+24>>2];i=Q(Q(1)/h);j=N[c>>2];k=N[d>>2];N[e+24>>2]=i*(h>=Q(0)?j:k);l=Q(Q(1)/f);m=N[c+4>>2];n=N[d+4>>2];N[e+28>>2]=l*(f>=Q(0)?m:n);o=N[d+8>>2];p=N[c+8>>2];J[e+36>>2]=0;J[e+20>>2]=0;N[e+12>>2]=l*(f<=Q(0)?m:n);N[e+8>>2]=i*(h<=Q(0)?j:k);f=Q(Q(1)/g);N[e+32>>2]=f*(g>=Q(0)?p:o);N[e+16>>2]=f*(g<=Q(0)?p:o);a=J[a+40>>2];ua[J[J[a>>2]+64>>2]](a,e+40|0,e+24|0,e+8|0);sa=e- -64|0;}function Ic(a,b){var c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0);a=Ob(a);J[a+4>>2]=0;J[a>>2]=18128;d=N[b>>2];f=N[b+4>>2];c=N[b+8>>2];J[a+48>>2]=0;e=Q(c*N[a+28>>2]);c=N[a+52>>2];N[a+44>>2]=e-c;N[a+40>>2]=Q(f*N[a+24>>2])-c;N[a+36>>2]=Q(d*N[a+20>>2])-c;e=c;c=N[b>>2];d=N[b+4>>2];g=c<d;c=Q(N[((N[b+8>>2]>(g?c:d)?!g:2)<<2)+b>>2]*Q(.10000000149011612));if(e>c){d=N[a+52>>2];f=Q(ua[J[J[a>>2]+48>>2]](a));h=Q(ua[J[J[a>>2]+48>>2]](a));N[a+52>>2]=c;c=N[a+44>>2];i=N[a+36>>2];j=N[a+40>>2];k=Q(ua[J[J[a>>2]+48>>2]](a));l=Q(ua[J[J[a>>2]+48>>2]](a));e=Q(ua[J[J[a>>2]+48>>2]](a));J[a+48>>2]=0;N[a+40>>2]=Q(f+j)-l;N[a+36>>2]=Q(d+i)-k;N[a+44>>2]=Q(h+c)-e;}return a}function He(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0),s=Q(0),t=Q(0),u=Q(0);e=Q(ua[J[J[a>>2]+48>>2]](a));j=N[b+52>>2];h=N[b+20>>2];m=N[b+24>>2];k=N[b+56>>2];i=N[b+36>>2];n=N[a+40>>2];f=N[b+40>>2];g=N[a+44>>2];l=N[b+48>>2];o=N[b>>2];p=N[b+4>>2];q=N[b+8>>2];r=N[b+16>>2];s=N[b+32>>2];t=N[a+36>>2];J[c+12>>2]=0;g=Q(e+g);u=Q(g*Q(R(f)));f=Q(e+t);e=Q(e+n);i=Q(u+Q(Q(f*Q(R(s)))+Q(e*Q(R(i)))));N[c+8>>2]=k-i;h=Q(Q(g*Q(R(m)))+Q(Q(f*Q(R(r)))+Q(e*Q(R(h)))));N[c+4>>2]=j-h;e=Q(Q(g*Q(R(q)))+Q(Q(f*Q(R(o)))+Q(e*Q(R(p)))));N[c>>2]=l-e;J[d+12>>2]=0;N[d+8>>2]=k+i;N[d+4>>2]=h+j;N[d>>2]=e+l;}function ik(a,b,c,d){a=a|0;b=b|0;c=c|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);f=N[a+20>>2];g=N[a+32>>2];h=N[a+24>>2];i=N[a+28>>2];e=Q(Q(g*N[b+8>>2])+Q(Q(h*N[b>>2])+Q(i*N[b+4>>2])));if(f<e){N[a+20>>2]=e;c=J[b+12>>2];J[a+12>>2]=J[b+8>>2];J[a+16>>2]=c;c=J[b+4>>2];J[a+4>>2]=J[b>>2];J[a+8>>2]=c;f=e;}e=Q(Q(g*N[b+24>>2])+Q(Q(h*N[b+16>>2])+Q(i*N[b+20>>2])));if(e>f){N[a+20>>2]=e;c=J[b+28>>2];J[a+12>>2]=J[b+24>>2];J[a+16>>2]=c;c=J[b+20>>2];J[a+4>>2]=J[b+16>>2];J[a+8>>2]=c;}else {e=f;}f=Q(Q(g*N[b+40>>2])+Q(Q(h*N[b+32>>2])+Q(i*N[b+36>>2])));if(e<f){N[a+20>>2]=f;c=J[b+44>>2];J[a+12>>2]=J[b+40>>2];J[a+16>>2]=c;c=J[b+36>>2];J[a+4>>2]=J[b+32>>2];J[a+8>>2]=c;}}function Ok(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0);d=sa-96|0;sa=d;J[d+44>>2]=0;J[d+48>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+52>>2]=1065353216;g=d- -64|0;J[g>>2]=0;J[g+4>>2]=0;J[d+76>>2]=0;J[d+80>>2]=0;J[d+72>>2]=1065353216;J[d+84>>2]=0;J[d+88>>2]=0;J[d+92>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+32>>2]=1065353216;ua[J[J[a>>2]+8>>2]](a,d+32|0,d+16|0,d);h=N[d+8>>2];i=N[d+24>>2];e=Q(h-i);m=Q(e*e);e=N[d>>2];j=N[d+16>>2];f=Q(e-j);n=Q(f*f);f=N[d+4>>2];k=N[d+20>>2];l=Q(f-k);N[c>>2]=Q(Y(Q(m+Q(n+Q(l*l)))))*Q(.5);J[b+12>>2]=0;N[b+8>>2]=Q(h+i)*Q(.5);N[b+4>>2]=Q(f+k)*Q(.5);N[b>>2]=Q(e+j)*Q(.5);sa=d+96|0;}function Li(a,b,c,d){a=a|0;b=b|0;c=c|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);f=N[a+84>>2];g=N[a+96>>2];h=N[a+88>>2];i=N[a+92>>2];e=Q(Q(g*N[b+8>>2])+Q(Q(h*N[b>>2])+Q(i*N[b+4>>2])));if(f<e){N[a+84>>2]=e;c=J[b+12>>2];J[a+12>>2]=J[b+8>>2];J[a+16>>2]=c;c=J[b+4>>2];J[a+4>>2]=J[b>>2];J[a+8>>2]=c;f=e;}e=Q(Q(g*N[b+24>>2])+Q(Q(h*N[b+16>>2])+Q(i*N[b+20>>2])));if(e>f){N[a+84>>2]=e;c=J[b+28>>2];J[a+12>>2]=J[b+24>>2];J[a+16>>2]=c;c=J[b+20>>2];J[a+4>>2]=J[b+16>>2];J[a+8>>2]=c;}else {e=f;}f=Q(Q(g*N[b+40>>2])+Q(Q(h*N[b+32>>2])+Q(i*N[b+36>>2])));if(e<f){N[a+84>>2]=f;c=J[b+44>>2];J[a+12>>2]=J[b+40>>2];J[a+16>>2]=c;c=J[b+36>>2];J[a+4>>2]=J[b+32>>2];J[a+8>>2]=c;}}function Bb(a){var b=0,c=0,d=Q(0),e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=0,l=0;c=sa-16|0;sa=c;d=N[a+156>>2];N[c>>2]=d;e=N[a+152>>2];N[c+4>>2]=e;f=N[a+160>>2];J[c+12>>2]=0;N[c+8>>2]=f;b=J[a+8>>2];a:{if(!b){J[8456]=J[8456]+1;k=a,l=Ic(ua[J[8258]](64,16)|0,c),J[k+8>>2]=l;break a}h=Q(ua[J[J[b>>2]+48>>2]](b));i=Q(ua[J[J[b>>2]+48>>2]](b));j=Q(ua[J[J[b>>2]+48>>2]](b));J[b+48>>2]=0;N[b+44>>2]=Q(f*N[b+28>>2])-j;N[b+40>>2]=Q(e*N[b+24>>2])-i;N[b+36>>2]=Q(d*N[b+20>>2])-h;g=d<e;d=Q(N[(((g?d:e)<f?!g:2)<<2)+c>>2]*Q(.10000000149011612));if(!(Q(ua[J[J[b>>2]+48>>2]](b))>d)){break a}ua[J[J[b>>2]+44>>2]](b,d);}b=J[a+4>>2];ua[J[J[b>>2]+8>>2]](b,J[a+8>>2]);sa=c+16|0;}function tc(a,b,c,d){var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0);i=N[c+24>>2];e=N[b+24>>2];l=Q(i-e);j=N[c+16>>2];g=N[b+16>>2];m=Q(j-g);f=N[a+4>>2];o=N[a>>2];k=N[c+20>>2];h=N[b+20>>2];n=Q(k-h);p=N[a+8>>2];a=Q(Q(e*Q(Q(m*f)-Q(o*n)))+Q(Q(g*Q(Q(n*p)-Q(f*l)))+Q(h*Q(Q(l*o)-Q(p*m)))))<Q(0);if(a){f=Q(Q(e*e)+Q(Q(g*g)+Q(h*h)));a:{if(Q(Q(e*l)+Q(Q(g*m)+Q(h*n)))>Q(0)){break a}f=Q(Q(i*i)+Q(Q(j*j)+Q(k*k)));if(Q(Q(i*l)+Q(Q(j*m)+Q(k*n)))<Q(0)){break a}f=Q(Q(Q(e*e)+Q(Q(g*g)+Q(h*h)))*Q(Q(i*i)+Q(Q(j*j)+Q(k*k))));e=Q(Q(e*i)+Q(Q(g*j)+Q(k*h)));e=Q(Q(f-Q(e*e))/Q(Q(l*l)+Q(Q(m*m)+Q(n*n))));f=e>Q(0)?e:Q(0);}N[d>>2]=Y(f);}return a}function je(a){a=a|0;var b=0,c=0,d=0,e=0;J[a>>2]=20812;b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=0;H[a+60|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;e=J[a+28>>2];if((e|0)>0){while(1){b=J[a+36>>2]+P(c,36)|0;d=J[b+12>>2];if(!(d?!d|!K[b+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}J[b+12>>2]=0;H[b+16|0]=1;J[b+4>>2]=0;J[b+8>>2]=0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}b=J[a+36>>2];if(!(b?!b|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+36>>2]=0;H[a+40|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;return a|0}function Kd(a){H[a+20|0]=1;J[a>>2]=23736;J[a+16>>2]=0;H[a+40|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;J[a+36>>2]=0;H[a+60|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;J[a+56>>2]=0;H[a+80|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;J[a+76>>2]=0;H[a+100|0]=1;J[a+68>>2]=0;J[a+72>>2]=0;J[a+96>>2]=0;H[a+120|0]=1;J[a+88>>2]=0;J[a+92>>2]=0;J[a+116>>2]=0;H[a+140|0]=1;J[a+108>>2]=0;J[a+112>>2]=0;J[a+136>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;H[a+160|0]=1;J[a+156>>2]=0;J[a+148>>2]=0;J[a+152>>2]=0;H[a+180|0]=1;J[a+176>>2]=0;J[a+168>>2]=0;J[a+172>>2]=0;H[a+208|0]=1;J[a+232>>2]=0;J[a+204>>2]=0;J[a+196>>2]=0;J[a+200>>2]=0;J[a+224>>2]=0;J[a+212>>2]=952;J[a+216>>2]=953;J[a+220>>2]=954;return a}function Gk(a){a=a|0;var b=Q(0),c=0,d=0,e=0,f=0;c=sa-32|0;sa=c;J[a+56>>2]=-581039253;J[a+60>>2]=-581039253;J[a+40>>2]=1566444395;J[a+44>>2]=1566444395;d=a- -64|0;J[d>>2]=-581039253;J[d+4>>2]=0;J[a+48>>2]=1566444395;J[a+52>>2]=0;if(J[a+24>>2]>0){while(1){d=J[a+32>>2]+P(e,80)|0;f=J[d+64>>2];ua[J[J[f>>2]+8>>2]](f,d,c+16|0,c);b=N[c+16>>2];if(b<N[a+40>>2]){N[a+40>>2]=b;}b=N[c>>2];if(b>N[a+56>>2]){N[a+56>>2]=b;}b=N[c+20>>2];if(b<N[a+44>>2]){N[a+44>>2]=b;}b=N[c+4>>2];if(b>N[a+60>>2]){N[a+60>>2]=b;}b=N[c+24>>2];if(b<N[a+48>>2]){N[a+48>>2]=b;}b=N[c+8>>2];if(b>N[a+64>>2]){N[a+64>>2]=b;}e=e+1|0;if((e|0)<J[a+24>>2]){continue}break}}sa=c+32|0;}function hb(a){var b=0,c=0,d=Q(0),e=0;e=(B(a),v(2));c=e&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return Q(+a*1.5707963267948966+752316384526264e-51)}return Q(Q(0)/Q(a-a))}a:{if(c>>>0<=1056964607){if(c-8388608>>>0<956301312){break a}d=Q(a*a);return Q(Q(a*Q(Q(Q(Q(d*Q(Q(d*Q(-.008656363002955914))+Q(-.04274342209100723)))+Q(.16666586697101593))*d)/Q(Q(d*Q(-.7066296339035034))+Q(1))))+a)}a=Q(Q(Q(1)-Q(R(a)))*Q(.5));b=Y(+a);b=b+b*+Q(Q(Q(Q(a*Q(Q(a*Q(-.008656363002955914))+Q(-.04274342209100723)))+Q(.16666586697101593))*a)/Q(Q(a*Q(-.7066296339035034))+Q(1)));a=Q(1.5707963267948966-(b+b));a=(e|0)<0?Q(-a):a;}return a}function Iq(a,b){a=a|0;b=b|0;a:{b:{c:{switch(b|0){case 0:if(!a){break b}if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}return;case 1:if(!a){break b}Ga(a);return;case 2:if(!a){break b}Ga(a);return;case 3:if(!a){break b}break a;case 4:if(!a){break b}break a;case 5:if(!a){break b}break a;case 7:if(!a){break b}break a;case 8:if(!a){break b}break a;case 9:if(!a){break b}break a;case 10:if(!a){break b}break a;case 11:if(!a){break b}break a;case 12:if(!a){break b}break a;case 13:if(!a){break b}break a;case 6:if(!a){break b}break a;case 14:break c;default:break b}}if(!a){break b}ua[J[J[a>>2]+4>>2]](a);}return}ua[J[J[a>>2]+4>>2]](a);}function zd(a,b,c,d){var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0);f=Ma(c);e=N[b+444>>2];c=Na(c);a:{if(!(Q(R(f))>Q(1.1920928955078125e-7))){h=Q(f*f);break a}h=Q(f*f);g=Q(Q(c*c)/h);i=Q(g/Q(e*e));e=N[b+448>>2];e=Q(Y(Q(Q(g+Q(1))/Q(i+Q(Q(1)/Q(e*e))))));}J[a+12>>2]=0;e=Q(e*Q(.5));g=Q(Na(e)/Q(Y(Q(Q(c*c)+Q(h+Q(0))))));c=Q(g*Q(-c));e=Ma(e);i=Q(e*Q(0));h=Q(g*Q(0));j=Q(h*Q(0));k=Q(Q(i+Q(c*d))-j);f=Q(f*g);g=Q(Q(i+j)-Q(f*d));j=Q(c*Q(-0));i=Q(j+Q(Q(f*Q(-0))-Q(h*d)));d=Q(j+Q(Q(e*d)+Q(f*Q(0))));N[a+8>>2]=Q(k*h)+Q(Q(Q(e*g)-Q(i*c))-Q(d*f));N[a+4>>2]=Q(d*c)+Q(Q(Q(e*k)-Q(i*f))-Q(g*h));N[a>>2]=Q(g*f)+Q(Q(Q(e*d)-Q(i*h))-Q(k*c));}function Oc(a){a=a|0;var b=0,c=0,d=0,e=0;J[a>>2]=16192;d=J[a+52>>2];if((d|0)>0){while(1){e=b<<2;c=J[e+J[a+60>>2]>>2];if(c){ua[J[J[c>>2]>>2]](c)|0;c=J[a+4>>2];ua[J[J[c>>2]+60>>2]](c,J[J[a+60>>2]+e>>2]);}b=b+1|0;if((d|0)!=(b|0)){continue}break}}b=J[a+60>>2];if(!(b?!b|!K[a- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+60>>2]=0;H[a+64|0]=1;J[a+52>>2]=0;J[a+56>>2]=0;b=J[a+40>>2];if(!(b?!b|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+40>>2]=0;H[a+44|0]=1;J[a+32>>2]=0;J[a+36>>2]=0;b=J[a+20>>2];if(!(b?!b|!K[a+24|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+20>>2]=0;H[a+24|0]=1;J[a+12>>2]=0;J[a+16>>2]=0;return a|0}function Zf(){var a=0;H[33090]=0;I[16544]=20565;H[33099]=2;J[8275]=1162103123;J[8278]=1314344772;H[33111]=4;H[33123]=4;H[33104]=0;H[33135]=6;H[33116]=0;J[8281]=K[9159]|K[9160]<<8|(K[9161]<<16|K[9162]<<24);H[33130]=0;a=K[9163]|K[9164]<<8;H[33128]=a;H[33129]=a>>>8;J[8447]=0;J[8446]=324;If();J[8447]=J[8948];J[8948]=33784;H[35767]=4;I[17872]=20565;H[35755]=2;H[35779]=4;J[8939]=1162103123;H[35791]=6;J[8942]=1314344772;J[8945]=K[9159]|K[9160]<<8|(K[9161]<<16|K[9162]<<24);a=K[9163]|K[9164]<<8;H[35784]=a;H[35785]=a>>>8;H[35746]=0;H[35760]=0;H[35772]=0;H[35786]=0;J[8949]=1063;J[8950]=0;pd();J[8950]=J[8948];J[8948]=35796;}function Ek(a,b,c){a=a|0;b=Q(b);c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=0,i=Q(0);d=sa-96|0;sa=d;J[d+44>>2]=0;J[d+48>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+52>>2]=1065353216;h=d- -64|0;J[h>>2]=0;J[h+4>>2]=0;J[d+76>>2]=0;J[d+80>>2]=0;J[d+72>>2]=1065353216;J[d+84>>2]=0;J[d+88>>2]=0;J[d+92>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+32>>2]=1065353216;ua[J[J[a>>2]+8>>2]](a,d+32|0,d+16|0,d);e=N[d+24>>2];i=N[d+8>>2];b=Q(b/Q(12));f=Q(Q(N[d>>2]-N[d+16>>2])*Q(.5));f=Q(f+f);f=Q(f*f);g=Q(Q(N[d+4>>2]-N[d+20>>2])*Q(.5));g=Q(g+g);g=Q(g*g);N[c+8>>2]=b*Q(f+g);e=Q(Q(i-e)*Q(.5));e=Q(e+e);e=Q(e*e);N[c+4>>2]=b*Q(f+e);N[c>>2]=b*Q(g+e);sa=d+96|0;}function wh(a,b){a=a|0;b=Q(b);var c=0,d=0,e=0,f=0,g=0;d=sa-16|0;sa=d;ua[J[8262]](5872);c=J[a+84>>2];if(c){ua[c|0](a,b);}ua[J[J[a>>2]+140>>2]](a,b);c=0;J[a+32>>2]=0;N[a+28>>2]=b;f=a,g=ua[J[J[a>>2]+20>>2]](a)|0,J[f+48>>2]=g;ua[J[J[a>>2]+164>>2]](a,b);ua[J[J[a>>2]+44>>2]](a);ua[J[J[a>>2]+148>>2]](a);N[a+104>>2]=b;ua[J[J[a>>2]+152>>2]](a,a+92|0);ua[J[J[a>>2]+144>>2]](a,b);ua[J[8262]](4095);if(J[a+296>>2]>0){while(1){e=J[J[a+304>>2]+(c<<2)>>2];ua[J[J[e>>2]+8>>2]](e,a,b);c=c+1|0;if((c|0)<J[a+296>>2]){continue}break}}ua[J[8263]]();ua[J[J[a>>2]+156>>2]](a,b);c=J[a+80>>2];if(c){ua[c|0](a,b);}ua[J[8263]]();sa=d+16|0;}function Fj(a,b){a=a|0;b=b|0;var c=Q(0),d=0;d=sa-96|0;sa=d;tb(a,b);H[a+96|0]=1;if(!K[34e3]){J[8477]=0;J[8478]=0;J[8476]=1065353216;J[8479]=0;J[8480]=0;J[8482]=0;J[8483]=0;J[8481]=1065353216;J[8484]=0;J[8485]=0;J[8489]=0;J[8490]=0;J[8488]=-1082130432;J[8486]=1065353216;J[8487]=0;J[8491]=0;J[8492]=0;J[8494]=0;J[8495]=0;J[8493]=-1082130432;J[8496]=0;J[8497]=0;J[8498]=-1082130432;J[8499]=0;H[34e3]=1;}b=Fa(d,0,96);ua[J[J[a>>2]+76>>2]](a,33904,b,6);c=N[a+52>>2];N[a+80>>2]=c+N[b>>2];N[a+64>>2]=N[b+48>>2]-c;N[a+84>>2]=c+N[b+20>>2];N[a+68>>2]=N[b+68>>2]-c;N[a+88>>2]=c+N[b+40>>2];N[a+72>>2]=N[b+88>>2]-c;sa=b+96|0;}function Zm(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=d|0;e=e|0;var f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=Q(0),p=Q(0),q=Q(0),r=Q(0);f=sa-48|0;sa=f;J[f+40>>2]=e;J[f+36>>2]=d;J[f+44>>2]=J[a+52>>2];j=N[a- -64>>2];k=N[a+60>>2];l=N[a+80>>2];m=N[a+72>>2];n=N[a+76>>2];o=N[a+96>>2];p=N[a+88>>2];q=N[a+92>>2];r=N[a+56>>2];g=N[b+8>>2];h=N[b>>2];i=N[b+4>>2];b=J[a+48>>2];J[f+28>>2]=0;N[f+24>>2]=Q(o*g)+Q(Q(p*h)+Q(i*q));N[f+20>>2]=Q(l*g)+Q(Q(m*h)+Q(i*n));N[f+32>>2]=c;J[f+8>>2]=b;N[f+16>>2]=Q(j*g)+Q(Q(r*h)+Q(k*i));J[f+12>>2]=f+36;a=J[a+44>>2];c=Q(ua[J[J[a>>2]+12>>2]](a,f+8|0,1));sa=f+48|0;return Q(c)}function eg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(Ka(a,J[b+8>>2],f)){gc(b,c,d,e);return}g=K[b+53|0];j=J[a+12>>2];H[b+53|0]=0;h=K[b+52|0];H[b+52|0]=0;m=a+16|0;fc(m,b,c,d,e,f);k=K[b+53|0];g=g|k;l=K[b+52|0];h=h|l;i=a+24|0;j=(j<<3)+m|0;a:{if(i>>>0>=j>>>0){break a}while(1){if(K[b+54|0]){break a}b:{if(l){if(J[b+24>>2]==1){break a}if(K[a+8|0]&2){break b}break a}if(!k){break b}if(!(H[a+8|0]&1)){break a}}I[b+52>>1]=0;fc(i,b,c,d,e,f);k=K[b+53|0];g=k|g;l=K[b+52|0];h=l|h;i=i+8|0;if(j>>>0>i>>>0){continue}break}}H[b+53|0]=(g&255)!=0;H[b+52|0]=(h&255)!=0;}function Ac(a){var b=0,c=Q(0);b=sa-96|0;sa=b;H[a+96|0]=1;if(!K[34e3]){J[8477]=0;J[8478]=0;J[8476]=1065353216;J[8479]=0;J[8480]=0;J[8482]=0;J[8483]=0;J[8481]=1065353216;J[8484]=0;J[8485]=0;J[8489]=0;J[8490]=0;J[8488]=-1082130432;J[8486]=1065353216;J[8487]=0;J[8491]=0;J[8492]=0;J[8494]=0;J[8495]=0;J[8493]=-1082130432;J[8496]=0;J[8497]=0;J[8498]=-1082130432;J[8499]=0;H[34e3]=1;}b=Fa(b,0,96);ua[J[J[a>>2]+76>>2]](a,33904,b,6);c=N[a+52>>2];N[a+80>>2]=N[b>>2]+c;N[a+64>>2]=N[b+48>>2]-c;N[a+84>>2]=c+N[b+20>>2];N[a+68>>2]=N[b+68>>2]-c;N[a+88>>2]=c+N[b+40>>2];N[a+72>>2]=N[b+88>>2]-c;sa=b+96|0;}function rf(a){var b=0,c=0,d=0,e=0,f=0;J[a+24>>2]=0;J[a+68>>2]=0;H[a+20|0]=1;J[a>>2]=12284;J[a+16>>2]=0;H[a+44|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;J[a+40>>2]=0;H[a- -64|0]=1;J[a+32>>2]=0;J[a+36>>2]=0;J[a+60>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;J[8456]=J[8456]+1;e=ua[J[8258]](32,16)|0;f=J[a+8>>2];if((f|0)>0){while(1){c=d<<4;b=c+e|0;c=c+J[a+16>>2]|0;J[b>>2]=J[c>>2];J[b+4>>2]=J[c+4>>2];J[b+8>>2]=J[c+8>>2];J[b+12>>2]=J[c+12>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}}b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=e;H[a+20|0]=1;J[a+12>>2]=2;qf(a);return a}function Mi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=0,h=Q(0),i=Q(0),j=0,k=0;a:{e=N[b>>2];f=N[b+16>>2];i=e<f?e:f;h=N[b+32>>2];if(N[a+24>>2]<(h>i?i:h)){break a}g=e>f;if(N[(h<(g?e:f)?!g<<4:32)+b>>2]<N[a+8>>2]){break a}e=N[b+8>>2];g=b+24|0;f=N[g>>2];i=e<f?e:f;j=b+40|0;h=N[j>>2];if(N[a+32>>2]<(h>i?i:h)){break a}k=g;g=e>f;if(N[(h<(g?e:f)?g?b+8|0:k:j)>>2]<N[a+16>>2]){break a}e=N[b+4>>2];g=b+20|0;f=N[g>>2];i=e<f?e:f;j=b+36|0;h=N[j>>2];if(N[a+28>>2]<(h>i?i:h)){break a}k=g;g=e>f;if(N[(h<(g?e:f)?g?b+4|0:k:j)>>2]<N[a+12>>2]){break a}a=J[a+4>>2];ua[J[J[a>>2]+8>>2]](a,b,c,d);}}function hk(a,b,c){a=a|0;b=Q(b);c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0);f=N[a+44>>2];d=N[a+40>>2];i=N[a+36>>2];j=Q(ua[J[J[a>>2]+48>>2]](a));d=Q(d+Q(ua[J[J[a>>2]+48>>2]](a)));k=Q(ua[J[J[a>>2]+48>>2]](a));e=Q(b*Q(.5));g=Q(b*Q(.25));h=Q(b/Q(12));b=Q(j+i);a:{b:{switch(J[a+60>>2]){case 0:f=e;e=Q(d*d);d=Q(f*e);b=Q(Q(h*Q(b*Q(b*Q(4))))+Q(g*e));e=b;break a;case 2:b=Q(b*b);e=Q(e*b);d=Q(k+f);d=Q(Q(h*Q(d*Q(d*Q(4))))+Q(g*b));b=d;break a;default:break b}}f=e;e=Q(b*b);b=Q(f*e);d=Q(Q(h*Q(d*Q(d*Q(4))))+Q(g*e));e=d;}J[c+12>>2]=0;N[c+8>>2]=e;N[c+4>>2]=b;N[c>>2]=d;}function $p(a){a=a|0;var b=0;J[a>>2]=30888;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+104>>2]=0;H[a+108|0]=1;J[a+96>>2]=0;J[a+100>>2]=0;b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+84>>2]=0;H[a+88|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;J[a>>2]=30816;return a|0}function $d(a){a=a|0;var b=0;J[a>>2]=22040;b=J[a+156>>2];if(!(b?!b|!K[a+160|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+156>>2]=0;H[a+160|0]=1;J[a+148>>2]=0;J[a+152>>2]=0;b=J[a+136>>2];if(!(b?!b|!K[a+140|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+136>>2]=0;H[a+140|0]=1;J[a+128>>2]=0;J[a+132>>2]=0;b=J[a+116>>2];if(!(b?!b|!K[a+120|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+116>>2]=0;H[a+120|0]=1;J[a+108>>2]=0;J[a+112>>2]=0;b=J[a+96>>2];if(!(b?!b|!K[a+100|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+96>>2]=0;H[a+100|0]=1;J[a+88>>2]=0;J[a+92>>2]=0;return zc(a)|0}function Pd(a,b){var c=Q(0),d=0,e=0,f=0,g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=0;f=J[a>>2];d=0;a:{if((f|0)<=0){break a}i=N[a+308>>2];j=N[b+8>>2];c=Q(j-N[a+12>>2]);g=Q(c*c);k=N[b>>2];c=Q(k-N[a+4>>2]);h=Q(c*c);l=N[b+4>>2];c=Q(l-N[a+8>>2]);d=1;if(i>=Q(g+Q(h+Q(c*c)))){break a}while(1){e=e+1|0;if((f|0)!=(e|0)){d=(e<<4)+a|0;c=Q(j-N[d+12>>2]);g=Q(c*c);c=Q(k-N[d+4>>2]);h=Q(c*c);c=Q(l-N[d+8>>2]);if(!(Q(g+Q(h+Q(c*c)))<=i)){continue}}break}d=(e|0)<(f|0);}if(!(N[b+12>>2]!=N[a+304>>2]|N[b+8>>2]!=N[a+300>>2]|N[b+4>>2]!=N[a+296>>2])){m=N[b>>2]==N[a+292>>2];}return d|m}function lq(){var a=0,b=0;a=sa-32|0;sa=a;if(!K[33644]){J[8375]=-1;J[8376]=0;J[8373]=1065353216;J[8374]=1;H[33524]=1;J[8372]=31016;J[8380]=0;J[8378]=0;J[8379]=0;b=J[a+20>>2];J[8382]=J[a+16>>2];J[8383]=b;b=J[a+28>>2];J[8384]=J[a+24>>2];J[8385]=b;b=J[a+4>>2];J[8386]=J[a>>2];J[8387]=b;b=J[a+12>>2];J[8388]=J[a+8>>2];J[8389]=b;H[33576]=1;J[8393]=0;H[33596]=1;J[8391]=0;J[8392]=0;J[8398]=0;J[8396]=0;J[8397]=0;H[33616]=1;J[8403]=0;J[8401]=0;J[8402]=0;H[33636]=1;J[8372]=30968;J[8408]=0;H[33640]=1;J[8406]=0;J[8407]=0;J[8374]=-1;H[33644]=1;}sa=a+32|0;return 33488}function gg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Ka(a,J[b+8>>2],e)){if(!(J[b+28>>2]==1|J[b+4>>2]!=(c|0))){J[b+28>>2]=d;}return}a:{if(Ka(a,J[b>>2],e)){if(!(J[b+16>>2]!=(c|0)&J[b+20>>2]!=(c|0))){if((d|0)!=1){break a}J[b+32>>2]=1;return}J[b+32>>2]=d;b:{if(J[b+44>>2]==4){break b}I[b+52>>1]=0;a=J[a+8>>2];ua[J[J[a>>2]+20>>2]](a,b,c,c,1,e);if(K[b+53|0]){J[b+44>>2]=3;if(!K[b+52|0]){break b}break a}J[b+44>>2]=4;}J[b+20>>2]=c;J[b+40>>2]=J[b+40>>2]+1;if(J[b+36>>2]!=1|J[b+24>>2]!=2){break a}H[b+54|0]=1;return}a=J[a+8>>2];ua[J[J[a>>2]+24>>2]](a,b,c,d,e);}}function Vp(a){a=a|0;var b=0;J[a>>2]=31016;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+104>>2]=0;H[a+108|0]=1;J[a+96>>2]=0;J[a+100>>2]=0;b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+84>>2]=0;H[a+88|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;return a|0}function bk(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=0,f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0);e=sa-16|0;sa=e;ua[J[J[b>>2]+68>>2]](e,b,c);h=J[e+12>>2];J[a+8>>2]=J[e+8>>2];J[a+12>>2]=h;h=J[e+4>>2];J[a>>2]=J[e>>2];J[a+4>>2]=h;if(Q(ua[J[J[b>>2]+48>>2]](b))!=Q(0)){f=N[c+4>>2];d=N[c>>2];g=N[c+8>>2];i=Q(ua[J[J[b>>2]+48>>2]](b));b=Q(Q(g*g)+Q(Q(d*d)+Q(f*f)))<Q(14210854715202004e-30);d=b?Q(-1):d;j=d;g=b?Q(-1):g;f=b?Q(-1):f;d=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(d*d)+Q(f*f))))));N[a>>2]=N[a>>2]+Q(i*Q(j*d));N[a+4>>2]=N[a+4>>2]+Q(i*Q(f*d));N[a+8>>2]=N[a+8>>2]+Q(i*Q(g*d));}sa=e+16|0;}function mm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0),n=Q(0);h=N[a+96>>2];i=N[a+80>>2];k=N[a+84>>2];l=N[a+104>>2];j=N[a+100>>2];e=N[a+68>>2];f=N[a+72>>2];m=N[a+88>>2];g=N[a+64>>2];J[c+12>>2]=0;i=Q(i-g);j=Q(j-e);g=Q(h-g);h=Q(k-e);e=Q(Q(i*j)-Q(g*h));k=e;n=Q(e*e);e=h;h=Q(l-f);f=Q(m-f);e=Q(Q(e*h)-Q(j*f));f=Q(Q(f*g)-Q(h*i));g=Q(Q(1)/Q(Y(Q(n+Q(Q(e*e)+Q(f*f))))));N[c+8>>2]=k*g;N[c+4>>2]=f*g;N[c>>2]=e*g;b=J[a+76>>2];J[d+8>>2]=J[a+72>>2];J[d+12>>2]=b;b=J[a+68>>2];J[d>>2]=J[a+64>>2];J[d+4>>2]=b;}function ui(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=d|0;var e=0;a:{b:{c:{if(d>>>0<=2){d:{switch(b-1|0){case 1:b=((d<<2)+a|0)+728|0;e=2;break b;case 3:b=((d<<2)+a|0)+744|0;e=1;break b;case 0:b=((d<<2)+a|0)+760|0;e=8;break b;case 2:break d;default:break a}}b=((d<<2)+a|0)+776|0;break c}e=d-3|0;if(e>>>0>2){break a}e:{switch(b-1|0){case 1:b=(P(e,88)+a|0)+980|0;e=2;break b;case 3:b=(P(e,88)+a|0)+984|0;e=1;break b;case 0:b=(P(e,88)+a|0)+988|0;e=8;break b;case 2:break e;default:break a}}b=(P(e,88)+a|0)+992|0;}e=4;}N[b>>2]=c;J[a+1456>>2]=J[a+1456>>2]|e<<(d<<2);}}function Sr(){var a=0,b=0;a=sa-32|0;sa=a;if(!K[33388]){J[8312]=0;J[8309]=1065353216;J[8310]=0;H[33268]=1;J[8308]=30888;J[8316]=0;J[8314]=0;J[8315]=0;b=J[a+20>>2];J[8318]=J[a+16>>2];J[8319]=b;b=J[a+28>>2];J[8320]=J[a+24>>2];J[8321]=b;b=J[a+4>>2];J[8322]=J[a>>2];J[8323]=b;b=J[a+12>>2];J[8324]=J[a+8>>2];J[8325]=b;H[33320]=1;J[8329]=0;H[33340]=1;J[8327]=0;J[8328]=0;J[8334]=0;J[8332]=0;J[8333]=0;H[33360]=1;J[8339]=0;J[8337]=0;J[8338]=0;H[33380]=1;J[8308]=30840;J[8344]=0;H[33384]=1;J[8342]=0;J[8343]=0;J[8311]=-1;H[33388]=1;}sa=a+32|0;return 33232}function Vl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(b|0)!=8;if(!(d|(c|0)!=8)){return J[a+56>>2]}if(!((c|0)!=1|d)){return J[a+72>>2]}if(!((b|0)!=1|(c|0)!=8)){return J[a+76>>2]}if(!(b|c)){return J[a+68>>2]}if(!((c|0)!=28|(b|0)>19)){return J[a+84>>2]}if(!((b|0)!=28|(c|0)>19)){return J[a+80>>2]}a:{if((b|0)<=19){if((c|0)<=19){return J[a+28>>2]}if(c-21>>>0>8){break a}return J[a+32>>2]}if(!((c|0)>19|b-21>>>0>8)){return J[a+36>>2]}if((b|0)!=31){break a}if((c|0)==31){return J[a+44>>2]}return J[a+40>>2]}if((c|0)==31){return J[a+48>>2]}return J[a+52>>2]}function Ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=0,h=0,i=0,j=Q(0),k=Q(0);e=Q(N[b+68>>2]*Q(.5));g=J[b+72>>2];i=J[b+76>>2];h=i<<2;d=N[c+8>>2];j=Q(d*d);d=N[c>>2];f=Q(d*d);d=N[c+4>>2];a:{b:{if(N[h+c>>2]>Q(N[b+60>>2]*Q(Y(Q(j+Q(f+Q(d*d))))))){J[(g<<2)+a>>2]=0;N[a+h>>2]=e;c=J[b+80>>2];break b}d=N[(g<<2)+c>>2];h=c;c=J[b+80>>2];f=N[h+(c<<2)>>2];k=Q(Y(Q(Q(d*d)+Q(f*f))));if(k>Q(1.1920928955078125e-7)){j=d;d=Q(N[b+64>>2]/k);N[(g<<2)+a>>2]=j*d;N[(i<<2)+a>>2]=-e;e=Q(f*d);break a}J[(g<<2)+a>>2]=0;N[(i<<2)+a>>2]=-e;}e=Q(0);}N[(c<<2)+a>>2]=e;}function wf(a){a=a|0;var b=0,c=0,d=0,e=0;J[a>>2]=11916;if(K[a+152|0]){b=J[a+96>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+96>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}e=J[a+160>>2];if((e|0)>0){while(1){b=J[a+168>>2]+P(c,20)|0;d=J[b+12>>2];if(!(d?!d|!K[b+16|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](d);}H[b+16|0]=1;J[b+12>>2]=0;J[b+4>>2]=0;J[b+8>>2]=0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}b=J[a+168>>2];if(!(b?!b|!K[a+172|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+168>>2]=0;H[a+172|0]=1;J[a+160>>2]=0;J[a+164>>2]=0;$c(a+44|0);$c(a+4|0);return a|0}function Vh(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var j=Q(0),k=Q(0);a:{if(!J[h+52>>2]){break a}b=J[h+20>>2];if((b|0)<=0){break a}c=0;d=J[a+28>>2];if((d|0)<=0){break a}while(1){e=0;j=Q(0);if((d|0)>0){while(1){f=J[a+16>>2];b=J[a+36>>2]+P(J[J[a+116>>2]+(e<<2)>>2],152)|0;k=Q(ua[J[a+220>>2]](f+P(J[b+144>>2],244)|0,P(J[b+148>>2],244)+f|0,b));j=Q(Q(k*k)+j);e=e+1|0;if((e|0)!=(d|0)){continue}break}b=J[h+20>>2];}if((b-1|0)<=(c|0)|N[h+92>>2]>=j){break a}c=c+1|0;if((c|0)>=(b|0)){break a}d=J[a+28>>2];continue}}}function Ho(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=Q(d);e=e|0;f=f|0;var g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0);e=sa-16|0;sa=e;g=N[b>>2];h=N[c>>2];i=N[b+4>>2];j=N[c+4>>2];k=N[b+8>>2];l=N[c+8>>2];J[e+12>>2]=0;N[e+8>>2]=k+Q(l*d);N[e+4>>2]=i+Q(j*d);N[e>>2]=g+Q(h*d);ua[J[J[a>>2]+16>>2]](a,b,e,f);d=N[b>>2];g=N[c>>2];h=N[b+4>>2];i=N[c+4>>2];j=N[b+8>>2];k=N[c+8>>2];J[e+12>>2]=0;N[e+8>>2]=j+Q(k*Q(.009999999776482582));N[e+4>>2]=h+Q(i*Q(.009999999776482582));N[e>>2]=d+Q(g*Q(.009999999776482582));ua[J[J[a>>2]+16>>2]](a,b,e,f);sa=e+16|0;}function oq(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0);g=N[b+8>>2];d=N[b+4>>2];e=N[a+408>>2];N[a+472>>2]=Q(N[b>>2]*e)+N[a+472>>2];h=d;d=N[a+412>>2];N[a+476>>2]=Q(h*d)+N[a+476>>2];f=N[a+416>>2];N[a+480>>2]=Q(g*f)+N[a+480>>2];k=N[b>>2];g=N[c>>2];i=N[c+4>>2];f=Q(f*N[b+8>>2]);d=Q(d*N[b+4>>2]);j=N[c+8>>2];N[a+488>>2]=Q(Q(Q(i*f)-Q(d*j))*N[a+604>>2])+N[a+488>>2];h=N[a+612>>2];e=Q(e*k);N[a+492>>2]=Q(Q(Q(j*e)-Q(f*g))*N[a+608>>2])+N[a+492>>2];N[a+496>>2]=Q(h*Q(Q(g*d)-Q(e*i)))+N[a+496>>2];}function tm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=0,l=Q(0),m=Q(0),n=0;if((d|0)>0){n=a- -64|0;while(1){e=g<<4;f=e+c|0;e=b+e|0;h=N[e+8>>2];i=N[e>>2];j=N[e+4>>2];l=Q(Q(h*N[a+72>>2])+Q(Q(i*N[a+64>>2])+Q(j*N[a+68>>2])));m=Q(Q(h*N[a+88>>2])+Q(Q(i*N[a+80>>2])+Q(j*N[a+84>>2])));e=l<m;e=((Q(Q(h*N[a+104>>2])+Q(Q(i*N[a+96>>2])+Q(j*N[a+100>>2])))>(e?m:l)?2:e)<<4)+n|0;k=J[e+4>>2];J[f>>2]=J[e>>2];J[f+4>>2]=k;k=J[e+12>>2];J[f+8>>2]=J[e+8>>2];J[f+12>>2]=k;g=g+1|0;if((g|0)!=(d|0)){continue}break}}}function $b(a,b,c){var d=0;d=J[a+4>>2];a:{if(d){J[a+4>>2]=0;break a}J[8456]=J[8456]+1;d=ua[J[8258]](44,16)|0;J[d>>2]=0;J[d+4>>2]=0;J[d+40>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;}J[d+36>>2]=c;J[d+32>>2]=0;J[d+40>>2]=0;c=J[b+4>>2];J[d>>2]=J[b>>2];J[d+4>>2]=c;c=J[b+12>>2];J[d+8>>2]=J[b+8>>2];J[d+12>>2]=c;c=J[b+20>>2];J[d+16>>2]=J[b+16>>2];J[d+20>>2]=c;c=J[b+28>>2];J[d+24>>2]=J[b+24>>2];J[d+28>>2]=c;ac(a,J[a>>2],d);J[a+12>>2]=J[a+12>>2]+1;return d}function Wl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(b|0)!=8;if(!(d|(c|0)!=8)){return J[a+56>>2]}if(!((c|0)!=1|d)){return J[a+72>>2]}if(!((b|0)!=1|(c|0)!=8)){return J[a+76>>2]}if(!((c|0)!=28|(b|0)>19)){return J[a+84>>2]}if(!((b|0)!=28|(c|0)>19)){return J[a+80>>2]}a:{if((b|0)<=19){if((c|0)<=19){return J[a+28>>2]}if(c-21>>>0>8){break a}return J[a+32>>2]}if(!((c|0)>19|b-21>>>0>8)){return J[a+36>>2]}if((b|0)!=31){break a}if((c|0)==31){return J[a+44>>2]}return J[a+40>>2]}if((c|0)==31){return J[a+48>>2]}return J[a+52>>2]}function vj(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=0,f=Q(0),g=Q(0),h=0,i=Q(0),j=Q(0);e=sa-16|0;sa=e;ua[J[J[b>>2]+68>>2]](e,b,c);h=J[e+12>>2];J[a+8>>2]=J[e+8>>2];J[a+12>>2]=h;h=J[e+4>>2];J[a>>2]=J[e>>2];J[a+4>>2]=h;f=N[c+4>>2];d=N[c>>2];g=N[c+8>>2];i=Q(ua[J[J[b>>2]+48>>2]](b));b=Q(Q(g*g)+Q(Q(d*d)+Q(f*f)))<Q(14210854715202004e-30);d=b?Q(-1):d;j=d;g=b?Q(-1):g;f=b?Q(-1):f;d=Q(Q(1)/Q(Y(Q(Q(g*g)+Q(Q(d*d)+Q(f*f))))));N[a>>2]=N[a>>2]+Q(i*Q(j*d));N[a+4>>2]=N[a+4>>2]+Q(i*Q(f*d));N[a+8>>2]=N[a+8>>2]+Q(i*Q(g*d));sa=e+16|0;}function rm(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0);f=N[a+96>>2];h=N[a+80>>2];j=N[a+84>>2];k=N[a+104>>2];i=N[a+100>>2];d=N[a+68>>2];e=N[a+72>>2];l=N[a+88>>2];g=N[a+64>>2];J[c+12>>2]=0;h=Q(h-g);i=Q(i-d);g=Q(f-g);f=Q(j-d);d=Q(Q(h*i)-Q(g*f));j=d;m=Q(d*d);d=f;f=Q(k-e);e=Q(l-e);d=Q(Q(d*f)-Q(i*e));e=Q(Q(e*g)-Q(f*h));g=Q(Q(1)/Q(Y(Q(m+Q(Q(d*d)+Q(e*e))))));f=Q(j*g);N[c+8>>2]=f;e=Q(e*g);N[c+4>>2]=e;d=Q(d*g);N[c>>2]=d;if(b){N[c+8>>2]=-f;N[c+4>>2]=-e;N[c>>2]=-d;}}function Ce(a){H[a+60|0]=0;J[a+52>>2]=287;J[a+144>>2]=0;H[a+80|0]=1;J[a>>2]=18460;J[a+76>>2]=0;H[a+100|0]=1;J[a+68>>2]=0;J[a+72>>2]=0;J[a+96>>2]=0;H[a+120|0]=1;J[a+88>>2]=0;J[a+92>>2]=0;J[a+116>>2]=0;H[a+140|0]=1;J[a+108>>2]=0;J[a+112>>2]=0;J[a+136>>2]=0;H[a+164|0]=1;J[a+128>>2]=0;J[a+132>>2]=0;J[a+160>>2]=0;J[a+168>>2]=0;J[a+152>>2]=0;J[a+156>>2]=0;J[a+4>>2]=-8388609;J[a+8>>2]=-8388609;J[a+12>>2]=-8388609;J[a+16>>2]=0;J[a+20>>2]=2139095039;J[a+24>>2]=2139095039;J[a+28>>2]=2139095039;J[a+32>>2]=0;return a}function Nq(a,b){a=a|0;b=b|0;var c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0);d=N[b+12>>2];h=N[b+8>>2];c=N[b>>2];f=N[b+4>>2];J[a+44>>2]=0;J[a+28>>2]=0;J[a+12>>2]=0;e=Q(Q(2)/Q(Q(d*d)+Q(Q(h*h)+Q(Q(c*c)+Q(f*f)))));i=Q(h*e);g=Q(f*i);k=Q(c*e);l=Q(d*k);N[a+36>>2]=g+l;m=Q(c*i);e=Q(f*e);j=Q(d*e);N[a+32>>2]=m-j;N[a+24>>2]=g-l;g=Q(c*e);d=Q(d*i);N[a+16>>2]=g+d;N[a+8>>2]=m+j;N[a+4>>2]=g-d;c=Q(c*k);d=Q(f*e);N[a+40>>2]=Q(1)-Q(c+d);j=c;c=Q(h*i);N[a+20>>2]=Q(1)-Q(j+c);N[a>>2]=Q(1)-Q(d+c);}function _p(a){a=a|0;var b=0;J[a>>2]=30888;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+104>>2]=0;H[a+108|0]=1;J[a+96>>2]=0;J[a+100>>2]=0;b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+84>>2]=0;H[a+88|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}Ga(a);}function Up(a){a=a|0;var b=0;J[a>>2]=31016;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;b=J[a+104>>2];if(!(b?!b|!K[a+108|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+104>>2]=0;H[a+108|0]=1;J[a+96>>2]=0;J[a+100>>2]=0;b=J[a+84>>2];if(!(b?!b|!K[a+88|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+84>>2]=0;H[a+88|0]=1;J[a+76>>2]=0;J[a+80>>2]=0;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}Ga(a);}function Kn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;J[8461]=J[8461]+1;d=J[b+12>>2]>J[c+12>>2];e=J[(d?b:c)+12>>2];d=J[(d?c:b)+12>>2];b=e<<16|d;b=(b<<15^-1)+b|0;b=P(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=J[a+12>>2]-1&(b>>>16^b);a:{b:{if((b|0)>=J[a+32>>2]){break b}c=J[J[a+40>>2]+(b<<2)>>2];if((c|0)==-1){break b}g=J[a+60>>2];a=J[a+16>>2];while(1){f=c<<4;b=a+f|0;if((d|0)==J[J[b>>2]+12>>2]&J[J[(a+f|0)+4>>2]+12>>2]==(e|0)){break a}c=J[(c<<2)+g>>2];if((c|0)!=-1){continue}break}}b=0;}return b|0}function Cd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;while(1){k=c;l=J[J[a+12>>2]+((c+d|0)/2<<3)>>2];e=d;while(1){g=J[a+12>>2];h=c;while(1){c=h;h=c+1|0;f=(c<<3)+g|0;if(J[f>>2]<(l|0)){continue}break}i=e;while(1){e=i;i=e-1|0;m=e<<3;j=m+g|0;if(J[j>>2]>(l|0)){continue}break}if((c|0)<=(e|0)){c=J[f>>2];e=J[f+4>>2];g=J[j+4>>2];J[f>>2]=J[j>>2];J[f+4>>2]=g;f=J[a+12>>2]+m|0;J[f>>2]=c;J[f+4>>2]=e;e=i;c=h;}if((c|0)<=(e|0)){continue}break}if((e|0)>(k|0)){Cd(a,b,k,e);}if((c|0)<(d|0)){continue}break}}function Qe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;J[a>>2]=16340;b=J[a+84>>2];e=J[b+8>>2];if((e|0)>0){while(1){c=J[(J[b+16>>2]+P(d,12)|0)+8>>2];if(c){ua[J[J[c>>2]>>2]](c)|0;f=J[a+4>>2];ua[J[J[f>>2]+60>>2]](f,c);}d=d+1|0;if((e|0)!=(d|0)){continue}break}b=J[a+84>>2];}Le(b);b=J[a+84>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+84>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}b=J[a+100>>2];if(!(b?!b|!K[a+104|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+100>>2]=0;H[a+104|0]=1;J[a+92>>2]=0;J[a+96>>2]=0;return Oc(a)|0}
  20. function Sd(a,b,c,d){var e=0,f=0;e=J[b+4>>2];J[a+292>>2]=J[b>>2];J[a+296>>2]=e;e=J[b+12>>2];J[a+300>>2]=J[b+8>>2];J[a+304>>2]=e;H[a+356|0]=1;f=J[b+4>>2];e=a+(J[a>>2]<<4)|0;J[e+4>>2]=J[b>>2];J[e+8>>2]=f;f=J[b+12>>2];J[e+12>>2]=J[b+8>>2];J[e+16>>2]=f;e=J[c+12>>2];b=(J[a>>2]<<4)+a|0;J[b+92>>2]=J[c+8>>2];J[b+96>>2]=e;e=J[c+4>>2];J[b+84>>2]=J[c>>2];J[b+88>>2]=e;c=J[d+12>>2];b=(J[a>>2]<<4)+a|0;J[b+172>>2]=J[d+8>>2];J[b+176>>2]=c;c=J[d+4>>2];J[b+164>>2]=J[d>>2];J[b+168>>2]=c;J[a>>2]=J[a>>2]+1;}function ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);a:{b:{if(c>>>0<=2){c:{switch(b-1|0){case 1:a=((c<<2)+a|0)+728|0;break b;case 3:a=((c<<2)+a|0)+744|0;break b;case 0:a=((c<<2)+a|0)+760|0;break b;case 2:break c;default:break a}}a=((c<<2)+a|0)+776|0;break b}c=c-3|0;if(c>>>0>2){break a}d:{switch(b-1|0){case 1:a=(P(c,88)+a|0)+980|0;break b;case 3:a=(P(c,88)+a|0)+984|0;break b;case 0:a=(P(c,88)+a|0)+988|0;break b;case 2:break d;default:break a}}a=(P(c,88)+a|0)+992|0;}d=N[a>>2];}return Q(d)}function Fm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=Q(d);var e=0,f=Q(0),g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0);e=sa-16|0;sa=e;N[a+32>>2]=d;g=J[b+4>>2];J[a+8>>2]=J[b>>2];J[a+12>>2]=g;g=J[b+12>>2];J[a+16>>2]=J[b+8>>2];J[a+20>>2]=g;h=N[b+8>>2];i=N[c>>2];j=N[b>>2];k=N[c+4>>2];l=N[b+4>>2];m=N[c+8>>2];f=N[a+28>>2];J[e+12>>2]=0;N[e+8>>2]=m-Q(f*h);N[e+4>>2]=k-Q(f*l);N[e>>2]=i-Q(j*f);d=Q(Q(f+N[a+24>>2])+d);N[a+32>>2]=d;if(d<Q(0)){H[a+36|0]=1;}a=J[a+4>>2];ua[J[J[a>>2]+16>>2]](a,b,e,d);sa=e+16|0;}function lc(a,b,c){var d=Q(0),e=0,f=Q(0),g=Q(0);e=J[a+204>>2];a:{if(b==Q(0)){J[a+204>>2]=e|1;break a}J[a+204>>2]=e&-2;d=Q(Q(1)/b);}N[a+404>>2]=d;J[a+436>>2]=0;N[a+424>>2]=N[a+440>>2]*b;N[a+432>>2]=N[a+448>>2]*b;N[a+428>>2]=N[a+444>>2]*b;b=N[c+8>>2];f=N[c+4>>2];g=N[c>>2];N[a+620>>2]=N[a+408>>2]*d;N[a+624>>2]=d*N[a+412>>2];N[a+628>>2]=d*N[a+416>>2];J[a+632>>2]=0;J[a+468>>2]=0;N[a+456>>2]=g!=Q(0)?Q(Q(1)/g):Q(0);N[a+460>>2]=f!=Q(0)?Q(Q(1)/f):Q(0);N[a+464>>2]=b!=Q(0)?Q(Q(1)/b):Q(0);}function yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0);e=sa-48|0;sa=e;i=N[a+12>>2];j=N[a+16>>2];f=N[b+4>>2];g=N[b+8>>2];k=N[a+8>>2];h=N[b>>2];J[e+12>>2]=0;N[e>>2]=h*k;N[e+8>>2]=g*j;N[e+4>>2]=f*i;f=N[b+20>>2];g=N[b+24>>2];h=N[b+16>>2];J[e+28>>2]=0;N[e+24>>2]=j*g;N[e+20>>2]=i*f;N[e+16>>2]=k*h;f=N[b+36>>2];g=N[b+40>>2];h=N[b+32>>2];J[e+44>>2]=0;N[e+40>>2]=j*g;N[e+36>>2]=i*f;N[e+32>>2]=k*h;a=J[a+4>>2];ua[J[J[a>>2]+8>>2]](a,e,c,d);sa=e+48|0;}function rs(a,b){a=a|0;b=Q(b);var c=0,d=Q(0),e=Q(0),f=Q(0),g=Q(0);J[8456]=J[8456]+1;c=ua[J[8258]](92,16)|0;J[c+12>>2]=0;J[c+16>>2]=0;J[c+4>>2]=35;J[c+8>>2]=0;J[c+20>>2]=0;J[c>>2]=20152;J[c>>2]=21524;d=N[a+8>>2];e=N[a>>2];f=N[a+4>>2];g=N[a+12>>2];J[c+84>>2]=1065353216;J[c+88>>2]=0;J[c+76>>2]=1065353216;J[c+80>>2]=1065353216;N[c+72>>2]=b;N[c+68>>2]=g;J[c+4>>2]=28;b=Q(Q(1)/Q(Y(Q(Q(d*d)+Q(Q(e*e)+Q(f*f))))));N[c- -64>>2]=d*b;N[c+60>>2]=f*b;N[c+56>>2]=e*b;return c|0}function lo(a,b){a=a|0;b=b|0;var c=0,d=0;c=J[b+4>>2];J[a+8>>2]=J[b>>2];J[a+12>>2]=c;c=J[b+12>>2];J[a+16>>2]=J[b+8>>2];J[a+20>>2]=c;c=J[b+28>>2];J[a+32>>2]=J[b+24>>2];J[a+36>>2]=c;c=J[b+20>>2];J[a+24>>2]=J[b+16>>2];J[a+28>>2]=c;c=J[b+44>>2];J[a+48>>2]=J[b+40>>2];J[a+52>>2]=c;c=J[b+36>>2];J[a+40>>2]=J[b+32>>2];J[a+44>>2]=c;d=J[b+60>>2];c=a- -64|0;J[c>>2]=J[b+56>>2];J[c+4>>2]=d;c=J[b+52>>2];J[a+56>>2]=J[b+48>>2];J[a+60>>2]=c;ua[J[J[a>>2]+16>>2]](a,J[a+4>>2]);}function bf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=Q(d);e=e|0;f=f|0;var g=0;g=sa+-64|0;sa=g;J[g+56>>2]=f;J[g+52>>2]=e;J[g+60>>2]=J[a+220>>2];e=J[a+212>>2];if(N[e+4>>2]>=d){J[g+8>>2]=J[a+216>>2];J[g+12>>2]=g+52;a=J[b+12>>2];J[g+24>>2]=J[b+8>>2];J[g+28>>2]=a;a=J[b+4>>2];J[g+16>>2]=J[b>>2];J[g+20>>2]=a;a=J[c+12>>2];J[g+40>>2]=J[c+8>>2];J[g+44>>2]=a;a=J[c+4>>2];J[g+32>>2]=J[c>>2];J[g+36>>2]=a;N[g+48>>2]=d;d=Q(ua[J[J[e>>2]+12>>2]](e,g+8|0,1));}sa=g- -64|0;return Q(d)}function Wc(a){a=a|0;var b=0,c=0,d=0,e=0;J[a>>2]=13068;b=J[a+8>>2];if((b|0)>0){while(1){e=J[J[a+16>>2]+(c<<2)>>2];d=J[e+188>>2];if(d){b=J[a+68>>2];b=ua[J[J[b>>2]+36>>2]](b)|0;ua[J[J[b>>2]+40>>2]](b,d,J[a+24>>2]);b=J[a+68>>2];ua[J[J[b>>2]+12>>2]](b,d,J[a+24>>2]);J[e+188>>2]=0;b=J[a+8>>2];}c=c+1|0;if((c|0)<(b|0)){continue}break}}b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;return a|0}function ig(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=d|0;var e=Q(0),f=Q(0);J[a+20>>2]=1065353216;J[a+24>>2]=1065353216;J[a+60>>2]=d;J[a+28>>2]=1065353216;J[a+32>>2]=0;f=b;e=c;a:{b:{switch(d|0){case 0:f=c;e=b;break a;case 1:break a;default:break b}}e=b;b=c;}N[a+36>>2]=f;J[a+48>>2]=0;N[a+44>>2]=b;N[a+40>>2]=e;b=Q(ua[J[J[a>>2]+48>>2]](a));c=Q(ua[J[J[a>>2]+48>>2]](a));e=Q(ua[J[J[a>>2]+48>>2]](a));N[a+36>>2]=N[a+36>>2]-b;N[a+40>>2]=N[a+40>>2]-c;N[a+44>>2]=N[a+44>>2]-e;}function Uh(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=Q(0),n=0;l=sa-16|0;sa=l;ua[J[8262]](4109);ua[J[J[a>>2]+32>>2]](a,b,c,d,e,f,g,h,i);j=J[a+184>>2];k=J[h+20>>2];k=(j|0)>(k|0)?j:k;a:{if((k|0)<=0){break a}n=k-1|0;j=0;while(1){m=Q(ua[J[J[a>>2]+40>>2]](a,j,b,c,d,e,f,g,h,i));N[a+228>>2]=m;if((j|0)>=(n|0)|N[h+92>>2]>=m){break a}j=j+1|0;if((k|0)!=(j|0)){continue}break}}ua[J[8263]]();sa=l+16|0;return Q(Q(0))}function Ng(a,b){a=a|0;b=b|0;var c=Q(0),d=Q(0),e=0,f=Q(0),g=Q(0),h=Q(0),i=Q(0);c=Q(ua[J[J[a>>2]+48>>2]](a));d=Q(ua[J[J[a>>2]+48>>2]](a));f=Q(ua[J[J[a>>2]+48>>2]](a));g=N[b>>2];h=N[b+4>>2];i=N[b+8>>2];J[a+48>>2]=0;N[a+44>>2]=Q(i*N[a+28>>2])-f;N[a+40>>2]=Q(h*N[a+24>>2])-d;N[a+36>>2]=Q(g*N[a+20>>2])-c;c=N[b>>2];d=N[b+4>>2];e=c<d;c=Q(N[((N[b+8>>2]>(e?c:d)?!e:2)<<2)+b>>2]*Q(.10000000149011612));if(Q(ua[J[J[a>>2]+48>>2]](a))>c){ua[J[J[a>>2]+44>>2]](a,c);}}function Fh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=J[b+8>>2];if((h|0)>0){d=J[a+16>>2];j=J[b+16>>2];a=0;while(1){c=J[(e<<2)+j>>2];a:{if(!(K[c+204|0]&3)){b=a;i=b<<3;f=i+d|0;g=J[f>>2];if((b|0)!=(g|0)){while(1){b=(g<<3)+d|0;J[f>>2]=J[b>>2];b=J[b>>2];f=(b<<3)+d|0;g=J[f>>2];if((b|0)!=(g|0)){continue}break}}J[c+208>>2]=b;J[(d+i|0)+4>>2]=e;J[c+212>>2]=-1;a=a+1|0;break a}J[c+208>>2]=-1;J[c+212>>2]=-2;}e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function xn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;J[8462]=J[8462]-1;ua[J[J[a>>2]+20>>2]](a,b);c=J[b+864>>2];e=c<<2;f=J[a+20>>2];d=e+f|0;h=J[d>>2];i=d;d=J[a+12>>2]-1|0;g=d<<2;J[i>>2]=J[f+g>>2];J[J[a+20>>2]+g>>2]=h;J[J[J[a+20>>2]+e>>2]+864>>2]=c;J[a+12>>2]=d;a=J[a+72>>2];c=J[a+16>>2];if(!(c>>>0>b>>>0|c+P(J[a>>2],J[a+4>>2])>>>0<=b>>>0)){J[b>>2]=J[a+12>>2];J[a+12>>2]=b;J[a+8>>2]=J[a+8>>2]+1;return}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}function el(a,b){a=a|0;b=b|0;var c=Q(0),d=0,e=Q(0),f=Q(0);d=ua[J[J[a>>2]+28>>2]](a)|0;c=Q(N[d+8>>2]-N[b+8>>2]);e=Q(c*c);c=Q(N[d>>2]-N[b>>2]);f=Q(c*c);c=Q(N[d+4>>2]-N[b+4>>2]);if(Q(e+Q(f+Q(c*c)))>Q(1.1920928955078125e-7)){wc(a,b);if(K[a+69|0]){b=J[a+60>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+60>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}J[8456]=J[8456]+1;b=le(ua[J[8258]](172,16)|0);J[a+60>>2]=b;ke(b,J[a+56>>2],K[a+68|0],a+24|0,a+40|0);H[a+69|0]=1;}}function nr(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=Q(d);if((b|0)<=2){a=(b<<2)+a|0;N[a+696>>2]=d;N[a+680>>2]=c;return}c=Qa(c);a:{if(c<Q(-3.1415927410125732)){c=Q(c+Q(6.2831854820251465));break a}if(!(c>Q(3.1415927410125732))){break a}c=Q(c+Q(-6.2831854820251465));}d=Qa(d);b:{if(d<Q(-3.1415927410125732)){d=Q(d+Q(6.2831854820251465));break b}if(!(d>Q(3.1415927410125732))){break b}d=Q(d+Q(-6.2831854820251465));}a=P(b,88)+a|0;N[a+708>>2]=d;N[a+704>>2]=c;}function Eq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;J[a+4>>2]=b;b=J[c+12>>2];J[a+16>>2]=J[c+8>>2];J[a+20>>2]=b;b=J[c+4>>2];J[a+8>>2]=J[c>>2];J[a+12>>2]=b;b=J[c+28>>2];J[a+32>>2]=J[c+24>>2];J[a+36>>2]=b;b=J[c+20>>2];J[a+24>>2]=J[c+16>>2];J[a+28>>2]=b;b=J[c+36>>2];J[a+40>>2]=J[c+32>>2];J[a+44>>2]=b;b=J[c+44>>2];J[a+48>>2]=J[c+40>>2];J[a+52>>2]=b;d=J[c+60>>2];b=a- -64|0;J[b>>2]=J[c+56>>2];J[b+4>>2]=d;b=J[c+52>>2];J[a+56>>2]=J[c+48>>2];J[a+60>>2]=b;}function re(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0);ua[J[J[b>>2]+68>>2]](a,b,c);if(Q(ua[J[J[b>>2]+48>>2]](b))!=Q(0)){e=N[c+4>>2];d=N[c>>2];f=N[c+8>>2];g=Q(ua[J[J[b>>2]+48>>2]](b));b=Q(Q(f*f)+Q(Q(d*d)+Q(e*e)))<Q(14210854715202004e-30);d=b?Q(-1):d;h=d;f=b?Q(-1):f;e=b?Q(-1):e;d=Q(Q(1)/Q(Y(Q(Q(f*f)+Q(Q(d*d)+Q(e*e))))));N[a>>2]=N[a>>2]+Q(g*Q(h*d));N[a+4>>2]=N[a+4>>2]+Q(g*Q(e*d));N[a+8>>2]=N[a+8>>2]+Q(g*Q(f*d));}}function mo(a,b){a=a|0;b=b|0;var c=0,d=0;c=J[a+12>>2];J[b>>2]=J[a+8>>2];J[b+4>>2]=c;c=J[a+20>>2];J[b+8>>2]=J[a+16>>2];J[b+12>>2]=c;c=J[a+36>>2];J[b+24>>2]=J[a+32>>2];J[b+28>>2]=c;c=J[a+28>>2];J[b+16>>2]=J[a+24>>2];J[b+20>>2]=c;c=J[a+44>>2];J[b+32>>2]=J[a+40>>2];J[b+36>>2]=c;c=J[a+52>>2];J[b+40>>2]=J[a+48>>2];J[b+44>>2]=c;c=a- -64|0;d=J[c+4>>2];J[b+56>>2]=J[c>>2];J[b+60>>2]=d;c=J[a+60>>2];J[b+48>>2]=J[a+56>>2];J[b+52>>2]=c;}function _g(a){a=a|0;var b=0;J[a>>2]=24384;b=J[a+80>>2];if(!(b?!b|!K[a+84|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+80>>2]=0;H[a+84|0]=1;J[a+72>>2]=0;J[a+76>>2]=0;b=J[a+60>>2];if(!(b?!b|!K[a- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+60>>2]=0;H[a+64|0]=1;J[a+52>>2]=0;J[a+56>>2]=0;b=J[a+40>>2];if(!(b?!b|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+40>>2]=0;H[a+44|0]=1;J[a+32>>2]=0;J[a+36>>2]=0;return a|0}function pf(a){a=a|0;var b=0;J[a>>2]=12284;b=J[a+60>>2];if(!(b?!b|!K[a- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+60>>2]=0;H[a+64|0]=1;J[a+52>>2]=0;J[a+56>>2]=0;b=J[a+40>>2];if(!(b?!b|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+40>>2]=0;H[a+44|0]=1;J[a+32>>2]=0;J[a+36>>2]=0;b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;return a|0}function Me(a){a=a|0;var b=0;J[a>>2]=17788;b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=0;H[a+60|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;b=J[a+36>>2];if(!(b?!b|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+36>>2]=0;H[a+40|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;return a|0}function Kl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=J[b>>2];e=ua[J[J[e>>2]+56>>2]](e,28)|0;f=K[a+4|0];g=J[a+8>>2];a=J[a+12>>2];J[e>>2]=14940;J[e+4>>2]=J[b>>2];J[e+24>>2]=a;J[e+20>>2]=g;H[e+16|0]=f;J[e+12>>2]=0;H[e+8|0]=0;J[e>>2]=16676;a=J[e+4>>2];b=f?d:c;c=f?c:d;if(ua[J[J[a>>2]+24>>2]](a,J[b+8>>2],J[c+8>>2])|0){a=J[e+4>>2];a=ua[J[J[a>>2]+12>>2]](a,J[b+8>>2],J[c+8>>2])|0;H[e+8|0]=1;J[e+12>>2]=a;}return e|0}function Bd(a){a=a|0;var b=0;J[a>>2]=24060;b=J[a+56>>2];if(!(b?!b|!K[a+60|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+56>>2]=0;H[a+60|0]=1;J[a+48>>2]=0;J[a+52>>2]=0;b=J[a+36>>2];if(!(b?!b|!K[a+40|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+36>>2]=0;H[a+40|0]=1;J[a+28>>2]=0;J[a+32>>2]=0;b=J[a+16>>2];if(!(b?!b|!K[a+20|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+16>>2]=0;H[a+20|0]=1;J[a+8>>2]=0;J[a+12>>2]=0;return a|0}function Gp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=sa-32|0;sa=d;e=J[b>>2];if(e>>>0<2147483632){a:{if(e>>>0<=10){H[d+27|0]=e;f=d+16|0;break a}g=(e|15)+1|0;f=La(g);J[d+24>>2]=g|-2147483648;J[d+16>>2]=f;J[d+20>>2]=e;}h=Ja(f,b+4|0,e)+e|0,i=0,H[h|0]=i;J[d+12>>2]=c;ua[a|0](d+28|0,d+16|0,d+12|0);la(J[d+28>>2]);a=J[d+28>>2];ba(a|0);ba(J[d+12>>2]);if(H[d+27|0]<0){Ga(J[d+16>>2]);}sa=d+32|0;return a|0}ga();D();}function Ug(a){a=a|0;var b=0,c=0;if(J[a+248>>2]>0){while(1){a:{b:{b=J[J[a+256>>2]+(c<<2)>>2];switch(J[b+220>>2]-2|0){case 0:case 3:break a;default:break b}}if(K[b+204|0]&2){break a}c:{if(N[b+504>>2]==Q(1)){J[b+472>>2]=0;J[b+476>>2]=0;J[b+480>>2]=0;J[b+484>>2]=0;break c}Gd(b);}if(N[b+508>>2]!=Q(1)){break a}J[b+488>>2]=0;J[b+492>>2]=0;J[b+496>>2]=0;J[b+500>>2]=0;}c=c+1|0;if((c|0)<J[a+248>>2]){continue}break}}}function um(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0);d=N[c+8>>2];e=N[c>>2];f=N[c+4>>2];g=Q(Q(d*N[b+72>>2])+Q(Q(e*N[b+64>>2])+Q(f*N[b+68>>2])));h=Q(Q(d*N[b+88>>2])+Q(Q(e*N[b+80>>2])+Q(f*N[b+84>>2])));c=g<h;b=(b- -64|0)+((Q(Q(d*N[b+104>>2])+Q(Q(e*N[b+96>>2])+Q(f*N[b+100>>2])))>(c?h:g)?2:c)<<4)|0;c=J[b+4>>2];J[a>>2]=J[b>>2];J[a+4>>2]=c;c=J[b+12>>2];J[a+8>>2]=J[b+8>>2];J[a+12>>2]=c;}function bl(a,b,c,d,e,f,g,h,i){a=Q(a);b=Q(b);c=Q(c);d=d|0;e=e|0;f=f|0;g=Q(g);h=Q(h);i=Q(i);var j=0,k=0;j=La(64);N[j+8>>2]=c;N[j+4>>2]=b;N[j>>2]=a;J[j+44>>2]=0;k=J[d+4>>2];J[j+12>>2]=J[d>>2];J[j+16>>2]=k;k=J[d+12>>2];J[j+20>>2]=J[d+8>>2];J[j+24>>2]=k;d=J[e+4>>2];J[j+28>>2]=J[e>>2];J[j+32>>2]=d;d=J[e+12>>2];J[j+36>>2]=J[e+8>>2];J[j+40>>2]=d;N[j+60>>2]=i;N[j+56>>2]=h;N[j+52>>2]=g;J[j+48>>2]=f;return j|0}function _c(a,b,c){var d=0,e=0,f=0,g=0;e=bc(a,b);a:{if(!e){e=0;break a}f=J[a+8>>2];if((f|0)>=0){if(!f){break a}while(1){d=J[e+32>>2];if(!d){break a}e=d;g=g+1|0;if((f|0)!=(g|0)){continue}break}break a}e=J[a>>2];}d=J[c+4>>2];J[b>>2]=J[c>>2];J[b+4>>2]=d;d=J[c+28>>2];J[b+24>>2]=J[c+24>>2];J[b+28>>2]=d;d=J[c+20>>2];J[b+16>>2]=J[c+16>>2];J[b+20>>2]=d;d=J[c+12>>2];J[b+8>>2]=J[c+8>>2];J[b+12>>2]=d;ac(a,e,b);}function ur(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;J[8456]=J[8456]+1;a=mc(ua[J[8258]](360,16)|0,3,a,b);J[a>>2]=23640;b=J[c+4>>2];J[a+300>>2]=J[c>>2];J[a+304>>2]=b;b=J[c+12>>2];J[a+308>>2]=J[c+8>>2];J[a+312>>2]=b;b=J[d+4>>2];J[a+316>>2]=J[d>>2];J[a+320>>2]=b;b=J[d+12>>2];J[a+324>>2]=J[d+8>>2];J[a+328>>2]=b;J[a+356>>2]=0;J[a+348>>2]=1050253722;J[a+352>>2]=1065353216;H[a+344|0]=0;J[a+332>>2]=0;return a|0}
  21. function Ge(a,b){a=a|0;b=b|0;var c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0);c=Q(ua[J[J[a>>2]+48>>2]](a));d=Q(ua[J[J[a>>2]+48>>2]](a));e=Q(ua[J[J[a>>2]+48>>2]](a));f=N[a+24>>2];g=N[a+40>>2];h=N[a+28>>2];i=N[a+44>>2];j=N[a+20>>2];k=N[a+36>>2];tb(a,b);J[a+48>>2]=0;N[a+44>>2]=Q(Q(Q(e+i)/h)*N[a+28>>2])-e;N[a+40>>2]=Q(Q(Q(d+g)/f)*N[a+24>>2])-d;N[a+36>>2]=Q(Q(Q(c+k)/j)*N[a+20>>2])-c;}function gs(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0,f=0,g=0;f=sa-16|0;sa=f;J[8456]=J[8456]+1;e=ua[J[8258]](44,16)|0;J[f+12>>2]=0;N[f+8>>2]=d;N[f+4>>2]=c;N[f>>2]=b;J[e+12>>2]=0;J[e+16>>2]=0;J[e+4>>2]=35;J[e+8>>2]=0;J[e+20>>2]=0;J[e>>2]=20152;J[e>>2]=21216;g=J[f+4>>2];J[e+24>>2]=J[f>>2];J[e+28>>2]=g;g=J[f+12>>2];J[e+32>>2]=J[f+8>>2];J[e+36>>2]=g;J[e+40>>2]=a;J[e+4>>2]=22;sa=f+16|0;return e|0}function fk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0),i=0,j=Q(0),k=0,l=Q(0);if((d|0)>0){while(1){f=N[a+40>>2];g=N[a+36>>2];k=i<<4;e=k+b|0;j=N[e>>2];h=N[e+8>>2];l=Q(Y(Q(Q(j*j)+Q(h*h))));a:{if(l!=Q(0)){g=Q(g/l);h=Q(h*g);g=Q(j*g);f=N[e+4>>2]<Q(0)?Q(-f):f;break a}h=Q(0);f=N[e+4>>2]<Q(0)?Q(-f):f;}e=c+k|0;N[e+8>>2]=h;N[e+4>>2]=f;N[e>>2]=g;i=i+1|0;if((i|0)!=(d|0)){continue}break}}}function Im(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;c=J[b>>2];c=ua[J[J[c>>2]+56>>2]](c,72)|0;e=J[b+4>>2];d=J[a+8>>2];f=J[a+12>>2];a=J[a+16>>2];J[c>>2]=14940;J[c+4>>2]=J[b>>2];J[c>>2]=14968;J[c+8>>2]=d;J[c>>2]=15092;J[c+68>>2]=a;J[c+64>>2]=f;H[c+60|0]=0;J[c+56>>2]=e;H[c+52|0]=0;H[c+28|0]=1;J[c+24>>2]=0;H[c+48|0]=1;J[c+16>>2]=0;J[c+20>>2]=0;J[c+44>>2]=0;J[c+36>>2]=0;J[c+40>>2]=0;return c|0}function af(a){a=a|0;var b=0,c=0;J[a>>2]=15092;a:{if(!K[a+52|0]){break a}b=J[a+56>>2];if(!b){break a}c=J[a+4>>2];ua[J[J[c>>2]+16>>2]](c,b);}b=J[a+44>>2];if(!(b?!b|!K[a+48|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+44>>2]=0;H[a+48|0]=1;J[a+36>>2]=0;J[a+40>>2]=0;b=J[a+24>>2];if(!(b?!b|!K[a+28|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+24>>2]=0;H[a+28|0]=1;J[a+16>>2]=0;J[a+20>>2]=0;return a|0}function _f(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{b:{switch(b|0){default:d=J[a+76>>2];c=J[a+72>>2];b=J[a+80>>2];break a;case 0:J[a+72>>2]=1;J[a+76>>2]=0;J[a+80>>2]=2;c=1;b=2;break a;case 1:J[a+72>>2]=0;J[a+76>>2]=1;J[a+80>>2]=2;d=1;b=2;break a;case 2:break b}}J[a+72>>2]=0;J[a+76>>2]=2;J[a+80>>2]=1;d=2;b=1;}e=c<<2;c=a+36|0;N[e+c>>2]=N[a+64>>2];N[c+(d<<2)>>2]=N[a+68>>2];N[c+(b<<2)>>2]=N[a+64>>2];}function ol(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=Q(0),g=Q(0),h=Q(0);e=sa-48|0;sa=e;ua[J[J[a>>2]+124>>2]](a,e+32|0,d);f=N[e+32>>2];g=N[e+36>>2];h=N[e+40>>2];J[b+12>>2]=0;N[b+8>>2]=h;N[b+4>>2]=g;N[b>>2]=f;J[e+12>>2]=0;N[e+8>>2]=-h;N[e+4>>2]=-g;N[e>>2]=-f;ua[J[J[a>>2]+64>>2]](e+16|0,a,e);a=J[e+28>>2];J[c+8>>2]=J[e+24>>2];J[c+12>>2]=a;a=J[e+20>>2];J[c>>2]=J[e+16>>2];J[c+4>>2]=a;sa=e+48|0;}function Tk(a,b,c){a=a|0;b=Q(b);c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=0,h=0,i=0;h=a+36|0;g=J[a+60>>2];d=N[h+((g+2|0)%3<<2)>>2];a=sa-16|0;J[a+12>>2]=0;N[a+8>>2]=d;N[a+4>>2]=d;N[a>>2]=d;g=g<<2;i=g+a|0;N[i>>2]=N[g+h>>2]+N[i>>2];d=N[a+8>>2];b=Q(b*Q(.0833333283662796));e=N[a>>2];e=Q(e+e);e=Q(e*e);f=N[a+4>>2];f=Q(f+f);f=Q(f*f);N[c+8>>2]=b*Q(e+f);d=Q(d+d);d=Q(d*d);N[c+4>>2]=b*Q(e+d);N[c>>2]=b*Q(f+d);}function Id(a,b){var c=Q(0);J[a+20>>2]=0;J[a+24>>2]=0;H[a+28|0]=0;c=N[a+4>>2];a:{if(!(c>=Q(0))){break a}b=Qa(Q(b-N[a>>2]));b:{if(b<Q(-3.1415927410125732)){b=Q(b+Q(6.2831854820251465));break b}if(!(b>Q(3.1415927410125732))){break b}b=Q(b+Q(-6.2831854820251465));}c:{if(Q(-c)>b){H[a+28|0]=1;b=Q(-Q(c+b));c=Q(1);break c}if(!(b>c)){break a}H[a+28|0]=1;b=Q(c-b);c=Q(-1);}N[a+24>>2]=c;N[a+20>>2]=b;}}function Fe(a,b){a=a|0;b=Q(b);var c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0);c=Q(ua[J[J[a>>2]+48>>2]](a));d=Q(ua[J[J[a>>2]+48>>2]](a));e=Q(ua[J[J[a>>2]+48>>2]](a));N[a+52>>2]=b;b=N[a+44>>2];f=N[a+40>>2];g=N[a+36>>2];h=Q(ua[J[J[a>>2]+48>>2]](a));i=Q(ua[J[J[a>>2]+48>>2]](a));j=Q(ua[J[J[a>>2]+48>>2]](a));J[a+48>>2]=0;N[a+40>>2]=Q(d+f)-i;N[a+36>>2]=Q(c+g)-h;N[a+44>>2]=Q(e+b)-j;}function Ko(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=d|0;var e=0,f=0;e=sa+-64|0;sa=e;J[e+12>>2]=0;J[e+16>>2]=0;J[e+24>>2]=0;J[e+28>>2]=0;J[e+20>>2]=1065353216;J[e+32>>2]=0;J[e+36>>2]=0;J[e+40>>2]=1065353216;J[e+44>>2]=0;J[e+4>>2]=0;J[e+8>>2]=0;J[e>>2]=1065353216;f=J[b+12>>2];J[e+56>>2]=J[b+8>>2];J[e+60>>2]=f;f=J[b+4>>2];J[e+48>>2]=J[b>>2];J[e+52>>2]=f;ua[J[J[a>>2]+24>>2]](a,c,e,d);sa=e- -64|0;}function ll(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);g=N[a+44>>2];h=N[a+40>>2];d=N[a+36>>2];e=Q(1);a:{b:{c:{d:{e:{switch(c|0){case 1:e=Q(-1);break b;case 2:f=Q(1);break c;case 3:f=Q(-1);break c;case 4:d=Q(1);break d;case 0:break b;case 5:break e;default:break a}}d=Q(-1);}i=d;e=Q(0);d=g;break b}e=Q(0);d=h;}N[b+8>>2]=i;N[b+4>>2]=f;N[b>>2]=e;N[b+12>>2]=-d;}}function Tm(a,b){a=a|0;b=b|0;var c=0,d=0,e=Q(0),f=Q(0),g=0,h=0;c=sa-32|0;sa=c;d=J[a+184>>2];e=N[d+4>>2];a:{if(e==Q(0)){break a}b=J[b>>2];if(!(ua[J[J[d>>2]+8>>2]](d,J[b+188>>2])|0)){break a}f=N[a+188>>2];d=J[a+184>>2];g=J[a+192>>2];h=J[b+192>>2];J[c+24>>2]=-1;J[c+28>>2]=-1;J[c+20>>2]=b+4;J[c+16>>2]=b;J[c+12>>2]=h;J[c+8>>2]=0;Tc(g,a+36|0,a+100|0,c+8|0,d,f);}sa=c+32|0;return e!=Q(0)|0}function Bl(a,b,c,d,e,f,g,h){a=Q(a);b=Q(b);c=Q(c);d=d|0;e=e|0;f=f|0;g=Q(g);h=Q(h);var i=0,j=0;i=La(60);N[i+8>>2]=c;N[i+4>>2]=b;N[i>>2]=a;J[i+44>>2]=1;j=J[d+4>>2];J[i+12>>2]=J[d>>2];J[i+16>>2]=j;j=J[d+12>>2];J[i+20>>2]=J[d+8>>2];J[i+24>>2]=j;d=J[e+4>>2];J[i+28>>2]=J[e>>2];J[i+32>>2]=d;d=J[e+12>>2];J[i+36>>2]=J[e+8>>2];J[i+40>>2]=d;N[i+56>>2]=h;N[i+52>>2]=g;J[i+48>>2]=f;return i|0}function ir(a,b,c){a=a|0;b=b|0;c=Q(c);var d=Q(0);a:{if((b|0)<=2){N[((b<<2)+a|0)+804>>2]=c;break a}a=P(b,88)+a|0;c=Q(c+Q(3.1415927410125732));c=Q(Q(Q(V(Q(c/Q(6.2831854820251465))))*Q(-6.2831854820251465))+c);d=Q(0);b:{if(c>=Q(6.2831854820251465)){break b}d=c;if(!(c<Q(0))){break b}c=Q(c+Q(6.2831854820251465));d=c==Q(6.2831854820251465)?Q(0):c;}N[a+748>>2]=d+Q(-3.1415927410125732);}}function eb(a){var b=0,c=0,d=0,e=0,f=Q(0);b=sa-16|0;sa=b;d=J[a+8>>2];e=J[a+12>>2];a:{if((e|0)>0|(e|0)>=0){f=Q(Q(Q(+(d>>>0)+ +(e>>>0)*4294967296)*Q(0x10000000000000000))+Q(+M[a>>2]+ +M[a+4>>2]*4294967296));break a}c=J[a>>2];a=J[a+4>>2];J[b>>2]=0-c;J[b+4>>2]=0-(a+((c|0)!=0)|0);a=!(a|c);c=d^-1;d=a+c|0;a=e^-1;J[b+8>>2]=d;J[b+12>>2]=d>>>0<c>>>0?a+1|0:a;f=Q(-eb(b));}sa=b+16|0;return f}function vl(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0);d=N[b+40>>2];e=N[b+44>>2];f=N[b+36>>2];g=Q(ua[J[J[b>>2]+48>>2]](b));h=Q(ua[J[J[b>>2]+48>>2]](b));i=Q(ua[J[J[b>>2]+48>>2]](b));j=N[c>>2];k=N[c+4>>2];l=N[c+8>>2];J[a+12>>2]=0;e=Q(e+i);N[a+8>>2]=l>=Q(0)?e:Q(-e);d=Q(d+h);N[a+4>>2]=k>=Q(0)?d:Q(-d);d=Q(f+g);N[a>>2]=j>=Q(0)?d:Q(-d);}function pl(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);e=N[a+44>>2];d=N[a+40>>2];f=N[a+36>>2];g=Q(ua[J[J[a>>2]+48>>2]](a));h=Q(ua[J[J[a>>2]+48>>2]](a));i=Q(ua[J[J[a>>2]+48>>2]](a));J[c+12>>2]=0;d=Q(d+h);a=b>>>1&1;N[c+4>>2]=Q(d*Q(!a|0))-Q(Q(a|0)*d);d=Q(f+g);a=b&1;N[c>>2]=Q(d*Q(!a|0))-Q(Q(a|0)*d);e=Q(e+i);a=b>>>2&1;N[c+8>>2]=Q(e*Q(!a|0))-Q(Q(a|0)*e);}function yl(a,b,c){a=a|0;b=Q(b);c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);d=N[a+44>>2];e=N[a+40>>2];f=N[a+36>>2];g=Q(ua[J[J[a>>2]+48>>2]](a));h=Q(ua[J[J[a>>2]+48>>2]](a));i=Q(ua[J[J[a>>2]+48>>2]](a));J[c+12>>2]=0;b=Q(b/Q(12));f=Q(f+g);f=Q(f+f);f=Q(f*f);e=Q(e+h);e=Q(e+e);e=Q(e*e);N[c+8>>2]=b*Q(f+e);d=Q(d+i);d=Q(d+d);d=Q(d*d);N[c+4>>2]=b*Q(f+d);N[c>>2]=b*Q(e+d);}function ug(a){a=a|0;var b=0,c=0,d=0;a:{b:{c:{c=J[a+4>>2];a=c;if(!(a&3)){break c}b=0;if(!K[c|0]){break a}while(1){a=a+1|0;if(!(a&3)){break c}if(K[a|0]){continue}break}break b}while(1){b=a;a=a+4|0;d=J[b>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}while(1){a=b;b=a+1|0;if(K[a|0]){continue}break}}b=a-c|0;}a=b+1|0;b=zb(a);if(b){a=Ja(b,c,a);}else {a=0;}return a|0}function Zg(a){a=a|0;var b=0;J[a>>2]=24384;b=J[a+80>>2];if(!(b?!b|!K[a+84|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+80>>2]=0;H[a+84|0]=1;J[a+72>>2]=0;J[a+76>>2]=0;b=J[a+60>>2];if(!(b?!b|!K[a- -64|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+60>>2]=0;H[a+64|0]=1;J[a+52>>2]=0;J[a+56>>2]=0;b=J[a+40>>2];if(!(b?!b|!K[a+44|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}Ga(a);}function pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0);h=Q(ua[J[J[a>>2]+48>>2]](a));i=Q(ua[J[J[a>>2]+48>>2]](a));j=Q(ua[J[J[a>>2]+48>>2]](a));e=N[b+52>>2];f=N[b+56>>2];g=N[b+48>>2];J[c+12>>2]=0;N[c+8>>2]=f-j;N[c+4>>2]=e-i;N[c>>2]=g-h;e=N[b+52>>2];f=N[b+56>>2];g=N[b+48>>2];J[d+12>>2]=0;N[d+8>>2]=j+f;N[d+4>>2]=i+e;N[d>>2]=h+g;}function sc(a,b,c,d,e){var f=Q(0),g=0,h=Q(0);J[a+32>>2]=c;J[a+28>>2]=b;J[a+24>>2]=d;J[a+20>>2]=e;J[a+4>>2]=0;J[a+8>>2]=1065353216;J[a+12>>2]=0;J[a+16>>2]=0;J[a>>2]=22784;J[a+36>>2]=J[b+4>>2];J[a+40>>2]=J[c+4>>2];g=a,h=Q(ua[J[J[b>>2]+48>>2]](b)),N[g+44>>2]=h;f=Q(ua[J[J[c>>2]+48>>2]](c));J[a+72>>2]=1;J[a+76>>2]=1;J[a+60>>2]=-1;H[a+52|0]=0;N[a+48>>2]=f;return a}function fg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Ka(a,J[b+8>>2],e)){if(!(J[b+28>>2]==1|J[b+4>>2]!=(c|0))){J[b+28>>2]=d;}return}a:{if(!Ka(a,J[b>>2],e)){break a}if(!(J[b+16>>2]!=(c|0)&J[b+20>>2]!=(c|0))){if((d|0)!=1){break a}J[b+32>>2]=1;return}J[b+20>>2]=c;J[b+32>>2]=d;J[b+40>>2]=J[b+40>>2]+1;if(!(J[b+36>>2]!=1|J[b+24>>2]!=2)){H[b+54|0]=1;}J[b+44>>2]=4;}}function vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=J[b+4>>2];J[a+264>>2]=J[b>>2];J[a+268>>2]=c;c=J[b+12>>2];J[a+272>>2]=J[b+8>>2];J[a+276>>2]=c;c=J[a+248>>2];if((c|0)>0){while(1){a:{b:{e=J[J[a+256>>2]+(d<<2)>>2];switch(J[e+220>>2]-2|0){case 0:case 3:break a;default:break b}}if(H[e+564|0]&1){break a}Db(e,b);c=J[a+248>>2];}d=d+1|0;if((c|0)>(d|0)){continue}break}}}function Cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;a:{e=J[a+328>>2];if((e|0)<=0){break a}h=d?d:J[a+188>>2];i=J[b>>2];f=J[a+336>>2];d=0;while(1){g=(d<<2)+f|0;if(J[g>>2]!=(i|0)){d=d+1|0;if((e|0)!=(d|0)){continue}break a}break}if((d|0)>=(e|0)){break a}d=e-1|0;J[g>>2]=J[(d<<2)+f>>2];J[a+328>>2]=d;a=J[a+344>>2];ua[J[J[a>>2]+12>>2]](a,h,b,c)|0;}}function tl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=Q(0),i=Q(0),j=Q(0),k=Q(0),l=Q(0),m=Q(0);if((d|0)>0){while(1){g=f<<4;e=g+b|0;k=N[e>>2];l=N[e+4>>2];m=N[e+8>>2];h=N[a+36>>2];i=N[a+40>>2];j=N[a+44>>2];e=c+g|0;J[e+12>>2]=0;N[e+8>>2]=m>=Q(0)?j:Q(-j);N[e+4>>2]=l>=Q(0)?i:Q(-i);N[e>>2]=k>=Q(0)?h:Q(-h);f=f+1|0;if((f|0)!=(d|0)){continue}break}}}function Ae(a,b,c,d,e){var f=0,g=0;while(1){a:{b:{if(L[e>>1]<L[b>>1]|L[d>>1]>L[b+6>>1]|(L[e+4>>1]<L[b+4>>1]|L[d+4>>1]>L[b+10>>1])){break b}if(L[e+2>>1]<L[b+2>>1]|L[d+2>>1]>L[b+8>>1]){break b}f=J[b+12>>2];if((f|0)<0){break a}ua[J[J[c>>2]+8>>2]](c,f>>>21|0,f&2097151);}return}f=b+16|0;Ae(a,f,c,d,e);g=f;f=J[b+28>>2];b=(f|0)<0?g-(f<<4)|0:b+32|0;continue}}function yn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a=sa-16|0;sa=a;c=J[b+844>>2];if((c|0)>0){while(1){c=P(d,208)+b|0;e=J[c+120>>2];a:{if(!e){break a}f=J[8753];if(!f){break a}ua[f|0](e)|0;J[c+120>>2]=0;}c=J[b+844>>2];d=d+1|0;if((c|0)>(d|0)){continue}break}}b:{if(!c){break b}c=J[8756];if(!c){break b}J[a+12>>2]=b;ua[c|0](a+12|0);}J[b+844>>2]=0;sa=a+16|0;}function gc(a,b,c,d){H[a+53|0]=1;a:{if(J[a+4>>2]!=(c|0)){break a}H[a+52|0]=1;c=J[a+16>>2];b:{if(!c){J[a+36>>2]=1;J[a+24>>2]=d;J[a+16>>2]=b;if((d|0)!=1){break a}if(J[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=J[a+24>>2];if((c|0)==2){J[a+24>>2]=d;c=d;}if(J[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}J[a+36>>2]=J[a+36>>2]+1;}H[a+54|0]=1;}}function Zn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=sa-48|0;sa=e;J[e+44>>2]=d;J[e+40>>2]=12212;d=J[b+12>>2];J[e+16>>2]=J[b+8>>2];J[e+20>>2]=d;d=J[b+4>>2];J[e+8>>2]=J[b>>2];J[e+12>>2]=d;b=J[c+12>>2];J[e+32>>2]=J[c+8>>2];J[e+36>>2]=b;b=J[c+4>>2];J[e+24>>2]=J[c>>2];J[e+28>>2]=b;b=e+8|0;c=e+40|0;xb(J[a+4>>2],b,c);xb(J[a+44>>2],b,c);sa=e+48|0;}function Pc(a,b,c,d,e){J[a>>2]=14940;J[a+4>>2]=J[b>>2];J[a>>2]=14968;J[a>>2]=16192;H[a+68|0]=e;H[a+24|0]=1;J[a+20>>2]=0;H[a+44|0]=1;J[a+12>>2]=0;J[a+16>>2]=0;J[a+40>>2]=0;H[a- -64|0]=1;J[a+32>>2]=0;J[a+36>>2]=0;J[a+60>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;b=J[b+4>>2];H[a+76|0]=0;J[a+72>>2]=b;J[a+80>>2]=J[J[(e?d:c)+4>>2]+76>>2];Te(a,c,d);return a}function Um(a,b){a=a|0;b=b|0;var c=0,d=0,e=Q(0),f=0;c=sa-32|0;sa=c;d=J[a+216>>2];e=N[d+4>>2];a:{if(e==Q(0)){break a}b=J[b>>2];if(!(ua[J[J[d>>2]+8>>2]](d,J[b+188>>2])|0)){break a}d=J[a+216>>2];f=J[b+192>>2];J[c+24>>2]=-1;J[c+28>>2]=-1;J[c+20>>2]=b+4;J[c+16>>2]=b;J[c+12>>2]=f;J[c+8>>2]=0;Uc(a+68|0,a+132|0,c+8|0,d);}sa=c+32|0;return e!=Q(0)|0}function Ab(a,b){a:{if((b|0)>=1024){a=a*898846567431158e293;if(b>>>0<2047){b=b-1023|0;break a}a=a*898846567431158e293;b=((b|0)>=3069?3069:b)-2046|0;break a}if((b|0)>-1023){break a}a=a*2004168360008973e-307;if(b>>>0>4294965304){b=b+969|0;break a}a=a*2004168360008973e-307;b=((b|0)<=-2960?-2960:b)+1938|0;}x(0,0);x(1,b+1023<<20);return a*+z()}function rg(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=d|0;var e=Q(0),f=Q(0);J[a+20>>2]=1065353216;J[a+24>>2]=1065353216;J[a+60>>2]=d;J[a+28>>2]=1065353216;J[a+32>>2]=0;f=b;e=c;a:{b:{switch(d|0){case 0:f=c;e=b;break a;case 1:break a;default:break b}}e=b;b=c;}N[a+36>>2]=f;J[a+48>>2]=0;N[a+44>>2]=b;N[a+40>>2]=e;N[a+52>>2]=N[(a+36|0)+((d+2|0)%3<<2)>>2];}function Rk(a,b){a=a|0;b=b|0;var c=Q(0),d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=Q(0),k=Q(0);c=N[a+24>>2];d=N[a+40>>2];e=N[a+28>>2];f=N[a+44>>2];g=N[a+20>>2];h=N[a+36>>2];tb(a,b);i=N[b>>2];j=N[b+4>>2];k=N[b+8>>2];J[a+48>>2]=0;N[a+44>>2]=k*Q(f/e);N[a+40>>2]=j*Q(d/c);N[a+36>>2]=i*Q(h/g);N[a+52>>2]=N[(a+36|0)+((J[a+60>>2]+2|0)%3<<2)>>2];}function ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=sa+-64|0;sa=d;e=1;a:{if(Ka(a,b,0)){break a}e=0;if(!b){break a}b=Ta(b,29972);e=0;if(!b){break a}Fa(d+12|0,0,52);J[d+56>>2]=1;J[d+20>>2]=-1;J[d+16>>2]=a;J[d+8>>2]=b;ua[J[J[b>>2]+28>>2]](b,d+8|0,J[c>>2],1);a=J[d+32>>2];if((a|0)==1){J[c>>2]=J[d+24>>2];}e=(a|0)==1;}a=e;sa=d- -64|0;return a|0}function Pi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=sa-48|0;sa=e;J[e+12>>2]=b;J[e+8>>2]=22260;b=J[c+12>>2];J[e+24>>2]=J[c+8>>2];J[e+28>>2]=b;b=J[c+4>>2];J[e+16>>2]=J[c>>2];J[e+20>>2]=b;b=J[d+12>>2];J[e+40>>2]=J[d+8>>2];J[e+44>>2]=b;b=J[d+4>>2];J[e+32>>2]=J[d>>2];J[e+36>>2]=b;a=J[a+56>>2];ua[J[J[a>>2]+8>>2]](a,e+8|0,c,d);sa=e+48|0;}function rr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;J[8456]=J[8456]+1;a=Ld(ua[J[8258]](1460,16)|0,a,b,c,d,0);J[a>>2]=23308;J[a+968>>2]=0;J[a+972>>2]=0;J[a+680>>2]=0;J[a+684>>2]=0;b=a+1144|0;J[b>>2]=0;J[b+4>>2]=0;b=a+1056|0;J[b>>2]=0;J[b+4>>2]=0;J[a+688>>2]=0;J[a+692>>2]=0;J[a+696>>2]=0;J[a+700>>2]=0;J[a+704>>2]=0;J[a+708>>2]=0;return a|0}function hs(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=Q(d);e=Q(e);var f=0;f=sa-16|0;sa=f;J[f+12>>2]=0;N[f+8>>2]=e;N[f+4>>2]=d;N[f>>2]=c;H[a+69|0]=0;J[a+60>>2]=b;b=ua[J[J[a>>2]+28>>2]](a)|0;c=Q(N[b+8>>2]-N[f+8>>2]);d=Q(c*c);c=Q(N[b>>2]-N[f>>2]);e=Q(c*c);c=Q(N[b+4>>2]-N[f+4>>2]);if(Q(d+Q(e+Q(c*c)))>Q(1.1920928955078125e-7)){wc(a,f);}sa=f+16|0;}function Ll(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b>>2];a=ua[J[J[a>>2]+56>>2]](a,16)|0;J[a>>2]=14940;J[a+4>>2]=J[b>>2];J[a>>2]=14968;J[a+12>>2]=0;H[a+8|0]=0;J[a>>2]=16604;b=J[a+4>>2];if(ua[J[J[b>>2]+24>>2]](b,J[c+8>>2],J[d+8>>2])|0){b=J[a+4>>2];b=ua[J[J[b>>2]+12>>2]](b,J[c+8>>2],J[d+8>>2])|0;H[a+8|0]=1;J[a+12>>2]=b;}return a|0}function zq(a,b){a=a|0;b=Q(b);var c=0,d=0;c=sa-16|0;sa=c;J[c+8>>2]=1070945621;J[c+12>>2]=0;J[c>>2]=1070945621;J[c+4>>2]=1070945621;d=J[a+192>>2];a:{if(!kd(ua[J[J[d>>2]+36>>2]](d)|0,1038)){break a}if(J[d+4>>2]==31){if(J[d+24>>2]<=0){break a}ua[J[J[d>>2]+32>>2]](d,b,c);break a}ua[J[J[d>>2]+32>>2]](d,b,c);}lc(a,b,c);sa=c+16|0;}function tn(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{c:{switch(J[b+220>>2]-2|0){case 0:case 3:break c;default:break b}}a=0;switch(J[c+220>>2]-2|0){case 0:case 3:break a;default:break b}}d:{if(J[b+280>>2]){if(!(ua[J[J[b>>2]+12>>2]](b,c)|0)){break d}}a=1;if(!J[c+280>>2]){break a}if(ua[J[J[c>>2]+12>>2]](c,b)|0){break a}}a=0;}return a|0}function tk(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);bb(a,b,c);N[b+28>>2]=N[a+36>>2];N[b+32>>2]=N[a+40>>2];N[b+36>>2]=N[a+44>>2];N[b+40>>2]=N[a+48>>2];N[b+12>>2]=N[a+20>>2];N[b+16>>2]=N[a+24>>2];N[b+20>>2]=N[a+28>>2];N[b+24>>2]=N[a+32>>2];d=N[a+52>>2];J[b+48>>2]=0;N[b+44>>2]=d;a=J[a+76>>2];J[b+56>>2]=0;J[b+52>>2]=a;return 8915}function dk(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);bb(a,b,c);N[b+28>>2]=N[a+36>>2];N[b+32>>2]=N[a+40>>2];N[b+36>>2]=N[a+44>>2];N[b+40>>2]=N[a+48>>2];N[b+12>>2]=N[a+20>>2];N[b+16>>2]=N[a+24>>2];N[b+20>>2]=N[a+28>>2];N[b+24>>2]=N[a+32>>2];d=N[a+52>>2];J[b+48>>2]=0;N[b+44>>2]=d;a=J[a+60>>2];J[b+56>>2]=0;J[b+52>>2]=a;return 8794}function Pk(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);bb(a,b,c);N[b+28>>2]=N[a+36>>2];N[b+32>>2]=N[a+40>>2];N[b+36>>2]=N[a+44>>2];N[b+40>>2]=N[a+48>>2];N[b+12>>2]=N[a+20>>2];N[b+16>>2]=N[a+24>>2];N[b+20>>2]=N[a+28>>2];N[b+24>>2]=N[a+32>>2];d=N[a+52>>2];J[b+48>>2]=0;N[b+44>>2]=d;a=J[a+60>>2];J[b+56>>2]=0;J[b+52>>2]=a;return 8954}function cn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=sa-16|0;sa=c;ua[J[8262]](5665);ua[J[J[a>>2]+8>>2]](a);ua[J[J[a>>2]+12>>2]](a);b=J[a+24>>2];ua[J[8262]](3934);if(b){d=J[a+68>>2];f=b,g=ua[J[J[d>>2]+36>>2]](d)|0,h=a+28|0,i=J[a+24>>2],e=J[J[b>>2]+32>>2],ua[e](f|0,g|0,h|0,i|0);}ua[J[8263]]();ua[J[8263]]();sa=c+16|0;}function Ml(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=J[b>>2];e=ua[J[J[e>>2]+56>>2]](e,20)|0;f=J[b+4>>2];a=K[a+4|0];J[e>>2]=14940;J[e+4>>2]=J[b>>2];J[e>>2]=14968;H[e+16|0]=a;J[e+12>>2]=f;H[e+8|0]=0;J[e>>2]=17988;if(!f){a=J[e+4>>2];a=ua[J[J[a>>2]+12>>2]](a,J[c+8>>2],J[d+8>>2])|0;H[e+8|0]=1;J[e+12>>2]=a;}return e|0}function mh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=J[a+228>>2];a:{if((c|0)<=0){break a}e=J[a+236>>2];while(1){f=(d<<2)+e|0;if(J[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;J[f>>2]=J[d+e>>2];J[d+J[a+236>>2]>>2]=b;J[a+228>>2]=c;}Dd(J[b+28>>2],b);Dd(J[b+32>>2],b);}function Vn(a,b){a=a|0;if(J[a+16>>2]==(0-J[a+56>>2]|0)){zf(a+4|0);zf(a+44|0);J[a+124>>2]=0;J[a+104>>2]=0;H[a+153|0]=0;H[a+154|0]=1;J[a+116>>2]=10;J[a+120>>2]=1;J[a+108>>2]=1;J[a+112>>2]=0;J[a+84>>2]=0;J[a+88>>2]=0;J[a+92>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+144>>2]=0;J[a+148>>2]=0;}}function xk(a,b){a=a|0;b=b|0;var c=Q(0),d=0,e=0,f=Q(0);e=J[a+76>>2]<<2;c=N[e+b>>2];d=e;e=a+20|0;f=Q(N[a+68>>2]*Q(c/N[d+e>>2]));N[a+68>>2]=f;d=J[a+72>>2]<<2;c=Q(N[d+b>>2]/N[e+d>>2]);d=J[a+80>>2]<<2;c=Q(N[a+64>>2]*Q(Q(c+Q(N[d+b>>2]/N[e+d>>2]))*Q(.5)));N[a+64>>2]=c;N[a+60>>2]=c/Q(Y(Q(Q(c*c)+Q(f*f))));tb(a,b);}function In(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=sa-16|0;sa=f;ua[J[8262]](3960);if(J[a+8>>2]>0){while(1){e=J[a+16>>2]+(d<<4)|0;a:{if(ua[J[J[b>>2]+8>>2]](b,e)|0){ua[J[J[a>>2]+12>>2]](a,J[e>>2],J[e+4>>2],c)|0;J[8458]=J[8458]-1;break a}d=d+1|0;}if(J[a+8>>2]>(d|0)){continue}break}}ua[J[8263]]();sa=f+16|0;}function _e(a,b,c,d,e){var f=0;J[a>>2]=14940;J[a+4>>2]=J[b>>2];J[a>>2]=14968;J[a>>2]=15696;b=J[b>>2];J[a+60>>2]=0;J[a+56>>2]=b;J[a+8>>2]=15724;f=e?c:d;J[a+48>>2]=f;c=e?d:c;J[a+44>>2]=c;b=ua[J[J[b>>2]+12>>2]](b,J[c+8>>2],J[f+8>>2])|0;J[a+72>>2]=b;c=J[a+56>>2];ua[J[J[c>>2]+20>>2]](c,b);H[a+76|0]=e;return a}function Ar(a,b,c,d,e,f){a=a|0;b=Q(b);c=Q(c);d=Q(d);e=Q(e);f=Q(f);c=Q(Q(c-b)*Q(.5));N[a+692>>2]=c;b=Qa(Q(c+b));a:{if(b<Q(-3.1415927410125732)){b=Q(b+Q(6.2831854820251465));break a}if(!(b>Q(3.1415927410125732))){break a}b=Q(b+Q(-6.2831854820251465));}N[a+704>>2]=f;N[a+700>>2]=e;N[a+696>>2]=d;N[a+688>>2]=b;}function Wj(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);a:{switch(J[a+104>>2]){case 0:return Q(N[J[a+100>>2]+(P(J[a+72>>2],c)+b<<2)>>2]);case 5:return Q(Q(N[a+96>>2]*Q(K[J[a+100>>2]+(P(J[a+72>>2],c)+b|0)|0])));case 3:d=Q(N[a+96>>2]*Q(I[J[a+100>>2]+(P(J[a+72>>2],c)+b<<1)>>1]));break;default:break a}}return Q(d)}function wq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=J[b+4>>2];J[a+20>>2]=J[b>>2];J[a+24>>2]=f;f=J[b+12>>2];J[a+28>>2]=J[b+8>>2];J[a+32>>2]=f;b=J[c+4>>2];J[a+36>>2]=J[c>>2];J[a+40>>2]=b;b=J[c+12>>2];J[a+44>>2]=J[c+8>>2];J[a+48>>2]=b;H[a+88|0]=e;J[a+12>>2]=d;J[a+16>>2]=0;J[a+4>>2]=1065353216;}function Fg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=J[b+4>>2];J[a+20>>2]=J[b>>2];J[a+24>>2]=f;f=J[b+12>>2];J[a+28>>2]=J[b+8>>2];J[a+32>>2]=f;b=J[c+4>>2];J[a+36>>2]=J[c>>2];J[a+40>>2]=b;b=J[c+12>>2];J[a+44>>2]=J[c+8>>2];J[a+48>>2]=b;H[a+88|0]=e;J[a+12>>2]=d;J[a+4>>2]=1065353216;J[a+8>>2]=0;}function cl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=J[a+60>>2];if(c){c=(f=b,g=ua[J[J[c>>2]+12>>2]](c)|0,h=1,e=J[J[b>>2]+16>>2],ua[e](f|0,g|0,h|0)|0);d=J[a+60>>2];h=b,g=c,f=ua[J[J[d>>2]+16>>2]](d,J[c+8>>2],b)|0,i=1213612625,j=J[a+60>>2],e=J[J[b>>2]+20>>2],ua[e](h|0,g|0,f|0,i|0,j|0);}}function al(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=J[a+64>>2];if(c){c=(f=b,g=ua[J[J[c>>2]+8>>2]](c)|0,h=1,e=J[J[b>>2]+16>>2],ua[e](f|0,g|0,h|0)|0);d=J[a+64>>2];h=b,g=c,f=ua[J[J[d>>2]+12>>2]](d,J[c+8>>2],b)|0,i=1346456916,j=J[a+64>>2],e=J[J[b>>2]+20>>2],ua[e](h|0,g|0,f|0,i|0,j|0);}}function pi(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=d|0;a:{b:{switch(d+1|0){case 0:case 6:break b;default:break a}}c:{d:{switch(b-1|0){case 1:d=a+764|0;b=2;break c;case 3:d=a+760|0;b=1;break c;case 2:d=a+752|0;b=4;break c;case 0:break d;default:break a}}d=a+756|0;b=8;}N[d>>2]=c;J[a+748>>2]=b|J[a+748>>2];}}function rh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=J[a+248>>2];a:{if((c|0)<=0){break a}e=J[a+256>>2];while(1){f=(d<<2)+e|0;if(J[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;J[f>>2]=J[d+e>>2];J[d+J[a+256>>2]>>2]=b;J[a+248>>2]=c;}Vc(a,b);}function rd(a){a=a|0;var b=0;J[a>>2]=25104;b=J[a+344>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+344>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a>>2]=25060;b=J[a+336>>2];if(!(b?!b|!K[a+340|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+336>>2]=0;H[a+340|0]=1;J[a+328>>2]=0;J[a+332>>2]=0;return fb(a)|0}function gk(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);d=N[b+40>>2];e=N[b+36>>2];f=N[c>>2];g=N[c+8>>2];h=Q(Y(Q(Q(f*f)+Q(g*g))));a:{if(h!=Q(0)){e=Q(e/h);i=Q(g*e);e=Q(f*e);d=N[c+4>>2]<Q(0)?Q(-d):d;break a}d=N[c+4>>2]<Q(0)?Q(-d):d;}N[a+8>>2]=i;N[a+4>>2]=d;N[a>>2]=e;}function kj(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);bb(a,b,c);N[b+12>>2]=N[a+76>>2];N[b+16>>2]=N[a+80>>2];N[b+20>>2]=N[a+84>>2];N[b+24>>2]=N[a+88>>2];N[b+28>>2]=N[a+56>>2];N[b+32>>2]=N[a+60>>2];N[b+36>>2]=N[a- -64>>2];N[b+40>>2]=N[a+68>>2];d=N[a+72>>2];J[b+48>>2]=0;N[b+44>>2]=d;return 8931}function bo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;_b((J[b+60>>2]==2?44:4)+a|0,J[b+48>>2]);d=J[b+52>>2];J[(d?d+56|0:((J[b+60>>2]<<2)+a|0)+84|0)>>2]=J[b+56>>2];d=J[b+56>>2];if(d){J[d+52>>2]=J[b+52>>2];}d=J[a+96>>2];ua[J[J[d>>2]+16>>2]](d,b,c);if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+154|0]=1;}function vm(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);bb(a,b,c);N[b+28>>2]=N[a+36>>2];N[b+32>>2]=N[a+40>>2];N[b+36>>2]=N[a+44>>2];N[b+40>>2]=N[a+48>>2];N[b+12>>2]=N[a+20>>2];N[b+16>>2]=N[a+24>>2];N[b+20>>2]=N[a+28>>2];N[b+24>>2]=N[a+32>>2];d=N[a+52>>2];J[b+48>>2]=0;N[b+44>>2]=d;return 8835}function kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=J[a+296>>2];if((c|0)<=0){break a}e=J[a+304>>2];while(1){f=(d<<2)+e|0;if(J[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;J[f>>2]=J[d+e>>2];J[d+J[a+304>>2]>>2]=b;J[a+296>>2]=c;}}function Sh(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;j=sa-16|0;sa=j;ua[J[8262]](5413);Q(ua[J[J[a>>2]+44>>2]](a,b,c,d,e,f,g,h,i));Q(ua[J[J[a>>2]+48>>2]](a,b,c,d,e,f,g,h,i));Q(ua[J[J[a>>2]+36>>2]](a,b,c,h));ua[J[8263]]();sa=j+16|0;return Q(Q(0))}function Hg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:{c=J[a+328>>2];if((c|0)<=0){break a}f=J[b>>2];d=J[a+336>>2];b=0;while(1){e=(b<<2)+d|0;if(J[e>>2]!=(f|0)){b=b+1|0;if((c|0)!=(b|0)){continue}break a}break}if((b|0)>=(c|0)){break a}b=c-1|0;J[e>>2]=J[(b<<2)+d>>2];J[a+328>>2]=b;}}function Eg(a){a=Q(a);var b=0;J[8456]=J[8456]+1;b=Sa(ua[J[8258]](60,16)|0);J[b+32>>2]=0;J[b+36>>2]=0;J[b+20>>2]=1065353216;J[b+24>>2]=1065353216;J[b+4>>2]=8;J[b>>2]=21396;J[b+56>>2]=0;N[b+52>>2]=a;J[b+28>>2]=1065353216;J[b+40>>2]=0;J[b+44>>2]=0;J[b+48>>2]=0;N[b+36>>2]=a;return b|0}function Db(a,b){var c=Q(0),d=0,e=Q(0),f=Q(0),g=Q(0);c=N[a+404>>2];if(c!=Q(0)){e=N[b>>2];f=N[b+4>>2];g=N[b+8>>2];J[a+436>>2]=0;c=Q(Q(1)/c);N[a+432>>2]=g*c;N[a+428>>2]=c*f;N[a+424>>2]=c*e;}d=J[b+4>>2];J[a+440>>2]=J[b>>2];J[a+444>>2]=d;d=J[b+12>>2];J[a+448>>2]=J[b+8>>2];J[a+452>>2]=d;}function Ki(a,b,c,d){a=a|0;b=b|0;c=c|0;d=Q(d);var e=0;if(N[a+36>>2]>d){H[a+40|0]=1;e=J[b+4>>2];J[a+4>>2]=J[b>>2];J[a+8>>2]=e;e=J[b+12>>2];J[a+12>>2]=J[b+8>>2];J[a+16>>2]=e;b=J[c+4>>2];J[a+20>>2]=J[c>>2];J[a+24>>2]=b;b=J[c+12>>2];J[a+28>>2]=J[c+8>>2];J[a+32>>2]=b;N[a+36>>2]=d;}}function Xm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=Q(0);e=sa-16|0;sa=e;d=J[a+28>>2];J[e+8>>2]=d;J[e+4>>2]=d;f=J[b+4>>2];a:{if(!f){J[b+4>>2]=e+4;break a}J[f+4>>2]=d;J[f>>2]=d;}d=J[a+24>>2];g=Q(ua[J[J[d>>2]+12>>2]](d,b,c));N[a+4>>2]=N[J[a+24>>2]+4>>2];sa=e+16|0;return Q(g)}function ml(a,b,c){a=a|0;b=b|0;c=Q(c);var d=Q(0),e=Q(0),f=0;d=N[b>>2];e=N[a+36>>2];a:{if(!(d<=Q(e+c))|!(d>=Q(Q(-e)-c))){break a}d=N[b+4>>2];e=N[a+40>>2];if(!(d<=Q(e+c))|!(d>=Q(Q(-e)-c))){break a}d=N[b+8>>2];e=N[a+44>>2];if(!(d<=Q(e+c))){break a}f=d>=Q(Q(-e)-c);}return f|0}function Pq(){var a=0;a=La(64);J[a+4>>2]=0;J[a+8>>2]=0;J[a>>2]=1065353216;J[a+12>>2]=0;J[a+16>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;J[a+20>>2]=1065353216;J[a+32>>2]=0;J[a+36>>2]=0;J[a+44>>2]=0;J[a+48>>2]=0;J[a+40>>2]=1065353216;J[a+52>>2]=0;J[a+56>>2]=0;J[a+60>>2]=0;return a|0}function oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);a:{b:{switch(c+1|0){case 0:case 6:break b;default:break a}}c:{switch(b-1|0){case 1:return Q(N[a+764>>2]);case 3:return Q(N[a+760>>2]);case 2:return Q(N[a+752>>2]);case 0:break c;default:break a}}d=N[a+756>>2];}return Q(d)}function Vd(a,b,c,d){var e=0;J[a>>2]=23116;e=J[b+4>>2];J[a+4>>2]=J[b>>2];J[a+8>>2]=e;e=J[b+12>>2];J[a+12>>2]=J[b+8>>2];J[a+16>>2]=e;b=J[c+4>>2];J[a+20>>2]=J[c>>2];J[a+24>>2]=b;b=J[c+12>>2];J[a+28>>2]=J[c+8>>2];J[a+32>>2]=b;J[a+40>>2]=1065353216;J[a+36>>2]=d;return a}function Nl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b>>2];a=ua[J[J[a>>2]+56>>2]](a,16)|0;J[a>>2]=14940;J[a+4>>2]=J[b>>2];J[a>>2]=14968;J[a+12>>2]=0;H[a+8|0]=0;J[a>>2]=17912;b=J[a+4>>2];b=ua[J[J[b>>2]+12>>2]](b,J[c+8>>2],J[d+8>>2])|0;H[a+8|0]=1;J[a+12>>2]=b;return a|0}function kg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(Ka(a,J[b+8>>2],0)){hc(b,c,d);return}e=J[a+12>>2];f=a+16|0;jd(f,b,c,d);a=a+24|0;e=(e<<3)+f|0;a:{if(a>>>0>=e>>>0){break a}while(1){jd(a,b,c,d);if(K[b+54|0]){break a}a=a+8|0;if(e>>>0>a>>>0){continue}break}}}function Hb(a,b,c,d,e){var f=Q(0);f=Q(1);a:{if(b>c){break a}f=Q(0);if(b==c){break a}d=Q(d/e);if(d<Q(0)){if(!(!(a>=b)|!(Q(b-d)>a))){return Q(Q(b-a)/d)}return a<b?Q(0):Q(1)}if(!(d>Q(0))){break a}if(!(!(a<=c)|!(Q(c-d)<a))){return Q(Q(c-a)/d)}f=a>c?Q(0):Q(1);}return f}function bg(a,b){a=Q(a);b=Q(b);var c=0;J[8456]=J[8456]+1;c=Sa(ua[J[8258]](84,16)|0);N[c+68>>2]=b;N[c+64>>2]=a;J[c>>2]=19388;J[c+72>>2]=0;J[c+76>>2]=1;J[c+4>>2]=11;N[c+36>>2]=a;J[c+80>>2]=2;N[c+44>>2]=a;N[c+40>>2]=b;N[c+60>>2]=a/Q(Y(Q(Q(a*a)+Q(b*b))));return c|0}function ae(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;a=J[a+32>>2]+(j<<5)|0;J[c>>2]=J[a+12>>2];J[b>>2]=J[a+16>>2];J[d>>2]=J[a+28>>2];J[e>>2]=J[a+20>>2];J[h>>2]=J[a>>2];J[f>>2]=J[a+4>>2];J[g>>2]=J[a+8>>2];J[i>>2]=J[a+24>>2];}function Fi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=Q(d);var e=0;e=J[b+4>>2];J[a+4>>2]=J[b>>2];J[a+8>>2]=e;e=J[b+12>>2];J[a+12>>2]=J[b+8>>2];J[a+16>>2]=e;b=J[c+4>>2];J[a+20>>2]=J[c>>2];J[a+24>>2]=b;b=J[c+12>>2];J[a+28>>2]=J[c+8>>2];J[a+32>>2]=b;H[a+40|0]=1;N[a+36>>2]=d;}function zf(a){var b=0;b=J[a>>2];if(b){cc(a,b);}b=J[a+4>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+4>>2]=0;J[a+8>>2]=-1;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+16>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;}function $c(a){var b=0;b=J[a>>2];if(b){cc(a,b);}b=J[a+4>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+4>>2]=0;J[a+8>>2]=-1;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}H[a+36|0]=1;J[a+16>>2]=0;J[a+32>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;}function Fc(a){a=a|0;var b=0;J[a>>2]=19276;b=J[a+72>>2];if(b){$c(b);b=J[a+72>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;return a|0}function Vm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=Q(0);d=sa-16|0;sa=d;J[d+4>>2]=-1;J[d+8>>2]=J[a+28>>2];J[d+12>>2]=J[a+20>>2];if(!J[b+4>>2]){J[b+4>>2]=d+4;}e=J[a+24>>2];f=Q(ua[J[J[e>>2]+12>>2]](e,b,c));N[a+4>>2]=N[J[a+24>>2]+4>>2];sa=d+16|0;return Q(f)}function $n(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;c=sa-16|0;sa=c;J[c+8>>2]=12140;J[c+12>>2]=d;g=d+4|0;h=d+20|0;i=J[a+168>>2];j=c+8|0;vf(J[a+4>>2],b,g,h,N[d+32>>2],e,f,i,j);vf(J[a+44>>2],b,g,h,N[d+32>>2],e,f,i,j);sa=c+16|0;}function kn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=(e=b,f=ua[J[J[a>>2]+16>>2]](a)|0,g=1,d=J[J[b>>2]+16>>2],ua[d](e|0,f|0,g|0)|0);g=b,f=c,e=ua[J[J[a>>2]+20>>2]](a,J[c+8>>2],b)|0,h=1245859651,i=a,d=J[J[b>>2]+20>>2],ua[d](g|0,f|0,e|0,h|0,i|0);}function Lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=(e=b,f=ua[J[J[a>>2]+16>>2]](a)|0,g=1,d=J[J[b>>2]+16>>2],ua[d](e|0,f|0,g|0)|0);g=b,f=c,e=ua[J[J[a>>2]+20>>2]](a,J[c+8>>2],b)|0,h=1497645650,i=a,d=J[J[b>>2]+20>>2],ua[d](g|0,f|0,e|0,h|0,i|0);}function Jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=(e=b,f=ua[J[J[a>>2]+52>>2]](a)|0,g=1,d=J[J[b>>2]+16>>2],ua[d](e|0,f|0,g|0)|0);g=b,f=c,e=ua[J[J[a>>2]+56>>2]](a,J[c+8>>2],b)|0,h=1346455635,i=a,d=J[J[b>>2]+20>>2],ua[d](g|0,f|0,e|0,h|0,i|0);}function Oq(a){a=a|0;J[a+4>>2]=0;J[a+8>>2]=0;J[a>>2]=1065353216;J[a+12>>2]=0;J[a+16>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;J[a+20>>2]=1065353216;J[a+32>>2]=0;J[a+36>>2]=0;J[a+44>>2]=0;J[a+48>>2]=0;J[a+40>>2]=1065353216;J[a+52>>2]=0;J[a+56>>2]=0;J[a+60>>2]=0;}function ei(a,b,c){a=a|0;b=b|0;c=c|0;Gb(a,b,c);N[b+52>>2]=N[a+300>>2];N[b+56>>2]=N[a+304>>2];N[b+60>>2]=N[a+308>>2];N[b- -64>>2]=N[a+312>>2];N[b+68>>2]=N[a+316>>2];N[b+72>>2]=N[a+320>>2];N[b+76>>2]=N[a+324>>2];N[b+80>>2]=N[a+328>>2];return 8591}
  22. function Bh(a){a=a|0;var b=0,c=0;if(J[a+248>>2]>0){while(1){b=J[J[a+256>>2]+(c<<2)>>2];J[b+472>>2]=0;J[b+476>>2]=0;J[b+496>>2]=0;J[b+500>>2]=0;J[b+488>>2]=0;J[b+492>>2]=0;J[b+480>>2]=0;J[b+484>>2]=0;c=c+1|0;if((c|0)<J[a+248>>2]){continue}break}}}function xq(a,b){a=a|0;b=b|0;var c=0,d=Q(0);c=J[b+4>>2];J[a+408>>2]=J[b>>2];J[a+412>>2]=c;c=J[b+12>>2];J[a+416>>2]=J[b+8>>2];J[a+420>>2]=c;J[a+632>>2]=0;d=N[a+404>>2];N[a+624>>2]=d*N[a+412>>2];N[a+620>>2]=d*N[a+408>>2];N[a+628>>2]=d*N[a+416>>2];}function ul(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0),e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0);d=N[b+40>>2];e=N[b+44>>2];g=N[c+4>>2];h=N[c+8>>2];f=N[b+36>>2];i=N[c>>2];J[a+12>>2]=0;N[a>>2]=i>=Q(0)?f:Q(-f);N[a+8>>2]=h>=Q(0)?e:Q(-e);N[a+4>>2]=g>=Q(0)?d:Q(-d);}function hq(a){a=a|0;J[a+372>>2]=0;J[a+376>>2]=0;J[a+472>>2]=0;J[a+476>>2]=0;J[a+396>>2]=0;J[a+400>>2]=0;J[a+388>>2]=0;J[a+392>>2]=0;J[a+380>>2]=0;J[a+384>>2]=0;J[a+480>>2]=0;J[a+484>>2]=0;J[a+488>>2]=0;J[a+492>>2]=0;J[a+496>>2]=0;J[a+500>>2]=0;}function wn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=sa-16|0;sa=f;J[f+12>>2]=d;J[f+8>>2]=a;a=J[((((e|0)==1?76:5260)+a|0)+P(J[J[b+4>>2]+4>>2],144)|0)+(J[J[c+4>>2]+4>>2]<<2)>>2];a=ua[J[J[a>>2]+8>>2]](a,f+8|0,b,c)|0;sa=f+16|0;return a|0}function qn(a,b){a=a|0;b=b|0;var c=0;a:{if(!b){break a}a=J[a+68>>2];c=J[a+16>>2];if(c>>>0>b>>>0|P(J[a>>2],J[a+4>>2])+c>>>0<=b>>>0){break a}J[b>>2]=J[a+12>>2];J[a+12>>2]=b;J[a+8>>2]=J[a+8>>2]+1;return}if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}function Yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=J[b+4>>2];J[a+52>>2]=J[b>>2];J[a+56>>2]=d;d=J[b+12>>2];J[a+60>>2]=J[b+8>>2];J[a+64>>2]=d;b=J[c+4>>2];J[a+68>>2]=J[c>>2];J[a+72>>2]=b;b=J[c+12>>2];J[a+76>>2]=J[c+8>>2];J[a+80>>2]=b;J[a+48>>2]=1;}function ce(a){a=Sa(a);H[a+96|0]=0;J[a+80>>2]=-1082130432;J[a+84>>2]=-1082130432;J[a+64>>2]=1065353216;J[a+68>>2]=1065353216;J[a>>2]=20992;J[a+60>>2]=0;J[a+88>>2]=-1082130432;J[a+92>>2]=0;J[a+72>>2]=1065353216;J[a+76>>2]=0;return a}function Qg(a,b){a=a|0;b=Q(b);var c=0,d=0,e=0;d=sa-16|0;sa=d;ua[J[8262]](4095);if(J[a+296>>2]>0){while(1){e=J[J[a+304>>2]+(c<<2)>>2];ua[J[J[e>>2]+8>>2]](e,a,b);c=c+1|0;if((c|0)<J[a+296>>2]){continue}break}}ua[J[8263]]();sa=d+16|0;}function Kb(a){H[a+356|0]=1;J[a>>2]=0;H[a+312|0]=0;J[a+292>>2]=1566444395;J[a+296>>2]=1566444395;J[a+336>>2]=0;J[a+340>>2]=0;J[a+300>>2]=1566444395;J[a+304>>2]=0;J[a+344>>2]=0;J[a+348>>2]=0;H[a+352|0]=0;H[a+332|0]=K[a+332|0]&240;}function Ah(a){a=a|0;var b=0,c=0,d=0;b=J[a+248>>2];if((b|0)>0){while(1){a:{b:{d=J[J[a+256>>2]+(c<<2)>>2];switch(J[d+220>>2]-2|0){case 0:case 3:break a;default:break b}}Gd(d);b=J[a+248>>2];}c=c+1|0;if((b|0)>(c|0)){continue}break}}}function ao(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b+20>>2];J[c>>2]=J[b+16>>2];J[c+4>>2]=a;a=J[b+28>>2];J[c+8>>2]=J[b+24>>2];J[c+12>>2]=a;a=J[b+44>>2];J[d+8>>2]=J[b+40>>2];J[d+12>>2]=a;a=J[b+36>>2];J[d>>2]=J[b+32>>2];J[d+4>>2]=a;}function Xi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=J[a+56>>2];J[b>>2]=J[a+52>>2];J[b+4>>2]=d;d=J[a+64>>2];J[b+8>>2]=J[a+60>>2];J[b+12>>2]=d;b=J[a+80>>2];J[c+8>>2]=J[a+76>>2];J[c+12>>2]=b;b=J[a+72>>2];J[c>>2]=J[a+68>>2];J[c+4>>2]=b;}function Od(a,b,c){var d=0;Rd(a);d=J[a+248>>2];J[b>>2]=J[a+244>>2];J[b+4>>2]=d;d=J[a+256>>2];J[b+8>>2]=J[a+252>>2];J[b+12>>2]=d;b=J[a+272>>2];J[c+8>>2]=J[a+268>>2];J[c+12>>2]=b;b=J[a+264>>2];J[c>>2]=J[a+260>>2];J[c+4>>2]=b;}function so(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=sa-32|0;sa=e;a=J[a+140>>2];if(!(H[33804]&1)){f=aa(4,31600)|0;H[33804]=1;J[8450]=f;}f=J[8450];J[e+24>>2]=d;J[e+16>>2]=c;J[e+8>>2]=b;$(f|0,a|0,7459,e+8|0);sa=e+32|0;}function Jh(a){a=a|0;var b=0;J[a>>2]=23996;b=J[a+556>>2];if(!(b?!b|!K[a+560|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+556>>2]=0;H[a+560|0]=1;J[a+548>>2]=0;J[a+552>>2]=0;a=fb(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function gi(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=d|0;a:{if((d|0)!=-1){break a}b:{c:{switch(b-1|0){case 0:case 1:d=a+336|0;b=1;break b;case 2:case 3:break c;default:break a}}d=a+340|0;b=2;}N[d>>2]=c;J[a+332>>2]=b|J[a+332>>2];}}function fi(a,b,c){a=a|0;b=b|0;c=c|0;var d=Q(0);d=Q(34028234663852886e22);a:{if((c|0)!=-1){break a}b:{switch(b-1|0){case 0:case 1:return Q(N[a+336>>2]);case 2:case 3:break b;default:break a}}d=N[a+340>>2];}return Q(d)}function Kk(a){a=a|0;var b=0,c=Q(0),d=Q(0),e=Q(0);b=sa-32|0;sa=b;ua[J[J[a>>2]+12>>2]](a,b+16|0,b+12|0);sa=b+32|0;c=N[b+24>>2];d=Q(c*c);c=N[b+16>>2];e=Q(c*c);c=N[b+20>>2];return Q(Q(N[b+12>>2]+Q(Y(Q(d+Q(e+Q(c*c)))))))}function us(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=P(e,f);g=c&65535;h=a&65535;i=P(g,h);f=(i>>>16|0)+P(f,g)|0;e=(f&65535)+P(e,h)|0;ta=(P(b,c)+j|0)+P(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function dm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=J[a+84>>2];d=J[c+8>>2];if((d|0)>0){a=0;while(1){e=J[(J[c+16>>2]+P(a,12)|0)+8>>2];if(e){ua[J[J[e>>2]+16>>2]](e,b);d=J[c+8>>2];}a=a+1|0;if((d|0)>(a|0)){continue}break}}}function hn(a,b){a=a|0;b=b|0;var c=0,d=0;d=J[a+288>>2];c=d;a:{if((d|0)<=0){break a}a=J[a+296>>2];c=0;while(1){if(J[a+(c<<2)>>2]==(b|0)){break a}c=c+1|0;if((d|0)!=(c|0)){continue}break}c=d;}return (c|0)>=(d|0)|0}function hc(a,b,c){var d=0;d=J[a+16>>2];if(!d){J[a+36>>2]=1;J[a+24>>2]=c;J[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(J[a+24>>2]!=2){break a}J[a+24>>2]=c;return}H[a+54|0]=1;J[a+24>>2]=2;J[a+36>>2]=J[a+36>>2]+1;}}function Ro(a){a=a|0;var b=0,c=0;J[a>>2]=31472;if(K[a+136|0]){b=J[a+140>>2];if(!(H[33796]&1)){c=aa(1,31584)|0;H[33796]=1;J[8448]=c;}$(J[8448],b|0,3211,0);}ba(J[a+140>>2]);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;a=0;a:{if(!(J[c+8>>2]&J[b+4>>2])|!(J[b+8>>2]&J[c+4>>2])){break a}b=J[b>>2];c=J[c>>2];if(H[b+204|0]&1&(H[c+204|0]&1)|J[b+220>>2]==2&J[c+220>>2]==2){break a}a=1;}return a|0}function mc(a,b,c,d){J[a+44>>2]=0;J[a+36>>2]=0;J[a+40>>2]=1028443341;J[a+32>>2]=d;J[a+28>>2]=c;J[a+24>>2]=-1;I[a+20>>1]=1;J[a+16>>2]=2139095039;J[a+8>>2]=-1;J[a+12>>2]=-1;J[a+4>>2]=b;J[a>>2]=23876;return a}function Sa(a){J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=35;J[a+8>>2]=0;J[a>>2]=19652;J[a+52>>2]=1025758986;J[a+20>>2]=1065353216;J[a+24>>2]=1065353216;J[a>>2]=19516;J[a+28>>2]=1065353216;J[a+32>>2]=0;return a}function zj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=J[a+40>>2];ua[J[J[d>>2]+56>>2]](d,b,c)|0;J[b+4>>2]=22;N[b+60>>2]=N[a+24>>2];N[b- -64>>2]=N[a+28>>2];N[b+68>>2]=N[a+32>>2];N[b+72>>2]=N[a+36>>2];return 8885}function Lg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=J[b>>2];d=J[a+88>>2];if(!(!(J[b+8>>2]&J[a+8>>2])|(!(J[a+12>>2]&J[b+4>>2])|(c|0)==(d|0)))){a=J[J[a+92>>2]+24>>2];e=ua[J[J[a>>2]+28>>2]](a,d,c)|0;}return e|0}function pq(a,b){a=a|0;b=b|0;var c=Q(0),d=Q(0);c=N[b+8>>2];d=N[b+4>>2];N[a+488>>2]=Q(N[b>>2]*N[a+604>>2])+N[a+488>>2];N[a+492>>2]=Q(d*N[a+608>>2])+N[a+492>>2];N[a+496>>2]=Q(c*N[a+612>>2])+N[a+496>>2];}function uj(a,b,c){a=a|0;b=Q(b);c=c|0;var d=Q(0),e=Q(0);d=Q(ua[J[J[a>>2]+48>>2]](a));e=Q(ua[J[J[a>>2]+48>>2]](a));J[c+12>>2]=0;b=Q(e*Q(d*Q(b*Q(.4000000059604645))));N[c+8>>2]=b;N[c+4>>2]=b;N[c>>2]=b;}function bb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ua[J[J[c>>2]+40>>2]](c,a)|0;e=ua[J[J[c>>2]+28>>2]](c,d)|0;J[b>>2]=e;if(e){ua[J[J[c>>2]+48>>2]](c,d);}a=J[a+4>>2];J[b+8>>2]=0;J[b+4>>2]=a;return 8814}function Qb(a){a:{switch(J[a+4>>2]){case 8:return Q(N[a+36>>2]*N[a+20>>2]);case 0:case 1:case 4:case 5:case 10:case 11:case 13:return N[a+52>>2];default:break a}}return Q(ua[J[J[a>>2]+48>>2]](a))}function Mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=J[c>>2];a=J[a+252>>2]==4?a:0;e=J[b>>2];if(!(!e|J[e+252>>2]!=4)){ua[J[J[e>>2]+32>>2]](e,c,d,b);}if(a){ua[J[J[a>>2]+32>>2]](a,b,d,c);}return 0}function rj(a,b,c,d){c=c|0;d=d|0;J[c+8>>2]=-581039253;J[c+12>>2]=0;J[c>>2]=-581039253;J[c+4>>2]=-581039253;J[d+8>>2]=1566444395;J[d+12>>2]=0;J[d>>2]=1566444395;J[d+4>>2]=1566444395;}function oo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=sa-16|0;sa=d;a=J[a+8>>2];if(!(H[33812]&1)){e=aa(3,31860)|0;H[33812]=1;J[8452]=e;}e=J[8452];J[d+8>>2]=c;J[d>>2]=b;$(e|0,a|0,2251,d|0);sa=d+16|0;}function Wg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=J[b>>2];d=J[a+84>>2];if(!(!(J[b+8>>2]&J[a+8>>2])|(!(J[a+12>>2]&J[b+4>>2])|(c|0)==(d|0)))){a=J[a+96>>2];e=ua[J[J[a>>2]+28>>2]](a,d,c)|0;}return e|0}function hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=J[a+52>>2];if((c|0)>0){while(1){e=J[J[a+60>>2]+(d<<2)>>2];if(e){ua[J[J[e>>2]+16>>2]](e,b);c=J[a+52>>2];}d=d+1|0;if((c|0)>(d|0)){continue}break}}}function sd(a){var b=0,c=0;a=Wb(a);J[a+252>>2]=4;J[a>>2]=25104;J[a+336>>2]=0;H[a+340|0]=1;J[a+328>>2]=0;J[a+332>>2]=0;J[8456]=J[8456]+1;b=a,c=rf(ua[J[8258]](72,16)|0),J[b+344>>2]=c;return a}function Gd(a){if(!(K[a+204|0]&3)){N[a+472>>2]=Q(N[a+424>>2]*N[a+408>>2])+N[a+472>>2];N[a+476>>2]=Q(N[a+428>>2]*N[a+412>>2])+N[a+476>>2];N[a+480>>2]=Q(N[a+432>>2]*N[a+416>>2])+N[a+480>>2];}}function td(a){a=a|0;var b=0;J[a>>2]=25060;b=J[a+336>>2];if(!(b?!b|!K[a+340|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+336>>2]=0;H[a+340|0]=1;J[a+328>>2]=0;J[a+332>>2]=0;return fb(a)|0}function kd(a,b){var c=0,d=0;c=K[a|0];d=K[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=K[b+1|0];c=K[a+1|0];if(!c){break a}b=b+1|0;a=a+1|0;if((c|0)==(d|0)){continue}break}}return c-d|0}function Kh(a){a=a|0;var b=0;J[a>>2]=23996;b=J[a+556>>2];if(!(b?!b|!K[a+560|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+556>>2]=0;H[a+560|0]=1;J[a+548>>2]=0;J[a+552>>2]=0;return fb(a)|0}function cs(a,b){a=a|0;b=b|0;var c=0,d=0;c=J[a+100>>2];J[a+100>>2]=c+1;d=J[b+12>>2];c=(c<<4)+a|0;J[c+112>>2]=J[b+8>>2];J[c+116>>2]=d;d=J[b+4>>2];J[c+104>>2]=J[b>>2];J[c+108>>2]=d;Ac(a);}function wg(a){a=a|0;var b=0;J[a>>2]=25216;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+124>>2]=0;H[a+128|0]=1;J[a+116>>2]=0;J[a+120>>2]=0;return a|0}function fb(a){a=a|0;var b=0;J[a>>2]=13004;b=J[a+296>>2];if(!(b?!b|!K[a+300|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+296>>2]=0;H[a+300|0]=1;J[a+288>>2]=0;J[a+292>>2]=0;return a|0}function Og(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=J[c>>2];a=J[a+252>>2]==4?a:0;d=J[b>>2];if(!(!d|J[d+252>>2]!=4)){ua[J[J[d>>2]+28>>2]](d,c,b);}if(a){ua[J[J[a>>2]+28>>2]](a,b,c);}return 0}function So(a){a=a|0;var b=0,c=0;J[a>>2]=31472;if(K[a+136|0]){b=J[a+140>>2];if(!(H[33796]&1)){c=aa(1,31584)|0;H[33796]=1;J[8448]=c;}$(J[8448],b|0,3211,0);}ba(J[a+140>>2]);return a|0}function ko(a,b){a=a|0;b=b|0;var c=0,d=0;c=sa-16|0;sa=c;a=J[a+76>>2];if(!(H[33820]&1)){d=aa(2,32076)|0;H[33820]=1;J[8454]=d;}d=J[8454];J[c+8>>2]=b;$(d|0,a|0,4677,c+8|0);sa=c+16|0;}function as(){var a=0;a=sa-32|0;sa=a;if(!K[33780]){J[a+24>>2]=0;J[a+28>>2]=1;J[a+16>>2]=4096;J[a+20>>2]=4096;J[a+8>>2]=0;J[a+12>>2]=0;Lc(a+8|0);H[33780]=1;}sa=a+32|0;return 33692}function io(a){a=a|0;var b=0,c=0;J[a>>2]=32056;if(K[a+72|0]){b=J[a+76>>2];if(!(H[33796]&1)){c=aa(1,31584)|0;H[33796]=1;J[8448]=c;}$(J[8448],b|0,3211,0);}ba(J[a+76>>2]);return a|0}function id(a,b){var c=0;a:{if(!b){break a}b=Ta(b,30180);if(!b|J[b+8>>2]&(J[a+8>>2]^-1)){break a}if(!Ka(J[a+12>>2],J[b+12>>2],0)){break a}c=Ka(J[a+16>>2],J[b+16>>2],0);}return c}function Fb(a){var b=Q(0);b=Qa(Q(N[a>>2]+N[a+4>>2]));if(b<Q(-3.1415927410125732)){return Q(b+Q(6.2831854820251465))}return b>Q(3.1415927410125732)?Q(b+Q(-6.2831854820251465)):b}function Eb(a){var b=Q(0);b=Qa(Q(N[a>>2]-N[a+4>>2]));if(b<Q(-3.1415927410125732)){return Q(b+Q(6.2831854820251465))}return b>Q(3.1415927410125732)?Q(b+Q(-6.2831854820251465)):b}function zc(a){a=a|0;var b=0;J[a>>2]=21928;b=J[a+32>>2];if(!(b?!b|!K[a+36|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+32>>2]=0;H[a+36|0]=1;J[a+24>>2]=0;J[a+28>>2]=0;return a|0}function of(a){a=a|0;var b=0;J[a>>2]=12836;b=J[a+20>>2];if(!(b?!b|!K[a+24|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}J[a+20>>2]=0;H[a+24|0]=1;J[a+12>>2]=0;J[a+16>>2]=0;return a|0}function Vq(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+120>>2]=d;N[e+116>>2]=c;N[e+112>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function Wq(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+104>>2]=d;N[e+100>>2]=c;N[e+96>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function qo(a){a=a|0;var b=0,c=0;J[a>>2]=31840;if(K[a+4|0]){b=J[a+8>>2];if(!(H[33796]&1)){c=aa(1,31584)|0;H[33796]=1;J[8448]=c;}$(J[8448],b|0,3211,0);}ba(J[a+8>>2]);return a|0}function gb(a){var b=0,c=0;b=J[8268];c=a+7&-8;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>va()<<16>>>0){if(!(na(a|0)|0)){break a}}J[8268]=a;return b}J[8951]=48;return -1}function ql(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(b>>>0<=11){b=b<<2;e=J[b+18404>>2];b=J[b+18356>>2];}else {b=0;}ua[J[J[a>>2]+108>>2]](a,b,c);ua[J[J[a>>2]+108>>2]](a,e,d);}function _q(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+40>>2]=d;N[e+36>>2]=c;N[e+32>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function Zq(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+56>>2]=d;N[e+52>>2]=c;N[e+48>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function Yq(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+72>>2]=d;N[e+68>>2]=c;N[e+64>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function Xq(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+88>>2]=d;N[e+84>>2]=c;N[e+80>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function $q(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+24>>2]=d;N[e+20>>2]=c;N[e+16>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function no(a){a=a|0;var b=0,c=0;J[a>>2]=32056;if(K[a+72|0]){b=J[a+76>>2];if(!(H[33796]&1)){c=aa(1,31584)|0;H[33796]=1;J[8448]=c;}$(J[8448],b|0,3211,0);}ba(J[a+76>>2]);Ga(a);}function iq(a){a=a|0;var b=0,c=Q(0),d=0;b=J[a+220>>2];a:{if(K[35721]|(b|0)==4){break a}c=N[8267];if(c==Q(0)){break a}d=1;if((b&-2)==2){break a}d=N[a+224>>2]>c;}return d|0}function po(a){a=a|0;var b=0,c=0;J[a>>2]=31840;if(K[a+4|0]){b=J[a+8>>2];if(!(H[33796]&1)){c=aa(1,31584)|0;H[33796]=1;J[8448]=c;}$(J[8448],b|0,3211,0);}ba(J[a+8>>2]);Ga(a);}function Un(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)!=(c|0)){d=J[J[a+4>>2]+96>>2];ua[J[J[d>>2]+8>>2]](d,J[b+36>>2],J[c+36>>2])|0;a=J[a+4>>2];J[a+120>>2]=J[a+120>>2]+1;}}function ar(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);var e=0;e=sa-128|0;sa=e;ua[J[J[a>>2]+8>>2]](e,a);N[e+8>>2]=d;N[e+4>>2]=c;N[e>>2]=b;ua[J[J[a>>2]+12>>2]](a,e);sa=e+128|0;}function rn(a,b){a=a|0;b=b|0;var c=0;a=J[a+68>>2];c=J[a+12>>2];if(c){J[a+12>>2]=J[c>>2];J[a+8>>2]=J[a+8>>2]-1;return c|0}J[8456]=J[8456]+1;return ua[J[8258]](b,16)|0}function cc(a,b){var c=0;if(J[b+40>>2]){cc(a,J[b+36>>2]);cc(a,J[b+40>>2]);}if(J[a>>2]==(b|0)){J[a>>2]=0;}c=J[a+4>>2];if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+4>>2]=b;}function jd(a,b,c,d){var e=0,f=0;e=J[a+4>>2];f=J[a>>2];a=0;a:{if(!c){break a}a=e>>8;if(!(e&1)){break a}a=J[a+J[c>>2]>>2];}ua[J[J[f>>2]+28>>2]](f,b,a+c|0,e&2?d:2);}function vq(a,b){a=a|0;b=b|0;var c=0;J[a+304>>2]=J[a+304>>2]+1;c=J[b+4>>2];J[a+604>>2]=J[b>>2];J[a+608>>2]=c;c=J[b+12>>2];J[a+612>>2]=J[b+8>>2];J[a+616>>2]=c;}function sq(a,b){a=a|0;b=b|0;var c=0;J[a+304>>2]=J[a+304>>2]+1;c=J[b+4>>2];J[a+372>>2]=J[b>>2];J[a+376>>2]=c;c=J[b+12>>2];J[a+380>>2]=J[b+8>>2];J[a+384>>2]=c;}function rq(a,b){a=a|0;b=b|0;var c=0;J[a+304>>2]=J[a+304>>2]+1;c=J[b+4>>2];J[a+388>>2]=J[b>>2];J[a+392>>2]=c;c=J[b+12>>2];J[a+396>>2]=J[b+8>>2];J[a+400>>2]=c;}function gr(a,b,c){a=a|0;b=b|0;c=Q(c);a:{if((b|0)<=2){a=a+680|0;N[(a+(b<<2)|0)+140>>2]=c;H[(a+b|0)+156|0]=1;break a}a=P(b,88)+a|0;H[a+760|0]=1;N[a+756>>2]=c;}}function fr(a,b,c){a=a|0;b=b|0;c=Q(c);a:{if((b|0)<=2){a=a+680|0;N[(a+(b<<2)|0)+160>>2]=c;H[(a+b|0)+176|0]=1;break a}a=P(b,88)+a|0;H[a+768|0]=1;N[a+764>>2]=c;}}function Lf(a,b){a=a|0;b=b|0;var c=0;if(!(J[a+12>>2]&J[b+4>>2])){return 0}c=1;a:{if(K[a+152|0]){break a}a=J[b>>2];if(!a){break a}c=!(K[a+204|0]&4);}return c|0}function ve(a){a=a|0;var b=0;J[a>>2]=18524;if(K[a+69|0]){b=J[a+60>>2];ua[J[J[b>>2]>>2]](b)|0;b=J[a+60>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}return a|0}function Mf(a,b){a=a|0;b=b|0;var c=0;if(!(J[a+12>>2]&J[b+4>>2])){return 0}c=1;a:{if(K[a+88|0]){break a}a=J[b>>2];if(!a){break a}c=!(K[a+204|0]&4);}return c|0}function ch(a,b){a=a|0;b=b|0;var c=0;if(K[a+289|0]){c=J[a+216>>2];if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}}J[a+216>>2]=b;H[a+289|0]=0;J[J[a+212>>2]+8>>2]=b;}function Va(a){var b=0,c=0;b=a*a;c=b*a;return Q(c*(b*b)*(b*2718311493989822e-21+-.00019839334836096632)+(c*(b*.008333329385889463+-.16666666641626524)+a))}function Qh(a){a=a|0;J[8761]=23996;a=J[8900];if(!(a?!a|!K[35604]:1)){J[8457]=J[8457]+1;ua[J[8259]](a);}H[35604]=1;J[8898]=0;J[8899]=0;J[8900]=0;fb(35044);}function ak(a){a=a|0;var b=Q(0),c=Q(0);b=N[a+36>>2];c=Q(ua[J[J[a>>2]+48>>2]](a));Q(ua[J[J[a>>2]+48>>2]](a));Q(ua[J[J[a>>2]+48>>2]](a));return Q(Q(b+c))}function On(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(!c){break a}a=J[b+8>>2];if(!a){break a}ua[J[J[a>>2]>>2]](a)|0;ua[J[J[c>>2]+60>>2]](c,J[b+8>>2]);J[b+8>>2]=0;}}function Io(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ua[J[J[a>>2]+16>>2]](a,b,c,e);ua[J[J[a>>2]+16>>2]](a,c,d,e);ua[J[J[a>>2]+16>>2]](a,d,b,e);}function sn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=sa-16|0;sa=e;J[e+12>>2]=a;J[e+8>>2]=c;J[e+4>>2]=12944;ua[J[J[b>>2]+48>>2]](b,e+4|0,d);sa=e+16|0;}function lk(a,b){a=a|0;b=b|0;var c=0,d=0;d=J[b+4>>2];c=J[a+100>>2];J[c+4>>2]=J[b>>2];J[c+8>>2]=d;d=J[b+12>>2];J[c+12>>2]=J[b+8>>2];J[c+16>>2]=d;Ac(a);}function Rc(a){a=a|0;var b=0;J[a>>2]=15724;b=J[a+48>>2];ua[J[J[b>>2]+20>>2]](b,J[a+64>>2]);b=J[a+48>>2];ua[J[J[b>>2]+16>>2]](b,J[a+64>>2]);return a|0}function tb(a,b){a=a|0;b=b|0;var c=Q(0),d=Q(0),e=Q(0);c=N[b>>2];d=N[b+4>>2];e=N[b+8>>2];J[a+32>>2]=0;N[a+28>>2]=R(e);N[a+24>>2]=R(d);N[a+20>>2]=R(c);}function sb(a){a=a|0;var b=0;J[a>>2]=20860;b=J[a+60>>2];if(b){ua[J[J[b>>2]>>2]](b)|0;b=J[a+60>>2];if(b){J[8457]=J[8457]+1;ua[J[8259]](b);}}return a|0}function Oe(a){a=a|0;var b=0,c=0;J[a>>2]=16604;a:{if(!K[a+8|0]){break a}b=J[a+12>>2];if(!b){break a}c=J[a+4>>2];ua[J[J[c>>2]+16>>2]](c,b);}return a|0}function Ne(a){a=a|0;var b=0,c=0;J[a>>2]=16676;a:{if(!K[a+8|0]){break a}b=J[a+12>>2];if(!b){break a}c=J[a+4>>2];ua[J[J[c>>2]+16>>2]](c,b);}return a|0}function Mn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=sa-16|0;sa=d;J[d+12>>2]=c;J[d+8>>2]=a;J[d+4>>2]=b;J[d>>2]=12476;ua[J[J[a>>2]+48>>2]](a,d,c);sa=d+16|0;}function Ke(a){a=a|0;var b=0,c=0;J[a>>2]=17912;a:{if(!K[a+8|0]){break a}b=J[a+12>>2];if(!b){break a}c=J[a+4>>2];ua[J[J[c>>2]+16>>2]](c,b);}return a|0}function Je(a){a=a|0;var b=0,c=0;J[a>>2]=17988;a:{if(!K[a+8|0]){break a}b=J[a+12>>2];if(!b){break a}c=J[a+4>>2];ua[J[J[c>>2]+16>>2]](c,b);}return a|0}function pm(a,b,c){a=a|0;b=b|0;c=c|0;a=(b<<4)+a|0;b=J[a+76>>2];J[c+8>>2]=J[a+72>>2];J[c+12>>2]=b;a=a- -64|0;b=J[a+4>>2];J[c>>2]=J[a>>2];J[c+4>>2]=b;}function dg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Ka(a,J[b+8>>2],f)){gc(b,c,d,e);return}a=J[a+8>>2];ua[J[J[a>>2]+20>>2]](a,b,c,d,e,f);}function te(a,b,c){a=Sa(a);N[a+52>>2]=b;J[a>>2]=19116;J[a+60>>2]=1;J[a+4>>2]=10;N[a+36>>2]=b;J[a+48>>2]=0;N[a+44>>2]=b;N[a+40>>2]=c*Q(.5);return a}function ld(a){var b=0,c=0;c=a>>>23&255;b=0;a:{if(c>>>0<127){break a}b=2;if(c>>>0>150){break a}c=1<<150-c;b=0;if(c-1&a){break a}b=a&c?1:2;}return b}function Tq(a,b,c){a=Q(a);b=Q(b);c=Q(c);var d=0;J[8456]=J[8456]+1;d=ua[J[8258]](16,16)|0;J[d+12>>2]=0;N[d+8>>2]=c;N[d+4>>2]=b;N[d>>2]=a;return d|0}function Dn(a,b){a=a|0;b=b|0;var c=0;c=J[a+4>>2];if(!((c|0)!=J[b>>2]&(c|0)!=J[b+4>>2])){c=J[a+8>>2];ua[J[J[c>>2]+32>>2]](c,b,J[a+12>>2]);}return 0}function fj(a,b,c){a=a|0;b=b|0;c=c|0;a=(b<<4)+a|0;b=J[a+116>>2];J[c+8>>2]=J[a+112>>2];J[c+12>>2]=b;b=J[a+108>>2];J[c>>2]=J[a+104>>2];J[c+4>>2]=b;}function un(a,b,c){a=a|0;b=b|0;c=c|0;a=0;b=J[b+204>>2];a:{if(b&4){break a}c=J[c+204>>2];if(c&4){break a}if(!(b&3)){return 1}a=!(c&3);}return a|0}function es(){if(!K[33688]){J[8415]=0;J[8416]=0;J[8413]=35;J[8414]=0;J[8417]=0;J[8412]=20152;J[8413]=27;J[8412]=20260;H[33688]=1;}return 33648}function Wa(a){var b=0;a=a*a;b=a*a;return Q(a*b*(a*2439044879627741e-20+-.001388676377460993)+(b*.04166662332373906+(a*-.499999997251031+1)))}function Ol(a,b,c,d){a=a|0;b=b|0;a=J[b>>2];a=ua[J[J[a>>2]+56>>2]](a,8)|0;J[a>>2]=14940;J[a+4>>2]=J[b>>2];J[a>>2]=17728;return a|0}function sl(a,b,c){a=a|0;b=b|0;c=c|0;if(b>>>0<=5){J[c+12>>2]=0;a=b<<2;N[c+8>>2]=N[a+18332>>2];N[c+4>>2]=N[a+18308>>2];N[c>>2]=N[a+18284>>2];}}function Qd(a,b){var c=0,d=0;d=Rd(a);c=J[a+288>>2];J[b+8>>2]=J[a+284>>2];J[b+12>>2]=c;c=J[a+280>>2];J[b>>2]=J[a+276>>2];J[b+4>>2]=c;return d}function js(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=J[a+32>>2];J[f>>2]=J[f>>2]+1;yc(a,xc(a,b,e));yc(a,xc(a,c,e));yc(a,xc(a,d,e));}function dj(a,b,c,d,e){a=a|0;b=Q(b);c=Q(c);d=Q(d);e=Q(e);N[a+232>>2]=b;N[a+236>>2]=d;N[a+228>>2]=c;N[a+240>>2]=e;J[a+304>>2]=J[a+304>>2]+4;}function Kp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=J[a>>2];a=J[a+4>>2];b=(a>>1)+b|0;if(a&1){f=J[f+J[b>>2]>>2];}ua[f|0](b,c,d,e);}function dn(a){a=a|0;var b=0,c=0;b=sa-16|0;sa=b;ua[J[8262]](4017);c=J[a+68>>2];ua[J[J[c>>2]+32>>2]](c,J[a+24>>2]);ua[J[8263]]();sa=b+16|0;}function Hq(){if(!K[33484]){J[8351]=-1;J[8352]=0;J[8349]=1065353216;J[8350]=-1;H[33480]=1;J[8369]=0;J[8348]=30912;H[33484]=1;}return 33392}function fm(){if(!K[33228]){J[8285]=1065353216;J[8286]=0;H[33224]=1;J[8305]=0;J[8284]=30760;J[8287]=-1;J[8288]=0;H[33228]=1;}return 33136}function fc(a,b,c,d,e,f){var g=0,h=0;g=J[a+4>>2];h=g>>8;a=J[a>>2];if(g&1){h=J[J[d>>2]+h>>2];}ua[J[J[a>>2]+20>>2]](a,b,c,d+h|0,g&2?e:2,f);}function To(a,b,c,d,e,f,g,h,i,j){a=a|0;b=Q(b);c=Q(c);d=Q(d);e=e|0;f=f|0;g=g|0;h=Q(h);i=Q(i);j=Q(j);return ua[a|0](b,c,d,e,f,g,h,i,j)|0}function jq(a){a=a|0;J[a+472>>2]=0;J[a+476>>2]=0;J[a+496>>2]=0;J[a+500>>2]=0;J[a+488>>2]=0;J[a+492>>2]=0;J[a+480>>2]=0;J[a+484>>2]=0;}function yb(a,b,c,d,e){var f=0,g=0;f=J[a+4>>2];g=f>>8;a=J[a>>2];if(f&1){g=J[J[c>>2]+g>>2];}ua[J[J[a>>2]+24>>2]](a,b,c+g|0,f&2?d:2,e);}function uh(a,b){a=a|0;b=b|0;var c=0;c=J[b+268>>2];J[a>>2]=J[b+264>>2];J[a+4>>2]=c;c=J[b+276>>2];J[a+8>>2]=J[b+272>>2];J[a+12>>2]=c;}function tr(a,b){a=a|0;b=b|0;var c=0;c=J[b+4>>2];J[a+300>>2]=J[b>>2];J[a+304>>2]=c;c=J[b+12>>2];J[a+308>>2]=J[b+8>>2];J[a+312>>2]=c;}function sr(a,b){a=a|0;b=b|0;var c=0;c=J[b+4>>2];J[a+316>>2]=J[b>>2];J[a+320>>2]=c;c=J[b+12>>2];J[a+324>>2]=J[b+8>>2];J[a+328>>2]=c;}function fs(a){a=a|0;var b=0;J[8456]=J[8456]+1;b=ce(ua[J[8258]](104,16)|0);J[b+100>>2]=a;J[b>>2]=19780;J[b+4>>2]=3;Ac(b);return b|0}function Uj(a,b){a=a|0;b=b|0;var c=0;c=J[b+4>>2];J[a+116>>2]=J[b>>2];J[a+120>>2]=c;c=J[b+12>>2];J[a+124>>2]=J[b+8>>2];J[a+128>>2]=c;}function Ln(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=sa-16|0;sa=d;J[d+12>>2]=b;J[d+8>>2]=12648;ua[J[J[a>>2]+48>>2]](a,d+8|0,c);sa=d+16|0;}function La(a){var b=0;a=a>>>0<=1?1:a;a:{while(1){b=zb(a);if(b){break a}b=J[9076];if(b){ua[b|0]();continue}break}ga();D();}return b}function ss(a){if(H[33135]<0){Ga(J[8281]);}if(H[33123]<0){Ga(J[8278]);}if(H[33111]<0){Ga(J[8275]);}if(H[33099]<0){Ga(J[8272]);}}function Bg(a){if(H[35791]<0){Ga(J[8945]);}if(H[35779]<0){Ga(J[8942]);}if(H[35767]<0){Ga(J[8939]);}if(H[35755]<0){Ga(J[8936]);}}function Fp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=J[a>>2];a=J[a+4>>2];b=(a>>1)+b|0;if(a&1){e=J[e+J[b>>2]>>2];}ua[e|0](b,c,d);}function nj(a,b){a=a|0;b=b|0;var c=0;c=J[b+4>>2];J[a+76>>2]=J[b>>2];J[a+80>>2]=c;c=J[b+12>>2];J[a+84>>2]=J[b+8>>2];J[a+88>>2]=c;}function ne(a,b){a=a|0;b=b|0;var c=0;c=J[b+4>>2];J[a+24>>2]=J[b>>2];J[a+28>>2]=c;c=J[b+12>>2];J[a+32>>2]=J[b+8>>2];J[a+36>>2]=c;}function lg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Ka(a,J[b+8>>2],0)){hc(b,c,d);return}a=J[a+8>>2];ua[J[J[a>>2]+28>>2]](a,b,c,d);}function Gq(){var a=0;a=La(16);J[a+8>>2]=1036831949;J[a+12>>2]=1036831949;J[a>>2]=1036831949;J[a+4>>2]=1058642330;return a|0}function Uo(a,b,c,d,e,f,g,h,i){a=a|0;b=Q(b);c=Q(c);d=Q(d);e=e|0;f=f|0;g=g|0;h=Q(h);i=Q(i);return ua[a|0](b,c,d,e,f,g,h,i)|0}function Rq(a,b,c,d){a=Q(a);b=Q(b);c=Q(c);d=Q(d);var e=0;e=La(16);N[e+12>>2]=d;N[e+8>>2]=c;N[e+4>>2]=b;N[e>>2]=a;return e|0}function qd(a){a=a|0;var b=0;J[a>>2]=25216;b=J[a+124>>2];if(!(b?!b|!K[a+128|0]:1)){J[8457]=J[8457]+1;ua[J[8259]](b);}Ga(a);}function bd(a,b){a=a|0;b=b|0;var c=0;c=sa-16|0;sa=c;J[c+12>>2]=b;a=ua[a|0](c+12|0)|0;ba(J[c+12>>2]);sa=c+16|0;return a|0}function vo(a){a=a|0;var b=0;a=J[a+140>>2];if(!(H[33796]&1)){b=aa(1,31584)|0;H[33796]=1;J[8448]=b;}$(J[8448],a|0,4404,0);}function to(a){a=a|0;var b=0;a=J[a+140>>2];if(!(H[33796]&1)){b=aa(1,31584)|0;H[33796]=1;J[8448]=b;}$(J[8448],a|0,4415,0);}function _b(a,b){var c=0;bc(a,b);c=J[a+4>>2];if(c){J[8457]=J[8457]+1;ua[J[8259]](c);}J[a+4>>2]=b;J[a+12>>2]=J[a+12>>2]-1;}function Jo(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;h=h|0;i=Q(i);ua[J[J[a>>2]+36>>2]](a,b,c,d,h,i);}function ds(){var a=0;J[8456]=J[8456]+1;a=ce(ua[J[8258]](168,16)|0);J[a+100>>2]=0;J[a>>2]=21636;J[a+4>>2]=2;return a|0}function Bp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=J[a>>2];a=J[a+4>>2];b=(a>>1)+b|0;if(a&1){d=J[d+J[b>>2]>>2];}ua[d|0](b,c);}function gm(a,b){a=a|0;b=b|0;var c=0,d=0;c=a;d=J[J[J[a+4>>2]+4>>2]+32>>2];a=J[b+36>>2];Re(c,J[(d+P(a,80)|0)+64>>2],a);}function zp(a){a=a|0;var b=0;b=La(80);H[b+72|0]=0;J[b+4>>2]=-1;J[b+76>>2]=J[a>>2];J[a>>2]=0;J[b>>2]=32028;return b|0}function pr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;J[8456]=J[8456]+1;return Ld(ua[J[8258]](1460,16)|0,a,b,c,d,e)|0}function Aq(a,b,c){a=a|0;b=Q(b);c=Q(c);N[a+508>>2]=c<Q(0)?Q(0):c>Q(1)?Q(1):c;N[a+504>>2]=b<Q(0)?Q(0):b>Q(1)?Q(1):b;}function qm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+108>>2]](a,b,c);ua[J[J[a>>2]+108>>2]](a,(b+1|0)%3|0,d);}function yp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=ha((H[b+11|0]<0?J[b>>2]:b)|0,31960,J[c>>2])|0,J[d>>2]=e;}function se(a,b){a=a|0;b=b|0;J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;J[a+(J[b+60>>2]<<2)>>2]=1065353216;}function go(a,b){a=a|0;b=b|0;var c=0;a=ua[J[8260]]((a+b|0)+3|0)|0;if(a){c=(a+b|0)+3&0-b;J[c-4>>2]=a;}return c|0}function Ka(a,b,c){if(!c){return J[a+4>>2]==J[b+4>>2]}if((a|0)==(b|0)){return 1}return !kd(J[a+4>>2],J[b+4>>2])}function Hp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=ha((H[b+11|0]<0?J[b>>2]:b)|0,31276,J[c>>2])|0,J[d>>2]=e;}function Cp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=ha((H[b+11|0]<0?J[b>>2]:b)|0,31744,J[c>>2])|0,J[d>>2]=e;}function Lp(a,b){a=a|0;b=b|0;var c=0;c=J[a>>2];a=J[a+4>>2];b=(a>>1)+b|0;if(a&1){c=J[c+J[b>>2]>>2];}ua[c|0](b);}function mr(a,b,c){a=a|0;b=b|0;c=c|0;a:{if((b|0)<=2){H[(a+b|0)+792|0]=c;break a}H[(P(b,88)+a|0)+732|0]=c;}}function jr(a,b,c){a=a|0;b=b|0;c=c|0;a:{if((b|0)<=2){H[(a+b|0)+795|0]=c;break a}H[(P(b,88)+a|0)+744|0]=c;}}function hr(a,b,c){a=a|0;b=b|0;c=c|0;a:{if((b|0)<=2){H[(a+b|0)+798|0]=c;break a}H[(P(b,88)+a|0)+752|0]=c;}}function Ul(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b>>2];return _e(ua[J[J[a>>2]+56>>2]](a,80)|0,b,c,d,0)|0}function Sl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b>>2];return _e(ua[J[J[a>>2]+56>>2]](a,80)|0,b,c,d,1)|0}function Rl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b>>2];return Pc(ua[J[J[a>>2]+56>>2]](a,84)|0,b,c,d,0)|0}function Pl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=J[b>>2];return Pc(ua[J[J[a>>2]+56>>2]](a,84)|0,b,c,d,1)|0}function Nf(a,b,c,d,e){a=a|0;b=Q(b);c=Q(c);d=Q(d);e=Q(e);N[a+12>>2]=e;N[a+8>>2]=d;N[a+4>>2]=c;N[a>>2]=b;}function Qp(a,b){a=a|0;J[a+8>>2]=1065353216;J[a+12>>2]=0;J[a>>2]=1065353216;J[a+4>>2]=1065353216;}function bp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=Q(e);f=Q(f);g=Q(g);return ua[a|0](b,c,d,e,f,g)|0}function Dp(a){a=a|0;var b=0;b=La(12);H[b+4|0]=0;J[b+8>>2]=J[a>>2];J[a>>2]=0;J[b>>2]=31812;return b|0}function Yp(a,b){a=a|0;b=b|0;if(!(J[a+12>>2]&J[b+4>>2])){return 0}return (J[b+8>>2]&J[a+8>>2])!=0|0}function sh(a,b){a=a|0;b=b|0;if(!(!b|!(J[b+252>>2]&2))){ua[J[J[a>>2]+92>>2]](a,b);return}Vc(a,b);}function tg(){var a=0;a=J[8948];if(a){while(1){ua[J[a>>2]]();a=J[a+4>>2];if(a){continue}break}}}function cg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Ka(a,J[b+8>>2],f)){gc(b,c,d,e);}}function lr(a,b,c){a=a|0;b=b|0;c=Q(c);N[((b|0)<3?((b<<2)+a|0)+892|0:(P(b,88)+a|0)+740|0)>>2]=c;}function lp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=Q(c);d=Q(d);e=Q(e);f=Q(f);g=Q(g);ua[a|0](b,c,d,e,f,g);}function kr(a,b,c){a=a|0;b=b|0;c=Q(c);N[((b|0)<3?((b<<2)+a|0)+876|0:(P(b,88)+a|0)+736|0)>>2]=c;}function dr(a,b,c){a=a|0;b=b|0;c=Q(c);N[((b|0)<3?((b<<2)+a|0)+860|0:(P(b,88)+a|0)+772|0)>>2]=c;}function dq(a,b){a=a|0;b=b|0;a=J[a+12>>2];if(!(a&J[b+4>>2])){return 0}return (a&J[b+8>>2])!=0|0}function Sq(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);J[a+12>>2]=0;N[a+8>>2]=d;N[a+4>>2]=c;N[a>>2]=b;}function hj(a){a=a|0;a=J[a+100>>2]-2|0;if(a>>>0<=2){a=J[(a<<2)+21796>>2];}else {a=0;}return a|0}function mn(a,b){a=a|0;b=b|0;var c=0;c=b;b=J[a+8>>2];ua[J[b+64>>2]](c,b,J[a+4>>2]);return 0}function Xo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=Q(g);ua[a|0](b,c,d,e,f,g);}function Xc(a,b){if(K[a+204|0]&3?b:1){if((J[a+220>>2]&-2)!=4){J[a+220>>2]=1;}J[a+224>>2]=0;}}function jp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return ua[a|0](b,c,d,e,f)|0}function sg(a,b){a=Q(a);b=Q(b);J[8456]=J[8456]+1;return te(ua[J[8258]](64,16)|0,a,b)|0}function uk(a,b){a=a|0;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=1065353216;}function Tb(a,b,c){c=c|0;J[c>>2]=0;J[c+4>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;}function $m(a,b){a=a|0;b=b|0;ua[J[J[b>>2]+32>>2]](b);ff(a,b);ua[J[J[b>>2]+36>>2]](b);}function xj(a,b,c){a=a|0;J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;}function qp(a,b,c,d,e,f){a=a|0;b=b|0;c=Q(c);d=Q(d);e=Q(e);f=Q(f);ua[a|0](b,c,d,e,f);}function rp(a,b,c,d,e){a=a|0;b=Q(b);c=Q(c);d=Q(d);e=Q(e);return ua[a|0](b,c,d,e)|0}function jn(a,b){a=a|0;b=b|0;J[a+200>>2]=b;J[a+192>>2]=b;J[a+304>>2]=J[a+304>>2]+1;}function er(a,b,c){a=a|0;b=b|0;c=Q(c);N[((b|0)<3?(b<<2)+a|0:P(b,88)+a|0)+712>>2]=c;}function ap(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=Q(d);e=Q(e);f=Q(f);ua[a|0](b,c,d,e,f);}function Mo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+16>>2]](a,b,c,d);}function Mm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=a-4|0;ua[J[J[a>>2]+8>>2]](a,b,c,d);}function $o(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=Q(d);e=Q(e);return ua[a|0](b,c,d,e)|0}function Vo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=Q(d);e=Q(e);return ua[a|0](b,c,d,e)|0}function Cf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ua[a|0](b,c,d,e,f);}function mp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ua[a|0](b,c,d,e)|0}function Hr(a,b,c,d){a=a|0;b=Q(b);c=c|0;d=Q(d);ua[J[J[a>>2]+52>>2]](a,b,c,d)|0;}function Cn(a,b){a=a|0;b=b|0;a=J[a+4>>2];return (a|0)==J[b>>2]|(a|0)==J[b+4>>2]}function mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Ka(a,J[b+8>>2],0)){hc(b,c,d);}}function Rr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=Q(f);vb(a,b,c,d,e,f);}function sf(a,b){a=a|0;b=b|0;a=J[a+4>>2];ua[J[J[a>>2]+8>>2]](a,J[b+36>>2])|0;}function Ag(a,b,c){a=a|0;if(K[a+62|0]){$a(a);$a(a);$a(a);$a(a);}}function vs(a){var b=0;b=a&31;a=0-a&31;return (-1>>>b&-2)<<b|(-1<<a&-2)>>>a}
  23. function om(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+124>>2]](a,d,b,c);}function df(a,b){a=a|0;b=b|0;a=J[a+24>>2];return ua[J[J[a>>2]+8>>2]](a,b)|0}function Oo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+108>>2]](a,b,c,d);}function Zj(a){a=a|0;J[a>>2]=20364;if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Yg(a){a=a|0;J[8456]=J[8456]+1;return Ic(ua[J[8258]](64,16)|0,a)|0}function Xe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+80>>2]](a,b,c,d);}function Vr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+32>>2]](a,b,c,d);}function Ur(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+36>>2]](a,b,c,d);}function Mr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+88>>2]](a,b,c,d);}function Jb(a){a=a|0;J[a>>2]=23876;if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function yd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[J[J[a>>2]+8>>2]](a,b,c,d);}function sp(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=Q(d);e=Q(e);ua[a|0](b,c,d,e);}function Sn(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+8>>2]](a,b,J[J[a+8>>2]+48>>2]);}function tp(a,b,c,d){a=a|0;b=Q(b);c=Q(c);d=Q(d);return ua[a|0](b,c,d)|0}function ip(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=Q(d);e=Q(e);ua[a|0](b,c,d,e);}function ep(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=Q(d);e=e|0;ua[a|0](b,c,d,e);}function Wo(a,b,c,d,e){a=a|0;b=b|0;c=Q(c);d=d|0;e=Q(e);ua[a|0](b,c,d,e);}function Nk(a,b){a=a|0;b=Q(b);return Q(Q(Q(ua[J[J[a>>2]+16>>2]](a))*b))}function wj(a,b,c,d){c=c|0;d=d|0;if((d|0)>0){Fa(c,0,d<<4);}}function ej(a){a=a|0;a=J[a+100>>2];return ((a|0)==4?4:((a|0)==3)<<1)|0}function ad(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ua[a|0](b,c,d,e);}function Ub(a){a=a|0;a=sb(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Tp(a){a=a|0;a=Fc(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Ti(a){a=a|0;a=$d(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Rg(a){a=a|0;a=Cb(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ua[a|0](b,c,d)|0}function ub(a,b,c,d,e){return Q(Q(1))}function ms(a,b){a=a|0;b=b|0;return J[(J[a+32>>2]+P(b,80)|0)+64>>2]}function ii(a,b){a=a|0;b=b|0;a=K[a+344|0]?0:3;J[b+4>>2]=a;J[b>>2]=a;}function fq(a,b){a=a|0;b=b|0;a=J[a+540>>2];ua[J[J[a>>2]+8>>2]](a,b);}function bm(a,b,c,d,e){return Q(Q(0))}function zg(a){a=a|0;return Q(Q(Q(N[a+156>>2]*Q(.5))+N[a+152>>2]))}function mk(){J[8456]=J[8456]+1;return Wb(ua[J[8258]](324,16)|0)|0}function ln(a){a=a|0;fb(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function gl(a){a=a|0;ve(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function _i(a){a=a|0;zc(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function _h(a){a=a|0;Jd(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Wr(){J[8456]=J[8456]+1;return Kd(ua[J[8258]](236,16)|0)|0}function Pn(a){a=a|0;pf(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Mj(a){a=a|0;je(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Jg(a){a=a|0;td(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Ik(a){a=a|0;Fc(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Gg(a){a=a|0;rd(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Eh(a){a=a|0;Cb(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Dm(a){a=a|0;Ze(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Cq(a,b,c){a=a|0;b=Q(b);c=Q(c);N[a+536>>2]=c;N[a+532>>2]=b;}function Bm(a){a=a|0;Rc(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Be(a){a=a|0;Gc(a);if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function Qj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return xe(a,b,c,d)|0}function Gh(a,b,c){a=a|0;b=Q(b);c=c|0;ua[J[J[a>>2]+32>>2]](a,b,c);}function Yk(a,b,c){a=a|0;b=b|0;c=c|0;ua[J[J[b>>2]+68>>2]](a,b,c);}function Kr(a,b,c){a=a|0;b=b|0;c=c|0;ua[J[J[a>>2]+56>>2]](a,b,c);}function Zr(a,b){a=a|0;b=b|0;return ua[J[J[a>>2]+40>>2]](a,b)|0}function Rn(a,b,c){a=a|0;b=b|0;ua[J[J[a>>2]+12>>2]](a,b);}function ro(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+16>>2]](a,b,J[b>>2]);}function Sm(a,b,c){a=a|0;b=b|0;c=c|0;J[a+24>>2]=c;J[a+16>>2]=b;}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;J[a+28>>2]=c;J[a+20>>2]=b;}function kp(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=Q(d);ua[a|0](b,c,d);}function ud(a,b){a=a|0;b=b|0;return J[J[a+236>>2]+(b<<2)>>2]}function hp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=Q(d);ua[a|0](b,c,d);}function gp(a,b,c,d){a=a|0;b=b|0;c=Q(c);d=d|0;ua[a|0](b,c,d);}function dp(a,b,c){a=a|0;b=Q(b);c=Q(c);return ua[a|0](b,c)|0}function cb(a){a=a|0;if(a){J[8457]=J[8457]+1;ua[J[8259]](a);}}function on(a,b){a=a|0;b=b|0;return J[J[a+20>>2]+(b<<2)>>2]}function cp(a,b,c){a=a|0;b=b|0;c=Q(c);return ua[a|0](b,c)|0}function _o(a,b,c){a=a|0;b=Q(b);c=c|0;return ua[a|0](b,c)|0}function Jq(a,b){a=a|0;b=b|0;return J[J[a+12>>2]+(b<<2)>>2]}function Df(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ua[a|0](b,c,d);}function oj(a){a=a|0;a=J[a+220>>2];return (a|0)!=2&(a|0)!=5}function np(a,b,c){a=a|0;b=b|0;c=c|0;return ua[a|0](b,c)|0}function Ob(a){a=Sa(a);J[a+60>>2]=0;J[a>>2]=20860;return a}function th(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;jf(a,b,c,d);}function jj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;be(a,b,c,d);}function yg(a,b){a=a|0;b=Q(b);N[a+52>>2]=b;N[a+36>>2]=b;}function sj(a){a=a|0;return Q(Q(N[a+36>>2]*N[a+20>>2]))}function pg(a,b,c){a=a|0;b=b|0;return Ka(a,b,0)|0}function fh(a,b){a=a|0;b=Q(b);ua[J[J[a>>2]+44>>2]](a,b);}function Ze(a){a=a|0;J[a>>2]=15696;Rc(a+8|0);return a|0}function Kq(a,b){a=a|0;b=b|0;return J[a+12>>2]+(b<<4)|0}function nn(a){a=a|0;return (J[a+12>>2]?J[a+20>>2]:0)|0}function gd(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+68>>2]](a,b);}function ec(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+64>>2]](a,b);}function cr(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+52>>2]](a,b);}function Tr(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+40>>2]](a,b);}function Qr(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+16>>2]](a,b);}function Oh(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+24>>2]](a,b);}function Nr(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+72>>2]](a,b);}function Lr(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+92>>2]](a,b);}function Jr(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+60>>2]](a,b);}function Fq(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+12>>2]](a,b);}function br(a){a=a|0;return ua[J[J[a>>2]+56>>2]](a)|0}function _r(a){a=a|0;return ua[J[J[a>>2]+36>>2]](a)|0}function _d(a,b){a=a|0;b=b|0;ua[J[J[a>>2]+8>>2]](a,b);}function Nn(a,b){a=a|0;b=b|0;return (P(b,208)+a|0)+4|0}function Ai(a,b,c,d,e){}function vp(a,b){a=a|0;b=b|0;return Q(Q(ua[a|0](b)))}function Jl(a,b,c,d,e){}function ts(a){if(a){return 31-S(a-1^a)|0}return 32}function Gf(a){a=a|0;if(a){ua[J[J[a>>2]+12>>2]](a);}}function up(a,b,c){a=a|0;b=b|0;c=Q(c);ua[a|0](b,c);}function nl(a,b){a=a|0;b=Q(b);N[a+152>>2]=b;ic(a);}
  24. function ho(a){a=a|0;if(a){ua[J[8261]](J[a-4>>2]);}}function dc(a){a=a|0;if(a){ua[J[J[a>>2]+4>>2]](a);}}function Lq(a,b){a=a|0;b=b|0;ob(a,b);return a+48|0}function xg(a){a=a|0;return Q(N[J[a+8>>2]+40>>2])}function sk(a,b){a=a|0;b=Q(b);N[a+160>>2]=b;Bb(a);}function kl(a,b){a=a|0;b=Q(b);N[a+156>>2]=b;ic(a);}function fp(a,b){a=a|0;b=Q(b);return ua[a|0](b)|0}function Lk(a,b){a=a|0;b=Q(b);N[a+152>>2]=b;Bb(a);}function Ef(a,b,c){a=a|0;b=b|0;c=c|0;ua[a|0](b,c);}function Ck(a,b){a=a|0;b=Q(b);N[a+156>>2]=b;Bb(a);}function pb(a,b,c){kb(a+4|0,a+372|0,a+388|0,b,c);}function Ff(a,b){a=a|0;b=b|0;return ua[a|0](b)|0}function yq(a,b,c){a=a|0;b=Q(b);c=c|0;lc(a,b,c);}function hd(a,b,c,d){ma(a|0,b|0,8,0,c|0,-1,d|0);}function Xj(a){a=a|0;return (K[a+204|0]&2)>>>1|0}function Mq(a,b){a=a|0;b=b|0;ob(a,b);return b|0}function qe(a,b,c){return 0}function Oj(a){a=a|0;return (K[a+204|0]&3)!=0|0}function pj(a){a=a|0;J[a>>2]=30816;return a|0}function le(a){a=Ce(a);J[a>>2]=20484;return a}function _j(a){a=a|0;J[a>>2]=20364;return a|0}function Md(a){a=a|0;J[a>>2]=23876;return a|0}function $e(a,b,c,d){}function mi(a){a=a|0;return J[a+220>>2]==2|0}function Qo(a,b){a=a|0;b=b|0;Ja(a,b+8|0,128);}function Pr(a){a=a|0;ua[J[J[a>>2]+24>>2]](a);}function Po(a,b){a=a|0;b=b|0;Ja(a+8|0,b,128);}function Pb(a,b,c,d){}function Lj(a,b){a=a|0;b=b|0;N[a+184>>2]=b|0;}function yh(a){a=a|0;return J[a+4>>2]==31|0}function xr(a,b){a=a|0;b=Q(b);N[a+680>>2]=b;}function wr(a,b){a=a|0;b=Q(b);N[a+684>>2]=b;}function vn(a){a=a|0;return J[a+16>>2]!=0|0}function nb(a){a=a|0;return J[J[a>>2]-4>>2]}function kk(a){a=a|0;return J[a+100>>2]+4|0}function cd(a,b){a=a|0;b=b|0;ua[J[a>>2]](b);}function Zi(a){a=a|0;return J[a+48>>2]==1|0}function Hi(a,b){a=a|0;b=Q(b);N[a+276>>2]=b;}function Di(a,b){a=a|0;b=Q(b);N[a+272>>2]=b;}function zm(a,b){a=a|0;b=Q(b);N[a+28>>2]=b;}function vi(a,b){a=a|0;b=b|0;J[a+264>>2]=b;}function qs(a,b){a=a|0;b=Q(b);N[a+72>>2]=b;}function qr(a,b){a=a|0;b=Q(b);N[a+16>>2]=b;}function kq(a,b){a=a|0;b=b|0;J[a+564>>2]=b;}function ag(a,b){a=a|0;b=Q(b);N[a+64>>2]=b;}function _k(a,b){a=a|0;b=Q(b);N[a+20>>2]=b;}function Zo(a){a=a|0;return J[a+8>>2]!=0|0}function Ye(a,b){a=a|0;b=Q(b);N[a+52>>2]=b;}function Wi(a,b){a=a|0;b=b|0;J[a+204>>2]=b;}function Qi(a){a=a|0;return J[a+56>>2]+4|0}function Pp(a,b){a=a|0;b=Q(b);N[a+80>>2]=b;}function Om(a,b){a=a|0;b=Q(b);N[a+36>>2]=b;}function Il(a){a=a|0;return J[a+4>>2]+52|0}function Hj(a,b){a=a|0;b=b|0;J[a+220>>2]=b;}function Gm(a,b){a=a|0;b=Q(b);N[a+32>>2]=b;}function Dr(a,b){a=a|0;b=Q(b);N[a+40>>2]=b;}function Bq(a){a=a|0;return Q(N[a+532>>2])}function $f(a,b){a=a|0;b=Q(b);N[a+68>>2]=b;}function zr(a,b){a=a|0;b=b|0;H[a+736|0]=b;}function yr(a,b){a=a|0;b=b|0;H[a+737|0]=b;}function oc(a,b){a=a|0;b=b|0;J[a+16>>2]=b;}function kf(a){a=a|0;return Q(N[a+52>>2])}function ck(a){a=a|0;return J[a+204>>2]&1}function _m(a,b){a=a|0;b=b|0;J[a+72>>2]=b;}function Zk(a){a=a|0;return Q(N[a+20>>2])}function Qq(a){a=a|0;return Q(N[a+12>>2])}function Op(a){a=a|0;return Q(N[a+80>>2])}function Gr(a,b){b=b|0;H[35721]=b^1;}function Fn(a,b){a=a|0;b=b|0;J[a+24>>2]=b;}function Er(a){a=a|0;return Q(N[a+40>>2])}function En(a,b){a=a|0;b=b|0;J[a+68>>2]=b;}function sm(a,b){a=a|0;b=b|0;H[a+62|0]=b;}function km(a,b){a=a|0;b=b|0;H[a+63|0]=b;}function Qf(a){a=a|0;return Q(N[a+4>>2])}function Ph(a,b){a=a|0;b=b|0;J[a+8>>2]=b;}function Pf(a){a=a|0;return Q(N[a+8>>2])}function Go(a,b){a=a|0;b=b|0;J[a+4>>2]=b;}function wp(a,b){a=a|0;b=b|0;ua[a|0](b);}function uo(a){a=a|0;return J[a+108>>2]}function pp(a){a=a|0;return ua[a|0]()|0}function mq(a){a=a|0;return J[a+564>>2]}function ki(a){a=a|0;return J[a+748>>2]}function jo(a){a=a|0;return J[a+112>>2]}function ij(a){a=a|0;return J[a+100>>2]}function gq(a){a=a|0;return J[a+540>>2]}function fo(a){a=a|0;return J[a+836>>2]}function di(a){a=a|0;return J[a+332>>2]}function ci(a){a=a|0;return J[a+220>>2]}function bh(a){a=a|0;return J[a+216>>2]}function ah(a){a=a|0;return J[a+228>>2]}function _n(a){a=a|0;return J[a+840>>2]}function Uq(a,b){a=a|0;b=Q(b);N[a>>2]=b;}function Tn(a){a=a|0;return J[a+844>>2]}function No(a){a=a|0;return J[a+200>>2]}function Ji(a){a=a|0;return J[a+192>>2]}function Bi(a){a=a|0;return J[a+264>>2]}function Af(a){a=a|0;return J[a+204>>2]}function uf(a){a=a|0;return J[a+96>>2]}function pn(a){a=a|0;return J[a+12>>2]}function hf(a){a=a|0;return J[a+56>>2]}function ed(a){a=a|0;return Q(N[a>>2])}function cf(a){a=a|0;return J[a+60>>2]}function Yc(a){a=a|0;return J[a+72>>2]}function Xf(a){a=a|0;return J[a+24>>2]}function Xb(a){a=a|0;return J[a+16>>2]}function Vf(a){a=a|0;return J[a+84>>2]}function tf(a,b){return 1}function oe(a,b,c){}function cj(a,b){return 0}function Nc(a){a=a|0;return J[a+4>>2]}function Mc(a){a=a|0;return J[a+8>>2]}function qq(a,b){a=a|0;b=b|0;Db(a,b);}function op(a){a=a|0;return a- -64|0}function Oa(a,b,c){}function Aj(a,b){a=a|0;b=b|0;Xc(a,b);}function uq(a){a=a|0;return a+372|0}function tq(a){a=a|0;return a+388|0}function Tj(a){a=a|0;return a+116|0}function Sg(a){a=a|0;return Cb(a)|0}function Rj(a){a=a|0;return Gc(a)|0}function Rf(a){a=a|0;return zb(a)|0}function Of(a){a=a|0;return a+132|0}function xp(a){a=a|0;return a+32|0}function ps(a){a=a|0;return a+56|0}function nf(a){a=a|0;return a+20|0}function mj(a){a=a|0;return a+76|0}function mf(a){a=a|0;return a+36|0}function me(a){a=a|0;return a+24|0}function Yo(a){a=a|0;return a+16|0}function Yf(a){a=a|0;return a+52|0}function Wf(a){a=a|0;return a+68|0}function Tf(a){a=a|0;return a+92|0}function Sp(a){a=a|0;return a+84|0}function Sf(a){a=a|0;return a+72|0}function Rh(a){a=a|0;J[a+232>>2]=0;}function Mk(a){J[8284]=30816;}function Hf(a){a=a|0;return a+48|0}function bj(a){return 10115}function Zc(a){a=a|0;return a+4|0}function Pm(a){a=a|0;return a-4|0}function Jp(a){a=a|0;H[a+136|0]=1;}function xl(a){return 1476}function wm(a){return 7533}function vk(a){return 7454}function tj(a){return 9188}function lj(a){return 9195}function jm(a){a=a|0;Oc(a);Ga(a);}function jk(a){return 6544}function fn(a){a=a|0;Wc(a);Ga(a);}function eo(a){a=a|0;wf(a);Ga(a);}function em(a){a=a|0;Qe(a);Ga(a);}function ek(a){return 9149}function Zl(a){a=a|0;Ne(a);Ga(a);}function Xl(a){a=a|0;Kc(a);Ga(a);}function Sj(a){return 9207}function Rp(a){return 7744}function Qk(a){return 7354}function Ni(a){return 9175}function Lm(a){a=a|0;af(a);Ga(a);}function Ih(a){a=a|0;Bd(a);Ga(a);}function Hl(a){a=a|0;Me(a);Ga(a);}function Dl(a){a=a|0;Ke(a);Ga(a);}function Cj(a){return 9166}function Ap(a){a=a|0;H[a+72|0]=1;}function An(a){a=a|0;of(a);Ga(a);}function Al(a){a=a|0;Je(a);Ga(a);}function $l(a){a=a|0;Oe(a);Ga(a);}function $k(a){return 9172}function $j(a){return 1038}function zi(a){return 644}function ni(a){return 220}function gn(a){return 264}function Nh(a){return 496}function Ha(a){a=a|0;return a|0}function Ep(a){a=a|0;H[a+4|0]=1;}function we(a){return 84}function cq(a){dd(33488);}function bq(a){a=a|0;Ga(fd(a));}function Xp(a){a=a|0;Ga(dd(a));}function Si(a){return 28}function Rb(a){return 60}function Qc(a){return 52}function Np(a){return 24}function Nm(a){a=a|0;Ga(a-4|0);}function Ir(a){fd(33232);}function De(a){return 12}function Bj(a){return 76}function $r(a){Kc(33692);}function wb(a){return 0}function rl(a){return 8}function ef(a,b){}function We(a){return 2}function Ve(a){return 3}function Ue(a){return 1}function Ee(a){return 6}function Ya(a,b){}function Ea(a){a=a|0;Ga(a);}function Pa(a){D();}function qg(){ga();D();}function _a(a){}function Qn(){}
  25. // EMSCRIPTEN_END_FUNCS
  26. e=K;p();var ua=c([null,Mk,Ir,cq,_a,$r,dc,nb,Lp,Kp,dc,Ha,Ha,nb,Jp,cd,Ip,bd,Hp,Gp,Gf,nb,Fp,Gf,Ha,Ha,nb,Ep,cd,Dp,bd,Cp,dc,nb,Bp,dc,Ha,Ha,nb,Ap,cd,zp,bd,yp,Rf,Ff,Ea,wp,ed,vp,Uq,up,Iq,Ef,Tq,tp,ed,Qf,Pf,Sq,sp,Rq,rp,ed,Qf,Pf,Qq,Nf,qp,Pq,pp,Oq,Nq,Hf,Mq,np,Lq,_d,Fq,Eq,Df,Nc,Jq,Kq,Fr,Er,Dr,qr,Cr,mp,Br,Ar,lp,yr,Ef,zr,wr,vr,kp,xr,ur,tr,sr,rr,Uf,pr,jp,Uf,nr,ip,hr,Df,gr,hp,fr,er,dr,mr,lr,kr,jr,ir,yh,Ff,Oh,Gh,gp,yd,ad,fh,oc,Ph,es,mf,Yg,Ng,Eg,fp,yg,og,ig,ep,sg,dp,rg,bg,ag,$f,_f,rs,cp,ps,qs,bs,bp,ks,js,Cf,is,Bf,cf,hs,ap,gs,$o,fs,ds,cs,os,Xf,ns,ms,ec,ls,ad,mk,Ji,_d,Lj,mi,ci,Hj,Aj,oj,Xj,ck,Oj,Zc,Wi,Af,Hi,Di,vi,Bi,dj,Xh,Dq,_o,mq,kq,qq,Aq,zq,yq,xq,vq,sq,uq,rq,tq,hq,jq,iq,Cq,Bq,gq,pq,oq,nq,fq,as,Yr,_r,Zr,No,Af,uo,jo,fo,_n,Tn,Nn,Ha,Yo,Hf,xp,op,Xr,Wr,Ur,ad,Tr,Vr,Rr,Xo,Qr,Pr,Or,Bf,Gr,Nr,Hr,Wo,Mr,Lr,Kr,Jr,ec,gd,cr,br,ar,$q,_q,Zq,Yq,Xq,Wq,Vq,Zo,vn,Sr,oc,or,Cf,Tf,Sf,Of,fm,oc,Fg,Wf,Yf,Vf,lq,Mp,Tf,Sf,Of,Hq,wq,Wf,Yf,Vf,Gq,Nf,Nc,Mc,Zc,nf,mf,kf,hf,cf,Tl,Vo,Il,Om,Gm,zm,sm,km,Bl,Uo,wl,nl,kl,bl,To,Vk,Lk,Ck,sk,ss,If,pj,Ea,Mf,eq,Pa,dq,qg,fd,bq,Lf,aq,$p,_p,Kf,Ha,Ea,Mf,Zp,dd,Xp,Lf,Wp,Vp,Up,Yp,Jf,Fc,Tp,Fk,Ok,Kk,Nk,Dk,Sp,Ek,Rp,Qp,Pp,Op,Np,Bk,Jk,Hk,Gk,So,Ro,Qo,Po,Oo,Mo,Lo,Ko,Jo,Io,Ho,Ya,Oa,Go,Nc,Fo,Eo,Do,Co,Bo,Ao,zo,yo,xo,wo,vo,to,so,Pa,_a,_a,ro,Ya,qo,po,oo,Pa,io,no,mo,lo,ko,Pa,go,ho,Rf,Ea,wf,eo,co,bo,Yn,ao,$n,Zn,Xn,uf,uf,Wn,Vn,_a,Ha,Ea,Un,Sn,Rn,tf,tf,Ea,Oa,sf,Ea,sf,_a,Qn,pf,Pn,Gn,Jn,Ln,Xb,Xb,Zc,On,Mc,Mn,Fn,In,Kn,wb,En,Hn,Ha,Ea,Dn,Ea,Cn,Bn,of,An,wn,zn,xn,yn,tn,un,sn,pn,on,nn,Yc,Yc,rn,qn,Ea,mn,fb,ln,jn,hn,gn,lf,kn,Wc,fn,en,dn,_m,Yc,gf,an,bn,jf,Vc,cn,$m,ef,Ya,Oa,Ha,Ea,Ha,Ea,Ei,Zm,Ea,Ym,Ea,df,Xm,Ea,Ci,bf,Ea,bf,Ea,Wm,Ea,df,Vm,Ha,Ea,Um,Ea,Tm,Ha,Ea,Qm,yd,Pm,Nm,Mm,Ha,Pa,Ha,Pa,Ha,Ea,Im,af,Lm,Km,Jm,Hm,Ha,Ea,Oa,Oa,$e,Ea,Oa,Oa,Fm,Ea,Sm,Rm,Em,Ze,Dm,ym,xm,Cm,Rc,Bm,Am,sb,Ub,Xe,tb,nf,Tb,wm,Ye,kf,Qc,vm,re,um,qk,tm,rk,We,rm,Kj,Ve,Ve,qm,pm,Ue,om,nm,mm,Ea,lm,Oc,jm,Se,im,hm,Ea,gm,Qe,em,cm,bm,dm,Ea,am,Ya,Ha,Ea,Pe,Oe,$l,_l,ub,Sb,Ne,Zl,Yl,ub,Sb,Kc,Xl,Mc,Xb,Vl,Wl,Ha,Ea,Ul,Ea,Sl,Ea,Rl,Ea,Ql,Ea,Pl,Ea,Ol,Ea,Nl,Ea,Ml,Ea,Ll,Ea,Kl,Ea,Jl,ub,Ya,Me,Hl,Gl,Fl,Xb,Ea,El,Ke,Dl,Cl,ub,Sb,Je,Al,zl,ub,Sb,Ea,Ie,Ub,He,Ge,yl,xl,Fe,vl,ul,tl,Ee,sl,rl,De,ql,pl,Ee,ol,ml,ll,Gc,Be,xe,we,hl,jl,il,ve,gl,Ri,el,Qi,Tb,$k,_k,Zk,Rb,dl,fl,Oi,Yk,cl,al,Ha,Ea,ue,Ea,ue,Ea,Xk,Ha,cb,Sk,Rk,Tk,Qk,se,ef,Rb,Pk,Wk,Uk,wb,Oa,Ik,cb,Xe,xk,wk,vk,uk,Rb,tk,yk,Ak,zk,Pa,Pa,De,bb,Ub,be,lk,kk,Gj,jk,re,ok,nk,wb,wb,Pb,Oa,wb,Pb,qe,Ha,Ea,ik,cb,He,Ge,hk,ek,se,Fe,Rb,dk,bk,gk,fk,ak,Ha,Pa,Ha,cb,pe,ne,me,oe,$j,Pb,_j,Zj,Yj,Uj,Tj,Tb,Sj,Vj,Wj,Rj,Be,Qj,Ea,Pj,Ea,Nj,je,Mj,Pa,Jj,Ij,Pa,Fj,Ha,cb,Dj,ne,me,oe,Cj,Bj,zj,Ej,Ea,yj,cb,pe,uj,tj,Ye,sj,vj,xj,wj,Ha,cb,rj,nj,mj,Tb,lj,Qc,kj,qj,Ub,jj,bj,ij,hj,gj,fj,ej,Pb,qe,cj,zc,_i,aj,ae,ae,Ya,Ya,Xf,Ya,Ya,Zi,Yi,Xi,Si,$i,$d,Ti,Vi,Ui,Ha,cb,wc,Ni,Pi,Ea,Mi,Ea,Li,Ha,Ea,Yd,Ea,Oa,Oa,Ki,Ea,vc,pk,ab,Ha,Ea,Ii,Ea,Za,Ea,Gi,Ea,Oa,Oa,Fi,Pa,Pa,Ea,Td,Md,Jb,_a,Ai,xi,wi,$e,ui,ti,zi,yi,Md,Jb,Jb,si,ri,qi,pi,oi,ni,li,ki,Jb,ji,ii,hi,gi,fi,we,ei,di,bi,ai,$h,Jd,_h,Oa,Sh,Oa,Rh,Ue,Zh,Vh,Th,Wh,Yh,Uh,Qh,Pa,_a,Qc,Gb,Kh,Jh,Nh,Mh,Lh,Bd,Ih,Hh,Fh,Cb,Eh,Ch,th,sh,$g,xh,nh,mh,lh,kh,vh,uh,zh,qh,ph,rh,ch,bh,ah,ud,ud,We,Bh,ec,gd,ec,gd,eh,gh,ih,jh,oh,wh,hh,Dh,dh,Ah,Ya,Qg,_g,Zg,Xg,Ea,Wg,Vg,Sg,Rg,Tg,Ug,Ha,Ea,Pg,Ha,Ea,Og,Mg,Oa,Ea,Lg,Kg,td,Jg,Ig,Hg,rd,Gg,Dg,Cg,Bg,wg,Pa,Ag,Ya,hf,qd,zg,qd,xg,Ea,vg,pd,Ha,Ea,_a,_a,pg,Ea,ng,cg,fg,mg,Ea,dg,gg,lg,Ea,eg,hg,kg,Ea,jg]);function va(){return G.byteLength/65536|0}function Aa(Ba){Ba=Ba|0;var wa=va()|0;var xa=wa+Ba|0;if(wa<xa&&xa<65536){var ya=new ArrayBuffer(P(xa,65536));var za=new Int8Array(ya);za.set(H);H=new Int8Array(ya);I=new Int16Array(ya);J=new Int32Array(ya);K=new Uint8Array(ya);L=new Uint16Array(ya);M=new Uint32Array(ya);N=new Float32Array(ya);O=new Float64Array(ya);G=ya;F.buffer=G;e=K;}return wa}return {"w":Zf,"x":zb,"y":Ga,"z":ua,"A":ug,"B":tg}}return Ca(Da)}
  27. // EMSCRIPTEN_END_ASM
  28. )(info);},instantiate:function(binary,info){return {then:function(ok){var module=new WebAssembly.Module(binary);ok({"instance":new WebAssembly.Instance(module,info)});}}},RuntimeError:Error};wasmBinary=[];if(typeof WebAssembly!="object"){abort("no native wasm support detected");}var wasmMemory;var ABORT=false;function assert(condition,text){if(!condition){abort(text);}}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b);}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;assert(INITIAL_MEMORY>=65536,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+INITIAL_MEMORY+"! (STACK_SIZE="+65536+")");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"];}else {wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536});}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift());}}callRuntimeCallbacks(__ATPRERUN__);}function initRuntime(){callRuntimeCallbacks(__ATINIT__);}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift());}}callRuntimeCallbacks(__ATPOSTRUN__);}function addOnPreRun(cb){__ATPRERUN__.unshift(cb);}function addOnInit(cb){__ATINIT__.unshift(cb);}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb);}var runDependencies=0;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies);}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies);}if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback();}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what);}what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}var wasmBinaryFile;wasmBinaryFile="<<< WASM_BINARY_FILE >>>";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile);}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary);throw "both async and sync fetching of the wasm failed"}catch(err){abort(err);}}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB)){if(typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw "failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinary(binaryFile))}}return Promise.resolve().then(()=>getBinary(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>{return WebAssembly.instantiate(binary,imports)}).then(instance=>{return instance}).then(receiver,reason=>{err("failed to asynchronously prepare wasm: "+reason);abort(reason);})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}else {return instantiateArrayBuffer(binaryFile,imports,callback)}}function createWasm(){var info={"a":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["z"];addOnInit(Module["asm"]["w"]);removeRunDependency();return exports}addRunDependency();function receiveInstantiationResult(result){receiveInstance(result["instance"]);}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);readyPromiseReject(e);}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult).catch(readyPromiseReject);return {}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){callbacks.shift()(Module);}}var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return "_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return `_${name}`}return name}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return {[name]:function(){return body.apply(this,arguments)}}[name]}function HandleAllocator(){this.allocated=[undefined];this.freelist=[];this.get=function(id){return this.allocated[id]};this.has=function(id){return this.allocated[id]!==undefined};this.allocate=function(handle){var id=this.freelist.pop()||this.allocated.length;this.allocated[id]=handle;return id};this.free=function(id){this.allocated[id]=undefined;this.freelist.push(id);};}var emval_handles=new HandleAllocator;function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"");}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else {return `${this.name}: ${this.message}`}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}function count_emval_handles(){var count=0;for(var i=emval_handles.reserved;i<emval_handles.allocated.length;++i){if(emval_handles.allocated[i]!==undefined){++count;}}return count}function init_emval(){emval_handles.allocated.push({value:undefined},{value:null},{value:true},{value:false});emval_handles.reserved=emval_handles.allocated.length;Module["count_emval_handles"]=count_emval_handles;}var Emval={toValue:handle=>{if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle);}return emval_handles.get(handle).value},toHandle:value=>{switch(value){case undefined:return 1;case null:return 2;case true:return 3;case false:return 4;default:{return emval_handles.allocate({refcount:1,value:value})}}}};var PureVirtualError=undefined;function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i);}embind_charCodes=codes;}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]];}return ret}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k]);}}return rv}var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]();}}var delayFunction=undefined;function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes);}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction;}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined");}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass;}return ptr}function registerInheritedInstance(class_,ptr,instance){ptr=getBasestPointer(class_,ptr);if(registeredInstances.hasOwnProperty(ptr)){throwBindingError(`Tried to register registered instance: ${ptr}`);}else {registeredInstances[ptr]=instance;}}var registeredTypes={};function getTypeName(type){var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType));}return impl}function unregisterInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);if(registeredInstances.hasOwnProperty(ptr)){delete registeredInstances[ptr];}else {throwBindingError(`Tried to unregister unregistered instance: ${ptr}`);}}function detachFinalizer(handle){}var finalizationRegistry=false;function runDestructor($$){if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr);}else {$$.ptrType.registeredClass.rawDestructor($$.ptr);}}function releaseClassHandle($$){$$.count.value-=1;var toDelete=0===$$.count.value;if(toDelete){runDestructor($$);}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}var registeredPointers={};function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType");}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified");}record.count={value:1};return attachFinalizer(Object.create(prototype,{$$:{value:record}}))}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else {var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else {return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType;}else {toType=registeredPointerRecord.pointerType;}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else {return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function attachFinalizer(handle){if("undefined"===typeof FinalizationRegistry){attachFinalizer=handle=>handle;return handle}finalizationRegistry=new FinalizationRegistry(info=>{releaseClassHandle(info.$$);});attachFinalizer=handle=>{var $$=handle.$$;var hasSmartPtr=!!$$.smartPtr;if(hasSmartPtr){var info={$$:$$};finalizationRegistry.register(handle,info,handle);}return handle};detachFinalizer=handle=>finalizationRegistry.unregister(handle);return attachFinalizer(handle)}function __embind_create_inheriting_constructor(constructorName,wrapperType,properties){constructorName=readLatin1String(constructorName);wrapperType=requireRegisteredType(wrapperType,"wrapper");properties=Emval.toValue(properties);var arraySlice=[].slice;var registeredClass=wrapperType.registeredClass;var wrapperPrototype=registeredClass.instancePrototype;var baseClass=registeredClass.baseClass;var baseClassPrototype=baseClass.instancePrototype;var baseConstructor=registeredClass.baseClass.constructor;var ctor=createNamedFunction(constructorName,function(){registeredClass.baseClass.pureVirtualFunctions.forEach(function(name){if(this[name]===baseClassPrototype[name]){throw new PureVirtualError(`Pure virtual function ${name} must be implemented in JavaScript`)}}.bind(this));Object.defineProperty(this,"__parent",{value:wrapperPrototype});this["__construct"].apply(this,arraySlice.call(arguments));});wrapperPrototype["__construct"]=function __construct(){if(this===wrapperPrototype){throwBindingError("Pass correct 'this' to __construct");}var inner=baseConstructor["implement"].apply(undefined,[this].concat(arraySlice.call(arguments)));detachFinalizer(inner);var $$=inner.$$;inner["notifyOnDestruction"]();$$.preservePointerOnDelete=true;Object.defineProperties(this,{$$:{value:$$}});attachFinalizer(this);registerInheritedInstance(registeredClass,$$.ptr,this);};wrapperPrototype["__destruct"]=function __destruct(){if(this===wrapperPrototype){throwBindingError("Pass correct 'this' to __destruct");}detachFinalizer(this);unregisterInheritedInstance(registeredClass,this.$$.ptr);};ctor.prototype=Object.create(wrapperPrototype);for(var p in properties){ctor.prototype[p]=properties[p];}return Emval.toHandle(ctor)}function __embind_register_bigint(primitiveType,name,size,minRange,maxRange){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError(`Unknown type size: ${size}`)}}var awaitingDependencies={};var typeDependencies={};function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes;});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count");}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i]);}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;dependentTypes.forEach((dt,i)=>{if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt];}else {unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[];}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters);}});}});if(0===unregisteredTypes.length){onComplete(typeConverters);}}function registerType(rawType,registeredInstance,options={}){if(!("argPackAdvance"in registeredInstance)){throw new TypeError("registerType registeredInstance requires argPackAdvance")}var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`);}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else {throwBindingError(`Cannot register type '${name}' twice`);}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb());}}function __embind_register_bool(rawType,name,size,trueValue,falseValue){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(wt){return !!wt},"toWireType":function(destructors,o){return o?trueValue:falseValue},"argPackAdvance":8,"readValueFromPointer":function(pointer){var heap;if(size===1){heap=HEAP8;}else if(size===2){heap=HEAP16;}else if(size===4){heap=HEAP32;}else {throw new TypeError("Unknown boolean type size: "+name)}return this["fromWireType"](heap[pointer>>shift])},destructorFunction:null});}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass;}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass;}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return {count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted");}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this);}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else {var clone=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this);}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion");}detachFinalizer(this);releaseClassHandle(this.$$);if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined;}}function ClassHandle_isDeleted(){return !this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this);}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion");}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes);}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater;}function ClassHandle(){}function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc;}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`);}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);}Module[name].overloadTable[numArguments]=value;}else {Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments;}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[];}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass;}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`);}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`);}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr);}return ptr}else {return 0}}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`);}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal");}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr;}else {throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`);}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr;}else {var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,Emval.toHandle(function(){clonedHandle["delete"]();}));if(destructors!==null){destructors.push(this.rawDestructor,ptr);}}break;default:throwBindingError("Unsupporting sharing policy");}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`);}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);}if(handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAP32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr);}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr);}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]();}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType;}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&&registeredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null;}else {this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null;}}else {this["toWireType"]=genericPointerToWireType;}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol");}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value;}else {Module[name]=value;Module[name].argCount=numArguments;}}function dynCallLegacy(sig,ptr,args){var f=Module["dynCall_"+sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr);}return func}function dynCall(sig,ptr,args){if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}var rtn=getWasmTableEntry(ptr).apply(null,args);return rtn}function getDynCaller(sig,ptr){var argCache=[];return function(){argCache.length=0;Object.assign(argCache,arguments);return dynCall(sig,ptr,argCache)}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(){if(signature.includes("j")){return getDynCaller(signature,rawFunction)}return getWasmTableEntry(rawFunction)}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);}return fp}var UnboundTypeError=undefined;function throwUnboundTypeError(message,types){var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true;}types.forEach(visit);throw new UnboundTypeError(`${message}: `+unboundTypes.map(getTypeName).join([", "]))}function __embind_register_class(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor){name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);if(upcast){upcast=embind__requireFunction(upcastSignature,upcast);}if(downcast){downcast=embind__requireFunction(downcastSignature,downcast);}rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,function(){throwUnboundTypeError(`Cannot construct ${name} due to unbound types`,[baseClassRawType]);});whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],function(base){base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype;}else {basePrototype=ClassHandle.prototype;}var constructor=createNamedFunction(legalFunctionName,function(){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError("Use 'new' to construct "+name)}if(undefined===registeredClass.constructor_body){throw new BindingError(name+" has no accessible constructor")}var body=registeredClass.constructor_body[arguments.length];if(undefined===body){throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`)}return body.apply(this,arguments)});var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);if(registeredClass.baseClass){if(registeredClass.baseClass.__derivedClasses===undefined){registeredClass.baseClass.__derivedClasses=[];}registeredClass.baseClass.__derivedClasses.push(registeredClass);}var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return [referenceConverter,pointerConverter,constPointerConverter]});}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr);}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc,isAsync){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!");}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i<argTypes.length;++i){if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){needsDestructorStack=true;break}}var returns=argTypes[0].name!=="void";var expectedArgCount=argCount-2;var argsWired=new Array(expectedArgCount);var invokerFuncArgs=[];var destructors=[];return function(){if(arguments.length!==expectedArgCount){throwBindingError(`function ${humanName} called with ${arguments.length} arguments, expected ${expectedArgCount} args!`);}destructors.length=0;var thisWired;invokerFuncArgs.length=isClassMethodFunc?2:1;invokerFuncArgs[0]=cppTargetFunc;if(isClassMethodFunc){thisWired=argTypes[1]["toWireType"](destructors,this);invokerFuncArgs[1]=thisWired;}for(var i=0;i<expectedArgCount;++i){argsWired[i]=argTypes[i+2]["toWireType"](destructors,arguments[i]);invokerFuncArgs.push(argsWired[i]);}var rv=cppInvokerFunc.apply(null,invokerFuncArgs);function onDone(rv){if(needsDestructorStack){runDestructors(destructors);}else {for(var i=isClassMethodFunc?1:2;i<argTypes.length;i++){var param=i===1?thisWired:argsWired[i-2];if(argTypes[i].destructorFunction!==null){argTypes[i].destructorFunction(param);}}}if(returns){return argTypes[0]["fromWireType"](rv)}}return onDone(rv)}}function heap32VectorToArray(count,firstElement){var array=[];for(var i=0;i<count;i++){array.push(HEAPU32[firstElement+i*4>>2]);}return array}function __embind_register_class_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,fn,isAsync){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName=`${classType.name}.${methodName}`;function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes);}if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)];}var proto=classType.registeredClass.constructor;if(undefined===proto[methodName]){unboundTypesHandler.argCount=argCount-1;proto[methodName]=unboundTypesHandler;}else {ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-1]=unboundTypesHandler;}whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));var func=craftInvokerFunction(humanName,invokerArgsArray,null,rawInvoker,fn);if(undefined===proto[methodName].overloadTable){func.argCount=argCount-1;proto[methodName]=func;}else {proto[methodName].overloadTable[argCount-1]=func;}if(classType.registeredClass.__derivedClasses){for(const derivedClass of classType.registeredClass.__derivedClasses){if(!derivedClass.constructor.hasOwnProperty(methodName)){derivedClass.constructor[methodName]=func;}}}return []});return []});}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual,isAsync){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName=`${classType.name}.${methodName}`;if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)];}if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName);}function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes);}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler;}else {ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler;}whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction;}else {proto[methodName].overloadTable[argCount-2]=memberFunction;}return []});return []});}function __emval_decref(handle){if(handle>=emval_handles.reserved&&0===--emval_handles.get(handle).refcount){emval_handles.free(handle);}}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=Emval.toValue(handle);__emval_decref(handle);return rv},"toWireType":function(destructors,value){return Emval.toHandle(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null});}function embindRepr(v){if(v===null){return "null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else {return ""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null});}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn,isAsync){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,function(){throwUnboundTypeError(`Cannot call ${name} due to unbound types`,argTypes);},argCount-1);whenDependentTypesAreResolved([],argTypes,function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return []});}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);var shift=getShiftFromSize(size);var fromWireType=value=>value;if(minRange===0){var bitshift=32-8*size;fromWireType=value=>value<<bitshift>>>bitshift;}var isUnsignedType=name.includes("unsigned");var checkAssertions=(value,toTypeName)=>{};var toWireType;if(isUnsignedType){toWireType=function(destructors,value){checkAssertions(value,this.name);return value>>>0};}else {toWireType=function(destructors,value){checkAssertions(value,this.name);return value};}registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":toWireType,"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null});}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap.buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true});}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023;}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u;}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63;}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63;}else {if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63;}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++;}else if(c<=2047){len+=2;}else if(c>=55296&&c<=57343){len+=4;++i;}else {len+=3;}}return len}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2;}else {u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63;}if(u0<65536){str+=String.fromCharCode(u0);}else {var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023);}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var payload=value+4;var str;if(stdStringIsUTF8){var decodeStartPtr=payload;for(var i=0;i<=length;++i){var currentBytePtr=payload+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment;}else {str+=String.fromCharCode(0);str+=stringSegment;}decodeStartPtr=currentBytePtr+1;}}}else {var a=new Array(length);for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAPU8[payload+i]);}str=a.join("");}_free(value);return str},"toWireType":function(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value);}var length;var valueIsOfTypeString=typeof value=="string";if(!(valueIsOfTypeString||value instanceof Uint8Array||value instanceof Uint8ClampedArray||value instanceof Int8Array)){throwBindingError("Cannot pass non-string to std::string");}if(stdStringIsUTF8&&valueIsOfTypeString){length=lengthBytesUTF8(value);}else {length=value.length;}var base=_malloc(4+length+1);var ptr=base+4;HEAPU32[base>>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr,length+1);}else {if(valueIsOfTypeString){for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits");}HEAPU8[ptr+i]=charCode;}}else {for(var i=0;i<length;++i){HEAPU8[ptr+i]=value[i];}}}if(destructors!==null){destructors.push(_free,base);}return base},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr);}});}var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr));var str="";for(var i=0;!(i>=maxBytesToRead/2);++i){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit);}return str}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647;}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2;}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023);}else {str+=String.fromCharCode(utf32);}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647;}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023;}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4;}return len}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var decodeString,encodeString,getHeap,lengthBytesUTF,shift;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16;getHeap=()=>HEAPU16;shift=1;}else if(charSize===4){decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32;getHeap=()=>HEAPU32;shift=2;}registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment;}else {str+=String.fromCharCode(0);str+=stringSegment;}decodeStartPtr=currentBytePtr+charSize;}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value=="string")){throwBindingError(`Cannot pass non-string to C++ string type ${name}`);}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr);}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr);}});}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}});}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}return symbol}var emval_methodCallers=[];function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=Emval.toValue(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args);}function emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i<argCount;++i){a[i]=requireRegisteredType(HEAPU32[argTypes+i*4>>2],"parameter "+i);}return a}var emval_registeredMethods=[];function __emval_get_method_caller(argCount,argTypes){var types=emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var returnId=emval_registeredMethods[signatureName];if(returnId!==undefined){return returnId}var argN=new Array(argCount-1);var invokerFunction=(handle,name,destructors,args)=>{var offset=0;for(var i=0;i<argCount-1;++i){argN[i]=types[i+1]["readValueFromPointer"](args+offset);offset+=types[i+1]["argPackAdvance"];}var rv=handle[name].apply(handle,argN);for(var i=0;i<argCount-1;++i){if(types[i+1].deleteObject){types[i+1].deleteObject(argN[i]);}}if(!retType.isVoid){return retType["toWireType"](destructors,rv)}};returnId=emval_addMethodCaller(invokerFunction);emval_registeredMethods[signatureName]=returnId;return returnId}function __emval_incref(handle){if(handle>4){emval_handles.get(handle).refcount+=1;}}function _abort(){abort("");}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num);}function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(size){var b=wasmMemory.buffer;var pages=size-b.byteLength+65535>>>16;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}BindingError=Module["BindingError"]=extendError(Error,"BindingError");init_emval();PureVirtualError=Module["PureVirtualError"]=extendError(Error,"PureVirtualError");embind_init_charCodes();init_embind();InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var decodeBase64=typeof atob=="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2);}if(enc4!==64){output=output+String.fromCharCode(chr3);}}while(i<input.length);return output};function intArrayFromBase64(s){try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i);}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}var wasmImports={"l":__embind_create_inheriting_constructor,"q":__embind_register_bigint,"u":__embind_register_bool,"j":__embind_register_class,"i":__embind_register_class_class_function,"h":__embind_register_class_function,"t":__embind_register_emval,"o":__embind_register_float,"b":__embind_register_function,"g":__embind_register_integer,"c":__embind_register_memory_view,"n":__embind_register_std_string,"m":__embind_register_std_wstring,"v":__embind_register_void,"d":__emval_call_void_method,"f":__emval_decref,"e":__emval_get_method_caller,"p":__emval_incref,"k":_abort,"s":_emscripten_memcpy_big,"r":_emscripten_resize_heap,"a":wasmMemory};createWasm();var _malloc=function(){return (_malloc=Module["asm"]["x"]).apply(null,arguments)};var _free=function(){return (_free=Module["asm"]["y"]).apply(null,arguments)};var ___getTypeName=function(){return (___getTypeName=Module["asm"]["A"]).apply(null,arguments)};Module["__embind_initialize_bindings"]=function(){return (Module["__embind_initialize_bindings"]=Module["asm"]["B"]).apply(null,arguments)};var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller;};function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun();}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("");},1);doRun();},1);}else {doRun();}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()();}}run();
  29. return Bullet.ready
  30. }
  31. );
  32. })();
  33. module.exports = Bullet;
  34. }); exports({ 'default': bullet_release_asm, __moduleExports: bullet_release_asm });
  35. })
  36. };
  37. }));